-
Notifications
You must be signed in to change notification settings - Fork 2.8k
86 lines (76 loc) · 2.81 KB
/
lint.yml
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
name: lint
permissions:
contents: read
on:
workflow_dispatch:
pull_request:
push:
branches:
- main
- jarred/assert
paths:
- ".github/workflows/lint.yml"
- "src/**/*.zig"
- "src/*.zig"
jobs:
format:
name: lint
runs-on: ${{ vars.RUNNER_LINUX_X64 || 'ubuntu-latest' }}
if: github.repository_owner == 'oven-sh'
permissions: write-all
outputs:
text_output: ${{ steps.lint.outputs.text_output }}
json_output: ${{ steps.lint.outputs.json_output }}
count: ${{ steps.lint.outputs.count }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Bun
uses: ./.github/actions/setup-bun
with:
bun-version: "1.1.3"
- name: Install Dependencies
run: |
bun --cwd=./packages/bun-internal-test install
- name: Lint
id: lint
run: |
bun ./packages/bun-internal-test/src/linter.ts || true
- uses: sarisia/actions-status-discord@v1
if: always() && steps.lint.outputs.text_output != '' && github.event_name == 'pull_request'
with:
title: ""
webhook: ${{ secrets.DISCORD_WEBHOOK }}
status: "failure"
noprefix: true
nocontext: true
description: |
Pull Request
### ❌ [${{github.event.pull_request.title}}](https://github.com/oven-sh/bun/pull/${{github.event.number}})
@${{ github.actor }}, there are ${{ steps.lint.outputs.count }} lint errors on ${{ github.ref_name }}
${{ steps.lint.outputs.text_output }}
**[View linter output](https://github.com/oven-sh/bun/actions/runs/${{github.run_id}})**
- name: Comment on PR
if: steps.lint.outputs.text_output != '' && github.event_name == 'pull_request'
uses: thollander/actions-comment-pull-request@v2
with:
comment_tag: lint-failures
message: |
❌ @${{ github.actor }} ${{ steps.lint.outputs.count }} lint errors
${{ steps.lint.outputs.text_output }}
**[View linter output](https://github.com/oven-sh/bun/actions/runs/${{github.run_id}})**
<sup>[#${{github.sha}}](https://github.com/oven-sh/bun/commits/${{github.sha}})</sup>
- name: Uncomment on PR
if: steps.lint.outputs.text_output == '' && github.event_name == 'pull_request'
uses: thollander/actions-comment-pull-request@v2
with:
comment_tag: lint-failures
mode: upsert
create_if_not_exists: false
message: |
✅ lint failures have been resolved. Thank you.
<sup>[#${{github.sha}}](https://github.com/oven-sh/bun/commits/${{github.sha}})</sup>
- id: fail
name: Fail the build
if: steps.lint.outputs.text_output != ''
run: exit 1