diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..f64064c --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,95 @@ +name: CI +on: + push: + branches: [master] + pull_request: + branches: [master] +jobs: + build: + runs-on: ubuntu-latest + outputs: + issue-number: ${{ steps.vars.outputs.issue-number }} + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-node@v1 + with: + node-version: 12.x + - run: npm ci + - run: npm run test + - run: npm run package + - uses: actions/upload-artifact@v2 + with: + name: dist + path: dist + - id: vars + run: | + if [[ "${{ github.event_name }}" == "pull_request" ]]; then \ + echo "::set-output name=issue-number::${{ github.event.number }}" \ + else \ + echo "::set-output name=issue-number::1"; fi + + test: + needs: [build] + runs-on: ubuntu-latest + strategy: + matrix: + target: [built, committed] + steps: + - uses: actions/checkout@v2 + - if: matrix.target == 'built' + uses: actions/download-artifact@v2 + with: + name: dist + path: dist + + - name: Test create comment + uses: ./ + id: couc + with: + issue-number: ${{ needs.build.outputs.issue-number }} + body: | + This is a multi-line test comment + - With GitHub **Markdown** + - Created by [create-or-update-comment][1] + + [1]: https://github.com/peter-evans/create-or-update-comment + reactions: '+1' + + - name: Test update comment + uses: ./ + with: + comment-id: ${{ steps.couc.outputs.comment-id }} + body: | + **Edit:** Some additional info + reactions: eyes + + - name: Test add reactions + uses: ./ + with: + comment-id: ${{ steps.couc.outputs.comment-id }} + reactions: heart, hooray, laugh + + package: + if: github.event_name == 'push' && github.ref == 'refs/heads/master' + needs: [test] + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions/download-artifact@v2 + with: + name: dist + path: dist + - name: Create Pull Request + uses: peter-evans/create-pull-request@v2 + with: + commit-message: Update distribution + committer: GitHub + author: ${{ github.actor }} <${{ github.actor }}@users.noreply.github.com> + title: Update distribution + body: | + - Updates the distribution for changes on `master` + + Auto-generated by [create-pull-request][1] + + [1]: https://github.com/peter-evans/create-pull-request + branch: update-distribution diff --git a/.github/workflows/create-on-pull-request.yml b/.github/workflows/create-on-pull-request.yml deleted file mode 100644 index 47f9db7..0000000 --- a/.github/workflows/create-on-pull-request.yml +++ /dev/null @@ -1,34 +0,0 @@ -name: Create Comment on Pull Request -on: - pull_request: - branches: - - master -jobs: - createCommentOnPullRequest: - if: github.event.pull_request.author_association == 'OWNER' - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - - # For debugging purposes. Remove this in production. - - name: Dump GitHub context - env: - GITHUB_CONTEXT: ${{ toJson(github) }} - run: echo "$GITHUB_CONTEXT" - - - name: Create comment - uses: ./ - id: couc - with: - issue-number: ${{ github.event.number }} - body: | - This is a multi-line test comment - - With GitHub **Markdown** - - Created by [create-or-update-comment][1] - - [1]: https://github.com/peter-evans/create-or-update-comment - reaction-type: '+1' - - - name: Check outputs - run: | - echo "Comment ID - ${{ steps.couc.outputs.comment-id }}"