-
Notifications
You must be signed in to change notification settings - Fork 22
sign artefact and metadata file and upload signatures #303
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
Conversation
- ensure the value of signing setting in app.cfg is read as json - convert all paths used to absolute paths - bind mount all paths used plus their realpath into the container (the latter is needed to make sure targets of symlinks that reside on a different file system prefix are still accessible inside the container) - put env arguments in run_cmd and run_subcommand at the end
Neves-P
left a comment
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.
This looks great and is quite clear! I made just a few suggestions in the help messages and a default, but these are minor and I have no issues if you disagree and would rather merge as is.
Feel free to commit the suggestions or reject them and I'm happy to merge when done either way.
Neves-P
left a comment
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.
Looking good! 👍
| if [[ -n "${sign_key}" ]] && [[ -n "${sign_script}" ]]; then | ||
| sign=1 | ||
| elif [[ -n "${sign_key}" ]]; then | ||
| sign=0 |
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.
Nitpicking, can maybe be tackled in a follow-up PR: I would've used 'no' and 'yes' here, to avoid confusion.
0 is often a sign of success in bash scripts, here's it's a negative value, 'no' leaves no room for confusion
Adds signing of a tarball (artefact) and the corresponding metadata file and uploading those to the S3 bucket too.
Uses a sign script that could be provided by the target repository, for example, see EESSI/software-layer#948
Because the latter uses the "recently" added option of
ssh-keygento sign files (option-Yrequires OpenSSH v8.2 or newer), the bot may be configured to run the upload script in a container that provides a sufficiently recent version.The PR adds the capability to skip the ReFrame tests at the end of a build job. This should not be used for production builds, but is useful to shorten development cycles.
The PR has been extensively tested via trz42/software-layer#89