Skip to content

Run CI on Linux (Ubuntu) #1139

Open
Open
@cincuranet

Description

@cincuranet

Does it make sense to run CI also on Linux (Ubuntu/ubuntu-latest/ubuntu-22.04)? Or just waste of CPU cycles/energy?

I guess the "biggest" chunk of work would be preparing Linux versions into https://github.com/FirebirdSQL/NETProvider-tests-infrastructure.

Activity

self-assigned this
on Oct 1, 2023
fdcastel

fdcastel commented on Oct 25, 2024

@fdcastel
Member

Been there, done that.

https://github.com/fdcastel/firebird-binaries forget it... See the next message.

fdcastel

fdcastel commented on Oct 25, 2024

@fdcastel
Member

Better yet.

I put here another pet-project which I used in the past for testing database in multiple Firebird environments.

There are no binaries in this repository. The scripts can download and prepare any Firebird environment (from 2.5 to 5.0, embedded or not). For Windows and Linux.

fdcastel

fdcastel commented on Oct 25, 2024

@fdcastel
Member

I’m currently working on the changes you requested for this overlooked PR. It will take me a few more days to finish.

Meanwhile, what about a rewrite of all those loose Powershell scripts around in the project root folder?

I could rewrite them using Invoke-Build. It's a fantastic piece of software (think Make, but with tasks declared in Powershell). I use it in all my projects.

A simple

Invoke-Build Tests

could build the projects, download the Firebird binaries (for Linux or Windows, according the environment) and run the tests.

Other helper tasks could be

Invoke-Build Benchmark
Invoke-Build UpdateHeaders
Invoke-Build Publish

etc.

cincuranet

cincuranet commented on Oct 25, 2024

@cincuranet
MemberAuthor

I don't want unnecessary dependencies.

fdcastel

fdcastel commented on Oct 25, 2024

@fdcastel
Member

Sure! Nobody wants. The less, the better.

But in this case -- apart from being just one PSGet Install-Module away (*) -- it will surely reduce the work and keep the thing a bit more organized.

(*) Not unlike on how we add a NuGet package in a .csproj these days.

Things like this, this and this simply vanish away. The infrastructure takes care of these petty jobs. And the tasks dependencies are resolved automatically.

fdcastel

fdcastel commented on Oct 25, 2024

@fdcastel
Member

It seems I’m getting old 😄.

I just found this PR where I had already suggested this to you 😅.

Well... If you change your mind, I'm here to help.

I'm going back to work on the performance and instrumentation PRs, now.

added theissue type on Apr 11, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

    Development

    No branches or pull requests

      Participants

      @fdcastel@cincuranet

      Issue actions

        Run CI on Linux (Ubuntu) · Issue #1139 · FirebirdSQL/NETProvider