From d824f352bd82ace2efa1c91c4bb2d32926100c6d Mon Sep 17 00:00:00 2001 From: Marc Sune Date: Fri, 23 Aug 2024 18:24:48 +0200 Subject: [PATCH] ci: publish docker container Publish sfunnel docker image in ghcr.io --- .github/workflows/publish_docker.yaml | 40 +++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 .github/workflows/publish_docker.yaml diff --git a/.github/workflows/publish_docker.yaml b/.github/workflows/publish_docker.yaml new file mode 100644 index 0000000..bd59d17 --- /dev/null +++ b/.github/workflows/publish_docker.yaml @@ -0,0 +1,40 @@ +name: docker-publish-ghcr + +on: + workflow_dispatch: + push: + pull_request: + +permissions: + packages: write + +env: + PLATFORMS: linux/amd64 + +jobs: + docker_build_and_publish: + runs-on: ubuntu-22.04 + steps: + - name: "Checkout sfunnel" + uses: actions/checkout@v4 + with: + path: sfunnel + fetch-depth: 0 + fetch-tags: 1 + + - name: "Set up Docker buildx" + uses: docker/setup-buildx-action@v3 + + - name: "Login to GitHub Container Registry (ghcr.io)" + uses: docker/login-action@v1 + with: + registry: ghcr.io + username: ${{github.actor}} + password: ${{secrets.GITHUB_TOKEN}} + + - name: "Build and push to ghcr" + run: | + #Cross-build + cd sfunnel + export TAG=$(git describe HEAD | sed 's/-.*$//g') + docker buildx build --platform ${PLATFORMS} --push -f docker/Dockerfile . --tag ghcr.io/${GITHUB_REPOSITORY}:${TAG}