-
Notifications
You must be signed in to change notification settings - Fork 569
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
Chore: Centralize some Repository Config #4422
Conversation
e1b93a8
to
7bea280
Compare
This is meant to centralize auxiliary configuration that is mostly used to test the library in Continuous Integration. This is explicitly not meant to influence the actual build of the released parts of the library.
7bea280
to
584db02
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.
Very nice, thanks
@reneme seems to be a problem with the SDE job can you take a look https://github.com/randombit/botan/actions/runs/11640528851/job/32421150718 |
I accidentally removed the $PATH amendment. Therefore, the |
This centralizes some repo-specific configuration into
src/configs/repo_config.env
. The settings are pulled into the CI's environment using a new GitHub action in.github/actions/read-repo-config
.The configuration in this file is relevant mostly for CI at the moment. Hence, no build scripts that are meant to be run locally are relying on those variables; perhaps except
ci_build.py
. In case that ever changes, thesrc/scripts/repo_config.py
may be used to query the settings, either as a convenient CLI, or as a python module. E.g.python3 src/scripts/repo_config.py get BORINGSSL_REPO # prints 'randombit/boringssl
or
This is an initial proposal. There's most likely more info that could live in such a config file. Also, I'm certainly open to criticism and improvement proposals with this. We use a similar setup in sehlen-bsi/botan-docs and that proved to be fairly useful.
Currently "Setup Build Agent" and "Read Repository Config" are deliberately split into two actions for flexibility in the setup of CI workflows. Though, at the moment they are always used together. Perhaps it makes sense to simply read the config in the setup job.
Closes #4390