mirror of
https://github.com/peter-evans/create-or-update-comment.git
synced 2025-01-19 03:26:42 +08:00
134 lines
3.6 KiB
YAML
134 lines
3.6 KiB
YAML
name: CI
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
paths-ignore:
|
|
- 'README.md'
|
|
- 'docs/**'
|
|
pull_request:
|
|
branches: [main]
|
|
paths-ignore:
|
|
- 'README.md'
|
|
- 'docs/**'
|
|
|
|
permissions:
|
|
issues: write
|
|
pull-requests: write
|
|
contents: write
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
outputs:
|
|
issue-number: ${{ steps.vars.outputs.issue-number }}
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 16.x
|
|
cache: npm
|
|
- run: npm ci
|
|
- run: npm run test
|
|
- run: npm run package
|
|
- uses: actions/upload-artifact@v3
|
|
with:
|
|
name: dist
|
|
path: dist
|
|
- uses: actions/upload-artifact@v3
|
|
with:
|
|
name: action.yml
|
|
path: action.yml
|
|
- id: vars
|
|
run: |
|
|
if [[ "${{ github.event_name }}" == "pull_request" ]]; then \
|
|
echo "issue-number=${{ github.event.number }}" >> $GITHUB_OUTPUT; \
|
|
else \
|
|
echo "issue-number=1" >> $GITHUB_OUTPUT; \
|
|
fi
|
|
|
|
test:
|
|
if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository
|
|
needs: [build]
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
target: [built, committed]
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- if: matrix.target == 'built' || github.event_name == 'pull_request'
|
|
uses: actions/download-artifact@v3
|
|
with:
|
|
name: dist
|
|
path: dist
|
|
- if: matrix.target == 'built' || github.event_name == 'pull_request'
|
|
uses: actions/download-artifact@v3
|
|
with:
|
|
name: action.yml
|
|
path: .
|
|
|
|
- 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** :sparkles:
|
|
- 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
|
|
|
|
- name: Test create comment from file
|
|
uses: ./
|
|
id: couc2
|
|
with:
|
|
issue-number: ${{ needs.build.outputs.issue-number }}
|
|
body-file: .github/comment-body.md
|
|
reactions: '+1'
|
|
|
|
- name: Test update comment from file
|
|
uses: ./
|
|
with:
|
|
comment-id: ${{ steps.couc2.outputs.comment-id }}
|
|
body-file: .github/comment-body-addition.md
|
|
reactions: eyes
|
|
|
|
package:
|
|
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
|
|
needs: [test]
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/download-artifact@v3
|
|
with:
|
|
name: dist
|
|
path: dist
|
|
- name: Create Pull Request
|
|
uses: peter-evans/create-pull-request@v4
|
|
with:
|
|
token: ${{ secrets.ACTIONS_BOT_TOKEN }}
|
|
commit-message: Update distribution
|
|
title: Update distribution
|
|
body: |
|
|
- Updates the distribution for changes on `main`
|
|
|
|
Auto-generated by [create-pull-request][1]
|
|
|
|
[1]: https://github.com/peter-evans/create-pull-request
|
|
branch: update-distribution
|