@@ -2,30 +2,62 @@ name: CI Build
22
33on :
44 push :
5- branches : main
5+ branches : [main]
6+
67 pull_request :
78
89jobs :
910 build :
1011 runs-on : ubuntu-latest
1112
13+ env :
14+ CHROMATIC_BRANCH : ${{ github.event.pull_request.head.ref || github.ref_name }}
15+ CHROMATIC_SHA : ${{ github.event.pull_request.head.sha || github.ref }}
16+ CHROMATIC_SLUG : ${{ github.repository }}
17+ CHROMATIC_PROJECT_TOKEN : ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
18+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
19+
1220 steps :
13- - uses : actions/checkout@v4
21+ - name : Checkout
22+ uses : actions/checkout@v5
23+
24+ - name : Enable corepack
25+ run : corepack enable
26+
1427 - name : Set up Node.js
15- uses : actions/setup-node@v2
28+ uses : actions/setup-node@v5
1629 with :
30+ cache : yarn
1731 node-version-file : .nvmrc
18- - name : Enable corepack
19- run : corepack enable
20- - name : Set Yarn version
21- run : yarn set version stable
32+
2233 - name : Yarn Install
2334 run : yarn
35+
2436 - name : Lint
2537 run : yarn lint
38+
2639 - name : Jest Tests
2740 run : yarn test --coverage
41+
2842 - name : Typescript build
2943 run : yarn build
44+
3045 - name : Storybook build
3146 run : yarn build-storybook
47+
48+ - name : Switch to PR branch
49+ if : ${{ github.event_name == 'pull_request' && env.CHROMATIC_PROJECT_TOKEN }}
50+ uses : actions/checkout@v5
51+ with :
52+ clean : false
53+ fetch-depth : 0
54+ ref : ${{ env.CHROMATIC_BRANCH }}
55+
56+ - name : Storybook deploy
57+ uses : chromaui/action@v13
58+ with :
59+ autoAcceptChanges : main
60+ branchName : ${{ env.CHROMATIC_BRANCH}}
61+ onlyChanged : ${{ github.event_name == 'pull_request' }}
62+ projectToken : ${{ env.CHROMATIC_PROJECT_TOKEN }}
63+ token : ${{ env.GITHUB_TOKEN }}
0 commit comments