-
Notifications
You must be signed in to change notification settings - Fork 0
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
feat!: port mutexbot actions to rust and add isolation channels #7
Conversation
38c3cf9
to
91d2619
Compare
91d2619
to
024fe18
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Personally, I think Rust is a bit too much for this task: we have less Rust experience in the company than in Python, for example. Also it's (relatively) harder to install and configure locally.
But, if you think that Rust is the best tool for this task, let's keep it.
The thing that we need to fix — it shouldn't take 5 minutes to setup the action
4f41d5a
to
01e42e9
Compare
I'm not sure about "best tool for the task", but it's the one I'm most accustomed to. We could probably achieve the same in python, even with static checks using mypy to ensure type safety and other static analysis tools, but getting this going in Rust was the quicker route for me personally, as I'm more used to that ecosystem than to python and the static analysis tools there.
It will not:
|
7e7999c
to
7b225a8
Compare
There's a pre-built image now that's coming from CI here. We're down to 6 seconds from job start to successful reservation. |
edac334
to
28892b9
Compare
8f30c4a
to
81f9644
Compare
81f9644
to
b353e6a
Compare
Problem
To send notifcations for dev and prod deployments into different channels we needed to use the isolation channel feature of mutexbot.
Summary of changes
mutexbot/reserve
andmutexbot/release
into onemutexbot
action to dedupe codekebap-case
tosnake_case
, because of rust best practices. I was not able to make rust happy withkebap-case
in parameters. If should be possible to do that by patching https://github.com/42ByteLabs/ghactionsTesting
I have created a test workflow in a temporary repo under https://github.com/neondatabase-labs/tmp-mutexbot-test/blob/main/.github/workflows/test.yml, which successfully reserves the resources. A workflow run that shows this working is https://github.com/neondatabase-labs/tmp-mutexbot-test/actions/runs/12694965092/job/35385895290