Skip to content

Commit

Permalink
set Docker CI of OS Image
Browse files Browse the repository at this point in the history
  • Loading branch information
seeleclover authored Apr 15, 2024
1 parent e39db2d commit d49fb54
Showing 1 changed file with 64 additions and 0 deletions.
64 changes: 64 additions & 0 deletions .github/workflows/docker-ci-os.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
name: Docker CI of OS Image

on:
push:
tags:
- 'debian-*'
- 'ubuntu-*'
- 'kali-*'

jobs:
build-and-publish:
runs-on: ubuntu-latest

env:
IMAGE_NAME: docker-images

steps:
- name: Set Docker Image Name and Tag
id: system
run: |
TAG=${GITHUB_REF#refs/tags/}
IFS=- read -r IMAGE VERSION <<< $TAG
echo "image=$IMAGE" >> $GITHUB_OUTPUT
echo "version=$VERSION" >> $GITHUB_OUTPUT
- name: Checkout Code
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
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_HUB_USERNAME }}
password: ${{ secrets.DOCKER_HUB_TOKEN }}

- name: Build and Push Image
uses: docker/build-push-action@v5
with:
context: ./os/
file: ./os/Dockerfile
platforms: |
linux/amd64
linux/arm64
push: true
build-args: |
SYSTEM_IMAGE=${{ steps.system.outputs.image }}
SYSTEM_VERSION=${{ steps.system.outputs.version }}
tags: ${{ secrets.DOCKER_HUB_USERNAME }}/${{ env.IMAGE_NAME }}:${{ steps.system.outputs.image }}-${{ steps.system.outputs.version }}

- name: Update repo description
uses: peter-evans/dockerhub-description@v4
with:
username: ${{ secrets.DOCKER_HUB_USERNAME }}
password: ${{ secrets.DOCKER_HUB_TOKEN }}
repository: ${{ secrets.DOCKER_HUB_USERNAME }}/${{ env.IMAGE_NAME }}
short-description: ${{ github.event.repository.description }}

- name: Push Summary
run: echo "### Build ${{ steps.system.outputs.image }}-${{ steps.system.outputs.version }} Successfully :rocket:" >> $GITHUB_STEP_SUMMARY

0 comments on commit d49fb54

Please sign in to comment.