Workflow file for this run
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 integration to production | |
| on: | |
| release: | |
| types: [published] | |
| jobs: | |
| deploy-integration-to-production: | |
| if: startsWith(github.event.release.tag_name, '@gitbook/integration-') | |
| name: Deploy integration to production | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Get integration package name | |
| id: integration-package | |
| uses: actions/github-script@v7 | |
| with: | |
| script: | | |
| const tag = context.payload.release.tag_name; | |
| const integrationPackage = '@' + tag.split('@')[1]; | |
| core.setOutput('integrationPackage', integrationPackage) | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version-file: 'package.json' | |
| - name: Setup 1Password CLI | |
| uses: ./.github/composite/setup-1password-op | |
| with: | |
| OP_SERVICE_ACCOUNT_TOKEN: ${{ secrets.OP_SERVICE_ACCOUNT_TOKEN }} | |
| - name: Install dependencies | |
| run: bun install --frozen-lockfile | |
| # TODO: Remove this once we incorporate this in the publish API of the integration | |
| - name: Publish all integrations assets to production | |
| run: bun run publish-assets | |
| env: | |
| CLOUDFLARE_PAGES_PROJECT: ${{ secrets.INTEGRATIONS_ASSETS_PROD_PROJECT }} | |
| CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} | |
| CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_PAGES_API_TOKEN }} | |
| - name: Deploy integration | |
| run: bun run publish-integrations -- --filter=${{ steps.integration-package.outputs.integrationPackage }} | |
| env: | |
| GITBOOK_TOKEN: ${{ secrets.GITBOOK_PROD_API_TOKEN }} | |
| GITBOOK_ENDPOINT: https://api.gitbook.com | |
| GITBOOK_ORGANIZATION: gitbook | |
| OP_SERVICE_ACCOUNT_TOKEN: ${{ secrets.OP_SERVICE_ACCOUNT_TOKEN }} | |
| # Proxy | |
| GITBOOK_PROXY_URL: ${{ secrets.PROXY_URL }} | |
| GITBOOK_PROXY_SECRET: ${{ secrets.PROXY_SECRET }} | |
| REFLAG_SECRET_KEY: ${{ secrets.REFLAG_SECRET_KEY }} | |
| # GitHub Files | |
| UNFURL_GITHUB_CLIENT_ID: ${{ secrets.UNFURL_GITHUB_CLIENT_ID }} | |
| UNFURL_GITHUB_CLIENT_SECRET: ${{ secrets.UNFURL_GITHUB_CLIENT_SECRET }} | |
| # GitLab | |
| GITLAB_CLIENT_ID: ${{ secrets.GITLAB_CLIENT_ID }} | |
| GITLAB_CLIENT_SECRET: ${{ secrets.GITLAB_CLIENT_SECRET }} | |
| # Discord | |
| DISCORD_CLIENT_ID: $ {{ secrets.DISCORD_CLIENT_ID }} | |
| DISCORD_CLIENT_SECRET: $ {{ secrets.DISCORD_CLIENT_SECRET }} | |
| DISCORD_BOT_TOKEN: $ {{ secrets.DISCORD_BOT_TOKEN }} | |
| # Slack | |
| SLACK_CLIENT_ID: ${{ secrets.SLACK_PROD_CLIENT_ID }} | |
| SLACK_CLIENT_SECRET: ${{ secrets.SLACK_PROD_CLIENT_SECRET }} | |
| SLACK_SIGNING_SECRET: ${{ secrets.SLACK_PROD_SIGNING_SECRET }} | |
| # Figma | |
| FIGMA_CLIENT_ID: ${{ secrets.FIGMA_PROD_CLIENT_ID }} | |
| FIGMA_CLIENT_SECRET: ${{ secrets.FIGMA_PROD_CLIENT_SECRET }} | |
| # Mailchimp | |
| MAILCHIMP_CLIENT_ID: ${{ secrets.MAILCHIMP_PROD_CLIENT_ID }} | |
| MAILCHIMP_CLIENT_SECRET: ${{ secrets.MAILCHIMP_PROD_CLIENT_SECRET }} | |
| # Jira | |
| JIRA_CLIENT_ID: ${{ secrets.JIRA_PROD_CLIENT_ID }} | |
| JIRA_CLIENT_SECRET: ${{ secrets.JIRA_PROD_CLIENT_SECRET }} | |
| # Linear | |
| LINEAR_CLIENT_ID: ${{ secrets.LINEAR_PROD_CLIENT_ID }} | |
| LINEAR_CLIENT_SECRET: ${{ secrets.LINEAR_PROD_CLIENT_SECRET }} | |
| # GitHub | |
| GITHUB_APP_INSTALL_URL: ${{ secrets.GITBOOK_GITHUB_APP_INSTALL_URL }} | |
| GITHUB_APP_ID: ${{ secrets.GITBOOK_GITHUB_APP_ID }} | |
| GITHUB_CLIENT_ID: ${{ secrets.GITBOOK_GITHUB_CLIENT_ID }} | |
| GITHUB_CLIENT_SECRET: ${{ secrets.GITBOOK_GITHUB_CLIENT_SECRET }} | |
| GITHUB_WEBHOOK_SECRET: ${{ secrets.GITBOOK_GITHUB_WEBHOOK_SECRET }} | |
| GITHUB_PRIVATE_KEY: ${{ secrets.GITBOOK_GITHUB_PRIVATE_KEY }} | |
| # Lucid | |
| LUCID_CLIENT_ID: ${{ secrets.LUCID_CLIENT_ID }} | |
| LUCID_CLIENT_SECRET: ${{ secrets.LUCID_CLIENT_SECRET }} | |
| # GitHub Copilot | |
| GITHUBCOPILOT_APP_ID: ${{ secrets.GITHUBCOPILOT_PROD_APP_ID }} | |
| GITHUBCOPILOT_APP_URL: ${{ secrets.GITHUBCOPILOT_PROD_APP_URL }} | |
| GITHUBCOPILOT_CLIENT_ID: ${{ secrets.GITHUBCOPILOT_PROD_CLIENT_ID }} | |
| GITHUBCOPILOT_CLIENT_SECRET: ${{ secrets.GITHUBCOPILOT_PROD_CLIENT_SECRET }} |