52 linhas
1.4 KiB
YAML
52 linhas
1.4 KiB
YAML
name: Snap
|
|
|
|
on:
|
|
release:
|
|
types: [published]
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
snap:
|
|
name: Build and publish snap
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
submodules: recursive
|
|
|
|
- name: Setup LXD
|
|
run: |
|
|
sudo iptables -P FORWARD ACCEPT
|
|
sudo snap install --classic snapcraft
|
|
sudo usermod -aG lxd $USER
|
|
sudo lxd init --auto
|
|
sudo lxd waitready
|
|
|
|
- name: Free up disk space
|
|
uses: samueldr/more-space-action@97048bd0df83fb05b5257887bdbaffc848887673
|
|
with:
|
|
enable-remove-default-apt-patterns: false
|
|
enable-lvm-span: true
|
|
lvm-span-mountpoint: /var/snap/lxd/common/lxd/storage-pools/default/containers
|
|
|
|
- name: Build snap
|
|
run: sudo -u $USER snap run snapcraft --verbosity=debug
|
|
|
|
- name: Find snap artifact
|
|
run: |
|
|
SNAP_FILE=$(echo forkgram_*.snap)
|
|
echo "SNAP_FILE=$SNAP_FILE" >> "$GITHUB_ENV"
|
|
|
|
- name: Upload artifact
|
|
uses: actions/upload-artifact@v7
|
|
with:
|
|
name: ${{ env.SNAP_FILE }}
|
|
path: ${{ env.SNAP_FILE }}
|
|
|
|
- name: Publish to Snap Store
|
|
env:
|
|
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAPCRAFT_STORE_CREDENTIALS }}
|
|
run: snapcraft upload "$SNAP_FILE" --release=stable
|