feat(): more refined workflow
This commit is contained in:
49
.gitea/workflows/main.yaml
Normal file
49
.gitea/workflows/main.yaml
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
name: Gitea Docker Build Demo
|
||||||
|
run-name: Reference Branch Build 🚀
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
Test:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Check out repository code
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
- name: Setup Go
|
||||||
|
uses: actions/setup-go@v5
|
||||||
|
with:
|
||||||
|
go-version: '1.24.x'
|
||||||
|
- name: Test with the Go CLI
|
||||||
|
run: go test ./...
|
||||||
|
Build_Image:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Check out repository code
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
- name: Set up Cosign
|
||||||
|
uses: sigstore/cosign-installer@v3.10.0
|
||||||
|
- name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v3
|
||||||
|
with:
|
||||||
|
driver: remote
|
||||||
|
endpoint: tcp://buildkit-service.buildkit-service.svc:1234
|
||||||
|
- name: Log in to Docker Hub
|
||||||
|
uses: docker/login-action@v2
|
||||||
|
with:
|
||||||
|
username: ${{ secrets.DOCKER_HUB_USERNAME }}
|
||||||
|
password: ${{ secrets.DOCKER_HUB_PASSWORD }}
|
||||||
|
- name: Build and Push the Docker Image
|
||||||
|
uses: docker/build-push-action@v6
|
||||||
|
id: build-and-push
|
||||||
|
with:
|
||||||
|
context: .
|
||||||
|
file: ./Dockerfile
|
||||||
|
push: false
|
||||||
|
tags: |
|
||||||
|
lerentis/canada-kaktus:{{ github.sha }}
|
||||||
|
- name: Sign the published Docker image
|
||||||
|
env:
|
||||||
|
COSIGN_EXPERIMENTAL: "true"
|
||||||
|
run: cosign sign lerentis/canada-kaktus:${{ github.sha }}@${{ steps.build-and-push.outputs.digest }}
|
46
.gitea/workflows/release.yaml
Normal file
46
.gitea/workflows/release.yaml
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
name: Release
|
||||||
|
run-name: ${{ gitea.actor }} is Releasing a new version 🚀
|
||||||
|
on: [release]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
Test:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Check out repository code
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
- name: Setup Go
|
||||||
|
uses: actions/setup-go@v5
|
||||||
|
with:
|
||||||
|
go-version: '1.24.x'
|
||||||
|
- name: Test with the Go CLI
|
||||||
|
run: go test ./...
|
||||||
|
Build_Image:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Check out repository code
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
- name: Set up Cosign
|
||||||
|
uses: sigstore/cosign-installer@v3.10.0
|
||||||
|
- name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v3
|
||||||
|
with:
|
||||||
|
driver: remote
|
||||||
|
endpoint: tcp://buildkit-service.buildkit-service.svc:1234
|
||||||
|
- name: Log in to Docker Hub
|
||||||
|
uses: docker/login-action@v2
|
||||||
|
with:
|
||||||
|
username: ${{ secrets.DOCKER_HUB_USERNAME }}
|
||||||
|
password: ${{ secrets.DOCKER_HUB_PASSWORD }}
|
||||||
|
- name: Build and Push the Docker Image
|
||||||
|
uses: docker/build-push-action@v6
|
||||||
|
id: build-and-push
|
||||||
|
with:
|
||||||
|
context: .
|
||||||
|
file: ./Dockerfile
|
||||||
|
push: true
|
||||||
|
tags: |
|
||||||
|
lerentis/canada-kaktus:{{ github.event.release.tag_name }}
|
||||||
|
- name: Sign the published Docker image
|
||||||
|
env:
|
||||||
|
COSIGN_EXPERIMENTAL: "true"
|
||||||
|
run: cosign sign lerentis/canada-kaktus:${{ github.event.release.tag_name }}@${{ steps.build-and-push.outputs.digest }}
|
@@ -1,21 +0,0 @@
|
|||||||
when:
|
|
||||||
- event: push
|
|
||||||
branch: main
|
|
||||||
|
|
||||||
steps:
|
|
||||||
test:
|
|
||||||
image: golang:1.24
|
|
||||||
commands:
|
|
||||||
- go test ./...
|
|
||||||
pre-release:
|
|
||||||
image: woodpeckerci/plugin-docker-buildx
|
|
||||||
settings:
|
|
||||||
platforms: linux/arm64/v8,linux/amd64
|
|
||||||
repo: lerentis/woodpecker-autoscaler
|
|
||||||
tags:
|
|
||||||
- latest
|
|
||||||
- ${CI_COMMIT_SHA}
|
|
||||||
password:
|
|
||||||
from_secret: docker_hub_password
|
|
||||||
username:
|
|
||||||
from_secret: docker_hub_username
|
|
@@ -1,17 +0,0 @@
|
|||||||
when:
|
|
||||||
- event: pull_request
|
|
||||||
|
|
||||||
steps:
|
|
||||||
test:
|
|
||||||
image: golang:1.24
|
|
||||||
commands:
|
|
||||||
- go test ./...
|
|
||||||
pr-build:
|
|
||||||
image: woodpeckerci/plugin-docker-buildx
|
|
||||||
settings:
|
|
||||||
platforms: linux/arm64/v8
|
|
||||||
repo: lerentis/woodpecker-autoscaler
|
|
||||||
tags:
|
|
||||||
- latest
|
|
||||||
- ${CI_COMMIT_SHA}
|
|
||||||
dry-run: true
|
|
@@ -1,20 +0,0 @@
|
|||||||
when:
|
|
||||||
- event: tag
|
|
||||||
|
|
||||||
steps:
|
|
||||||
test:
|
|
||||||
image: golang:1.24
|
|
||||||
commands:
|
|
||||||
- go test ./...
|
|
||||||
release:
|
|
||||||
image: woodpeckerci/plugin-docker-buildx
|
|
||||||
settings:
|
|
||||||
platforms: linux/arm64/v8,linux/amd64
|
|
||||||
repo: lerentis/woodpecker-autoscaler
|
|
||||||
tags:
|
|
||||||
- latest
|
|
||||||
- ${CI_COMMIT_TAG}
|
|
||||||
password:
|
|
||||||
from_secret: docker_hub_password
|
|
||||||
username:
|
|
||||||
from_secret: docker_hub_username
|
|
Reference in New Issue
Block a user