From fc909d53db9e13d8421e1d8165b20d472eac33ef Mon Sep 17 00:00:00 2001 From: 0xFelix Date: Mon, 25 Nov 2024 20:40:25 +0100 Subject: [PATCH] ci: Add GH workflow to build and push container image --- .github/workflows/build_and_push.yml | 30 ++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 .github/workflows/build_and_push.yml diff --git a/.github/workflows/build_and_push.yml b/.github/workflows/build_and_push.yml new file mode 100644 index 0000000..c2b6cab --- /dev/null +++ b/.github/workflows/build_and_push.yml @@ -0,0 +1,30 @@ +name: Build and push container image + +on: + push: + branches: + - main + workflow_dispatch: + +jobs: + build_and_push: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + - name: Install podman + run: | + sudo apt-get update + sudo apt-get install -y podman + - name: Get short commit SHA + run: echo "SHORT_SHA=$(echo ${GITHUB_SHA} | cut -c1-7)" >> $GITHUB_ENV + - name: Build container image + run: | + podman build -t ghcr.io/${{ github.repository_owner }}/${{ github.repository }}:${{ env.SHORT_SHA }} -t ghcr.io/${{ github.repository_owner }}/${{ github.repository }}:latest . + - name: Login to ghcr.io + run: | + echo ${{ secrets.GITHUB_TOKEN }} | podman login ghcr.io --username ${{ github.actor }} --password-stdin + - name: Push container image + run: | + podman push ghcr.io/${{ github.repository_owner }}/${{ github.repository }}:${{ env.SHORT_SHA }} + podman push ghcr.io/${{ github.repository_owner }}/${{ github.repository }}:latest