Browse Source

Refactor CI workflow to remove Deno and add exclusions

Removed Deno setup and caching from CI workflow. Added exclusion logic for specific package directories during the build process.
pull/893/head
Dan Ditomaso 8 months ago
committed by GitHub
parent
commit
6cb40d4d3c
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 30
      .github/workflows/ci.yml

30
.github/workflows/ci.yml

@ -28,25 +28,12 @@ jobs:
cache: pnpm cache: pnpm
cache-dependency-path: '**/pnpm-lock.yaml' cache-dependency-path: '**/pnpm-lock.yaml'
- name: Setup Deno
uses: denoland/setup-deno@v2
with:
deno-version: v2.x
- name: Cache Deno dependencies
uses: actions/cache@v4
with:
path: ~/.cache/deno
key: ${{ runner.os }}-deno-${{ hashFiles('**/deno.lock', '**/package.json') }}
restore-keys: |
${{ runner.os }}-deno-
- name: Cache pnpm dependencies - name: Cache pnpm dependencies
uses: actions/cache@v4 uses: actions/cache@v4
with: with:
path: | path: |
~/.pnpm-store ~/.pnpm-store
packages/web/node_modules packages/*/node_modules
key: ${{ runner.os }}-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }} key: ${{ runner.os }}-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: | restore-keys: |
${{ runner.os }}-pnpm- ${{ runner.os }}-pnpm-
@ -55,14 +42,25 @@ jobs:
run: | run: |
set -euo pipefail set -euo pipefail
# Add package folders you want to exclude here (space-separated)
EXCLUDED_DIRS=("packages/protobufs")
for pkg_dir in packages/*/; do for pkg_dir in packages/*/; do
pkg_dir=${pkg_dir%/} # Remove trailing slash pkg_dir=${pkg_dir%/} # Remove trailing slash
echo "🔍 Inspecting $pkg_dir..." echo "🔍 Inspecting $pkg_dir..."
if [[ -f "$pkg_dir/package.json" ]] && [[ "$pkg_dir" != "packages/web" ]]; then # Check if directory is excluded
if [[ " ${EXCLUDED_DIRS[*]} " == *" $pkg_dir "* ]]; then
echo "🚫 Skipping $pkg_dir (excluded)"
continue
fi
# Build only if it has a package.json
if [[ -f "$pkg_dir/package.json" ]]; then
echo "🔧 Building with pnpm: $pkg_dir" echo "🔧 Building with pnpm: $pkg_dir"
(cd "$pkg_dir" && pnpm install --frozen-lockfile && pnpm run build:npm) (cd "$pkg_dir" && pnpm install --frozen-lockfile && pnpm run build:npm)
else else
echo "⚠️ Skipping $pkg_dir (web package or no package.json)" echo "⚠️ Skipping $pkg_dir (no package.json)"
fi fi
done done

Loading…
Cancel
Save