summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTulip Blossom <tulilirockz@outlook.com>2025-01-08 21:14:57 -0300
committerGitHub <noreply@github.com>2025-01-08 19:14:57 -0500
commit57b12ce08ab9c447bdb80d750726b1434af406bb (patch)
tree8ee7b42e9700fff7e8432f24dd3c84c97fb66c6d
parentaa88c6e60398d1484ea391bb0e0cbdfd01e96c99 (diff)
downloadAeroCore-OS-57b12ce08ab9c447bdb80d750726b1434af406bb.tar.gz
AeroCore-OS-57b12ce08ab9c447bdb80d750726b1434af406bb.zip
chore: add rechunk and maximize-build-storage examples on the build workflow (#52)
I believe these should be enabled by default, since they make builds a lot slower, but it is nice having some docs about it
-rw-r--r--.github/workflows/build.yml30
1 files changed, 30 insertions, 0 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index e4c7ea1..c12fb00 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -37,6 +37,12 @@ jobs:
# These stage versions are pinned by https://github.com/renovatebot/renovate
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
+
+ # This is optional, but if you see that your builds are way too big for the runners, you can enable this by uncommenting the following lines:
+ # - name: Maximize build space
+ # uses: ublue-os/remove-unwanted-software@517622d6452028f266b7ba4cc9a123b5f58a6b53 # v7
+ # with:
+ # remove-codeql: true
- name: Get current date
id: date
@@ -93,6 +99,30 @@ jobs:
labels: ${{ steps.metadata.outputs.labels }}
oci: false
+ # Rechunk is a script that we use on Universal Blue to make sure there isnt a single huge layer when your image gets published.
+ # This does not make your image faster to download, just provides better resumability and fixes a few errors.
+ # Documentation for Rechunk is provided on their github repository at https://github.com/hhd-dev/rechunk
+ # You can enable it by uncommenting the following lines:
+ # - name: Run Rechunker
+ # id: rechunk
+ # uses: hhd-dev/rechunk@f153348d8100c1f504dec435460a0d7baf11a9d2 # v1.1.1
+ # with:
+ # rechunk: 'ghcr.io/hhd-dev/rechunk:v1.0.1'
+ # ref: "localhost/${{ env.IMAGE_NAME }}:${{ env.DEFAULT_TAG }}"
+ # prev-ref: "${{ env.IMAGE_REGISTRY }}/${{ env.IMAGE_NAME }}:${{ env.DEFAULT_TAG }}"
+ # skip_compression: true
+ # version: ${{ env.CENTOS_VERSION }}
+ # labels: ${{ steps.metadata.outputs.labels }} # Rechunk strips out all the labels during build, this needs to be reapplied here with newline separator
+
+ # This is necessary so that the podman socket can find the rechunked image on its storage
+ # - name: Load in podman and tag
+ # run: |
+ # IMAGE=$(podman pull ${{ steps.rechunk.outputs.ref }})
+ # sudo rm -rf ${{ steps.rechunk.outputs.output }}
+ # for tag in ${{ steps.metadata.outputs.tags }}; do
+ # podman tag $IMAGE ${{ env.IMAGE_NAME }}:$tag
+ # done
+
# These `if` statements are so that pull requests for your custom images do not make it publish any packages under your name without you knowing
# They also check if the runner is on the default branch so that things like the merge queue (if you enable it), are going to work
- name: Login to GitHub Container Registry