forked from TanStack/db
-
Notifications
You must be signed in to change notification settings - Fork 0
120 lines (114 loc) · 3.51 KB
/
pr.yml
File metadata and controls
120 lines (114 loc) · 3.51 KB
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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
name: PR
on:
pull_request:
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.event.number || github.ref }}
cancel-in-progress: true
env:
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
permissions:
contents: read
pull-requests: write
jobs:
test:
name: Test
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v5.0.0
with:
fetch-depth: 0
- name: Setup Tools
uses: tanstack/config/.github/setup@main
- name: Get base and head commits for `nx affected`
uses: nrwl/nx-set-shas@v4.3.3
with:
main-branch-name: main
- name: Run Checks
run: pnpm run lint && pnpm run build && pnpm run test
preview:
name: Preview
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v5.0.0
with:
fetch-depth: 0
- name: Setup Tools
uses: tanstack/config/.github/setup@main
- name: Build Packages
run: pnpm run build
- name: Publish Previews
run: pnpx pkg-pr-new publish --pnpm --compact './packages/*' --template './examples/*/*'
- name: Compressed Size Action - DB Package
uses: preactjs/compressed-size-action@v2
with:
repo-token: "${{ secrets.GITHUB_TOKEN }}"
pattern: "./packages/db/dist/**/*.{js,mjs}"
comment-key: "db-package-size"
build-script: "build:minified"
- name: Compressed Size Action - React DB Package
uses: preactjs/compressed-size-action@v2
with:
repo-token: "${{ secrets.GITHUB_TOKEN }}"
pattern: "./packages/react-db/dist/**/*.{js,mjs}"
comment-key: "react-db-package-size"
build-script: "build:minified"
build-example:
name: Build Example Site
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v5.0.0
- name: Setup Tools
uses: tanstack/config/.github/setup@main
- name: Build Packages
run: pnpm run build
- name: Build Example Site
run: |
cd examples/react/todo
pnpm build
build-starter:
name: Build Example Site
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v5.0.0
- name: Setup Tools
uses: tanstack/config/.github/setup@main
- name: Build Packages
run: pnpm run build
- name: Build Starter Site
run: |
cd examples/react/projects
pnpm build
check-docs:
name: Check Generated Docs
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v5.0.0
- name: Setup Tools
uses: tanstack/config/.github/setup@main
- name: Build Packages
run: pnpm run build
- name: Generate Docs
run: pnpm docs:generate
- name: Check for changes
run: |
if [ -n "$(git status --porcelain)" ]; then
echo "Error: Generated docs are out of sync!"
echo ""
echo "Please run the following commands locally and commit the changes:"
echo " 1. pnpm install"
echo " 2. pnpm build"
echo " 3. pnpm docs:generate"
echo " 4. git add docs/"
echo " 5. git commit -m 'docs: regenerate API documentation'"
echo ""
echo "Files that need to be updated:"
git status --short
exit 1
fi