mirror of
https://github.com/netbirdio/netbird-kubeapi-proxy.git
synced 2026-09-23 09:34:58 -07:00
Merge pull request #2 from netbirdio/feature/gh-workflows
Add GitHub workflows and dependabot configuration
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
version: 2
|
||||
updates:
|
||||
- package-ecosystem: "github-actions"
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
open-pull-requests-limit: 15
|
||||
labels:
|
||||
- "changelog/ignore"
|
||||
groups:
|
||||
github-actions:
|
||||
patterns:
|
||||
- "*"
|
||||
- package-ecosystem: "gomod"
|
||||
directories:
|
||||
- "/"
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
open-pull-requests-limit: 15
|
||||
labels:
|
||||
- "changelog/dependencies"
|
||||
@@ -0,0 +1,25 @@
|
||||
changelog:
|
||||
exclude-labels:
|
||||
- changelog/ignore
|
||||
categories:
|
||||
- title: Added
|
||||
labels:
|
||||
- changelog/added
|
||||
- title: Changed
|
||||
labels:
|
||||
- changelog/changed
|
||||
- title: Fixed
|
||||
labels:
|
||||
- changelog/fixed
|
||||
- title: Deprecated
|
||||
labels:
|
||||
- changelog/deprecated
|
||||
- title: Removed
|
||||
labels:
|
||||
- changelog/removed
|
||||
- title: Security
|
||||
labels:
|
||||
- changelog/security
|
||||
- title: Dependencies
|
||||
labels:
|
||||
- changelog/dependencies
|
||||
@@ -0,0 +1,20 @@
|
||||
name: changelog
|
||||
on:
|
||||
pull_request:
|
||||
types: [opened, labeled, unlabeled, synchronize]
|
||||
permissions:
|
||||
pull-requests: read
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
jobs:
|
||||
labels:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check changelog label
|
||||
uses: mheap/github-action-required-labels@0ac283b4e65c1fb28ce6079dea5546ceca98ccbe #v5.5.2
|
||||
with:
|
||||
mode: exactly
|
||||
count: 1
|
||||
use_regex: true
|
||||
labels: "changelog/.*"
|
||||
@@ -0,0 +1,33 @@
|
||||
name: go
|
||||
on:
|
||||
pull_request:
|
||||
push:
|
||||
branches:
|
||||
- 'main'
|
||||
jobs:
|
||||
lint:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd #v6.0.2
|
||||
- name: Setup Go
|
||||
uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c #v6.4.0
|
||||
with:
|
||||
go-version-file: go.mod
|
||||
- name: Run linter
|
||||
uses: golangci/golangci-lint-action@1e7e51e771db61008b38414a730f564565cf7c20 #v9.2.0
|
||||
test:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd #v6.0.2
|
||||
- name: Setup Go
|
||||
uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c #v6.4.0
|
||||
with:
|
||||
go-version-file: go.mod
|
||||
- name: Verify go mod is not dirty
|
||||
run: |
|
||||
go mod tidy
|
||||
git diff --exit-code
|
||||
- name: Run unit tests
|
||||
run: make -B test-unit
|
||||
@@ -0,0 +1,44 @@
|
||||
name: release
|
||||
on:
|
||||
release:
|
||||
types: [published]
|
||||
permissions:
|
||||
contents: read
|
||||
packages: write
|
||||
id-token: write
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
jobs:
|
||||
release:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Clone the code
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd #v6.0.2
|
||||
- name: Setup Go
|
||||
uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c #v6.4.0
|
||||
with:
|
||||
go-version-file: go.mod
|
||||
- name: Set up Docker
|
||||
uses: docker/setup-docker-action@b2189fbf2a6592b51fee7cdd93ee2bfaeba733db #v5.1.0
|
||||
with:
|
||||
daemon-config: |
|
||||
{
|
||||
"features": {
|
||||
"containerd-snapshotter": true
|
||||
}
|
||||
}
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd #v4.0.0
|
||||
with:
|
||||
driver: docker
|
||||
- name: Login to GitHub Container Registry
|
||||
uses: docker/login-action@4907a6ddec9925e35a0a9e82d7399ccc52663121 #v4.1.0
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Build and push image
|
||||
run: |
|
||||
IMG_REF=$(make build-image-multiarch IMG_REPOSITORY=${{ github.repository_owner }}/netbird-kubeapi-proxy IMG_TAG=${{ github.event.release.tag_name }}) || exit 1
|
||||
docker push ${IMG_REF}
|
||||
Reference in New Issue
Block a user