Skip to content

Commit

Permalink
ci: use shared snapcrafters/ci actions (#17)
Browse files Browse the repository at this point in the history
  • Loading branch information
soumyaDghosh committed Dec 6, 2023
1 parent 8c0a402 commit 5469116
Show file tree
Hide file tree
Showing 7 changed files with 147 additions and 30 deletions.
5 changes: 0 additions & 5 deletions .build-trigger.txt

This file was deleted.

25 changes: 25 additions & 0 deletions .github/workflows/promote-to-stable.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: Promote

on:
issue_comment:
types:
- created

permissions:
issues: write

jobs:
promote:
name: ⬆️ Promote to stable
environment: "Candidate Branch"
runs-on: ubuntu-latest
if: |
( !github.event.issue.pull_request )
&& contains(github.event.comment.body, '/promote ')
&& contains(github.event.*.labels.*.name, 'testing')
steps:
- name: ⬆️ Promote to stable
uses: snapcrafters/ci/promote-to-stable@main
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
store-token: ${{ secrets.SNAP_STORE_STABLE }}
17 changes: 17 additions & 0 deletions .github/workflows/pull-request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: Pull Request

on:
pull_request:
branches: [ "**" ]

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
build:
name: 🧪 Build snap on amd64
runs-on: ubuntu-latest
steps:
- name: 🧪 Build snap on amd64
uses: snapcrafters/ci/test-snap-build@main
71 changes: 71 additions & 0 deletions .github/workflows/release-to-candidate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
name: Release

on:
# Run the workflow each time new commits are pushed to the candidate branch.
push:
branches: [ "candidate" ]
workflow_dispatch:

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

permissions:
contents: read
issues: write

jobs:
get-architectures:
name: 🖥 Get snap architectures
runs-on: ubuntu-latest
outputs:
architectures: ${{ steps.get-architectures.outputs.architectures }}
architectures-list: ${{ steps.get-architectures.outputs.architectures-list }}
steps:
- name: 🖥 Get snap architectures
id: get-architectures
uses: snapcrafters/ci/get-architectures@main

release:
name: 🚢 Release to latest/candidate
needs: get-architectures
runs-on: ubuntu-latest
environment: "Candidate Branch"
strategy:
matrix:
architecture: ${{ fromJSON(needs.get-architectures.outputs.architectures-list) }}
steps:
- name: 🚢 Release to latest/candidate
uses: snapcrafters/ci/release-to-candidate@main
with:
architecture: ${{ matrix.architecture }}
launchpad-token: ${{ secrets.LP_BUILD_SECRET }}
store-token: ${{ secrets.SNAP_STORE_CANDIDATE }}

call-for-testing:
name: 📣 Create call for testing
needs: [release, get-architectures]
environment: "Candidate Branch"
runs-on: ubuntu-latest
outputs:
issue-number: ${{ steps.issue.outputs.issue-number }}
steps:
- name: 📣 Create call for testing
id: issue
uses: snapcrafters/ci/call-for-testing@main
with:
architectures: ${{ needs.get-architectures.outputs.architectures }}
github-token: ${{ secrets.GITHUB_TOKEN }}

screenshots:
name: 📸 Gather screenshots
needs: call-for-testing
environment: "Candidate Branch"
runs-on: ubuntu-latest
steps:
- name: 📸 Gather screenshots
uses: snapcrafters/ci/get-screenshots@main
with:
issue-number: ${{ needs.call-for-testing.outputs.issue-number }}
github-token: ${{ secrets.GITHUB_TOKEN }}
screenshots-token: ${{ secrets.SNAPCRAFTERS_BOT_COMMIT }}
33 changes: 33 additions & 0 deletions .github/workflows/sync-upstream.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: Update

on:
# Runs at 10:00 UTC every day
schedule:
- cron: '0 10 * * *'
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
sync:
name: Sync version with upstream
environment: "Candidate Branch"
runs-on: ubuntu-latest
steps:
- name: Sync version with upstream
uses: snapcrafters/ci/sync-version@main
with:
token: ${{ secrets.SNAPCRAFTERS_BOT_COMMIT }}
update-script: |
stable_version="$(curl -sL https://www.sublimemerge.com/download | grep -Po '<p class="latest"><i>Version:</i> Build \K[0-9]+')"
sed -i 's/^\(version: \).*$/\1'"$stable_version"'/' snap/snapcraft.yaml
# Support for dev will be added later
# dev_version="$(curl -sL https://www.sublimemerge.com/dev | grep -Po '<p class="latest"><i>Version:</i> Build \K[0-9]+')"
# if [[ "$stable_version" > "$dev_version" ]]; then
# yq -i ".version = \"$stable_version\"" snap/snapcraft.yaml
# else
# yq -i ".version = \"$dev_version-dev\"" snap/snapcraft.yaml
# fi
25 changes: 0 additions & 25 deletions .github/workflows/test-snap-can-build.yml

This file was deleted.

1 change: 1 addition & 0 deletions snap/snapcraft.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -69,3 +69,4 @@ parts:
- libglu1-mesa
build-attributes:
- no-patchelf

0 comments on commit 5469116

Please sign in to comment.