43 lines
1.7 KiB
YAML
43 lines
1.7 KiB
YAML
name: ci/cd to build and push docker image wafwoof in private registry
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
# Be carefull, conflict with package-deb *.*.*, don't use more than on dot *.* (ex: 2.5-runner)
|
|
- '*-waf'
|
|
|
|
env:
|
|
GIT_REPO: wafw00f
|
|
GIT_SERVER: https://github.com/EnableSecurity
|
|
|
|
jobs:
|
|
build-and-push-public:
|
|
#! see on runner /data/.runner to add label (test => test:docker://debian:bullseye)
|
|
# runs-on: test
|
|
# container: debian:bullseye
|
|
# runs-on: ubuntu-latest
|
|
# container: node:16-bullseye
|
|
runs-on: ubuntu-runner
|
|
container:
|
|
image: docker
|
|
|
|
steps:
|
|
- name: Show Information
|
|
run: echo "Runner ${{ runner.os }} working on repository ${{ gitea.repository }} and on tag ${{ gitea.ref_name }}"
|
|
|
|
- name: clone & build & push
|
|
run: |
|
|
git clone ${{ env.GIT_SERVER }}/${{ env.GIT_REPO }}
|
|
cd ${{ env.GIT_REPO }}
|
|
docker buildx b . -t ${{ env.GIT_REPO }}
|
|
- name: login & push
|
|
run: |
|
|
echo "${{ secrets.REGISTRY_DOCKER_PASS }}" | docker login -u ${{ secrets.REGISTRY_DOCKER_USER }} --password-stdin ${{ vars.REGISTRY_DOCKER }}
|
|
export VERSION=$(echo "${{ gitea.ref_name }}" | cut -d '-' -f 1)
|
|
docker tag ${{ env.GIT_REPO }} ${{ vars.REGISTRY_DOCKER }}/${{ GIT_USER_REPO }}/${{ env.GIT_REPO }}:$VERSION
|
|
docker tag ${{ env.GIT_REPO }} ${{ vars.REGISTRY_DOCKER }}/${{ GIT_USER_REPO }}/${{ env.GIT_REPO }}:latest
|
|
docker push ${{ vars.REGISTRY_DOCKER }}/${{ GIT_USER_REPO }}/${{ env.GIT_REPO }}:$VERSION
|
|
docker push ${{ vars.REGISTRY_DOCKER }}/${{ GIT_USER_REPO }}/${{ env.GIT_REPO }}:latest
|
|
|
|
- name: Output
|
|
run: echo "Runner push on ${{ vars.REGISTRY_DOCKER }} image ${{ env.GIT_REPO }} tag ${{ gitea.ref_name }}" |