Skip to content

Have the first test that starts its subject with Docker #287

Have the first test that starts its subject with Docker

Have the first test that starts its subject with Docker #287

name: Frank configs should not produce warnings
on:
push:
branches:
- master
workflow_dispatch:
jobs:
testing:
strategy:
matrix:
include:
- frankConfig: frank-manual/srcSteps/ladybugInstance/v520
- frankConfig: frank-manual/srcSteps/Frank2Hermes/v560
- frankConfig: frank-manual/srcSteps/NewHorizons/v510
iafUtilAllowed: true
- frankConfig: frank-manual/srcSteps/exercise/v500
- frankConfig: frank-manual/srcSteps/forFrankConsole/v510
- frankConfig: frank-manual/src/advancedDevelopmentCredentials
- frankConfig: frank-manual/src/advancedDevelopmentProperties
- frankConfig: frank-manual/src/deploymentTomcat
iafUtilAllowed: true
- frankConfig: frank-manual/srcSteps/Frank2Monitoring/v510
- frankConfig: frank-manual/srcSteps/Frank2DockerDevel/v530
iafUtilAllowed: true
withDocker: true
name: ${{matrix.frankConfig}} - Test that Frank config has no warnings
runs-on: ubuntu-latest
steps:
- name: Show additional properties
run: echo "Testing ${{matrix.frankConfig}} with iafUtilAllowed = ${{ matrix.iafUtilAllowed }} and withDocker = ${{ matrix.withDocker }}"
- name: Checkout Frank!Runner
if: ${{ matrix.withDocker != true }}
uses: actions/checkout@v4
with:
repository: wearefrank/frank-runner
path: frank-runner
- name: See commit number of checked-out frank-runner
if: ${{ matrix.withDocker != true }}
run: git log -1
working-directory: frank-runner
- name: Set port where Frank!Framework is served
if: ${{ matrix.withDocker != true }}
run: echo "tomcat.connector.port=8090" > frank-runner/build.properties
- name: Set debug to true
if: ${{ matrix.withDocker != true }}
run: echo "debug=true" >> frank-runner/build.properties
- name: Set projects.dir
if: ${{ matrix.withDocker != true }}
run: echo "projects.dir=.." >> frank-runner/build.properties
- name: Select the configuration in the manual we want to test
if: ${{ matrix.withDocker != true }}
run: echo "project.dir=${{matrix.frankConfig}}" >> frank-runner/build.properties
- name: Checkout frank-manual
uses: actions/checkout@v4
with:
path: frank-manual
- name: Copy cypress/cypress.config_cicd.ts to cypress/cypress.config.ts to listen to correct port
run: cp cypress.config_cicd.ts cypress.config.ts
working-directory: frank-manual/cypress
- name: Use Node.js 20.x
uses: actions/setup-node@v2
with:
node-version: 20.x
cache: "yarn"
cache-dependency-path: "**/yarn.lock"
- name: Show node version
run: node -v
working-directory: "frank-manual/cypress"
- name: Show yarn version
run: yarn -v
working-directory: "frank-manual/cypress"
- name: Install packages
run: yarn install --immutable
working-directory: frank-manual/cypress
- name: Cache Frank!Runner dependencies - build
uses: actions/cache@v3
with:
path: frank-runner/build
key: ${{ runner.os }}${{ matrix.frankConfig }}-frank-runner-build
restore-keys: |
${{ runner.os }}${{ matrix.frankConfig }}-frank-runner-build
- name: Cache Frank!Runner dependencies - download
if: ${{ matrix.withDocker != true }}
uses: actions/cache@v3
with:
path: frank-runner/download
key: ${{ runner.os }}${{ matrix.frankConfig }}-frank-runner-download
restore-keys: |
${{ runner.os }}${{ matrix.frankConfig }}-frank-runner-download
- name: Show current time, allows you to check that logs are not old
run: date
- name: Let Frank!Runner do its downloads
if: ${{ matrix.withDocker != true }}
run: ./env.sh > installFrankRunnerEnv.log
working-directory: frank-runner
- name: Show apache-tomcat directories
if: ${{ matrix.withDocker != true }}
run: find . -path './build/*' -name 'apache-tomcat*'
working-directory: frank-runner
- name: Remove old Tomcat directories
if: ${{ matrix.withDocker != true }}
run: rm -rf ./build/apache-tomcat-9*
working-directory: frank-runner
- name: Check that there is only one version of Tomcat
if: ${{ matrix.withDocker != true }}
run: test $(find . -path './build/*' -name 'apache-tomcat*' | wc -w) -eq 1
working-directory: frank-runner
- name: Delete old Ladybug test reports
if: ${{ matrix.withDocker != true }}
run: find . -path './build/apache-tomcat*/logs/testtool*' -delete
working-directory: frank-runner
- name: Remove old catalina.out
if: ${{ matrix.withDocker != true }}
run: find . -path './build/apache-tomcat*/catalina.out' -delete
working-directory: frank-runner
- name: Start server using Frank!Runner in background
if: ${{ matrix.withDocker != true }}
run: ./restart.sh > serverStartLog.log &
working-directory: frank-runner
- name: Start server using docker-compose
if: ${{ matrix.withDocker == true }}
run: docker compose up &
working-directory: ${{ matrix.frankConfig }}
- name: Wait for server to be available
run: ./waitForUrl.sh http://localhost:8090 240
working-directory: frank-manual/.github/workflows
- name: Run the tests - really no warnings
if: ${{ matrix.iafUtilAllowed != true }}
run: yarn run cypress run --spec cypress/e2e/no-warnings.cy.ts
working-directory: frank-manual/cypress
- name: Run the tests - allow warning about IAF_Util
if: ${{ matrix.iafUtilAllowed == true }}
run: yarn run cypress run --spec cypress/e2e/warning-only-iaf-util.cy.ts
working-directory: frank-manual/cypress
- name: Try to access server directly with curl
run: curl -v -i -X DELETE http://localhost:8090/iaf/ladybug/api/report/all/Test
if: always()
- name: Show files
run: tree -L 5 .
if: always()