diff --git a/.github/workflows/merge.yml b/.github/workflows/merge.yml new file mode 100644 index 00000000..97e96d88 --- /dev/null +++ b/.github/workflows/merge.yml @@ -0,0 +1,43 @@ +name: merge + +on: + push: + branches: [ main ] + + workflow_dispatch: + +concurrency: prr:deploy + +jobs: + merge: + + runs-on: ubuntu-latest + + strategy: + matrix: + node-version: [16.x] + + steps: + - uses: actions/checkout@v2 + with: + ref: 'next' + fetch-depth: 0 + + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v2 + with: + node-version: ${{ matrix.node-version }} + cache: 'npm' + - run: npm ci + - run: npm run build --if-present + - run: npx pr-release merge --target main --source next --commit --force --clean --changelog --compact + env: + GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} + + # The following will publish the release to npm + - run: echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" > ~/.npmrc + name: Setup NPM Auth + env: + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + - run: npm publish + name: Publish diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml new file mode 100644 index 00000000..7b32324c --- /dev/null +++ b/.github/workflows/pr.yml @@ -0,0 +1,38 @@ +name: pr + +on: + push: + branches: [ next ] + + workflow_dispatch: + +concurrency: prr:pre-release + +jobs: + pr: + + runs-on: ubuntu-latest + + strategy: + matrix: + node-version: [16.x] + + steps: + - uses: actions/checkout@v2 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v2 + with: + node-version: ${{ matrix.node-version }} + cache: 'npm' + - run: npm ci + - run: npm run build --if-present + - run: npx pr-release pr --verbose --target main --source next --compact --verbose + env: + GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} + # The following will publish a prerelease to npm + - run: echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" > ~/.npmrc + name: Setup NPM Auth + env: + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + - run: npx pr-release infer-prerelease --preid=next --verbose --publish + name: Publish diff --git a/.github/workflows/rollback.yml b/.github/workflows/rollback.yml new file mode 100644 index 00000000..2fe3adc0 --- /dev/null +++ b/.github/workflows/rollback.yml @@ -0,0 +1,31 @@ +name: rollback + +on: + workflow_dispatch: + +concurrency: prr:deploy + +jobs: + pr: + + runs-on: ubuntu-latest + + strategy: + matrix: + node-version: [16.x] + + steps: + - uses: actions/checkout@v2 + with: + ref: 'next' + fetch-depth: 0 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v2 + with: + node-version: ${{ matrix.node-version }} + cache: 'npm' + - run: npm ci + - run: npm run build --if-present + - run: npx pr-release rollback --verbose --target main --source next --verbose --ignore 'package*' --ignore changelog.md + env: + GITHUB_TOKEN: ${{ secrets.GH_TOKEN }}