ci: new tag format on pr (#45)
All checks were successful
lint, build and push / lint (push) Successful in 3s
lint, build and push / build (push) Successful in 13s

Reviewed-on: https://git.mgrote.net///container-images/httpd/pulls/45
Co-authored-by: Michael Grote <michael.grote@posteo.de>
Co-committed-by: Michael Grote <michael.grote@posteo.de>
This commit is contained in:
Michael Grote 2024-10-13 19:57:47 +02:00 committed by Michael Grote
parent c9946f0af4
commit d8d0af5a14

View file

@ -1,4 +1,6 @@
name: "lint, build and push" name: "lint, build and push"
# https://docs.docker.com/build/ci/github-actions/manage-tags-labels/
# Variables: https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/store-information-in-variables#default-environment-variables + https://forgejo.org/docs/latest/user/actions/#env-1
on: on:
schedule: schedule:
- cron: "32 17 * * SUN" - cron: "32 17 * * SUN"
@ -6,8 +8,6 @@ on:
branches: [ master ] branches: [ master ]
pull_request: pull_request:
# Variables: https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/store-information-in-variables#default-environment-variables + https://forgejo.org/docs/latest/user/actions/#env-1
jobs: jobs:
lint: lint:
steps: steps:
@ -41,11 +41,21 @@ jobs:
Status: ${{ job.status }} Status: ${{ job.status }}
Source: ${{ github.head_ref }} Source: ${{ github.head_ref }}
build: build:
needs: [gitleaks, hadolint] # shellcheck needs: [gitleaks, hadolint] # shellcheck
steps: steps:
- uses: https://github.com/actions/checkout@v4 - name: Checkout code
uses: actions/checkout@v4
- name: Extract repository name
id: name
run: |
echo REPO_NAME=$(echo ${GITHUB_REPOSITORY} | awk -F"/" '{print $2}') >> $GITHUB_OUTPUT
- name: Docker meta
id: meta
uses: docker/metadata-action@v5
with:
images: |
registry.mgrote.net/${{ steps.name.outputs.REPO_NAME }}
- name: Set up Docker Buildx - name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3 uses: docker/setup-buildx-action@v3
# - name: Login to Docker Hub # - name: Login to Docker Hub
@ -53,21 +63,13 @@ jobs:
# with: # with:
# username: ${{ secrets.DOCKERHUB_USERNAME }} # username: ${{ secrets.DOCKERHUB_USERNAME }}
# password: ${{ secrets.DOCKERHUB_TOKEN }} # password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Extract repository name
id: meta
run: |
echo REPO_NAME=$(echo ${GITHUB_REPOSITORY} | awk -F"/" '{print $2}') >> $GITHUB_OUTPUT
- name: Extract branch name
shell: bash
run: echo "REPO_BRANCH=${GITHUB_REF_NAME}" >> $GITHUB_OUTPUT
id: extract_branch
- name: Build and push Docker image - name: Build and push Docker image
uses: https://github.com/docker/build-push-action@v6 uses: https://github.com/docker/build-push-action@v6
with: with:
context: . context: .
file: ./Dockerfile file: ./Dockerfile
push: true push: true
tags: "registry.mgrote.net/${{ steps.meta.outputs.REPO_NAME }}:latest,registry.mgrote.net/${{ steps.meta.outputs.REPO_NAME }}:${{ steps.extract_branch.outputs.REPO_BRANCH }}" tags: ${{ steps.meta.outputs.tags }}
- name: Send notification - name: Send notification
uses: dawidd6/action-send-mail@v3 uses: dawidd6/action-send-mail@v3
if: failure() if: failure()