hihg-um / docker-utils

OS and Development Utilities
GNU General Public License v3.0
0 stars 1 forks source link

Util update #4

Closed thebigcorporation closed 4 weeks ago

thebigcorporation commented 4 weeks ago

Build updates; add mount-s3 utility from Amazon

 - move labels to the end of each Docker file to minimize
   rebuild time
 - update Make file to latest standards
 - add AWS provided Mountpoint (mount-s3) utility from:
        https://docs.aws.amazon.com
        /AmazonS3/latest/userguide/mountpoint-installation.html
 - split AWS and Session manager into multi-stage build
 - consistently clean up apt artifacts throughout

GH Actions improvements and fixes:

 - image_build fix: ignore tags

     - when a tag is pushed, the same issue as fixed in d7644ac
       occurs, because the tag push also triggers an image build
       via the push trigger
     - it follows, that the image build should ignore tag pushes,
      since the tag push also builds it's own image, and thus
       the image-build workflow becomes unnecessary and redundant
     - we do this by telling the push trigger to ignore-tags

- release_build fix

     - Fix:
       "Error: fatal: Cannot fetch both ...3fe48ceaf and
       refs/tags/v0.2.12 to refs/tags/v0.2.12
     - If a tag is being pushed, the checkout directive
       with: fetch-tags: true causes this error
     - Since the release build is triggered by a tag, the checkout
       step "automagically" also clones tags, and the release build
       works without the with: fetch-tags, and fails per above with
       that directive
     - bit counter-intuitive, and seems to be a recent fix, that
       does not document this quirk

 - Update GH actions: set the image repo, update API calls to v4

Fixup docker release and apptainer build

 - Add a push for images tagged :latest
 - Fix apptainer build output

Update make environment; properly label images

Add CI/CD

Add README

Move gnupg to base image

Add mount-s3 container; add SPDX tags; use base labels

 - add the native Amazon S3 mount functionality (x86_64 only)
 - if base image label is unchanged we can inherit from the base
 - add SPDX License tags where missing in files