@@ -41,119 +41,6 @@ jobs:
4141 with :
4242 name : items-planning-container
4343 path : items-planning-container.tar
44- test :
45- needs : build
46- runs-on : ubuntu-22.04
47- strategy :
48- fail-fast : false
49- matrix :
50- test : [a,b,c]
51- steps :
52- - uses : actions/checkout@v3
53- with :
54- path : main
55- - uses : actions/download-artifact@v4
56- with :
57- name : items-planning-container
58- - run : docker load -i items-planning-container.tar
59- - name : Create docker network
60- run : docker network create --driver bridge --attachable data
61- - name : Start MariaDB
62- run : |
63- docker pull mariadb:10.8
64- docker run --name mariadbtest --network data -e MYSQL_ROOT_PASSWORD=secretpassword -p 3306:3306 -d mariadb:10.8
65- - name : Start rabbitmq
66- run : |
67- docker pull rabbitmq:latest
68- docker run -d --hostname my-rabbit --name some-rabbit --network data -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=password rabbitmq:latest
69- - name : Sleep 15
70- run : sleep 15
71- - name : Start the newly build Docker container
72- id : docker-run
73- run : docker run --name my-container -p 4200:5000 --network data microtingas/frontend-container:latest "/ConnectionString=host=mariadbtest;Database=420_Angular;user=root;password=secretpassword;port=3306;Convert Zero Datetime = true;SslMode=none;" > docker_run_log 2>&1 &
74- - name : Use Node.ts
75- uses : actions/setup-node@v3
76- with :
77- node-version : 22
78- - name : Extract branch name
79- id : extract_branch
80- run : echo "BRANCH=$(echo ${GITHUB_REF#refs/heads/})" >> $GITHUB_OUTPUT
81- - name : ' Preparing Frontend checkout'
82- uses : actions/checkout@v2
83- with :
84- repository : microting/eform-angular-frontend
85- ref : ${{ steps.extract_branch.outputs.BRANCH }}
86- path : eform-angular-frontend
87- - name : Copy dependencies
88- run : |
89- cp -av main/eform-client/src/app/plugins/modules/items-planning-pn eform-angular-frontend/eform-client/src/app/plugins/modules/items-planning-pn
90- cp -av main/eform-client/e2e/Tests/items-planning-settings eform-angular-frontend/eform-client/e2e/Tests/items-planning-settings
91- cp -av main/eform-client/e2e/Tests/items-planning-general eform-angular-frontend/eform-client/e2e/Tests/items-planning-general
92- cp -av main/eform-client/e2e/Page\ objects/ItemsPlanning eform-angular-frontend/eform-client/e2e/Page\ objects/ItemsPlanning
93- cp -av main/eform-client/e2e/Assets eform-angular-frontend/eform-client/e2e
94- cp -av main/eform-client/wdio-headless-plugin-step2${{matrix.test}}.conf.ts eform-angular-frontend/eform-client/wdio-headless-plugin-step2${{matrix.test}}.conf.ts
95- cp -av main/eform-client/wdio-plugin-step2.conf.ts eform-angular-frontend/eform-client/wdio-plugin-step2.conf.ts
96- mkdir -p eform-angular-frontend/eform-client/cypress/e2e/plugins/
97- cp -av main/eform-client/cypress/e2e/plugins/items-planning-pn eform-angular-frontend/eform-client/cypress/e2e/plugins/items-planning-pn
98- #mkdir -p eform-angular-frontend/eFormAPI/eFormAPI.Web/Plugins
99- #cp -av main/eFormAPI/eFormAPI.Web/Plugins/ItemsPlanning eform-angular-frontend/eFormAPI/eFormAPI.Web/Plugins/ItemsPlanning
100- cd eform-angular-frontend/eform-client && ../../main/testinginstallpn.sh
101- - name : yarn install
102- run : cd eform-angular-frontend/eform-client && yarn install
103- - name : Create errorShots directory
104- run : mkdir /home/runner/work/eform-angular-items-planning-plugin/eform-angular-items-planning-plugin/eform-angular-frontend/eform-client/errorShots
105- - name : Pretest changes to work with Docker container
106- run : sed -i 's/localhost/mariadbtest/g' eform-angular-frontend/eform-client/e2e/Constants/DatabaseConfigurationConstants.ts
107- - name : DB Configuration
108- uses : cypress-io/github-action@v4
109- with :
110- start : echo 'hi'
111- wait-on : " http://localhost:4200"
112- wait-on-timeout : 120
113- browser : chrome
114- record : false
115- spec : cypress/e2e/db/*
116- config-file : cypress.config.ts
117- working-directory : eform-angular-frontend/eform-client
118- command-prefix : " --"
119- - name : Load DB dump
120- if : matrix.test == 'a'
121- run : |
122- docker exec -i mariadbtest mysql -u root --password=secretpassword -e 'update 420_Angular.EformPlugins set Status = 1'
123- docker exec -i mariadbtest mysql -u root --password=secretpassword -e 'drop database `420_SDK`'
124- docker exec -i mariadbtest mysql -u root --password=secretpassword -e 'create database `420_SDK`'
125- docker exec -i mariadbtest mysql -u root --password=secretpassword 420_SDK < eform-angular-frontend/eform-client/cypress/e2e/plugins/items-planning-pn/a/420_sdk.sql
126- - name : Change rabbitmq hostname
127- if : ${{ matrix.test != 'a' }}
128- run : docker exec -i mariadbtest mysql -u root --password=secretpassword -e 'update 420_SDK.Settings set Value = "my-rabbit" where Name = "rabbitMqHost"'
129- - name : ${{matrix.test}} test
130- continue-on-error : true
131- uses : cypress-io/github-action@v4
132- with :
133- start : echo 'hi'
134- wait-on : " http://localhost:4200"
135- wait-on-timeout : 120
136- browser : chrome
137- record : false
138- spec : cypress/e2e/plugins/items-planning-pn/${{matrix.test}}/*
139- config-file : cypress.config.ts
140- working-directory : eform-angular-frontend/eform-client
141- command-prefix : " --"
142- - name : Plugin testing
143- run : cd eform-angular-frontend/eform-client && npm run testheadlessplugin2${{matrix.test}}
144- - name : The job has failed
145- if : ${{ failure() }}
146- run : |
147- cat docker_run_log
148- - name : Archive screenshot artifacts
149- if : ${{ failure() }}
150- uses : actions/upload-artifact@v4
151- with :
152- name : error Screenshots
153- path : |
154- /home/runner/work/eform-angular-items-planning-plugin/eform-angular-items-planning-plugin/eform-angular-frontend/eform-client/errorShots/chrome*.png
155- /home/runner/work/eform-angular-items-planning-plugin/eform-angular-items-planning-plugin/eform-angular-frontend/eform-client/cypress/videos/*.mp4
156- retention-days : 2
15744 test-dotnet :
15845 runs-on : ubuntu-latest
15946 steps :
0 commit comments