-
Notifications
You must be signed in to change notification settings - Fork 6
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
CI / CD for the whole repo #59
Conversation
break up and parallize arbiter work flow forge test solidity dependabot toolchain version book tests and dependancies version warning migration book lint dependancy CI remove book deploy clippy codespell, fmt build yaml syntax yaml fix yaml fix path
Idk why the arbiter install is failing, im trying to fix it. |
Okay so i looked a bit into making reproducible builds with forge and I found that we can fix them so that if there are no contract changes the bindings don't have any contract changes. This is happening with forges default config right now. We can see all config options by typing One reason why i think it's kinda important is that if someone is using arbiter (kinda what we are selling in some sense) and we expect them to ignore bindings, it will break all their CI which is not a good look. I did look into something like this: https://github.com/foundry-rs/foundry-toolchain but decided a simple solution would be better for now. |
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.
bindings
jobs: | ||
install: | ||
name: Install and Test | ||
runs-on: ubuntu-latest |
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.
maybe we should use macos here? has more cores so it might be faster and it's more true to what most of the folks on our team run
|
||
fmt: | ||
name: fmt | ||
runs-on: ubuntu-latest |
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.
meant to put the macos comment here, probably doesn't make a difference for the other stuff
This adds CI flows and dependancies between them so the right ones can run in parallel. The Following checks were added for the repo
For rust
So for example installing arbiter doesn't depend on installing foundry so it can be done at the same time now
For the Mdbook
For Solidity
I also added dependabot configurations for us. I noticed the arbiter install still takes a longtime so i am looking into getting a workflow with github for us but still learning how to do that. But once we do it should be a the biggest speedup afaik.
Closes #63
Coses #52