# CI notes ### FreeBSD ``` # attach shared to the jail eg to /media pkg install -y gh git clone https://github.com/openoms/joininbox cd joininbox gh run download shasum -a256 -c joininbox-amd64-debian-11.5.qcow2.gz.sha256 gzip -dkv joininbox-amd64-debian-11.5.qcow2.gz shasum -a256 -c joininbox-amd64-debian-11.5.qcow2.sha256 pkg install qemu qemu-image convert joininbox-amd64-debian-11.5.qcow2 /media/joininbox.img # In the FreeBSD root # create a zvol with the exact size of the raw image dd if=/mnt/cryptic/blitz/images/joininbox.img of=/dev/zvol/cryptic/blitz/jb221210 bs=4M status=progress ``` ## Manage the artifacts and workflows with the GitHub CLI * https://github.com/cli/cli#installation ## Download artifacts in CLI * https://docs.github.com/en/actions/managing-workflow-runs/downloading-workflow-artifacts ## Delete workflow runs ``` OWNER= REPO= # list workflow ids gh api -X GET /repos/$OWNER/$REPO/actions/workflows | jq '.workflows[] | .name,.id' WORKFLOW_ID= # list runs gh api -X GET /repos/$OWNER/$REPO/actions/workflows/$WORKFLOW_ID/runs | jq '.workflow_runs[] | .id' | tail -n 10 # delete failed runs gh api -X GET /repos/$OWNER/$REPO/actions/workflows/$WORKFLOW_ID/runs | jq '.workflow_runs[] | select(.conclusion=="failure") | .id' | tail -n 10 | xargs -I{} gh api -X DELETE /repos/$OWNER/$REPO/actions/runs/{} # delete cancelled runs gh api -X GET /repos/$OWNER/$REPO/actions/workflows/$WORKFLOW_ID/runs | jq '.workflow_runs[] | select(.conclusion=="cancelled") | .id' | tail -n 10 | xargs -I{} gh api -X DELETE /repos/$OWNER/$REPO/actions/runs/{} # delete oldest 10 workflows (won't delete the running one) gh api -X GET /repos/$OWNER/$REPO/actions/workflows/$WORKFLOW_ID/runs | jq '.workflow_runs[] | .id' | tail -n 10 | xargs -I{} gh api -X DELETE /repos/$OWNER/$REPO/actions/runs/{} # delete newest 10 workflows (won't delete the running one) gh api -X GET /repos/$OWNER/$REPO/actions/workflows/$WORKFLOW_ID/runs | jq '.workflow_runs[] | .id' | head -n 10 | xargs -I{} gh api -X DELETE /repos/$OWNER/$REPO/actions/runs/{} ```