Skip to content

fix: deliver status button #77

fix: deliver status button

fix: deliver status button #77

Workflow file for this run

name: Release Debian package
on:
push:
tags:
- "v*.*.*" # run on semver tags
- "v*.*.*-*" # run on pre-release tags
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v2
- name: Install dependencies
run: bun install
- name: Build Next.js application
run: bun run build
- name: Extract version from tag
id: extract_version
run: echo "VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_ENV
- name: Update control file version
run: |
sed -i "s/^Version: .*/Version: ${VERSION}/" debian/DEBIAN/control
cat debian/DEBIAN/control
- name: Prepare Debian package structure
run: |
cp -rT .next/standalone debian/usr/share/dashboard
cp -r .next/static debian/usr/share/dashboard/.next
cp -r public debian/usr/share/dashboard
- name: Build Debian package
run: dpkg-deb --build debian relayer-admin-dashboard.deb
- name: Upload Debian package
uses: actions/upload-artifact@v4
with:
name: relayer-admin-dashboard-debian
path: relayer-admin-dashboard.deb
- name: Release
uses: softprops/action-gh-release@v2
with:
files: relayer-admin-dashboard.deb
generate_release_notes: true
make_latest: true
prerelease: ${{ contains(github.ref_name, '-') }}
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
with:
platforms: linux/amd64,linux/arm64
- name: Setup Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to DockerHub
uses: docker/login-action@v3
with:
username: ${{ vars.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build relayer image
id: build-and-push-relayer
uses: docker/build-push-action@v6
with:
context: https://github.com/icon-project/relayer-docker.git#:admin-dashboard
platforms: linux/amd64,linux/arm64
push: true
build-args: |
- DASHBOARD_VERSION=${{ github.ref_name }}
tags: |
iconcommunity/relayer-admin-dashboard:latest
iconcommunity/relayer-admin-dashboard:${{ github.ref_name }}
- name: Install cosign
uses: sigstore/cosign-installer@v3
- name: Sign relayer image
env:
COSIGN_PRIVATE_KEY: ${{ secrets.COSIGN_PRIVATE_KEY }}
COSIGN_PASSWORD: ${{ secrets.COSIGN_PASSWORD }}
COSIGN_YES: true
run: |
cosign sign --key env://COSIGN_PRIVATE_KEY iconcommunity/relayer-admin-dashboard:latest
cosign sign --key env://COSIGN_PRIVATE_KEY iconcommunity/relayer-admin-dashboard:${{ github.ref_name }}