hypervibed
This commit is contained in:
@@ -0,0 +1,94 @@
|
||||
name: Build and Package dnc
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- 'v*'
|
||||
pull_request:
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
version:
|
||||
description: 'Version to build (e.g., 0.3.0)'
|
||||
required: false
|
||||
default: ''
|
||||
|
||||
env:
|
||||
KITTY_VERSION: '0.46.2'
|
||||
GO_VERSION: '1.22'
|
||||
|
||||
jobs:
|
||||
build-packages:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Determine version
|
||||
id: version
|
||||
shell: bash
|
||||
run: |
|
||||
if [ -n "${{ inputs.version }}" ]; then
|
||||
VERSION="${{ inputs.version }}"
|
||||
elif [[ "${{ github.ref }}" == refs/tags/v* ]]; then
|
||||
VERSION="${GITHUB_REF_NAME#v}"
|
||||
else
|
||||
VERSION="0.2.0-$(git rev-parse --short HEAD)"
|
||||
fi
|
||||
echo "VERSION=$VERSION" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Download kitty binary
|
||||
run: |
|
||||
set -e
|
||||
mkdir -p build
|
||||
KITTY_ARCHIVE="kitty-${KITTY_VERSION}-x86_64.txz"
|
||||
KITTY_URL="https://github.com/kovidgoyal/kitty/releases/download/v${KITTY_VERSION}/${KITTY_ARCHIVE}"
|
||||
echo "Downloading kitty from: $KITTY_URL"
|
||||
curl -fL "$KITTY_URL" -o "build/$KITTY_ARCHIVE"
|
||||
tar -xJf "build/$KITTY_ARCHIVE" -C build/
|
||||
mv build/kitty.app build/kitty
|
||||
ls -la build/
|
||||
ls -la build/kitty/bin/
|
||||
|
||||
- name: Set up Go
|
||||
uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: '${{ env.GO_VERSION }}'
|
||||
|
||||
- name: Install nfpm
|
||||
run: |
|
||||
go install github.com/goreleaser/nfpm/v2/cmd/nfpm@latest
|
||||
export PATH="$PATH:$(go env GOPATH)/bin"
|
||||
nfpm --version
|
||||
|
||||
- name: Build DEB package
|
||||
env:
|
||||
VERSION: '${{ steps.version.outputs.VERSION }}'
|
||||
run: |
|
||||
export PATH="$PATH:$(go env GOPATH)/bin"
|
||||
mkdir -p dist
|
||||
nfpm package \
|
||||
--packager deb \
|
||||
--config packaging/nfpm.yaml \
|
||||
--target dist/
|
||||
|
||||
- name: Build RPM package
|
||||
env:
|
||||
VERSION: '${{ steps.version.outputs.VERSION }}'
|
||||
run: |
|
||||
export PATH="$PATH:$(go env GOPATH)/bin"
|
||||
mkdir -p dist
|
||||
nfpm package \
|
||||
--packager rpm \
|
||||
--config packaging/nfpm.yaml \
|
||||
--target dist/
|
||||
|
||||
- name: List artifacts
|
||||
run: |
|
||||
echo "Packages built:"
|
||||
ls -lh dist/
|
||||
|
||||
- name: Upload packages as artifacts
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: dnc-packages
|
||||
path: dist/
|
||||
Reference in New Issue
Block a user