-
Notifications
You must be signed in to change notification settings - Fork 605
Replace current build infra with Github Actions #934
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
Comments
Makes sense. How hard is it to integrate rabbitmqctl into those? |
If that's not possible, it's also possible to set up a CI build on Azure DevOps using the free-tier against the MS-hosted build agents and execute the builds in a container, including tests if more control is needed. |
It's possible to use a Docker container directly in GitHub Actions with container:
image: rabbitmq:3.8.9-management-alpine (I'm just a bit unsure about the exact syntax). It's also possible to bundle a |
This can be done with service containers. I have a PoC running, will get it running and then post my workflow yaml :) |
Just for the fun of it, I did a spike in asbjornu#1 that just replaces CI, but keeps the scripts and process. It works for Linux, not yet sure for Windows. |
This works and might be a good initial step for CI builds (doesn't set SourceLink etc. but compiles and runs the tests targeting netcoreapp3.1). |
That looks good, @stebet! If |
Yeah, I merely meant this as an intermediate step to get things started. If GitHub Actions is to be used instead for building and running the tests they might very well be redundant. This small action works fine for PR validation (builds code, runs tests), then if successful might trigger another build that properly builds and runs tests on all supported platforms. |
Got it. Should a PR delete |
Team RabbitMQ has internal Concourse pipelines that rely on those scripts. We'd like to keep them for now, they are small and not too painful to maintain. Our team has been moving RabbitMQ itself to Actions for several months now (currently RabbitMQ core 3.9/master uses Actions), so we would welcome this change for this library. |
Thanks for the info, @michaelklishin. How about |
It'd think that the |
Travis CI has served us well but if switch to Actions, there is no reason to keep it. I assume GitHub Actions has all the same GitHub PR integrations a contributor would expect :) Travis has been adopted for external contributors, not so much the core team. |
Ok, cool. #952 submitted, replacing Travis CI with a GitHub Actions workflow for Linux. We still need to figure out what to do with a Windows build. |
I don't think we've had any issues using AppVeyor for Windows builds. |
It sure would be nice if there was a Windows RabbitMQ docker image we could use with GitHub Actions. |
Wouldn't it be beneficial to have everything in one place on GitHub Actions, though? |
I recently set up a Windows build for our .NET stream client - rabbitmq/rabbitmq-stream-dotnet-client#70 I'll do the same here. Note that docker is not supported on Windows GHA runners but it's easy enough to install Erlang and RabbitMQ on the Windows CI runner, then cache the installers. |
Fixes #934 Check out submodules, ensure that preview language features are not used Ensure that preview language features are not used Run tests on Windows using powershell to set the rabbitmqctl.bat path Gotta set ERLANG_HOME too...
I think it would be great for transparancy and evolvability perspective to switch to github actions
For example
https://github.com/marketplace/actions/setup-rabbitmq-with-username-and-password
The text was updated successfully, but these errors were encountered: