heimdall2
heimdall2 copied to clipboard
Improve Heimdall Release
Based on the Heimdall release process documented in the wiki, the following have been identified as improvements.
Build Process
- [ ] Identify a mechanism/methodology to release Heimdall like the Jenkins build with parameters capability where the SAF CLI release can be build with parameter. These parameters are those values that currently require human intervention.
- [ ] Make the release process cyclical or on demand.
Process Steps to Automate
- [ ] Identify every point in which automation is possible for release process, determine what github actions can be leveraged to accomplish this
- [ ] automate the need to run the dependabot cancellation script
Documentation Revision
-
Update first step with how to pull the repository (git pull), etc.
-
Update readme to delete yarn.lock if using windows
-
Checking frontend if there were new commits needs better explanation / implementation
-
Note that new commit to frontend [does not] need to be pushed (this is unclear), because lerna does it for you - frontend step needs a script
-
Move release wiki sidebar location to top
-
VERSION and CHANGELOG steps need to refer to root directory
-
CHANGELOG update needs to be clear about formatting
-
Specify what you update it with (+1 to version sub num)
-
Step says dependabots don't update draft release, but it looks like they do. Why? - this is because the commits / pushes to main are what trigger the merged dependabot PRs to populate the draft release
-
Specify where to run lerna (root directory)
-
Specify that you need to use same version as in version file
-
Step 4 says do one thing, step 1 says do another, out of order (fix this, make title more clear and general)
- Be more clear about whether you're building, or pulling, etc.
-
Be clear about what to put in secrets generator script inputs
-
Be clear about whether to pull or build (probably just pull)
- Can use a docker-compose-test.yml compose file specifically
-
Specify that you should restore any uncommitted changes to your repo after release is finished (such as docker compose changes)
-
Specify to ensure docker is running
-
Specify that mac M1 arch computers need 'platform: linux/x86_64' to work in docker compose file - determine which containers need this (server and possibly others)
-
Remove existing db content, specify this step is for people who already have a database created
-
Specify that you should see the compose finished
-
Access heimdall in browser, make the note come first
-
Specify that you can kill your running containers with CTLR+C then compose down, then maybe system prune (or alternative way
-
Specify an expected outcome after each step
-
Make heroku deployment link open a new tab
- Using href modification
- Make clear that this is after promoting to production
-
Push individual packages (inspecjs, ohdf converters, etc.) should just not run unless needed instead of being allowed to fail (RESEARCH) - Much easier to allow failure
-
Last step should specify under what conditions to release the SAF CLI as well
- Always