This adds a feature where maintainers can add themselves to an array in the source to receive notifications whenever the target fails. The way this works is via GitHub, I created a new repository https://github.com/Noratrieb/does-it-build-notifications where an app will create issues that ping the respective users. This is the easiest option for me and also fits nicely into people's workflows on GitHub. Whenever a target fails, an issue is created for it. This issue is kept open (with a new comment every day that it continues to fail), and then closed when the target builds again.
1.4 KiB
does it build?
A webapp that checks which Rust targets build at any nightly.
It does this by executing cargo build --release -Zbuild-std=core for every target and every nightly and displaying the result.
There's a background job that continously builds every target for every target that it hasn't built yet.
It does this in parallel, using half of the available threads (or DOES_IT_BUILD_PARALLEL_JOBS).
Configuration
DB_PATH: Path to SQlite DB to store the resultsDOES_IT_BUILD_PARALLEL_JOBS: Parallel build jobs, defaults to cores/2.GITHUB_SEND_PINGS: If this is set, actual pings will be sent for notification issuesGITHUB_OWNER: The owner of the notification repoGITHUB_REPO: The repo name of the notification repoGITHUB_APP_ID: The app ID of the notification GitHub appGITHUB_APP_PRIVATE_KEY: The RSA private key for the notification GitHub app
Build configuration: DOES_IT_BUILD_OVERRIDE_VERSION to override the git commit.
Deployment
deployed at https://does-it-build.noratrieb.dev/
Notification
does-it-build supports sending target maintainer notifications on breakage.
It does this by creating an issue https://github.com/Noratrieb/does-it-build-notifications that pings the registered maintainers. There is an array in the source code (linked to on the website target page) where people can add or remove themselves.