Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Run CI on Linux (Ubuntu) #1139

Open
cincuranet opened this issue Oct 1, 2023 · 6 comments
Open

Run CI on Linux (Ubuntu) #1139

cincuranet opened this issue Oct 1, 2023 · 6 comments

Comments

@cincuranet
Copy link
Member

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.

@fdcastel
Copy link
Contributor

fdcastel commented Oct 25, 2024

Been there, done that.

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

@fdcastel
Copy link
Contributor

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
Copy link
Contributor

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
Copy link
Member Author

I don't want unnecessary dependencies.

@fdcastel
Copy link
Contributor

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
Copy link
Contributor

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants