Skip to content

Commit c4d6824

Browse files
committed
R22-1-1 into master
1 parent 2485e53 commit c4d6824

File tree

55 files changed

+3026
-2355
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

55 files changed

+3026
-2355
lines changed

.gitallowed

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,8 @@
88
.*github.com/f5devcentral
99
.*f5cloudsolutions.herokuapp.com
1010

11+
# cfe config
12+
f5_cloud_failover_label
13+
1114
# don't match the regex itself
1215
\.\*f5

.gitlab-ci.yml

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ variables:
4848
CF_ENV_NETWORK_TOPOLOGY: 'same_network'
4949
CF_ENV_NIC_COUNT: 3
5050
CF_ENV_USE_FORWARDING_RULE: 'true'
51-
51+
GIT_SUBMODULE_STRATEGY: recursive
5252

5353
# check for disallowed content within any file in source control, this
5454
# supplements the native pre-receive push rules built into GitLab for secrets
@@ -133,7 +133,7 @@ test_audit:
133133
- $CI_COMMIT_REF_NAME == "docs_staging"
134134
script:
135135
# npm audit - uses custom audit processor wrapper
136-
- npm install
136+
- npm install --unsafe-perm
137137
- npm run audit
138138
tags:
139139
- cm-official-docker-executor
@@ -167,12 +167,21 @@ coverage:
167167
# Functional Tests - Initialization phase (with 1 retries in a case of any failures)
168168
.test_functional_init_generic: &test_functional_init_generic
169169
stage: test_functional_init
170-
image: ${ARTIFACTORY_SERVER}/ecosystems-cloudsolutions-docker-dev/deployment-tool:latest
170+
image: ${ARTIFACTORY_SERVER}/dockerhub-remote/hashicorp/terraform:0.12.31
171171
retry:
172172
max: 1
173173
script:
174174
# deploy environment - required artifacts will be place in output folder
175-
- /deployment-tool/deploy.sh --deployment-plan ${CF_ENV_CLOUD} --action create --output-folder env_metadata/${CF_ENV_CLOUD}_${CF_ENV_NETWORK_TOPOLOGY}_${CF_ENV_NIC_COUNT}_${CF_ENV_REGION} --deployment-vars region:\"${CF_ENV_REGION}\" --skip-requirements "true"
175+
- apk add --update
176+
- apk add bash curl jq build-base openssl-dev libffi-dev git
177+
- apk add jq openssh-client sshpass python3 python3-dev
178+
- ln -sf python3 /usr/bin/python
179+
- python -m ensurepip
180+
- ln -s pip3 /usr/bin/pip
181+
- pip install --upgrade pip
182+
- apk add npm
183+
- pip install -r deployment-tool/dependencies/requirements.txt
184+
- deployment-tool/deploy.sh --deployment-plan ${CF_ENV_CLOUD} --action create --output-folder env_metadata/${CF_ENV_CLOUD}_${CF_ENV_NETWORK_TOPOLOGY}_${CF_ENV_NIC_COUNT}_${CF_ENV_REGION} --deployment-vars region:\"${CF_ENV_REGION}\" --skip-requirements "true"
176185
tags:
177186
- cm-official-docker-executor
178187
only:
@@ -437,7 +446,6 @@ test_functional_execute_aws_ca_central:
437446
when:
438447
manual
439448

440-
441449
# run functional tests: aws - same network topology for 1nic
442450
test_functional_execute_aws_1nic:
443451
<<: *test_functional_execute_generic
@@ -483,15 +491,24 @@ test_functional_execute_gcp_no_forwarding_rule:
483491
# Functional Tests - Cleanup phase (executes always with 1 retry in a case of any failures)
484492
.test_functional_cleanup_generic: &test_functional_cleanup_generic
485493
stage: test_functional_cleanup
486-
image: ${ARTIFACTORY_SERVER}/ecosystems-cloudsolutions-docker-dev/deployment-tool:latest
494+
image: ${ARTIFACTORY_SERVER}/dockerhub-remote/hashicorp/terraform:0.12.31
487495
retry:
488496
max: 1
489497
when: always
490498
script:
499+
- apk add --update
500+
- apk add bash curl jq build-base openssl-dev libffi-dev git
501+
- apk add jq openssh-client sshpass python3 python3-dev
502+
- ln -sf python3 /usr/bin/python
503+
- python -m ensurepip
504+
- ln -s pip3 /usr/bin/pip
505+
- pip install --upgrade pip
506+
- apk add npm
507+
- pip install -r deployment-tool/dependencies/requirements.txt
491508
# copying artifacts inherited from functional_test_init target to root directory
492509
- cp -a env_metadata/${CF_ENV_CLOUD}_${CF_ENV_NETWORK_TOPOLOGY}_${CF_ENV_NIC_COUNT}_${CF_ENV_REGION}/. .
493510
# teardown environment
494-
- /deployment-tool/deploy.sh --deployment-plan ${CF_ENV_CLOUD} --action delete --deployment-vars region:\"${CF_ENV_REGION}\" --skip-requirements "true"
511+
- deployment-tool/deploy.sh --deployment-plan ${CF_ENV_CLOUD} --action delete --deployment-vars region:\"${CF_ENV_REGION}\" --skip-requirements "true"
495512
tags:
496513
- cm-official-docker-executor
497514
only:

.gitmodules

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
[submodule "deployment-tool"]
2+
path = deployment-tool
3+
url = ../deployment-tool.git
4+
branch = master

deployment-tool

Submodule deployment-tool added at ad271e5
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
<mxfile host="Electron" modified="2022-04-20T17:45:52.668Z" agent="5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/15.2.7 Chrome/93.0.4577.63 Electron/14.0.1 Safari/537.36" etag="7Xc2UUGYWHkPh85baD0w" version="15.2.7" type="device"><diagram id="hrUrZuJ2duOs5Gn9yQjz" name="Page-1">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</diagram></mxfile>
110 KB
Loading
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
<mxfile host="Electron" modified="2022-04-20T17:45:48.372Z" agent="5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/15.2.7 Chrome/93.0.4577.63 Electron/14.0.1 Safari/537.36" etag="dTMbVbV8pCM4s1eM7V6S" version="15.2.7" type="device"><diagram id="hrUrZuJ2duOs5Gn9yQjz" name="Page-1">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</diagram></mxfile>
110 KB
Loading
86.4 KB
Loading
-31.5 KB
Binary file not shown.

0 commit comments

Comments
 (0)