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: Test Scratch Auth Next.js Package | |
on: | |
push: | |
paths: | |
- "packages/nextjs/**" | |
pull_request: | |
paths: | |
- "packages/nextjs/**" | |
workflow_dispatch: | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
env: | |
SCRATCH_AUTH_SECRET_KEY: ${{ secrets.SCRATCH_AUTH_SECRET_KEY }} | |
NEXT_PUBLIC_REDIRECT_URL: "http://localhost:3000/api/auth" | |
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }} | |
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
- name: Log in to Docker Hub | |
run: echo "${{ secrets.DOCKER_PASSWORD }}" | docker login -u "${{ secrets.DOCKER_USERNAME }}" --password-stdin | |
- name: Set up Node.js | |
uses: actions/setup-node@v2 | |
with: | |
node-version: "18" | |
- name: Install dependencies for nextjs package | |
working-directory: packages/nextjs | |
run: npm install | |
- name: Link nextjs package | |
run: | | |
npm link | |
cd /test/nextjs | |
npm link nextjs | |
- name: Install dependencies for test package | |
working-directory: test/nextjs | |
run: npm install | |
- name: Run build for nextjs package | |
working-directory: packages/nextjs | |
run: npm run build | |
- name: Start the Next.js application | |
working-directory: packages/nextjs | |
run: npm run dev & | |
- name: Wait for server to be ready | |
run: npx wait-on http://localhost:3000 | |
- name: Run authentication test | |
run: | | |
curl -X POST http://localhost:3000/api/auth -d "privateCode=test" | |
echo "Testing authentication successful" | |
- name: Stop services | |
run: | | |
kill $(lsof -t -i:3000) || true | |
if: always() | |
- name: Upload test results | |
if: failure() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: nextjs-scratch-auth-test-results | |
path: packages/nextjs/test-results |