-
Notifications
You must be signed in to change notification settings - Fork 12
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Created new UI CI for Dynamic Multistore
- Loading branch information
1 parent
b59a11d
commit 3478c98
Showing
1 changed file
with
255 additions
and
0 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,255 @@ | ||
name: "[mp_b2b][master] Robot Regression UI E2E Dynamic Multistore" | ||
|
||
on: | ||
pull_request: | ||
types: [ labeled ] | ||
push: | ||
branches: | ||
- master | ||
workflow_dispatch: | ||
|
||
concurrency: | ||
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | ||
cancel-in-progress: true | ||
|
||
jobs: | ||
docker-alpine-php-8-2-mariadb-robot-ui-dynamic-multistore-group-one: | ||
if: > | ||
(github.event_name == 'pull_request' && github.event.label.name == 'robot-regression-ui-e2e') || | ||
(github.event_name == 'push' && github.ref == 'refs/heads/master') | ||
name: "Docker / Alpine / PHP 8.2 / MariaDB / Robot / UI / Dynamic Multistore /Group One" | ||
runs-on: ubuntu-22.04 | ||
env: | ||
PROGRESS_TYPE: plain | ||
SPRYKER_PLATFORM_IMAGE: spryker/php:8.2 | ||
TRAVIS: 1 | ||
ROBOT_TESTS_ARTIFACTS_BUCKET_REGION: eu-west-1 | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: actions/setup-python@v5 | ||
with: | ||
python-version: '3.9' | ||
|
||
- name: Cache pip packages | ||
uses: actions/cache@v4 | ||
with: | ||
path: ~/.cache/pip | ||
key: ${{ runner.os }}-pip-${{ hashFiles('composer.lock') }} | ||
restore-keys: | | ||
${{ runner.os }}-pip- | ||
- name: Install packages | ||
run: | | ||
sudo apt install awscli -q | ||
python3 -m pip install --upgrade pip | ||
python3 -m pip install -U robotframework | ||
python3 -m pip install -U robotframework-requests | ||
python3 -m pip install -U robotframework-jsonlibrary | ||
python3 -m pip install -U robotframework-databaselibrary | ||
python3 -m pip install -U robotframework-browser | ||
python3 -m pip install PyMySQL | ||
sudo npx playwright install-deps | ||
- name: Install docker-compose | ||
run: | | ||
sudo curl -L "https://github.com/docker/compose/releases/download/2.12.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose | ||
sudo chmod +x /usr/local/bin/docker-compose | ||
- name: Install Robot tests | ||
run: | | ||
git clone https://github.com/spryker/robotframework-suite-tests.git --single-branch --branch master robotframework-tests | ||
- name: Install Project | ||
continue-on-error: false | ||
run: | | ||
git clone https://github.com/spryker/docker-sdk.git ./docker | ||
docker/sdk boot -v deploy.ci.acceptance.mariadb.dynamic-store.robot.yml | ||
sudo bash -c "echo '127.0.0.1 backend-api.eu.spryker.local backend-api.us.spryker.local backend-gateway.eu.spryker.local backend-gateway.us.spryker.local backoffice.eu.spryker.local backoffice.us.spryker.local glue-backend.eu.spryker.local glue-backend.us.spryker.local glue-storefront.eu.spryker.local glue-storefront.us.spryker.local glue.eu.spryker.local glue.us.spryker.local mail.spryker.local mp.eu.spryker.local mp.us.spryker.local queue.spryker.local scheduler.spryker.local spryker.local swagger.spryker.local yves.eu.spryker.local yves.us.spryker.local date-time-configurator-example.spryker.local' >> /etc/hosts" | ||
docker/sdk up -t -v | ||
- name: Custom commands | ||
continue-on-error: false | ||
run: | | ||
docker/sdk cli composer dump-autoload -o -a --apcu | ||
SPRYKER_CURRENT_REGION=EU docker/sdk console queue:worker:start --stop-when-empty | ||
- name: Run Tests | ||
id: run_tests | ||
continue-on-error: true | ||
run: | | ||
cd robotframework-tests | ||
rfbrowser init | ||
robot -v env:ui_mp_b2b -v dms:true -v headless:true -v glue_env:http://glue.eu.spryker.local -v bapi_env:http://glue-backend.eu.spryker.local -v sapi_env:http://glue-storefront.eu.spryker.local -v yves_env:http://yves.eu.spryker.local -v zed_env:http://backoffice.eu.spryker.local -v mp_env:http://mp.eu.spryker.local/security-merchant-portal-gui/login/ -v ignore_console:false -d results --exclude skip-due-to-issueORskip-due-to-refactoring --include group_one -s '*'.tests.ui.mp_b2b . | ||
touch results/time.txt && echo $(date) > results/time.txt | ||
- name: Rerun Failed Tests | ||
if: steps.run_tests.outcome != 'success' | ||
run: | | ||
cd robotframework-tests | ||
robot -v env:ui_mp_b2b -v dms:true -v headless:true -v glue_env:http://glue.eu.spryker.local -v bapi_env:http://glue-backend.eu.spryker.local -v sapi_env:http://glue-storefront.eu.spryker.local -v yves_env:http://yves.eu.spryker.local -v zed_env:http://backoffice.eu.spryker.local -v mp_env:http://mp.eu.spryker.local/security-merchant-portal-gui/login/ -v ignore_console:false -d results/rerun --runemptysuite --rerunfailed results/output.xml --output rerun.xml -s '*'.tests.ui.mp_b2b . | ||
- name: Merge Test Results | ||
if: always() && steps.run_tests.outcome != 'success' | ||
run: | | ||
cd robotframework-tests | ||
rebot -d results --merge results/output.xml results/rerun/rerun.xml | ||
- name: Upload artifacts | ||
if: failure() | ||
run: | | ||
AWS_DEFAULT_REGION=${{env.ROBOT_TESTS_ARTIFACTS_BUCKET_REGION}} AWS_ACCESS_KEY_ID=${{ secrets.ROBOT_TESTS_ARTIFACTS_KEY }} AWS_SECRET_ACCESS_KEY=${{ secrets.ROBOT_TESTS_ARTIFACTS_SECRET }} aws s3 cp robotframework-tests/results s3://${{vars.ROBOT_TESTS_ARTIFACTS_BUCKET}}/master-robot-ui-ci-dms/mp_b2b_regression/group1/${GITHUB_RUN_ID}/PHP8.2MariaDBRobotUi/ \ | ||
--recursive \ | ||
--expires "$(date -d '+7 days' --utc +'%Y-%m-%dT%H:%M:%SZ')" | ||
docker-alpine-php-8-2-mariadb-robot-ui-dynamic-multistore-group-two: | ||
if: > | ||
(github.event_name == 'pull_request' && github.event.label.name == 'robot-regression-ui-e2e') || | ||
(github.event_name == 'push' && github.ref == 'refs/heads/master') | ||
name: "Docker / Alpine / PHP 8.2 / MariaDB / Robot / UI / Dynamic Multistore /Group Two" | ||
runs-on: ubuntu-22.04 | ||
env: | ||
PROGRESS_TYPE: plain | ||
SPRYKER_PLATFORM_IMAGE: spryker/php:8.2 | ||
TRAVIS: 1 | ||
ROBOT_TESTS_ARTIFACTS_BUCKET_REGION: eu-west-1 | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: actions/setup-python@v5 | ||
with: | ||
python-version: '3.9' | ||
|
||
- name: Cache pip packages | ||
uses: actions/cache@v4 | ||
with: | ||
path: ~/.cache/pip | ||
key: ${{ runner.os }}-pip-${{ hashFiles('composer.lock') }} | ||
restore-keys: | | ||
${{ runner.os }}-pip- | ||
- name: Install packages | ||
run: | | ||
sudo apt install awscli -q | ||
python3 -m pip install --upgrade pip | ||
python3 -m pip install -U robotframework | ||
python3 -m pip install -U robotframework-requests | ||
python3 -m pip install -U robotframework-jsonlibrary | ||
python3 -m pip install -U robotframework-databaselibrary | ||
python3 -m pip install -U robotframework-browser | ||
python3 -m pip install PyMySQL | ||
sudo npx playwright install-deps | ||
- name: Install docker-compose | ||
run: | | ||
sudo curl -L "https://github.com/docker/compose/releases/download/2.12.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose | ||
sudo chmod +x /usr/local/bin/docker-compose | ||
- name: Install Robot tests | ||
run: | | ||
git clone https://github.com/spryker/robotframework-suite-tests.git --single-branch --branch master robotframework-tests | ||
- name: Install Project | ||
continue-on-error: false | ||
run: | | ||
git clone https://github.com/spryker/docker-sdk.git ./docker | ||
docker/sdk boot -v deploy.ci.acceptance.mariadb.dynamic-store.robot.yml | ||
sudo bash -c "echo '127.0.0.1 backend-api.eu.spryker.local backend-api.us.spryker.local backend-gateway.eu.spryker.local backend-gateway.us.spryker.local backoffice.eu.spryker.local backoffice.us.spryker.local glue-backend.eu.spryker.local glue-backend.us.spryker.local glue-storefront.eu.spryker.local glue-storefront.us.spryker.local glue.eu.spryker.local glue.us.spryker.local mail.spryker.local mp.eu.spryker.local mp.us.spryker.local queue.spryker.local scheduler.spryker.local spryker.local swagger.spryker.local yves.eu.spryker.local yves.us.spryker.local date-time-configurator-example.spryker.local' >> /etc/hosts" | ||
docker/sdk up -t -v | ||
- name: Custom commands | ||
continue-on-error: false | ||
run: | | ||
docker/sdk cli composer dump-autoload -o -a --apcu | ||
SPRYKER_CURRENT_REGION=EU docker/sdk console queue:worker:start --stop-when-empty | ||
- name: Run Tests | ||
id: run_tests | ||
continue-on-error: true | ||
run: | | ||
cd robotframework-tests | ||
rfbrowser init | ||
robot -v env:ui_mp_b2b -v dms:true -v headless:true -v glue_env:http://glue.eu.spryker.local -v bapi_env:http://glue-backend.eu.spryker.local -v sapi_env:http://glue-storefront.eu.spryker.local -v yves_env:http://yves.eu.spryker.local -v zed_env:http://backoffice.eu.spryker.local -v mp_env:http://mp.eu.spryker.local/security-merchant-portal-gui/login/ -v ignore_console:false -d results --exclude skip-due-to-issueORskip-due-to-refactoring --include group_two -s '*'.tests.ui.mp_b2b . | ||
touch results/time.txt && echo $(date) > results/time.txt | ||
- name: Rerun Failed Tests | ||
if: steps.run_tests.outcome != 'success' | ||
run: | | ||
cd robotframework-tests | ||
robot -v env:ui_mp_b2b -v dms:true -v headless:true -v glue_env:http://glue.eu.spryker.local -v bapi_env:http://glue-backend.eu.spryker.local -v sapi_env:http://glue-storefront.eu.spryker.local -v yves_env:http://yves.eu.spryker.local -v zed_env:http://backoffice.eu.spryker.local -v mp_env:http://mp.eu.spryker.local/security-merchant-portal-gui/login/ -v ignore_console:false -d results/rerun --runemptysuite --rerunfailed results/output.xml --output rerun.xml -s '*'.tests.ui.mp_b2b . | ||
- name: Merge Test Results | ||
if: always() && steps.run_tests.outcome != 'success' | ||
run: | | ||
cd robotframework-tests | ||
rebot -d results --merge results/output.xml results/rerun/rerun.xml | ||
- name: Upload artifacts | ||
if: failure() | ||
run: | | ||
AWS_DEFAULT_REGION=${{env.ROBOT_TESTS_ARTIFACTS_BUCKET_REGION}} AWS_ACCESS_KEY_ID=${{ secrets.ROBOT_TESTS_ARTIFACTS_KEY }} AWS_SECRET_ACCESS_KEY=${{ secrets.ROBOT_TESTS_ARTIFACTS_SECRET }} aws s3 cp robotframework-tests/results s3://${{vars.ROBOT_TESTS_ARTIFACTS_BUCKET}}/master-robot-ui-ci-dms/mp_b2b_regression/group2/${GITHUB_RUN_ID}/PHP8.2MariaDBRobotUi/ \ | ||
--recursive \ | ||
--expires "$(date -d '+7 days' --utc +'%Y-%m-%dT%H:%M:%SZ')" | ||
docker-alpine-php-8-2-mariadb-robot-ui-dynamic-multistore-group-three: | ||
if: > | ||
(github.event_name == 'pull_request' && github.event.label.name == 'robot-regression-ui-e2e') || | ||
(github.event_name == 'push' && github.ref == 'refs/heads/master') | ||
name: "Docker / Alpine / PHP 8.2 / MariaDB / Robot / UI / Dynamic Multistore / Group Three" | ||
runs-on: ubuntu-22.04 | ||
env: | ||
PROGRESS_TYPE: plain | ||
SPRYKER_PLATFORM_IMAGE: spryker/php:8.2 | ||
TRAVIS: 1 | ||
ROBOT_TESTS_ARTIFACTS_BUCKET_REGION: eu-west-1 | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: actions/setup-python@v5 | ||
with: | ||
python-version: '3.9' | ||
|
||
- name: Cache pip packages | ||
uses: actions/cache@v4 | ||
with: | ||
path: ~/.cache/pip | ||
key: ${{ runner.os }}-pip-${{ hashFiles('composer.lock') }} | ||
restore-keys: | | ||
${{ runner.os }}-pip- | ||
- name: Install packages | ||
run: | | ||
sudo apt install awscli -q | ||
python3 -m pip install --upgrade pip | ||
python3 -m pip install -U robotframework | ||
python3 -m pip install -U robotframework-requests | ||
python3 -m pip install -U robotframework-jsonlibrary | ||
python3 -m pip install -U robotframework-databaselibrary | ||
python3 -m pip install -U robotframework-browser | ||
python3 -m pip install PyMySQL | ||
sudo npx playwright install-deps | ||
- name: Install docker-compose | ||
run: | | ||
sudo curl -L "https://github.com/docker/compose/releases/download/2.12.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose | ||
sudo chmod +x /usr/local/bin/docker-compose | ||
- name: Install Robot tests | ||
run: | | ||
git clone https://github.com/spryker/robotframework-suite-tests.git --single-branch --branch master robotframework-tests | ||
- name: Install Project | ||
continue-on-error: false | ||
run: | | ||
git clone https://github.com/spryker/docker-sdk.git ./docker | ||
docker/sdk boot -v deploy.ci.acceptance.mariadb.dynamic-store.robot.yml | ||
sudo bash -c "echo '127.0.0.1 backend-api.eu.spryker.local backend-api.us.spryker.local backend-gateway.eu.spryker.local backend-gateway.us.spryker.local backoffice.eu.spryker.local backoffice.us.spryker.local glue-backend.eu.spryker.local glue-backend.us.spryker.local glue-storefront.eu.spryker.local glue-storefront.us.spryker.local glue.eu.spryker.local glue.us.spryker.local mail.spryker.local mp.eu.spryker.local mp.us.spryker.local queue.spryker.local scheduler.spryker.local spryker.local swagger.spryker.local yves.eu.spryker.local yves.us.spryker.local date-time-configurator-example.spryker.local' >> /etc/hosts" | ||
docker/sdk up -t -v | ||
- name: Custom commands | ||
continue-on-error: false | ||
run: | | ||
docker/sdk cli composer dump-autoload -o -a --apcu | ||
SPRYKER_CURRENT_REGION=EU docker/sdk console queue:worker:start --stop-when-empty | ||
- name: Run Tests | ||
id: run_tests | ||
continue-on-error: true | ||
run: | | ||
cd robotframework-tests | ||
rfbrowser init | ||
robot -v env:ui_mp_b2b -v dms:true -v headless:true -v glue_env:http://glue.eu.spryker.local -v bapi_env:http://glue-backend.eu.spryker.local -v sapi_env:http://glue-storefront.eu.spryker.local -v yves_env:http://yves.eu.spryker.local -v zed_env:http://backoffice.eu.spryker.local -v mp_env:http://mp.eu.spryker.local/security-merchant-portal-gui/login/ -v ignore_console:false -d results --exclude skip-due-to-issueORskip-due-to-refactoring --include group_tree -s '*'.tests.ui.mp_b2b . | ||
touch results/time.txt && echo $(date) > results/time.txt | ||
- name: Rerun Failed Tests | ||
if: steps.run_tests.outcome != 'success' | ||
run: | | ||
cd robotframework-tests | ||
robot -v env:ui_mp_b2b -v dms:true -v headless:true -v glue_env:http://glue.eu.spryker.local -v bapi_env:http://glue-backend.eu.spryker.local -v sapi_env:http://glue-storefront.eu.spryker.local -v yves_env:http://yves.eu.spryker.local -v zed_env:http://backoffice.eu.spryker.local -v mp_env:http://mp.eu.spryker.local/security-merchant-portal-gui/login/ -v ignore_console:false -d results/rerun --runemptysuite --rerunfailed results/output.xml --output rerun.xml -s '*'.tests.ui.mp_b2b . | ||
- name: Merge Test Results | ||
if: always() && steps.run_tests.outcome != 'success' | ||
run: | | ||
cd robotframework-tests | ||
rebot -d results --merge results/output.xml results/rerun/rerun.xml | ||
- name: Upload artifacts | ||
if: failure() | ||
run: | | ||
AWS_DEFAULT_REGION=${{env.ROBOT_TESTS_ARTIFACTS_BUCKET_REGION}} AWS_ACCESS_KEY_ID=${{ secrets.ROBOT_TESTS_ARTIFACTS_KEY }} AWS_SECRET_ACCESS_KEY=${{ secrets.ROBOT_TESTS_ARTIFACTS_SECRET }} aws s3 cp robotframework-tests/results s3://${{vars.ROBOT_TESTS_ARTIFACTS_BUCKET}}/master-robot-ui-ci-dms/mp_b2b_regression/group3/${GITHUB_RUN_ID}/PHP8.2MariaDBRobotUi/ \ | ||
--recursive \ | ||
--expires "$(date -d '+7 days' --utc +'%Y-%m-%dT%H:%M:%SZ')" |