Compare commits

..

4 Commits

Author SHA1 Message Date
CrazyMax
fe8520559f s3 patch 2025-11-20 01:36:37 +01:00
CrazyMax
f12a6112f8 install pkgs 2025-11-19 19:32:45 +01:00
CrazyMax
410bc3c68c install pkgs 2025-11-19 19:31:19 +01:00
CrazyMax
6909fbc5b1 ci(e2e): test s3 cache exporter
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-11-13 19:47:38 +01:00
4 changed files with 39 additions and 6 deletions

View File

@@ -25,6 +25,10 @@ on:
password_secret:
required: false
type: string
cache:
required: false
type: string
default: registry
env:
HARBOR_VERSION: v2.13.2
@@ -46,7 +50,7 @@ jobs:
buildkit_image: moby/buildkit:buildx-stable-1
-
buildx_version: https://github.com/docker/buildx.git#master
buildkit_image: moby/buildkit:master
buildkit_image: crazymax/buildkit:s3patch
steps:
-
name: Checkout
@@ -56,6 +60,24 @@ jobs:
if: inputs.type == 'local'
run: |
cat ./.github/e2e/${{ inputs.id }}/env >> $GITHUB_ENV
-
name: Set up outputs
uses: actions/github-script@v8
env:
INPUT_SLUG: ${{ env.REGISTRY_SLUG || inputs.slug }}
INPUT_CACHE: ${{ inputs.cache }}
with:
script: |
const inpSlug = core.getInput('slug');
const inpCache = core.getInput('cache');
if (inpCache === 'registry') {
core.exportVariable('CACHE_FROM', `type=registry,ref=${inpSlug}:master`);
core.exportVariable('CACHE_TO', 'type=inline');
} else if (inpCache === 's3') {
const cacheName = inpSlug.replace(/[^a-zA-Z0-9]/g, '-').toLowerCase();
core.exportVariable('CACHE_FROM', `type=s3,region=us-east-2,bucket=buildkit-s3-cache-test,name=${cacheName}`);
core.exportVariable('CACHE_TO', `type=s3,region=us-east-2,bucket=buildkit-s3-cache-test,name=${cacheName},mode=max`);
}
-
name: Set up BuildKit config
run: |
@@ -121,8 +143,12 @@ jobs:
push: ${{ github.event_name != 'pull_request' }}
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
cache-from: type=registry,ref=${{ env.REGISTRY_SLUG || inputs.slug }}:master
cache-to: type=inline
cache-from: ${{ env.CACHE_FROM }}
cache-to: ${{ env.CACHE_TO }}
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_S3_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_S3_SECRET_ACCESS_KEY }}
AWS_SESSION_TOKEN: ${{ secrets.AWS_S3_SESSION_TOKEN }}
-
name: Inspect image
run: |

View File

@@ -25,6 +25,11 @@ jobs:
name: Distribution
id: distribution
type: local
-
name: Distribution (s3 cache)
id: distribution
type: local
cache: s3
-
name: Docker Hub
registry: ''
@@ -104,4 +109,5 @@ jobs:
slug: ${{ matrix.slug }}
username_secret: ${{ matrix.username_secret }}
password_secret: ${{ matrix.password_secret }}
cache: ${{ matrix.cache || 'registry' }}
secrets: inherit

View File

@@ -1,5 +1,6 @@
# syntax=docker/dockerfile:1
FROM --platform=$BUILDPLATFORM golang:alpine AS build
RUN apk add --no-cache ca-certificates go nodejs rust cargo
ARG TARGETPLATFORM
ARG BUILDPLATFORM

View File

@@ -4920,14 +4920,14 @@ __metadata:
linkType: hard
"js-yaml@npm:^3.13.1":
version: 3.14.2
resolution: "js-yaml@npm:3.14.2"
version: 3.14.1
resolution: "js-yaml@npm:3.14.1"
dependencies:
argparse: ^1.0.7
esprima: ^4.0.0
bin:
js-yaml: bin/js-yaml.js
checksum: 626fc207734a3452d6ba84e1c8c226240e6d431426ed94d0ab043c50926d97c509629c08b1d636f5d27815833b7cfd225865631da9fb33cb957374490bf3e90b
checksum: bef146085f472d44dee30ec34e5cf36bf89164f5d585435a3d3da89e52622dff0b188a580e4ad091c3341889e14cb88cac6e4deb16dc5b1e9623bb0601fc255c
languageName: node
linkType: hard