From 26087cc55aea2dd964548d8e0d9d21da9864b9e7 Mon Sep 17 00:00:00 2001 From: Shadowy Super Coder Date: Fri, 16 Aug 2024 13:41:03 -0600 Subject: [PATCH 1/5] add workflow to build and push image to ghcr --- .github/workflows/ghcr.yml | 39 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 .github/workflows/ghcr.yml diff --git a/.github/workflows/ghcr.yml b/.github/workflows/ghcr.yml new file mode 100644 index 0000000..a2521ea --- /dev/null +++ b/.github/workflows/ghcr.yml @@ -0,0 +1,39 @@ +name: ghcr ci + +env: + DOTNET_VERSION: '6.0.x' + IMAGE_NAME: 'btc-rpc-proxy' + +on: + push: + tags: + - v* + +jobs: + push-image: + runs-on: ubuntu-latest + permissions: + packages: write + contents: read + steps: + - uses: actions/checkout@v4 + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + - name: Build image + run: docker buildx build . --tag $IMAGE_NAME --label "runnumber=${GITHUB_RUN_ID}" + - name: Log in to registry + run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin + + - name: Push image + run: | + IMAGE_ID=ghcr.io/${{ github.repository_owner }}/$IMAGE_NAME + IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]') + VERSION=$(echo "${{ github.ref }}" | sed -e 's,.*/\(.*\),\1,') + [[ "${{ github.ref }}" == "refs/tags/"* ]] && VERSION=$(echo $VERSION | sed -e 's/^v//') + [ "$VERSION" == "main" ] && VERSION=latest + echo IMAGE_ID=$IMAGE_ID + echo VERSION=$VERSION + docker tag $IMAGE_NAME $IMAGE_ID:$VERSION + docker push $IMAGE_ID:$VERSION + - name: Clean up Docker images + run: docker image prune -f \ No newline at end of file From 598d08082ca4961c31d8369d646aa41a737a4345 Mon Sep 17 00:00:00 2001 From: Shadowy Super Coder Date: Fri, 16 Aug 2024 14:00:43 -0600 Subject: [PATCH 2/5] add --load option --- .github/workflows/ghcr.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ghcr.yml b/.github/workflows/ghcr.yml index a2521ea..70033de 100644 --- a/.github/workflows/ghcr.yml +++ b/.github/workflows/ghcr.yml @@ -20,7 +20,7 @@ jobs: - name: Set up Docker Buildx uses: docker/setup-buildx-action@v2 - name: Build image - run: docker buildx build . --tag $IMAGE_NAME --label "runnumber=${GITHUB_RUN_ID}" + run: docker buildx build . --tag $IMAGE_NAME --label "runnumber=${GITHUB_RUN_ID}" --load - name: Log in to registry run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin From 7024fb8e5d9d995f87926bd96a2e27beacb53c02 Mon Sep 17 00:00:00 2001 From: Shadowy Super Coder Date: Fri, 16 Aug 2024 14:01:12 -0600 Subject: [PATCH 3/5] change 'main' to 'master' --- .github/workflows/ghcr.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ghcr.yml b/.github/workflows/ghcr.yml index 70033de..45f942b 100644 --- a/.github/workflows/ghcr.yml +++ b/.github/workflows/ghcr.yml @@ -30,7 +30,7 @@ jobs: IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]') VERSION=$(echo "${{ github.ref }}" | sed -e 's,.*/\(.*\),\1,') [[ "${{ github.ref }}" == "refs/tags/"* ]] && VERSION=$(echo $VERSION | sed -e 's/^v//') - [ "$VERSION" == "main" ] && VERSION=latest + [ "$VERSION" == "master" ] && VERSION=latest echo IMAGE_ID=$IMAGE_ID echo VERSION=$VERSION docker tag $IMAGE_NAME $IMAGE_ID:$VERSION From 8ffe7bac0e4c0bf109704bcf0656c69f3c43d8e0 Mon Sep 17 00:00:00 2001 From: Shadowy Super Coder Date: Fri, 16 Aug 2024 14:17:05 -0600 Subject: [PATCH 4/5] don't run action on PR --- .github/workflows/ghcr.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ghcr.yml b/.github/workflows/ghcr.yml index 45f942b..0f0c996 100644 --- a/.github/workflows/ghcr.yml +++ b/.github/workflows/ghcr.yml @@ -8,6 +8,7 @@ on: push: tags: - v* + pull_request: [] jobs: push-image: From a0ce9671c455cf37c8bdeee3fa59604decb2bb42 Mon Sep 17 00:00:00 2001 From: Shadowy Super Coder Date: Fri, 16 Aug 2024 15:08:46 -0600 Subject: [PATCH 5/5] remove unused env var --- .github/workflows/ghcr.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/ghcr.yml b/.github/workflows/ghcr.yml index 0f0c996..1e8c099 100644 --- a/.github/workflows/ghcr.yml +++ b/.github/workflows/ghcr.yml @@ -1,7 +1,6 @@ name: ghcr ci env: - DOTNET_VERSION: '6.0.x' IMAGE_NAME: 'btc-rpc-proxy' on: