name: Publish to Snapcraft on: workflow_dispatch: inputs: build: description: 'Build and publish to Snapcraft' required: true default: 'true' jobs: publish: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v3 - name: Set up Node.js uses: actions/setup-node@v3 with: node-version: 18 - name: Check package-lock.json run: npm ci - name: Install dependencies run: npm install --legacy-peer-deps - name: Build Electron app run: | npm run build:bruno-common npm run build:bruno-query npm run build:graphql-docs npm run build:web npm run build:electron:snap - name: Install Snapcraft run: | sudo snap install snapcraft --classic continue-on-error: true - name: Configure Snapcraft run: snapcraft whoami env: SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAPCRAFT_API_KEY }} - name: Publish to Snapcraft run: | snapcraft upload --release=stable packages/bruno-electron/out/*.snap env: SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAPCRAFT_API_KEY }}