add CI
This commit is contained in:
53
.gitea/workflows/release.yml
Normal file
53
.gitea/workflows/release.yml
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
name: release
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
tags:
|
||||||
|
- "v*"
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
goos: [linux]
|
||||||
|
arch: [amd64] # [amd64, arm64]
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Setup Go
|
||||||
|
uses: actions/setup-go@v5
|
||||||
|
with:
|
||||||
|
go-version: "1.22.x"
|
||||||
|
cache: true
|
||||||
|
|
||||||
|
- name: Build (linux/musl)
|
||||||
|
env:
|
||||||
|
GOOS: ${{ matrix.goos }}
|
||||||
|
GOARCH: ${{ matrix.arch }}
|
||||||
|
CGO_ENABLED: "0"
|
||||||
|
VERSION: ${{ github.ref_name }}
|
||||||
|
run: |
|
||||||
|
set -eux
|
||||||
|
mkdir -p dist
|
||||||
|
BIN="kc-policy-${GOOS}-${GOARCH}"
|
||||||
|
go build \
|
||||||
|
-trimpath \
|
||||||
|
-ldflags="-s -w -X main.version=${VERSION}" \
|
||||||
|
-o "dist/${BIN}" ./cmd/kc-policy
|
||||||
|
tar -C dist -czf "dist/${BIN}.tar.gz" "${BIN}"
|
||||||
|
sha256sum "dist/${BIN}.tar.gz" >> dist/checksums.txt
|
||||||
|
|
||||||
|
- name: Upload assets to Gitea release
|
||||||
|
uses: https://gitea.com/actions/gitea-release-action@v1
|
||||||
|
with:
|
||||||
|
files: |
|
||||||
|
dist/*.tar.gz
|
||||||
|
dist/*.sha256
|
||||||
|
generate_release_notes: true
|
||||||
|
env:
|
||||||
|
GITEA_TOKEN: ${{ github.token }}
|
||||||
@@ -2,6 +2,7 @@ package main
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
|
"fmt"
|
||||||
"log"
|
"log"
|
||||||
"os"
|
"os"
|
||||||
"os/signal"
|
"os/signal"
|
||||||
@@ -11,7 +12,14 @@ import (
|
|||||||
"kc-policy/internal/kcpolicy"
|
"kc-policy/internal/kcpolicy"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
var version = "dev"
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
|
if len(os.Args) > 1 && os.Args[1] == "--version" {
|
||||||
|
fmt.Println(version)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
cfgPath := "/etc/kc-policy/config.yaml"
|
cfgPath := "/etc/kc-policy/config.yaml"
|
||||||
if len(os.Args) >= 2 {
|
if len(os.Args) >= 2 {
|
||||||
cfgPath = os.Args[1]
|
cfgPath = os.Args[1]
|
||||||
|
|||||||
Reference in New Issue
Block a user