name: Run Release Please on: push: branches: - master jobs: pre_check: name: Precheck for skipping redundant jobs runs-on: ubuntu-latest outputs: should_skip_lang: ${{ steps.skip_lang_check.outputs.should_skip }} should_skip_components: ${{ steps.skip_components_check.outputs.should_skip }} should_skip_website: ${{ steps.skip_website_check.outputs.should_skip }} should_skip_vscodeext: ${{ steps.skip_vscodeext_check.outputs.should_skip }} should_skip_cli: ${{ steps.skip_cli_check.outputs.should_skip }} steps: - id: skip_lang_check name: Check if the changes are about squiggle-lang src files uses: fkirc/skip-duplicate-actions@v4.0.0 with: paths: '["packages/squiggle-lang/**"]' - id: skip_components_check name: Check if the changes are about components src files uses: fkirc/skip-duplicate-actions@v4.0.0 with: paths: '["packages/components/**"]' - id: skip_website_check name: Check if the changes are about website src files uses: fkirc/skip-duplicate-actions@v4.0.0 with: paths: '["packages/website/**"]' - id: skip_vscodeext_check name: Check if the changes are about vscode extension src files uses: fkirc/skip-duplicate-actions@v4.0.0 with: paths: '["packages/vscode-ext/**"]' - id: skip_cli_check name: Check if the changes are about cli src files uses: fkirc/skip-duplicate-actions@v4.0.0 with: paths: '["packages/cli/**"]' relplz-lang: name: for squiggle-lang runs-on: ubuntu-latest needs: pre_check if: ${{ needs.pre_check.outputs.should_skip_lang != 'true' }} steps: - name: Release please (squiggle-lang) uses: google-github-actions/release-please-action@v3 id: release with: token: ${{secrets.GITHUB_TOKEN}} command: manifest-pr path: packages/squiggle-lang # bump-patch-for-minor-pre-major: true skip-github-release: true - name: Publish- Checkout source uses: actions/checkout@v3 # these if statements ensure that a publication only occurs when # a new release is created: if: ${{ steps.release.outputs.release_created }} - name: Publish- Install dependencies run: yarn if: ${{ steps.release.outputs.release_created }} - name: Publish run: cd packages/squiggle-lang && yarn publish env: NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}} if: ${{ steps.release.outputs.release_created }} relplz-components: name: for components runs-on: ubuntu-latest needs: pre_check if: ${{ needs.pre_check.outputs.should_skip_components != 'true' }} steps: - name: Release please (components) uses: google-github-actions/release-please-action@v3 with: token: ${{secrets.GITHUB_TOKEN}} command: manifest-pr path: packages/components # bump-patch-for-minor-pre-major: true skip-github-release: true - name: Publish- Checkout source uses: actions/checkout@v3 # these if statements ensure that a publication only occurs when # a new release is created: if: ${{ steps.release.outputs.release_created }} - name: Publish- Install dependencies run: yarn if: ${{ steps.release.outputs.release_created }} - name: Publish run: cd packages/components && yarn publish env: NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}} relplz-website: name: for website runs-on: ubuntu-latest needs: pre_check if: ${{ needs.pre_check.outputs.should_skip_website != 'true' }} steps: - name: Release please (website) uses: google-github-actions/release-please-action@v3 with: token: ${{secrets.GITHUB_TOKEN}} command: manifest-pr path: packages/website # bump-patch-for-minor-pre-major: true skip-github-release: true relplz-vscodeext: name: for vscode-ext runs-on: ubuntu-latest needs: pre_check if: ${{ needs.pre_check.outputs.should_skip_vscodeext != 'true' }} steps: - name: Release please (vscode-ext) uses: google-github-actions/release-please-action@v3 with: token: ${{secrets.GITHUB_TOKEN}} command: manifest-pr path: packages/vscode-ext # bump-patch-for-minor-pre-major: true skip-github-release: true relplz-cl: name: for cli runs-on: ubuntu-latest needs: pre_check if: ${{ needs.pre_check.outputs.should_skip_cli != 'true' }} steps: - name: Release please (cli) uses: google-github-actions/release-please-action@v3 with: token: ${{secrets.GITHUB_TOKEN}} command: manifest-pr path: packages/cli bump-patch-for-minor-pre-major: true skip-github-release: true