first working version

This commit is contained in:
Thijs van Loef
2024-01-19 14:58:51 +01:00
parent c98d992450
commit 85f0027f08
12 changed files with 306 additions and 1 deletions

36
.github/workflows/docker-hub.yml vendored Normal file
View File

@@ -0,0 +1,36 @@
name: Docker-Image-Dev
on:
push:
branches: [ main ]
jobs:
push:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Login to DockerHub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Docker meta
id: meta
uses: docker/metadata-action@v3
with:
# list of Docker images to use as base name for tags
images: |
${{ github.repository }}
# generate Docker tags based on the following events/attributes
tags: |
type=raw,value=dev
# always generate latest tag on push
- name: Build and push to DockerHub
id: docker_build
uses: docker/build-push-action@v2
with:
push: true
tags: |
${{ steps.meta.outputs.tags }}

30
.github/workflows/linting.yml vendored Normal file
View File

@@ -0,0 +1,30 @@
name: Linting
on: [pull_request]
jobs:
shellcheck:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Run Shellcheck
uses: azohra/shell-linter@latest
with:
severity: "error"
dockerlint:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- uses: hadolint/hadolint-action@v2.0.0
with:
dockerfile: Dockerfile
lint: 'hadolint'
failure-threshold: error
test-build:
runs-on: ubuntu-latest
steps:
- name: Build the Image
uses: docker/build-push-action@v2
with:
push: false

38
.github/workflows/release.yml vendored Normal file
View File

@@ -0,0 +1,38 @@
name: Release
on:
release:
types: [published]
jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Login to DockerHub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Docker meta
id: meta
uses: docker/metadata-action@v3
with:
# list of Docker images to use as base name for tags
images: |
${{ github.repository }}
# generate Docker tags based on the following events/attributes
tags: |
type=semver,pattern=v{{version}}
type=semver,pattern=v{{major}}.{{minor}}
type=semver,pattern=v{{major}}
# always generate latest tag on push
flavor: |
latest=true
- name: Build and push to DockerHub & GitHub Packages
id: docker_build
uses: docker/build-push-action@v2
with:
push: true
tags: ${{ steps.meta.outputs.tags }}