Quick fix #34
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: App build test | |
on: | |
pull_request: | |
types: [opened, synchronize] | |
paths: | |
- app/*/src/** | |
- app/*/package.json | |
- .github/workflows/app-test.yml | |
env: | |
BUILD_PATH: "./app/gallery" # default value when not using subfolders | |
jobs: | |
test: | |
name: Build test | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Detect package manager | |
id: detect-package-manager | |
run: | | |
if [ -f "${{ github.workspace }}/yarn.lock" ]; then | |
echo "manager=yarn" >> $GITHUB_OUTPUT | |
echo "command=install" >> $GITHUB_OUTPUT | |
echo "runner=yarn" >> $GITHUB_OUTPUT | |
exit 0 | |
elif [ -f "${{ github.workspace }}/package.json" ]; then | |
echo "manager=npm" >> $GITHUB_OUTPUT | |
echo "command=ci" >> $GITHUB_OUTPUT | |
echo "runner=npx --no-install" >> $GITHUB_OUTPUT | |
exit 0 | |
else | |
echo "Unable to determine package manager" | |
exit 1 | |
fi | |
- name: Setup Node | |
uses: actions/setup-node@v3 | |
with: | |
node-version: latest | |
cache: ${{ steps.detect-package-manager.outputs.manager }} | |
cache-dependency-path: ./package-lock.json | |
- name: Install dependencies | |
run: ${{ steps.detect-package-manager.outputs.manager }} ${{ steps.detect-package-manager.outputs.command }} | |
- name: Build packages | |
run: ${{ steps.detect-package-manager.outputs.manager }} run build:package | |
- name: App build test | |
run: ${{ steps.detect-package-manager.outputs.manager }} run build:app | |
- name: Build with Astro | |
run: | | |
${{ steps.detect-package-manager.outputs.runner }} astro build | |
working-directory: ${{ env.BUILD_PATH }} |