- Allow pull requests to create output paths
Previously, it was not possible to get unmerged pull request outputs. I
would like to access these (e.g. for hosting a preview version of a
website in a similar way to https://docs.netlify.com/site-deploys/deploy-previews/
or https://vercel.com/docs/deployments/preview-deployments)
These are now surfaced under `{owner}/{repo}/pulls/{pr number}`
- Fix repository attribute name conflicts
Previously there was no difference between samely-named attributes in
different repositories.
This has been changed so outputs are under `{owner}/{repo}/{branch}`
- Allow full attribute names, still stripping path traversal
Previously, presumably to prevent path traversal, if your attribute name
contained slashes buildbot-nix would only take the last segment as an
output.
This has been replaced by interpreting slashes as subdirectories and
refusing any segments which don't descend into a subdirectory (i.e. are
attempting path traversal)
- Still create outputs on skipped builds
Previously when something was skipped, for example a build that was
completed in a pull request, the output wouldn't be updated. This made
the outputs directory quite unreliable.
Outputs will now always be updated, no matter whether a build was
actually executed.
BREAKING-CHANGE: This stops old output locations being outputted. If you rely on these locations, you will need to update whatever relies on them.