Skip to content

Commit

Permalink
Add separate action for pull requests
Browse files Browse the repository at this point in the history
  • Loading branch information
kvestus committed Feb 19, 2024
1 parent 75886cb commit 42c3e3e
Show file tree
Hide file tree
Showing 2 changed files with 147 additions and 4 deletions.
4 changes: 0 additions & 4 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@ name: Main
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
workflow_dispatch:

jobs:
Expand Down Expand Up @@ -47,7 +45,6 @@ jobs:
path: dist

e2e-chrome-tests:
environment: manual
timeout-minutes: 15
runs-on: ubuntu-latest
container:
Expand Down Expand Up @@ -98,7 +95,6 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

e2e-chrome-mobile-tests:
environment: manual
timeout-minutes: 15
runs-on: ubuntu-latest
container:
Expand Down
147 changes: 147 additions & 0 deletions .github/workflows/pull-request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,147 @@
name: Main

on:
pull_request:
branches: [ main ]
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest
container:
image: cypress/browsers:node-18.16.0-chrome-114.0.5735.133-1-ff-114.0.2-edge-114.0.1823.51-1
options: --user 1001
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Cache node_modules
uses: actions/setup-node@v4
with:
node-version: 18
cache: 'npm'

- name: Cypress install
uses: cypress-io/github-action@v6
with:
runTests: false

- name: Write Firebase config
run: |
echo ${{ secrets.FIREBASE_CONFIG }} | base64 -d > firebase.config.json
- run: npx cypress info
- run: node --version
- run: node -p 'os.cpus()'
- run: npm run lint
- run: npm run test:ci
- run: npm run build

- name: Save build folder
uses: actions/upload-artifact@v4
with:
name: dist
if-no-files-found: error
path: dist

e2e-chrome-tests:
environment: manual
timeout-minutes: 15
runs-on: ubuntu-latest
container:
image: cypress/browsers:node-18.16.0-chrome-114.0.5735.133-1-ff-114.0.2-edge-114.0.1823.51-1
options: --user 1001
needs: build
strategy:
fail-fast: false # https://github.com/cypress-io/github-action/issues/48
matrix:
containers: [ 1, 2 ]
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Download the build folders
uses: actions/download-artifact@v4
with:
name: dist
path: dist

- name: Node info
run: node -v

- name: __e Dir
run: ls /__e

- name: "E2E Tests - Chrome"
uses: cypress-io/github-action@v6
with:
build: npx cypress info
start: npm run preview
wait-on: "http://localhost:8080"
wait-on-timeout: 120
browser: chrome
record: true
parallel: true
group: "E2E - Chrome"
spec: cypress/e2e/*
config-file: cypress.config.ts
config: "{\"e2e\":{\"baseUrl\":\"http://localhost:8080\"}}"
env:
CYPRESS_PROJECT_ID: ${{ secrets.CYPRESS_PROJECT_ID }}
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
COMMIT_INFO_MESSAGE: ${{ github.event.pull_request.title }}
COMMIT_INFO_SHA: ${{ github.event.pull_request.head.sha }}
TEST_USER_USERNAME: ${{ secrets.TEST_USER_USERNAME_1 }}
TEST_USER_PASSWORD: ${{ secrets.TEST_USER_PASSWORD_1 }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

e2e-chrome-mobile-tests:
environment: manual
timeout-minutes: 15
runs-on: ubuntu-latest
container:
image: cypress/browsers:node-18.16.0-chrome-114.0.5735.133-1-ff-114.0.2-edge-114.0.1823.51-1
options: --user 1001
needs: build
strategy:
fail-fast: false # https://github.com/cypress-io/github-action/issues/48
matrix:
containers: [ 1, 2 ]
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Download the build folders
uses: actions/download-artifact@v4
with:
name: dist
path: dist

- name: Node info
run: node -v

- name: __e Dir
run: ls /__e

- name: "E2E Tests - Chrome - Mobile"
uses: cypress-io/github-action@v6
with:
build: npx cypress info
start: npm run preview
wait-on: "http://localhost:8080"
wait-on-timeout: 120
browser: chrome
record: true
parallel: true
group: "E2E - Chrome - Mobile"
spec: cypress/e2e/*
config-file: cypress.config.ts
config: "{\"e2e\":{\"baseUrl\":\"http://localhost:8080\",\"viewportWidth\":400,\"viewportHeight\":660}}"
env:
CYPRESS_PROJECT_ID: ${{ secrets.CYPRESS_PROJECT_ID }}
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
COMMIT_INFO_MESSAGE: ${{ github.event.pull_request.title }}
COMMIT_INFO_SHA: ${{ github.event.pull_request.head.sha }}
TEST_USER_USERNAME: ${{ secrets.TEST_USER_USERNAME_2 }}
TEST_USER_PASSWORD: ${{ secrets.TEST_USER_PASSWORD_2 }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

0 comments on commit 42c3e3e

Please sign in to comment.