diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f4dbc114..48c3fc5c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -4,9 +4,33 @@ on: push: branches: - main + paths: + - 'Sources/**' + - 'Tests/**' + - 'Examples/**' + - '*.swift' + - 'Package.swift' + - 'Package.resolved' + - '.github/workflows/ci.yml' + - 'Makefile' + - '*.xcodeproj/**' + - '*.xcworkspace/**' + - '.swiftpm/**' pull_request: branches: - "*" + paths: + - 'Sources/**' + - 'Tests/**' + - 'Examples/**' + - '*.swift' + - 'Package.swift' + - 'Package.resolved' + - '.github/workflows/ci.yml' + - 'Makefile' + - '*.xcodeproj/**' + - '*.xcworkspace/**' + - '.swiftpm/**' workflow_dispatch: concurrency: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index d5ebf969..9ee86cc7 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -5,27 +5,16 @@ on: branches: - main - rc + workflow_dispatch: permissions: contents: read jobs: - check-ci-status: - runs-on: ubuntu-latest - steps: - - name: Wait for CI workflow - uses: lewagon/wait-on-check-action@v1.4.0 - with: - ref: ${{ github.ref }} - check-name: 'CI' - repo-token: ${{ secrets.GITHUB_TOKEN }} - wait-interval: 30 - release: runs-on: ubuntu-latest - if: "!contains(github.event.head_commit.message, 'skip ci')" - needs: [check-ci-status] + if: ${{ !contains(github.event.head_commit.message, 'skip ci') }} permissions: contents: write issues: write @@ -40,6 +29,7 @@ jobs: with: app-id: ${{ secrets.APP_ID }} private-key: ${{ secrets.PRIVATE_KEY }} + - name: Checkout uses: actions/checkout@v4 with: @@ -57,6 +47,12 @@ jobs: run: npm ci - name: Run semantic-release + id: semantic-release run: npx semantic-release env: GITHUB_TOKEN: ${{ steps.app-token.outputs.token }} + continue-on-error: false + + - name: Check if release was created + if: steps.semantic-release.outcome == 'success' + run: echo "Release created successfully"