feat: graduate APIMatic CLI to first stable release (#293) #89
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Release | |
| on: | |
| push: | |
| branches: [ alpha, beta, main ] | |
| permissions: | |
| id-token: write # Required for OIDC | |
| contents: write # needed by @semantic-release/github to needed to push tags/version commits | |
| issues: write # needed by @semantic-release/github | |
| pull-requests: write # needed if semantic-release comments on PRs | |
| jobs: | |
| release: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| node: [ '22' ] | |
| name: Release with Node version ${{ matrix.node }} | |
| steps: | |
| - name: Checkout CLI | |
| uses: actions/checkout@v4 | |
| with: | |
| repository: apimatic/apimatic-cli | |
| token: ${{ secrets.GITHUB_TOKEN }} | |
| persist-credentials: false | |
| fetch-depth: 0 | |
| path: cli | |
| - name: setup node | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ matrix.node }} | |
| - name: enable corepack | |
| run: corepack enable | |
| - name: configure pnpm cache | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ matrix.node }} | |
| cache: 'pnpm' | |
| cache-dependency-path: cli/pnpm-lock.yaml | |
| - name: Install dependencies | |
| working-directory: cli | |
| run: pnpm install --frozen-lockfile | |
| - name: Check Build | |
| working-directory: 'cli' | |
| run: pnpm build | |
| # npm trusted publishing (OIDC) requires npm >= 11.5.1; the runner's bundled | |
| # npm (shipped with Node 22) is older, so upgrade it before publishing. | |
| - name: Upgrade npm for OIDC trusted publishing | |
| run: npm install -g npm@latest | |
| - name: Release | |
| working-directory: cli | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| run: pnpm exec semantic-release |