name: Release Service on: push: tags: - 'v*.*' jobs: release: runs-on: ubuntu-latest permissions: contents: write steps: - uses: actions/checkout@v4 - name: Set up Node.js uses: actions/setup-node@v4 with: node-version: '22' - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - name: Install system dependencies run: sudo apt-get update && sudo apt-get install -y squashfs-tools-ng - name: Install start-cli run: | curl -fsSL -o start-cli https://github.com/Start9Labs/start-os/releases/download/v0.4.0-alpha.20/start-cli_x86_64-linux chmod +x start-cli sudo mv start-cli /usr/local/bin/ start-cli --version - name: Initialize developer key env: DEV_KEY: ${{ secrets.DEV_KEY }} run: | mkdir -p ~/.startos echo "$DEV_KEY" > ~/.startos/developer.key.pem - name: Build Docker image run: docker build -f deploy/Dockerfile -t ten31portal:local . - name: Install StartOS packaging deps working-directory: deploy run: npm ci - name: Build StartOS JavaScript working-directory: deploy run: npm run build - name: Pack s9pk working-directory: deploy run: start-cli s9pk pack --arch x86_64 --license ../LICENSE --no-assets -o ten31portal.s9pk - name: Create GitHub Release uses: softprops/action-gh-release@v2 with: files: deploy/ten31portal.s9pk generate_release_notes: true