Skip to content

Initial version of cdk deploy #73

Initial version of cdk deploy

Initial version of cdk deploy #73

Workflow file for this run

name: Valintojen toteuttaminen workflow
on:
push:
branches: [main, master]
pull_request:
branches: [main, master]
jobs:
lint:
timeout-minutes: 10
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version-file: '.nvmrc'
- name: Install dependencies
run: npm ci
- name: Run lint
run: |
npm run typecheck
npm run lint
test:
timeout-minutes: 10
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version-file: '.nvmrc'
- name: Install dependencies
run: npm ci
- name: Run unit tests
run: npm test
e2e:
timeout-minutes: 60
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version-file: '.nvmrc'
- name: Install dependencies
run: npm ci
- name: Install Playwright Browsers
run: npx playwright install --with-deps
- name: install mkcert
run: |
curl -JLO "https://dl.filippo.io/mkcert/latest?for=linux/amd64"
chmod +x mkcert-v*-linux-amd64
sudo cp mkcert-v*-linux-amd64 /usr/local/bin/mkcert
- name: Create dev certificates
run: npm run create-dev-certs
- name: Start the app
run: npm run dev-test &
- name: Run Playwright tests
run: npx playwright test
- uses: actions/upload-artifact@v4
if: always()
with:
name: playwright-report
path: playwright-report/
retention-days: 10
deploy-zip:
needs: [lint, test, e2e]
timeout-minutes: 30
runs-on: ubuntu-latest
permissions:
id-token: write
contents: read
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version-file: '.nvmrc'
- name: Install dependencies
run: npm ci
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@e3dd6a429d7300a6a4c196c26e071d42e0343502 # v4
with:
role-to-assume: ${{ secrets.AWS_OPINTOPOLKU_DEV_ROLE_ARN }}
role-session-name: valintojen-toteuttaminen-deploy-zip
aws-region: eu-west-1
- name: Deploy zip to s3
run: |
npm run build
zip -r GA-${{github.run_number}}.zip .next/standalone
aws s3 cp GA-${{github.run_number}}.zip s3://${{secrets.BUCKET_NAME}}/GA-${{github.run_number}}