A convenient CLI tool to quickly spin up DragonflyBSD virtual machines using QEMU with sensible defaults.

Add GitHub Actions workflow for release automation and asset management

+45
+41
.github/workflows/release.yml
··· 1 + name: release 2 + on: 3 + release: 4 + types: [created] 5 + 6 + jobs: 7 + build: 8 + name: release 9 + runs-on: ubuntu-latest 10 + strategy: 11 + matrix: 12 + target: 13 + - x86_64-unknown-linux-gnu 14 + - x86_64-apple-darwin 15 + steps: 16 + - uses: actions/checkout@v3 17 + - name: Setup Fluent CI 18 + uses: fluentci-io/setup-fluentci@v5 19 + env: 20 + GITHUB_ACCESS_TOKEN: ${{ secrets.GITHUB_TOKEN }} 21 + - uses: denoland/setup-deno@v2 22 + - name: Compile 23 + run: | 24 + rm deno.lock || true 25 + deno compile -A --no-check --output dflybsd-up --target ${{ matrix.target }} main.ts 26 + - name: Set env 27 + run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV 28 + - name: Archive assets 29 + run: | 30 + tar czvf dflybsd-up_${{ env.RELEASE_VERSION }}_${{ matrix.target }}.tar.gz dflybsd-up 31 + shasum -a 256 dflybsd-up_${{ env.RELEASE_VERSION }}_${{ matrix.target }}.tar.gz > dflybsd-up_${{ env.RELEASE_VERSION }}_${{ matrix.target }}.tar.gz.sha256 32 + - name: Upload release assets 33 + run: | 34 + for ext in tar.gz tar.gz.sha256; do 35 + export FILE=dflybsd-up_${{ env.RELEASE_VERSION }}_${{ matrix.target }}.$ext 36 + fluentci run --wasm github release_upload $TAG $FILE 37 + done 38 + env: 39 + TAG: ${{ env.RELEASE_VERSION }} 40 + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} 41 + GITHUB_ACCESS_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+4
deno.json
··· 1 1 { 2 + "name": "@tsiry/dflybsd-up", 3 + "version": "0.1.0", 4 + "exports": "./main.ts", 5 + "license": "MPL-2.0", 2 6 "tasks": { 3 7 "dev": "deno run --watch main.ts" 4 8 },