diff --git a/.github/workflows/docker-build.yml b/.github/workflows/docker-build.yml index 31d6840..25bd4f3 100644 --- a/.github/workflows/docker-build.yml +++ b/.github/workflows/docker-build.yml @@ -25,9 +25,9 @@ jobs: - name: Set up QEMU uses: docker/setup-qemu-action@v1 - name: Build docker image (arm64) - run: task build PLATFORM_SUFFIX=arm64 PLATFORM=linux/arm64/v8 AWS_ACC=${{ secrets.AWS_ACC }} + run: task build PLATFORM_SUFFIX=arm64 PLATFORM=linux/arm64/v8 AWS_ACC=${{ secrets.AWS_ACC }} SFRUNNER_VER=${{ github.run_number }} - name: Build docker image (amd64) - run: task build PLATFORM_SUFFIX=amd64 PLATFORM=linux/amd64 AWS_ACC=${{ secrets.AWS_ACC }} + run: task build PLATFORM_SUFFIX=amd64 PLATFORM=linux/amd64 AWS_ACC=${{ secrets.AWS_ACC }} SFRUNNER_VER=${{ github.run_number }} - name: Log into AWS uses: aws-actions/configure-aws-credentials@v1.7.0 with: diff --git a/README.md b/README.md index 2ab24c9..c0a00fa 100644 --- a/README.md +++ b/README.md @@ -106,12 +106,15 @@ However, you can install sfrunner directly, clone the repository and run the fol `sfrunner` directory ```bash -task build PLATFORM=linux/arm64/v8 PLATFORM_SUMMARY=arm64 AWS_ACC=[AWSACCOUNTID] +task build PLATFORM=linux/arm64/v8 PLATFORM_SUMMARY=arm64 AWS_ACC=[AWSACCOUNTID] SFRUNNER_VER=[SFRUNNER_VER] task install echo 'export WITH_DOCKER=true #automatically run sfrunner with docker support' >> ~/.zshrc ``` Take care to substitute the AWS account ID for the mgmt account in place of `[AWSACCOUNTID]`. +Subsitute a version number in the place of `[SFRUNNER_VER]` - this will be accessible inside +the container in the environment variable `SFRUNNER_VER`. + The example above is assuming Apple Silicon, but substitute different values for `PLATFORM` and `PLATFORM_SUMMARY` as appropriate. diff --git a/src/Dockerfile b/src/Dockerfile index 8027ca8..c9b4ebf 100644 --- a/src/Dockerfile +++ b/src/Dockerfile @@ -76,6 +76,8 @@ ENV AWS_REGION_ABBREVIATION_TYPE=fixed ARG AWS_ACC ENV DOCKER_IMAGE="${AWS_ACC}.dkr.ecr.eu-west-2.amazonaws.com/uec-sf/sfrunner" ENV DOCKER_TAG="latest" +ARG SFRUNNER_VER +ENV SFRUNNER_VER="${SFRUNNER_VER}" ENV JAVA_HOME=/usr/lib/jvm/temurin-20-jdk-arm64 diff --git a/taskfile.yml b/taskfile.yml index 9130d91..60ca593 100644 --- a/taskfile.yml +++ b/taskfile.yml @@ -14,11 +14,12 @@ tasks: PLATFORM: '{{.PLATFORM}}' PLATFORM_SUFFIX: '{{.PLATFORM_SUFFIX}}' AWS_ACC: '{{.AWS_ACC}}' + SFRUNNER_VER: '{{.SFRUNNER_VER}}' requires: - vars: [PLATFORM, PLATFORM_SUFFIX, AWS_ACC] + vars: [PLATFORM, PLATFORM_SUFFIX, AWS_ACC, SFRUNNER_VER] dir: src cmds: - - docker build -t sfrunner:latest-{{.PLATFORM_SUFFIX}} --platform {{.PLATFORM}} --build-arg AWS_ACC={{.AWS_ACC}} . + - docker build -t sfrunner:latest-{{.PLATFORM_SUFFIX}} --platform {{.PLATFORM}} --build-arg AWS_ACC={{.AWS_ACC}} --build-arg SFRUNNER_VER={{.SFRUNNER_VER}} . run: desc: Runs a shell inside the sfrunner image