-
Notifications
You must be signed in to change notification settings - Fork 11
58 lines (49 loc) · 1.92 KB
/
validate.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
name: Validate Assets
on:
pull_request_target:
jobs:
validate:
runs-on: ubuntu-22.04
steps:
- name: Checkout
uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.sha }}
- name: Validate
id: validate
uses: repository/figura-assets-validator@v1
with:
path: v2
sha: ${{ github.event.pull_request.head.sha }}
- name: Find Comment
uses: peter-evans/find-comment@v2
id: fc
with:
issue-number: ${{ github.event.pull_request.number }}
comment-author: ${{ secrets.GH_BOT_TOKEN && 'figuramcbot' || 'github-actions[bot]' }}
body-includes: <!-- assets-validate-result -->
- name: Format Date
run: |
echo "TIME=$(date -u +"%Y-%m-%d %H:%M:%S")" >> $GITHUB_ENV
- name: Create/Update Comment
uses: peter-evans/create-or-update-comment@v3
if: steps.validate.outputs.has_issues == 'true' || (steps.validate.outputs.has_issues == 'false' && steps.fc.outputs.comment-id != '')
env:
PASS_MESSAGE: |
All issues have been resolved! 🎉
FAIL_MESSAGE: |
# ⚠️ Validation Failed ⚠️
Issues were detected in your changes, please fix them before merging 🥺🙏
${{ steps.validate.outputs.issues_table }}
with:
issue-number: ${{ github.event.pull_request.number }}
comment-id: ${{ steps.fc.outputs.comment-id }}
edit-mode: replace
token: ${{ secrets.GH_BOT_TOKEN || secrets.GITHUB_TOKEN }}
body: |
<!-- assets-validate-result -->
${{ steps.validate.outputs.has_issues == 'true' && env.FAIL_MESSAGE || env.PASS_MESSAGE }}
Last run at `${{ env.TIME }} UTC` on commit ${{ github.sha }}
- name: Fail Workflow
if: steps.validate.outputs.has_issues == 'true'
run: exit 1