A lexicon-driven AppView for ATProto.
0

Configure Feed

Select the types of activity you want to include in your feed.

ci: fix and split SDK tests

Signed-off-by: Trezy <tre@trezy.com>

+106 -19
+106 -19
.github/workflows/ci.yml
··· 20 20 runs-on: depot-ubuntu-24.04 21 21 outputs: 22 22 server: ${{ steps.filter.outputs.server }} 23 - sdk: ${{ steps.filter.outputs.sdk }} 23 + oauth-client: ${{ steps.filter.outputs.oauth-client }} 24 + oauth-client-browser: ${{ steps.filter.outputs.oauth-client-browser }} 25 + oauth-client-node: ${{ steps.filter.outputs.oauth-client-node }} 26 + lex-agent: ${{ steps.filter.outputs.lex-agent }} 24 27 postgres: ${{ steps.filter.outputs.postgres }} 25 28 steps: 26 29 - name: Checkout repository ··· 35 38 - '**' 36 39 - '!packages/**' 37 40 - '!.github/workflows/merge-main-to-dev.yml' 38 - sdk: 41 + oauth-client: 42 + - 'packages/oauth-client/**' 43 + oauth-client-browser: 39 44 - 'packages/oauth-client/**' 40 45 - 'packages/oauth-client-browser/**' 46 + oauth-client-node: 47 + - 'packages/oauth-client/**' 41 48 - 'packages/oauth-client-node/**' 49 + lex-agent: 50 + - 'packages/oauth-client/**' 42 51 - 'packages/lex-agent/**' 43 52 postgres: 44 53 - 'docker/Dockerfile.postgres' ··· 186 195 run: npx semantic-release 187 196 188 197 # --------------------------------------------------------------------------- 189 - # SDK — tests + per-package releases 198 + # SDK — per-package tests + releases 190 199 # --------------------------------------------------------------------------- 191 - sdk-tests: 200 + test-oauth-client: 201 + needs: changes 202 + if: needs.changes.outputs.oauth-client == 'true' 203 + runs-on: depot-ubuntu-24.04 204 + steps: 205 + - name: Checkout repository 206 + uses: actions/checkout@v6 207 + 208 + - name: Setup Bun 209 + uses: oven-sh/setup-bun@v2 210 + 211 + - name: Install dependencies 212 + run: bun install 213 + 214 + - name: Build 215 + run: bun run --filter '@happyview/oauth-client' build 216 + 217 + - name: Typecheck 218 + run: bun run --filter '@happyview/oauth-client' typecheck 219 + 220 + - name: Test 221 + run: bun run --filter '@happyview/oauth-client' test 222 + 223 + test-oauth-client-browser: 224 + needs: changes 225 + if: needs.changes.outputs.oauth-client-browser == 'true' 226 + runs-on: depot-ubuntu-24.04 227 + steps: 228 + - name: Checkout repository 229 + uses: actions/checkout@v6 230 + 231 + - name: Setup Bun 232 + uses: oven-sh/setup-bun@v2 233 + 234 + - name: Install dependencies 235 + run: bun install 236 + 237 + - name: Build oauth-client 238 + run: bun run --filter '@happyview/oauth-client' build 239 + 240 + - name: Build oauth-client-browser 241 + run: bun run --filter '@happyview/oauth-client-browser' build 242 + 243 + - name: Typecheck 244 + run: bun run --filter '@happyview/oauth-client-browser' typecheck 245 + 246 + - name: Test 247 + run: bun run --filter '@happyview/oauth-client-browser' test 248 + 249 + test-oauth-client-node: 192 250 needs: changes 193 - if: needs.changes.outputs.sdk == 'true' 251 + if: needs.changes.outputs.oauth-client-node == 'true' 194 252 runs-on: depot-ubuntu-24.04 195 253 steps: 196 254 - name: Checkout repository ··· 202 260 - name: Install dependencies 203 261 run: bun install 204 262 205 - - name: Build SDK packages 206 - run: bun run --filter '@happyview/*' build 263 + - name: Build oauth-client 264 + run: bun run --filter '@happyview/oauth-client' build 265 + 266 + - name: Build oauth-client-node 267 + run: bun run --filter '@happyview/oauth-client-node' build 268 + 269 + - name: Typecheck 270 + run: bun run --filter '@happyview/oauth-client-node' typecheck 271 + 272 + - name: Test 273 + run: bun run --filter '@happyview/oauth-client-node' test 207 274 208 - - name: Typecheck SDK packages 209 - run: bun run --filter '@happyview/*' typecheck 275 + test-lex-agent: 276 + needs: changes 277 + if: needs.changes.outputs.lex-agent == 'true' 278 + runs-on: depot-ubuntu-24.04 279 + steps: 280 + - name: Checkout repository 281 + uses: actions/checkout@v6 210 282 211 - - name: Test SDK packages 212 - run: bun run --filter '@happyview/*' test 283 + - name: Setup Bun 284 + uses: oven-sh/setup-bun@v2 285 + 286 + - name: Install dependencies 287 + run: bun install 288 + 289 + - name: Build oauth-client 290 + run: bun run --filter '@happyview/oauth-client' build 291 + 292 + - name: Build lex-agent 293 + run: bun run --filter '@happyview/lex-agent' build 294 + 295 + - name: Typecheck 296 + run: bun run --filter '@happyview/lex-agent' typecheck 297 + 298 + - name: Test 299 + run: bun run --filter '@happyview/lex-agent' test 213 300 214 301 release-oauth-client: 215 302 if: >- 216 303 github.event_name == 'push' 217 304 && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/dev') 218 - && needs.changes.outputs.sdk == 'true' 219 - needs: [changes, sdk-tests] 305 + && needs.changes.outputs.oauth-client == 'true' 306 + needs: [changes, test-oauth-client] 220 307 runs-on: depot-ubuntu-24.04 221 308 permissions: 222 309 contents: write ··· 254 341 if: >- 255 342 github.event_name == 'push' 256 343 && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/dev') 257 - && needs.changes.outputs.sdk == 'true' 258 - needs: [changes, release-oauth-client] 344 + && needs.changes.outputs.oauth-client-browser == 'true' 345 + needs: [changes, test-oauth-client-browser, release-oauth-client] 259 346 runs-on: depot-ubuntu-24.04 260 347 permissions: 261 348 contents: write ··· 310 397 if: >- 311 398 github.event_name == 'push' 312 399 && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/dev') 313 - && needs.changes.outputs.sdk == 'true' 314 - needs: [changes, release-oauth-client] 400 + && needs.changes.outputs.oauth-client-node == 'true' 401 + needs: [changes, test-oauth-client-node, release-oauth-client] 315 402 runs-on: depot-ubuntu-24.04 316 403 permissions: 317 404 contents: write ··· 366 453 if: >- 367 454 github.event_name == 'push' 368 455 && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/dev') 369 - && needs.changes.outputs.sdk == 'true' 370 - needs: [changes, release-oauth-client] 456 + && needs.changes.outputs.lex-agent == 'true' 457 + needs: [changes, test-lex-agent, release-oauth-client] 371 458 runs-on: depot-ubuntu-24.04 372 459 permissions: 373 460 contents: write