mirror of
https://github.com/edera-dev/krata.git
synced 2025-08-02 21:00:55 +00:00
93 lines
2.8 KiB
YAML
93 lines
2.8 KiB
YAML
name: nightly
|
|
on:
|
|
workflow_dispatch:
|
|
schedule:
|
|
- cron: "0 10 * * *"
|
|
jobs:
|
|
server:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
arch:
|
|
- x86_64
|
|
- aarch64
|
|
env:
|
|
TARGET_ARCH: "${{ matrix.arch }}"
|
|
name: server ${{ matrix.arch }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: dtolnay/rust-toolchain@stable
|
|
with:
|
|
targets: "${{ matrix.arch }}-unknown-linux-gnu,${{ matrix.arch }}-unknown-linux-musl"
|
|
- run: ./hack/ci/install-linux-deps.sh
|
|
- run: ./hack/dist/bundle.sh
|
|
env:
|
|
KRATA_KERNEL_BUILD_JOBS: "5"
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: krata-bundle-systemd-${{ matrix.arch }}
|
|
path: "target/dist/bundle-systemd-${{ matrix.arch }}.tgz"
|
|
compression-level: 0
|
|
- run: ./hack/dist/deb.sh
|
|
env:
|
|
KRATA_KERNEL_BUILD_SKIP: "1"
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: krata-debian-${{ matrix.arch }}
|
|
path: "target/dist/*.deb"
|
|
compression-level: 0
|
|
- run: ./hack/dist/apk.sh
|
|
env:
|
|
KRATA_KERNEL_BUILD_SKIP: "1"
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: krata-alpine-${{ matrix.arch }}
|
|
path: "target/dist/*_${{ matrix.arch }}.apk"
|
|
compression-level: 0
|
|
- run: ./hack/os/build.sh
|
|
env:
|
|
KRATA_KERNEL_BUILD_SKIP: "1"
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: krata-os-${{ matrix.arch }}
|
|
path: "target/os/krata-${{ matrix.arch }}.qcow2"
|
|
compression-level: 0
|
|
client:
|
|
strategy:
|
|
matrix:
|
|
os:
|
|
- { name: linux, on: ubuntu-latest }
|
|
- { name: darwin, on: macos-14 }
|
|
- { name: windows, on: windows-latest }
|
|
arch:
|
|
- x86_64
|
|
- aarch64
|
|
exclude:
|
|
# aarch64 windows support is not available in downstream dependencies
|
|
- os: { name: windows, on: windows-latest }
|
|
arch: aarch64
|
|
env:
|
|
TARGET_OS: "${{ matrix.os.name }}"
|
|
TARGET_ARCH: "${{ matrix.arch }}"
|
|
runs-on: "${{ matrix.os.on }}"
|
|
name: client ${{ matrix.os.name }}-${{ matrix.arch }}
|
|
defaults:
|
|
run:
|
|
shell: bash
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: dtolnay/rust-toolchain@stable
|
|
if: ${{ matrix.os.name != 'darwin' }}
|
|
- uses: dtolnay/rust-toolchain@stable
|
|
with:
|
|
targets: "${{ matrix.arch }}-apple-darwin"
|
|
if: ${{ matrix.os.name == 'darwin' }}
|
|
- uses: homebrew/actions/setup-homebrew@master
|
|
if: ${{ matrix.os.name == 'darwin' }}
|
|
- run: ./hack/ci/install-${{ matrix.os.name }}-deps.sh
|
|
- run: ./hack/build/cargo.sh build --release --bin kratactl
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: kratactl-${{ matrix.os.name }}-${{ matrix.arch }}
|
|
path: "target/*/release/kratactl*"
|