Some checks failed
Auto Labeler / Apply labels based on changed files (pull_request_target) Successful in 3s
Documentation / Build and Deploy Documentation (pull_request) Successful in 1m4s
Checks / Prek / Check changed files (pull_request) Successful in 5s
Checks / Prek / Pre-commit & Formatting (pull_request) Successful in 1m10s
Checks / Prek / Clippy and Cargo Tests (pull_request) Has been skipped
Checks / Changelog / Check changelog is added (pull_request_target) Successful in 6s
Documentation / Build and Deploy Documentation (push) Successful in 57s
Checks / Prek / Check changed files (push) Successful in 5s
Checks / Prek / Pre-commit & Formatting (push) Successful in 2m4s
Deploy Element Web / 🏗️ Build and Deploy (pull_request) Successful in 7m4s
Deploy Element Web / 🏗️ Build and Deploy (push) Successful in 8m13s
Checks / Prek / Clippy and Cargo Tests (push) Has been skipped
Release Docker Image / Build linux-amd64 (release) (push) Successful in 13m28s
Release Docker Image / Build linux-arm64 (release) (push) Successful in 9m57s
Release Docker Image / Create Multi-arch Release Manifest (push) Successful in 15s
Release Docker Image / Build linux-arm64 (max-perf) (push) Failing after 3m14s
Release Docker Image / Build linux-amd64 (max-perf) (push) Successful in 32m14s
Release Docker Image / Create Max-Perf Manifest (push) Has been skipped
Release Docker Image / Mirror Images (push) Has been skipped
Release Docker Image / Release Binaries (push) Has been skipped
71 lines
2 KiB
YAML
71 lines
2 KiB
YAML
name: Build / Static via Nix
|
|
|
|
concurrency:
|
|
group: "build-nix-${{ forge.ref }}"
|
|
cancel-in-progress: true
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- "v*.*.*"
|
|
workflow_dispatch:
|
|
schedule:
|
|
- cron: '30 0 * * 3'
|
|
|
|
jobs:
|
|
build:
|
|
name: "Build ${{ matrix.filename }} Binary"
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
matrix:
|
|
include:
|
|
- package: default-static-x86_64
|
|
filename: conduwuit-linux-static-amd64
|
|
- package: default-static-aarch64
|
|
filename: conduwuit-linux-static-arm64
|
|
|
|
- package: max-perf-static-aarch64
|
|
filename: conduwuit-linux-static-arm64-maxperf
|
|
- package: max-perf-haswell-static-x86_64
|
|
filename: conduwuit-haswell-linux-static-amd64-maxperf
|
|
|
|
steps:
|
|
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10
|
|
|
|
- name: Install Lix
|
|
uses: https://github.com/samueldr/lix-gha-installer-action@a0fee77b2a98bb7c5c0ed7ae6d6ad4903dbdad0d
|
|
with:
|
|
extra_nix_config: experimental-features = nix-command flakes flake-self-attrs
|
|
|
|
- name: Build static binary
|
|
run: |
|
|
nix build .#${{ matrix.package }}
|
|
install -D result/bin/conduwuit /tmp/binaries/${{ matrix.filename }}
|
|
|
|
- name: Upload binary artifact
|
|
uses: forgejo/upload-artifact@v4
|
|
with:
|
|
name: ${{ matrix.filename }}
|
|
path: /tmp/binaries/${{ matrix.filename }}
|
|
|
|
release-binaries:
|
|
name: "Release Binaries"
|
|
runs-on: ubuntu-latest
|
|
needs:
|
|
- build
|
|
permissions:
|
|
contents: write
|
|
if: startsWith(github.ref, 'refs/tags/')
|
|
steps:
|
|
- name: Download binary artifacts
|
|
uses: forgejo/download-artifact@v4
|
|
with:
|
|
pattern: conduwuit*
|
|
path: binaries
|
|
merge-multiple: true
|
|
- name: Create Release and Upload
|
|
uses: https://github.com/softprops/action-gh-release@3d0d9888cb7fd7b750713d6e236d1fcb99157228 # v3
|
|
with:
|
|
draft: true
|
|
files: binaries/*
|