Skip to content

format dependabot config #127

format dependabot config

format dependabot config #127

Workflow file for this run

name: release
on:
push:
branches:
- "main"
tags:
- "v*"
permissions:
contents: write
id-token: write
packages: write
jobs:
# ------------------------------
goreleaser-check-pkgs:
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main'
needs:
- goreleaser
env:
DOCKER_CLI_EXPERIMENTAL: "enabled"
strategy:
matrix:
format:
- deb
- rpm
- apk
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: arduino/setup-task@v2
with:
version: 3.x
repo-token: ${{ secrets.GITHUB_TOKEN }}
- uses: docker/setup-qemu-action@v3
- uses: actions/cache@v4
with:
path: |
./dist/*.deb
./dist/*.rpm
./dist/*.apk
key: ${{ github.ref }}
- run: task dottie:test:${{ matrix.format }}
# ------------------------------
goreleaser:
runs-on: ubuntu-latest
env:
DOCKER_CLI_EXPERIMENTAL: "enabled"
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: arduino/setup-task@v2
with:
version: 3.x
repo-token: ${{ secrets.GITHUB_TOKEN }}
- uses: docker/setup-qemu-action@v3
- uses: docker/setup-buildx-action@v3
- name: setup-snapcraft
# FIXME: the mkdirs are a hack for https://github.com/goreleaser/goreleaser/issues/1715
run: |
sudo apt-get update
sudo apt-get -yq --no-install-suggests --no-install-recommends install snapcraft
mkdir -p $HOME/.cache/snapcraft/download
mkdir -p $HOME/.cache/snapcraft/stage-packages
- uses: actions/setup-go@v5
with:
go-version: ~1.21
- uses: actions/cache@v4
with:
path: |
./dist/*.deb
./dist/*.rpm
./dist/*.apk
key: ${{ github.ref }}
- uses: actions/cache@v4
with:
path: |
~/.cache/go-build
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
save-always: true
restore-keys: |
${{ runner.os }}-go-
- uses: sigstore/cosign-installer@v3.4.0
- uses: anchore/sbom-action/download-syft@v0.15.8
- name: ghcr-login
if: startsWith(github.ref, 'refs/tags/v')
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Install GoReleaser
uses: goreleaser/goreleaser-action@v5
with:
install-only: true
- name: goreleaser-release
env:
AUR_KEY: "${{ secrets.AUR_KEY }}"
FURY_PUSH_TOKEN: "${{ secrets.FURY_PUSH_TOKEN }}"
GITHUB_TOKEN: ${{ secrets.GH_PAT }}
SNAPCRAFT_STORE_CREDENTIALS: "${{ secrets.SNAPCRAFT_LOGIN }}"
run: task goreleaser