Skip to content

fix: upgrade deb pkg name #41

fix: upgrade deb pkg name

fix: upgrade deb pkg name #41

Workflow file for this run

name: Build, Scan & Publish Docker Image
on:
push:
branches: [master]
pull_request:
branches: [master]
workflow_dispatch:
concurrency:
group: docker-bitlbee-${{ github.ref }}
cancel-in-progress: true
env:
IMAGE_NAME: docker-bitlbee
DOCKERHUB_NAMESPACE: ${{ secrets.DOCKER_USERNAME }}
GHCR_NAMESPACE: ghcr.io/${{ github.repository_owner }}
jobs:
lint:
name: Lint & Static Analysis
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Hadolint (Dockerfile)
uses: hadolint/hadolint-action@v3.1.0
with:
dockerfile: Dockerfile
- name: ShellCheck
uses: ludeeus/action-shellcheck@master
- name: KubeLinter
uses: stackrox/kube-linter-action@v1
with:
directory: k8s
config: .kube-linter/config.yaml
build:
name: Build & Push Image
runs-on: ubuntu-latest
needs: lint
permissions:
contents: read
packages: write
security-events: write
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub
if: github.event_name != 'pull_request'
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Login to GHCR
if: github.event_name != 'pull_request'
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Extract Docker metadata
id: meta
uses: docker/metadata-action@v5
with:
images: |
${{ env.DOCKERHUB_NAMESPACE }}/${{ env.IMAGE_NAME }}
${{ env.GHCR_NAMESPACE }}/${{ env.IMAGE_NAME }}
tags: |
type=raw,value=latest
type=sha
type=ref,event=branch
- name: Build & Push
uses: docker/build-push-action@v5
with:
context: .
file: Dockerfile
platforms: linux/amd64,linux/arm64
push: ${{ github.event_name != 'pull_request' }}
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
cache-from: type=gha
cache-to: type=gha,mode=max
security:
name: Security Scan (Trivy)
runs-on: ubuntu-latest
needs: build
if: github.event_name != 'pull_request'
steps:
- name: Trivy scan
uses: aquasecurity/trivy-action@0.20.0
with:
image-ref: ${{ secrets.DOCKER_USERNAME }}/docker-bitlbee:latest
format: sarif
output: trivy-results.sarif
ignore-unfixed: true
vuln-type: os,library
severity: CRITICAL,HIGH
- name: Upload SARIF to GitHub Security
uses: github/codeql-action/upload-sarif@v3
with:
sarif_file: trivy-results.sarif