when: never
- if: $CI_PIPELINE_SOURCE == "merge_request_event" || $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
changes:
- - $DOCS_DIRECTORY/*
+ - $DOCS_DIRECTORY/**/*
docs-link-check:
stage: test
when: never
- if: $CI_PIPELINE_SOURCE == "merge_request_event" || $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
changes:
- - $DOCS_DIRECTORY/*
+ - $DOCS_DIRECTORY/**/*
pages:
stage: deploy
when: never
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
changes:
- - $DOCS_DIRECTORY/*
+ - $DOCS_DIRECTORY/**/*
name: slave
default: '{slave}'
-
- functest-kubernetes-ng-build-containers: &functest-kubernetes-ng-build-containers
name: 'functest-kubernetes-ng-build-containers'
<<: *functest-kubernetes-ng-containers
jobs:
- 'functest-kubernetes-ng-{repo}-{tag}-dep-rmi'
-
- builder:
name: functest-kubernetes-ng-push-containers
builders:
jobs:
- 'functest-kubernetes-ng-{repo}-{container}-{tag}-build'
-
- job-template:
name: 'functest-kubernetes-ng-{tag}-docker'
project-type: multijob
parameters:
- functest-kubernetes-ng-slave:
slave: '{slave}'
+ # PyYAML and yamllint differ here
+ # see https://github.com/yaml/pyyaml/issues/234
+ # yamllint disable rule:indentation
properties:
- build-blocker:
- use-build-blocker: true
- blocking-level: 'NODE'
blocking-jobs:
- - '^functest-kubernetes-ng-{tag}-(daily|docker|review)$'
+ - ^functest-kubernetes-ng-{tag}-(daily|docker|review)$
+ # yamllint enable rule:indentation
builders:
- multijob:
name: remove dependency
<<: *functest-kubernetes-pi-containers
test: '{test}'
privileged: '{privileged}'
+ volumes: '{volumes}'
+ env: '{env}'
network: '{network}'
- builder:
builders:
- shell: |
set +x
+ volumes=; for i in $(echo {volumes} | tr -d '[] ' |sed "s/,/ /g" ); do volumes="-v $i $volumes"; done
+ env=; for i in $(eval echo {env} | tr -d '[] ' |sed "s/,/ /g" ); do env="-e $i $env"; done
[ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/results || true
if [ "{repo}" = "_" ]; then
image={container}:{tag}
docker run --rm \
--privileged={privileged} \
--network={network} \
+ $volumes \
+ $env \
-e S3_ENDPOINT_URL=https://storage.googleapis.com \
-e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
-e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
-e NODE_NAME=$slave \
-e BUILD_TAG=$BUILD_TAG \
-v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
- -e DEPLOY_SCENARIO=$DEPLOY_SCENARIO \
- -e E2E_TEST_OPTS=$E2E_TEST_OPTS \
- -v /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config \
$image run_tests -t {test} -p -r
- builder:
- 'functest-kubernetes-pi-{repo}-{container}-{tag}-rmi'
- job-template:
- name: 'functest-kubernetes-pi-{repo}-{container}-{tag}-{test}-run'
+ name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-{tag}-{test}-run'
parameters:
- functest-kubernetes-pi-slave:
slave: '{slave}'
- project:
name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck'
<<: *functest-kubernetes-pi-params
+ volumes:
+ - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
+ env:
+ - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+ - E2E_TEST_OPTS=$E2E_TEST_OPTS
container: 'functest-kubernetes-healthcheck'
test:
- k8s_quick
privileged: 'false'
network: bridge
jobs:
- - 'functest-kubernetes-pi-{repo}-{container}-{tag}-{test}-run'
+ - 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-{tag}-{test}-run'
+
+- job-template:
+ name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-{test}-run'
+ parameters:
+ - functest-kubernetes-pi-slave:
+ slave: '{slave}'
+ - functest-kubernetes-pi-build_tag:
+ build_tag: ''
+ - functest-kubernetes-pi-DEPLOY_SCENARIO:
+ DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
+ - functest-kubernetes-pi-E2E_TEST_OPTS:
+ E2E_TEST_OPTS: container-runtime:containerd
+ builders:
+ - functest-kubernetes-pi-run-containers:
+ <<: *functest-kubernetes-pi-run-containers
- project:
name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke'
<<: *functest-kubernetes-pi-params
+ volumes:
+ - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
+ env:
+ - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+ - E2E_TEST_OPTS=$E2E_TEST_OPTS
container: 'functest-kubernetes-smoke'
test:
- xrally_kubernetes
privileged: 'false'
network: bridge
exclude:
- - {'tag': 'latest', 'test': 'k8s_io'}
- - {'tag': 'v1.21', 'test': 'k8s_io'}
- - {'tag': 'jerma', 'test': 'k8s_io'}
- - {'tag': 'arm-latest', 'test': 'k8s_io'}
- - {'tag': 'arm-v1.21', 'test': 'k8s_io'}
- - {'tag': 'arm64-latest', 'test': 'k8s_io'}
- - {'tag': 'arm64-v1.21', 'test': 'k8s_io'}
+ - tag: latest
+ test: k8s_io
+ - tag: v1.21
+ test: k8s_io
+ - tag: jerma
+ test: k8s_io
+ - tag: arm-latest
+ test: k8s_io
+ - tag: arm-v1.21
+ test: k8s_io
+ - tag: arm64-latest
+ test: k8s_io
+ - tag: arm64-v1.21
+ test: k8s_io
jobs:
- - 'functest-kubernetes-pi-{repo}-{container}-{tag}-{test}-run'
+ - 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-{test}-run'
+
+- job-template:
+ name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-{tag}-{test}-run'
+ parameters:
+ - functest-kubernetes-pi-slave:
+ slave: '{slave}'
+ - functest-kubernetes-pi-build_tag:
+ build_tag: ''
+ - functest-kubernetes-pi-DEPLOY_SCENARIO:
+ DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
+ - functest-kubernetes-pi-E2E_TEST_OPTS:
+ E2E_TEST_OPTS: container-runtime:containerd
+ builders:
+ - functest-kubernetes-pi-run-containers:
+ <<: *functest-kubernetes-pi-run-containers
- project:
name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security'
<<: *functest-kubernetes-pi-params
+ volumes:
+ - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
+ env:
+ - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+ - E2E_TEST_OPTS=$E2E_TEST_OPTS
container: 'functest-kubernetes-security'
test:
- kube_hunter
privileged: 'false'
network: bridge
jobs:
- - 'functest-kubernetes-pi-{repo}-{container}-{tag}-{test}-run'
+ - 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-{tag}-{test}-run'
+
+- job-template:
+ name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-{tag}-{test}-run'
+ parameters:
+ - functest-kubernetes-pi-slave:
+ slave: '{slave}'
+ - functest-kubernetes-pi-build_tag:
+ build_tag: ''
+ - functest-kubernetes-pi-DEPLOY_SCENARIO:
+ DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
+ - functest-kubernetes-pi-E2E_TEST_OPTS:
+ E2E_TEST_OPTS: container-runtime:containerd
+ builders:
+ - functest-kubernetes-pi-run-containers:
+ <<: *functest-kubernetes-pi-run-containers
- project:
name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking'
<<: *functest-kubernetes-pi-params
+ volumes:
+ - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
+ env:
+ - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+ - E2E_TEST_OPTS=$E2E_TEST_OPTS
container: 'functest-kubernetes-benchmarking'
test:
- xrally_kubernetes_full
privileged: 'false'
network: bridge
jobs:
- - 'functest-kubernetes-pi-{repo}-{container}-{tag}-{test}-run'
+ - 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-{tag}-{test}-run'
+
+- job-template:
+ name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-{tag}-{test}-run'
+ parameters:
+ - functest-kubernetes-pi-slave:
+ slave: '{slave}'
+ - functest-kubernetes-pi-build_tag:
+ build_tag: ''
+ - functest-kubernetes-pi-DEPLOY_SCENARIO:
+ DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
+ - functest-kubernetes-pi-E2E_TEST_OPTS:
+ E2E_TEST_OPTS: container-runtime:containerd
+ builders:
+ - functest-kubernetes-pi-run-containers:
+ <<: *functest-kubernetes-pi-run-containers
- project:
name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf'
<<: *functest-kubernetes-pi-params
+ volumes:
+ - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
+ env:
+ - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+ - E2E_TEST_OPTS=$E2E_TEST_OPTS
container: 'functest-kubernetes-cnf'
test:
- k8s_vims
privileged: 'false'
network: bridge
jobs:
- - 'functest-kubernetes-pi-{repo}-{container}-{tag}-{test}-run'
-
+ - 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-{tag}-{test}-run'
- builder:
name: functest-kubernetes-pi-zip
builders:
- shell: |
set +x
+ volumes=; for i in $(echo {volumes} | tr -d '[] ' |sed "s/,/ /g" ); do volumes="-v $i $volumes"; done
+ env=; for i in $(eval echo {env} | tr -d '[] ' |sed "s/,/ /g" ); do env="-e $i $env"; done
[ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/results || true
if [ "{repo}" = "_" ]; then
image={container}:{tag}
image={repo}:{port}/{container}:{tag}
fi
docker run --rm \
+ $volumes \
+ $env \
-e S3_ENDPOINT_URL=https://storage.googleapis.com \
-e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes \
-e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes \
-e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
-e BUILD_TAG=$BUILD_TAG \
-v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
- -e DEPLOY_SCENARIO=$DEPLOY_SCENARIO \
- -e E2E_TEST_OPTS=$E2E_TEST_OPTS \
- -v /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config \
$image zip_campaign
- job-template:
builders:
- functest-kubernetes-pi-zip:
<<: *functest-kubernetes-pi-containers
+ volumes: '{volumes}'
+ env: '{env}'
- project:
name: 'functest-kubernetes-pi-{tag}-zip'
<<: *functest-kubernetes-pi-params
+ volumes:
+ - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
+ env:
+ - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+ - E2E_TEST_OPTS=$E2E_TEST_OPTS
container: 'functest-kubernetes-healthcheck'
jobs:
- 'functest-kubernetes-pi-{tag}-zip'
DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
- functest-kubernetes-pi-E2E_TEST_OPTS:
E2E_TEST_OPTS: container-runtime:containerd
+ # PyYAML and yamllint differ here
+ # see https://github.com/yaml/pyyaml/issues/234
+ # yamllint disable rule:indentation
properties:
- build-blocker:
- use-build-blocker: true
- blocking-level: 'NODE'
blocking-jobs:
- - '^functest-kubernetes-pi-{tag}-(daily|docker|review)$'
+ - ^functest-kubernetes-(pi-)*{tag}-(daily|docker|review)$
+ # yamllint enable rule:indentation
builders:
- multijob:
name: remove former images
<<: *functest-kubernetes-containers
test: '{test}'
privileged: '{privileged}'
+ volumes: '{volumes}'
+ env: '{env}'
network: '{network}'
- builder:
builders:
- shell: |
set +x
+ volumes=; for i in $(echo {volumes} | tr -d '[] ' |sed "s/,/ /g" ); do volumes="-v $i $volumes"; done
+ env=; for i in $(eval echo {env} | tr -d '[] ' |sed "s/,/ /g" ); do env="-e $i $env"; done
[ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/results || true
if [ "{repo}" = "_" ]; then
image={container}:{tag}
docker run --rm \
--privileged={privileged} \
--network={network} \
+ $volumes \
+ $env \
-e S3_ENDPOINT_URL=https://storage.googleapis.com \
-e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
-e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
-e NODE_NAME=$slave \
-e BUILD_TAG=$BUILD_TAG \
-v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
- -e DEPLOY_SCENARIO=$DEPLOY_SCENARIO \
- -e E2E_TEST_OPTS=$E2E_TEST_OPTS \
- -v /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config \
$image run_tests -t {test} -p -r
- builder:
- 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
- job-template:
- name: 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
+ name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-{test}-run'
parameters:
- functest-kubernetes-slave:
slave: '{slave}'
- project:
name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck'
<<: *functest-kubernetes-params
+ volumes:
+ - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
+ env:
+ - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+ - E2E_TEST_OPTS=$E2E_TEST_OPTS
container: 'functest-kubernetes-healthcheck'
test:
- k8s_quick
privileged: 'false'
network: bridge
jobs:
- - 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
+ - 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-{test}-run'
+
+- job-template:
+ name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-{test}-run'
+ parameters:
+ - functest-kubernetes-slave:
+ slave: '{slave}'
+ - functest-kubernetes-build_tag:
+ build_tag: ''
+ - functest-kubernetes-DEPLOY_SCENARIO:
+ DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
+ - functest-kubernetes-E2E_TEST_OPTS:
+ E2E_TEST_OPTS: container-runtime:containerd
+ builders:
+ - functest-kubernetes-run-containers:
+ <<: *functest-kubernetes-run-containers
- project:
name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke'
<<: *functest-kubernetes-params
+ volumes:
+ - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
+ env:
+ - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+ - E2E_TEST_OPTS=$E2E_TEST_OPTS
container: 'functest-kubernetes-smoke'
test:
- xrally_kubernetes
privileged: 'false'
network: bridge
exclude:
- - {'tag': 'latest', 'test': 'k8s_io'}
- - {'tag': 'v1.21', 'test': 'k8s_io'}
+ - tag: latest
+ test: k8s_io
+ - tag: v1.21
+ test: k8s_io
jobs:
- - 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
+ - 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-{test}-run'
+
+- job-template:
+ name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-{test}-run'
+ parameters:
+ - functest-kubernetes-slave:
+ slave: '{slave}'
+ - functest-kubernetes-build_tag:
+ build_tag: ''
+ - functest-kubernetes-DEPLOY_SCENARIO:
+ DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
+ - functest-kubernetes-E2E_TEST_OPTS:
+ E2E_TEST_OPTS: container-runtime:containerd
+ builders:
+ - functest-kubernetes-run-containers:
+ <<: *functest-kubernetes-run-containers
- project:
name: 'functest-kubernetes-opnfv-functest-kubernetes-security'
<<: *functest-kubernetes-params
+ volumes:
+ - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
+ env:
+ - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+ - E2E_TEST_OPTS=$E2E_TEST_OPTS
container: 'functest-kubernetes-security'
test:
- kube_hunter
privileged: 'false'
network: bridge
jobs:
- - 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
+ - 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-{test}-run'
+
+- job-template:
+ name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-{test}-run'
+ parameters:
+ - functest-kubernetes-slave:
+ slave: '{slave}'
+ - functest-kubernetes-build_tag:
+ build_tag: ''
+ - functest-kubernetes-DEPLOY_SCENARIO:
+ DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
+ - functest-kubernetes-E2E_TEST_OPTS:
+ E2E_TEST_OPTS: container-runtime:containerd
+ builders:
+ - functest-kubernetes-run-containers:
+ <<: *functest-kubernetes-run-containers
- project:
name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking'
<<: *functest-kubernetes-params
+ volumes:
+ - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
+ env:
+ - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+ - E2E_TEST_OPTS=$E2E_TEST_OPTS
container: 'functest-kubernetes-benchmarking'
test:
- xrally_kubernetes_full
privileged: 'false'
network: bridge
jobs:
- - 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
+ - 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-{test}-run'
+
+- job-template:
+ name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-{test}-run'
+ parameters:
+ - functest-kubernetes-slave:
+ slave: '{slave}'
+ - functest-kubernetes-build_tag:
+ build_tag: ''
+ - functest-kubernetes-DEPLOY_SCENARIO:
+ DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
+ - functest-kubernetes-E2E_TEST_OPTS:
+ E2E_TEST_OPTS: container-runtime:containerd
+ builders:
+ - functest-kubernetes-run-containers:
+ <<: *functest-kubernetes-run-containers
- project:
name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf'
<<: *functest-kubernetes-params
+ volumes:
+ - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
+ env:
+ - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+ - E2E_TEST_OPTS=$E2E_TEST_OPTS
container: 'functest-kubernetes-cnf'
test:
- k8s_vims
privileged: 'false'
network: bridge
jobs:
- - 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
-
+ - 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-{test}-run'
- builder:
name: functest-kubernetes-zip
builders:
- shell: |
set +x
+ volumes=; for i in $(echo {volumes} | tr -d '[] ' |sed "s/,/ /g" ); do volumes="-v $i $volumes"; done
+ env=; for i in $(eval echo {env} | tr -d '[] ' |sed "s/,/ /g" ); do env="-e $i $env"; done
[ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/results || true
if [ "{repo}" = "_" ]; then
image={container}:{tag}
image={repo}:{port}/{container}:{tag}
fi
docker run --rm \
+ $volumes \
+ $env \
-e S3_ENDPOINT_URL=https://storage.googleapis.com \
-e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes \
-e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes \
-e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
-e BUILD_TAG=$BUILD_TAG \
-v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
- -e DEPLOY_SCENARIO=$DEPLOY_SCENARIO \
- -e E2E_TEST_OPTS=$E2E_TEST_OPTS \
- -v /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config \
$image zip_campaign
- job-template:
builders:
- functest-kubernetes-zip:
<<: *functest-kubernetes-containers
+ volumes: '{volumes}'
+ env: '{env}'
- project:
name: 'functest-kubernetes-{tag}-zip'
<<: *functest-kubernetes-params
+ volumes:
+ - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
+ env:
+ - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+ - E2E_TEST_OPTS=$E2E_TEST_OPTS
container: 'functest-kubernetes-healthcheck'
jobs:
- 'functest-kubernetes-{tag}-zip'
DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
- functest-kubernetes-E2E_TEST_OPTS:
E2E_TEST_OPTS: container-runtime:containerd
+ # PyYAML and yamllint differ here
+ # see https://github.com/yaml/pyyaml/issues/234
+ # yamllint disable rule:indentation
properties:
- build-blocker:
- use-build-blocker: true
- blocking-level: 'NODE'
blocking-jobs:
- - '^functest-kubernetes-{tag}-(daily|docker|review)$'
+ - ^functest-kubernetes-(pi-)*{tag}-(daily|docker|review)$
+ # yamllint enable rule:indentation
builders:
- multijob:
name: remove former images
jobs:
- 'functest-kubernetes-{repo}-{container}-{tag}-gate'
-
- trigger:
name: functest-kubernetes-patchset-created
triggers:
DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
- functest-kubernetes-E2E_TEST_OPTS:
E2E_TEST_OPTS: container-runtime:containerd
+ # PyYAML and yamllint differ here
+ # see https://github.com/yaml/pyyaml/issues/234
+ # yamllint disable rule:indentation
properties:
- build-blocker:
- use-build-blocker: true
- blocking-level: 'NODE'
blocking-jobs:
- - '^functest-kubernetes-{tag}-(daily|docker|review)$'
+ - ^functest-kubernetes-(pi-)*{tag}-(daily|docker|review)$
+ # yamllint enable rule:indentation
builders:
- multijob:
name: remove former images
jobs:
- 'functest-kubernetes-{repo}-{container}-{tag}-build'
-
- job-template:
name: 'functest-kubernetes-{tag}-docker'
project-type: multijob
parameters:
- functest-kubernetes-slave:
slave: '{slave}'
+ # PyYAML and yamllint differ here
+ # see https://github.com/yaml/pyyaml/issues/234
+ # yamllint disable rule:indentation
properties:
- build-blocker:
- use-build-blocker: true
- blocking-level: 'NODE'
blocking-jobs:
- - '^functest-kubernetes-{tag}-(daily|docker|review)$'
+ - ^functest-kubernetes-(pi-)*{tag}-(daily|docker|review)$
+ # yamllint enable rule:indentation
builders:
- multijob:
name: remove dependency
- string:
name: EXTERNAL_NETWORK
default: public
+
- parameter:
name: functest-pi-VOLUME_DEVICE_NAME
parameters:
- string:
name: VOLUME_DEVICE_NAME
default: sdb
+
- parameter:
name: functest-pi-IMAGE_PROPERTIES
parameters:
<<: *functest-pi-containers
test: '{test}'
privileged: '{privileged}'
+ volumes: '{volumes}'
+ env: '{env}'
network: '{network}'
DASHBOARD_URL: '{DASHBOARD_URL}'
builders:
- shell: |
set +x
+ volumes=; for i in $(echo {volumes} | tr -d '[] ' |sed "s/,/ /g" ); do volumes="-v $i $volumes"; done
+ env=; for i in $(eval echo {env} | tr -d '[] ' |sed "s/,/ /g" ); do env="-e $i $env"; done
[ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/results || true
if [ "{repo}" = "_" ]; then
image={container}:{tag}
sudo docker run --rm \
--privileged={privileged} \
--network={network} \
+ $volumes \
+ $env \
-e S3_ENDPOINT_URL=https://storage.googleapis.com \
-e S3_DST_URL=s3://artifacts.opnfv.org/functest/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
-e HTTP_DST_URL=http://artifacts.opnfv.org/functest/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
-e NODE_NAME=$slave \
-e BUILD_TAG=$BUILD_TAG \
-v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
- -e EXTERNAL_NETWORK=$EXTERNAL_NETWORK \
- -e VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME \
- -e IMAGE_PROPERTIES=$IMAGE_PROPERTIES \
-e DASHBOARD_URL={DASHBOARD_URL} \
- -v /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file \
- -v /home/opnfv/functest/images:/home/opnfv/functest/images \
$image run_tests -t {test} -p -r
- builder:
- 'functest-pi-{repo}-{container}-{tag}-rmi'
- job-template:
- name: 'functest-pi-{repo}-{container}-{tag}-{test}-run'
+ name: 'functest-pi-ollivier-functest-healthcheck-{tag}-{test}-run'
parameters:
- functest-pi-slave:
slave: '{slave}'
- project:
name: 'functest-pi-ollivier-functest-healthcheck'
<<: *functest-pi-params
+ volumes:
+ - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
+ - /home/opnfv/functest/images:/home/opnfv/functest/images
+ env:
+ - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
+ - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
+ - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
container: 'functest-healthcheck'
test:
- connection_check
privileged: 'false'
network: bridge
jobs:
- - 'functest-pi-{repo}-{container}-{tag}-{test}-run'
+ - 'functest-pi-ollivier-functest-healthcheck-{tag}-{test}-run'
+
+- job-template:
+ name: 'functest-pi-ollivier-functest-smoke-{tag}-{test}-run'
+ parameters:
+ - functest-pi-slave:
+ slave: '{slave}'
+ - functest-pi-build_tag:
+ build_tag: ''
+ - functest-pi-EXTERNAL_NETWORK:
+ EXTERNAL_NETWORK: public
+ - functest-pi-VOLUME_DEVICE_NAME:
+ VOLUME_DEVICE_NAME: sdb
+ - functest-pi-IMAGE_PROPERTIES:
+ IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
+ builders:
+ - functest-pi-run-containers:
+ <<: *functest-pi-run-containers
- project:
name: 'functest-pi-ollivier-functest-smoke'
<<: *functest-pi-params
+ volumes:
+ - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
+ - /home/opnfv/functest/images:/home/opnfv/functest/images
+ env:
+ - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
+ - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
+ - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
container: 'functest-smoke'
test:
- tempest_neutron
privileged: 'false'
network: bridge
exclude:
- - {'tag': 'latest', 'test': 'refstack_defcore'}
- - {'tag': 'latest', 'test': 'networking-bgpvpn'}
- - {'tag': 'latest', 'test': 'networking-sfc'}
- - {'tag': 'latest', 'test': 'patrole'}
- - {'tag': 'wallaby', 'test': 'refstack_defcore'}
- - {'tag': 'wallaby', 'test': 'networking-bgpvpn'}
- - {'tag': 'wallaby', 'test': 'networking-sfc'}
- - {'tag': 'wallaby', 'test': 'patrole'}
- - {'tag': 'leguer', 'test': 'refstack_defcore'}
- - {'tag': 'leguer', 'test': 'networking-bgpvpn'}
- - {'tag': 'leguer', 'test': 'networking-sfc'}
- - {'tag': 'leguer', 'test': 'patrole'}
- - {'tag': 'kali', 'test': 'refstack_defcore'}
- - {'tag': 'kali', 'test': 'networking-bgpvpn'}
- - {'tag': 'kali', 'test': 'networking-sfc'}
- - {'tag': 'kali', 'test': 'patrole_admin'}
- - {'tag': 'kali', 'test': 'patrole_member'}
- - {'tag': 'kali', 'test': 'patrole_reader'}
- - {'tag': 'jerma', 'test': 'refstack_defcore'}
- - {'tag': 'jerma', 'test': 'networking-bgpvpn'}
- - {'tag': 'jerma', 'test': 'networking-sfc'}
- - {'tag': 'jerma', 'test': 'patrole_admin'}
- - {'tag': 'jerma', 'test': 'patrole_member'}
- - {'tag': 'jerma', 'test': 'patrole_reader'}
- - {'tag': 'jerma', 'test': 'tempest_cyborg'}
- - {'tag': 'arm-latest', 'test': 'refstack_defcore'}
- - {'tag': 'arm-latest', 'test': 'networking-bgpvpn'}
- - {'tag': 'arm-latest', 'test': 'networking-sfc'}
- - {'tag': 'arm-latest', 'test': 'patrole'}
- - {'tag': 'arm-wallaby', 'test': 'refstack_defcore'}
- - {'tag': 'arm-wallaby', 'test': 'networking-bgpvpn'}
- - {'tag': 'arm-wallaby', 'test': 'networking-sfc'}
- - {'tag': 'arm-wallaby', 'test': 'patrole'}
- - {'tag': 'arm-leguer', 'test': 'refstack_defcore'}
- - {'tag': 'arm-leguer', 'test': 'networking-bgpvpn'}
- - {'tag': 'arm-leguer', 'test': 'networking-sfc'}
- - {'tag': 'arm-leguer', 'test': 'patrole'}
- - {'tag': 'arm-kali', 'test': 'refstack_defcore'}
- - {'tag': 'arm-kali', 'test': 'networking-bgpvpn'}
- - {'tag': 'arm-kali', 'test': 'networking-sfc'}
- - {'tag': 'arm-kali', 'test': 'patrole_admin'}
- - {'tag': 'arm-kali', 'test': 'patrole_member'}
- - {'tag': 'arm-kali', 'test': 'patrole_reader'}
- - {'tag': 'arm-jerma', 'test': 'refstack_defcore'}
- - {'tag': 'arm-jerma', 'test': 'networking-bgpvpn'}
- - {'tag': 'arm-jerma', 'test': 'networking-sfc'}
- - {'tag': 'arm-jerma', 'test': 'patrole_admin'}
- - {'tag': 'arm-jerma', 'test': 'patrole_member'}
- - {'tag': 'arm-jerma', 'test': 'patrole_reader'}
- - {'tag': 'arm-jerma', 'test': 'tempest_cyborg'}
- - {'tag': 'arm64-latest', 'test': 'refstack_defcore'}
- - {'tag': 'arm64-latest', 'test': 'networking-bgpvpn'}
- - {'tag': 'arm64-latest', 'test': 'networking-sfc'}
- - {'tag': 'arm64-latest', 'test': 'patrole'}
- - {'tag': 'arm64-wallaby', 'test': 'refstack_defcore'}
- - {'tag': 'arm64-wallaby', 'test': 'networking-bgpvpn'}
- - {'tag': 'arm64-wallaby', 'test': 'networking-sfc'}
- - {'tag': 'arm64-wallaby', 'test': 'patrole'}
- - {'tag': 'arm64-leguer', 'test': 'refstack_defcore'}
- - {'tag': 'arm64-leguer', 'test': 'networking-bgpvpn'}
- - {'tag': 'arm64-leguer', 'test': 'networking-sfc'}
- - {'tag': 'arm64-leguer', 'test': 'patrole'}
- - {'tag': 'arm64-kali', 'test': 'refstack_defcore'}
- - {'tag': 'arm64-kali', 'test': 'networking-bgpvpn'}
- - {'tag': 'arm64-kali', 'test': 'networking-sfc'}
- - {'tag': 'arm64-kali', 'test': 'patrole_admin'}
- - {'tag': 'arm64-kali', 'test': 'patrole_member'}
- - {'tag': 'arm64-kali', 'test': 'patrole_reader'}
- - {'tag': 'arm64-jerma', 'test': 'refstack_defcore'}
- - {'tag': 'arm64-jerma', 'test': 'networking-bgpvpn'}
- - {'tag': 'arm64-jerma', 'test': 'networking-sfc'}
- - {'tag': 'arm64-jerma', 'test': 'patrole_admin'}
- - {'tag': 'arm64-jerma', 'test': 'patrole_member'}
- - {'tag': 'arm64-jerma', 'test': 'patrole_reader'}
- - {'tag': 'arm64-jerma', 'test': 'tempest_cyborg'}
+ - tag: latest
+ test: refstack_defcore
+ - tag: latest
+ test: networking-bgpvpn
+ - tag: latest
+ test: networking-sfc
+ - tag: latest
+ test: patrole
+ - tag: wallaby
+ test: refstack_defcore
+ - tag: wallaby
+ test: networking-bgpvpn
+ - tag: wallaby
+ test: networking-sfc
+ - tag: wallaby
+ test: patrole
+ - tag: leguer
+ test: refstack_defcore
+ - tag: leguer
+ test: networking-bgpvpn
+ - tag: leguer
+ test: networking-sfc
+ - tag: leguer
+ test: patrole
+ - tag: kali
+ test: refstack_defcore
+ - tag: kali
+ test: networking-bgpvpn
+ - tag: kali
+ test: networking-sfc
+ - tag: kali
+ test: patrole_admin
+ - tag: kali
+ test: patrole_member
+ - tag: kali
+ test: patrole_reader
+ - tag: jerma
+ test: refstack_defcore
+ - tag: jerma
+ test: networking-bgpvpn
+ - tag: jerma
+ test: networking-sfc
+ - tag: jerma
+ test: patrole_admin
+ - tag: jerma
+ test: patrole_member
+ - tag: jerma
+ test: patrole_reader
+ - tag: jerma
+ test: tempest_cyborg
+ - tag: arm-latest
+ test: refstack_defcore
+ - tag: arm-latest
+ test: networking-bgpvpn
+ - tag: arm-latest
+ test: networking-sfc
+ - tag: arm-latest
+ test: patrole
+ - tag: arm-wallaby
+ test: refstack_defcore
+ - tag: arm-wallaby
+ test: networking-bgpvpn
+ - tag: arm-wallaby
+ test: networking-sfc
+ - tag: arm-wallaby
+ test: patrole
+ - tag: arm-leguer
+ test: refstack_defcore
+ - tag: arm-leguer
+ test: networking-bgpvpn
+ - tag: arm-leguer
+ test: networking-sfc
+ - tag: arm-leguer
+ test: patrole
+ - tag: arm-kali
+ test: refstack_defcore
+ - tag: arm-kali
+ test: networking-bgpvpn
+ - tag: arm-kali
+ test: networking-sfc
+ - tag: arm-kali
+ test: patrole_admin
+ - tag: arm-kali
+ test: patrole_member
+ - tag: arm-kali
+ test: patrole_reader
+ - tag: arm-jerma
+ test: refstack_defcore
+ - tag: arm-jerma
+ test: networking-bgpvpn
+ - tag: arm-jerma
+ test: networking-sfc
+ - tag: arm-jerma
+ test: patrole_admin
+ - tag: arm-jerma
+ test: patrole_member
+ - tag: arm-jerma
+ test: patrole_reader
+ - tag: arm-jerma
+ test: tempest_cyborg
+ - tag: arm64-latest
+ test: refstack_defcore
+ - tag: arm64-latest
+ test: networking-bgpvpn
+ - tag: arm64-latest
+ test: networking-sfc
+ - tag: arm64-latest
+ test: patrole
+ - tag: arm64-wallaby
+ test: refstack_defcore
+ - tag: arm64-wallaby
+ test: networking-bgpvpn
+ - tag: arm64-wallaby
+ test: networking-sfc
+ - tag: arm64-wallaby
+ test: patrole
+ - tag: arm64-leguer
+ test: refstack_defcore
+ - tag: arm64-leguer
+ test: networking-bgpvpn
+ - tag: arm64-leguer
+ test: networking-sfc
+ - tag: arm64-leguer
+ test: patrole
+ - tag: arm64-kali
+ test: refstack_defcore
+ - tag: arm64-kali
+ test: networking-bgpvpn
+ - tag: arm64-kali
+ test: networking-sfc
+ - tag: arm64-kali
+ test: patrole_admin
+ - tag: arm64-kali
+ test: patrole_member
+ - tag: arm64-kali
+ test: patrole_reader
+ - tag: arm64-jerma
+ test: refstack_defcore
+ - tag: arm64-jerma
+ test: networking-bgpvpn
+ - tag: arm64-jerma
+ test: networking-sfc
+ - tag: arm64-jerma
+ test: patrole_admin
+ - tag: arm64-jerma
+ test: patrole_member
+ - tag: arm64-jerma
+ test: patrole_reader
+ - tag: arm64-jerma
+ test: tempest_cyborg
jobs:
- - 'functest-pi-{repo}-{container}-{tag}-{test}-run'
+ - 'functest-pi-ollivier-functest-smoke-{tag}-{test}-run'
+
+- job-template:
+ name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-{test}-run'
+ parameters:
+ - functest-pi-slave:
+ slave: '{slave}'
+ - functest-pi-build_tag:
+ build_tag: ''
+ - functest-pi-EXTERNAL_NETWORK:
+ EXTERNAL_NETWORK: public
+ - functest-pi-VOLUME_DEVICE_NAME:
+ VOLUME_DEVICE_NAME: sdb
+ - functest-pi-IMAGE_PROPERTIES:
+ IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
+ builders:
+ - functest-pi-run-containers:
+ <<: *functest-pi-run-containers
- project:
name: 'functest-pi-ollivier-functest-smoke-cntt'
<<: *functest-pi-params
+ volumes:
+ - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
+ - /home/opnfv/functest/images:/home/opnfv/functest/images
+ env:
+ - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
+ - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
+ - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
container: 'functest-smoke-cntt'
test:
- tempest_neutron_cntt
privileged: 'false'
network: bridge
jobs:
- - 'functest-pi-{repo}-{container}-{tag}-{test}-run'
+ - 'functest-pi-ollivier-functest-smoke-cntt-{tag}-{test}-run'
+
+- job-template:
+ name: 'functest-pi-ollivier-functest-benchmarking-{tag}-{test}-run'
+ parameters:
+ - functest-pi-slave:
+ slave: '{slave}'
+ - functest-pi-build_tag:
+ build_tag: ''
+ - functest-pi-EXTERNAL_NETWORK:
+ EXTERNAL_NETWORK: public
+ - functest-pi-VOLUME_DEVICE_NAME:
+ VOLUME_DEVICE_NAME: sdb
+ - functest-pi-IMAGE_PROPERTIES:
+ IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
+ builders:
+ - functest-pi-run-containers:
+ <<: *functest-pi-run-containers
- project:
name: 'functest-pi-ollivier-functest-benchmarking'
<<: *functest-pi-params
+ volumes:
+ - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
+ - /home/opnfv/functest/images:/home/opnfv/functest/images
+ env:
+ - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
+ - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
+ - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
container: 'functest-benchmarking'
test:
- rally_full
privileged: 'false'
network: bridge
jobs:
- - 'functest-pi-{repo}-{container}-{tag}-{test}-run'
+ - 'functest-pi-ollivier-functest-benchmarking-{tag}-{test}-run'
+
+- job-template:
+ name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-{test}-run'
+ parameters:
+ - functest-pi-slave:
+ slave: '{slave}'
+ - functest-pi-build_tag:
+ build_tag: ''
+ - functest-pi-EXTERNAL_NETWORK:
+ EXTERNAL_NETWORK: public
+ - functest-pi-VOLUME_DEVICE_NAME:
+ VOLUME_DEVICE_NAME: sdb
+ - functest-pi-IMAGE_PROPERTIES:
+ IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
+ builders:
+ - functest-pi-run-containers:
+ <<: *functest-pi-run-containers
- project:
name: 'functest-pi-ollivier-functest-benchmarking-cntt'
<<: *functest-pi-params
+ volumes:
+ - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
+ - /home/opnfv/functest/images:/home/opnfv/functest/images
+ env:
+ - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
+ - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
+ - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
container: 'functest-benchmarking-cntt'
test:
- rally_full_cntt
privileged: 'false'
network: bridge
jobs:
- - 'functest-pi-{repo}-{container}-{tag}-{test}-run'
+ - 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-{test}-run'
+
+- job-template:
+ name: 'functest-pi-ollivier-functest-vnf-{tag}-{test}-run'
+ parameters:
+ - functest-pi-slave:
+ slave: '{slave}'
+ - functest-pi-build_tag:
+ build_tag: ''
+ - functest-pi-EXTERNAL_NETWORK:
+ EXTERNAL_NETWORK: public
+ - functest-pi-VOLUME_DEVICE_NAME:
+ VOLUME_DEVICE_NAME: sdb
+ - functest-pi-IMAGE_PROPERTIES:
+ IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
+ builders:
+ - functest-pi-run-containers:
+ <<: *functest-pi-run-containers
- project:
name: 'functest-pi-ollivier-functest-vnf'
<<: *functest-pi-params
+ volumes:
+ - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
+ - /home/opnfv/functest/images:/home/opnfv/functest/images
+ env:
+ - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
+ - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
+ - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
container: 'functest-vnf'
test:
- cloudify
privileged: 'false'
network: bridge
jobs:
- - 'functest-pi-{repo}-{container}-{tag}-{test}-run'
-
+ - 'functest-pi-ollivier-functest-vnf-{tag}-{test}-run'
- builder:
name: functest-pi-zip
builders:
- shell: |
set +x
+ volumes=; for i in $(echo {volumes} | tr -d '[] ' |sed "s/,/ /g" ); do volumes="-v $i $volumes"; done
+ env=; for i in $(eval echo {env} | tr -d '[] ' |sed "s/,/ /g" ); do env="-e $i $env"; done
[ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/results || true
if [ "{repo}" = "_" ]; then
image={container}:{tag}
image={repo}:{port}/{container}:{tag}
fi
sudo docker run --rm \
+ $volumes \
+ $env \
-e S3_ENDPOINT_URL=https://storage.googleapis.com \
-e S3_DST_URL=s3://artifacts.opnfv.org/functest \
-e HTTP_DST_URL=http://artifacts.opnfv.org/functest \
-e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
-e BUILD_TAG=$BUILD_TAG \
-v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
- -e EXTERNAL_NETWORK=$EXTERNAL_NETWORK \
- -e VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME \
- -e IMAGE_PROPERTIES=$IMAGE_PROPERTIES \
- -v /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file \
- -v /home/opnfv/functest/images:/home/opnfv/functest/images \
$image zip_campaign
- job-template:
builders:
- functest-pi-zip:
<<: *functest-pi-containers
+ volumes: '{volumes}'
+ env: '{env}'
- project:
name: 'functest-pi-{tag}-zip'
<<: *functest-pi-params
+ volumes:
+ - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
+ - /home/opnfv/functest/images:/home/opnfv/functest/images
+ env:
+ - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
+ - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
+ - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
container: 'functest-healthcheck'
jobs:
- 'functest-pi-{tag}-zip'
VOLUME_DEVICE_NAME: sdb
- functest-pi-IMAGE_PROPERTIES:
IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
+ # PyYAML and yamllint differ here
+ # see https://github.com/yaml/pyyaml/issues/234
+ # yamllint disable rule:indentation
properties:
- build-blocker:
- use-build-blocker: true
- blocking-level: 'NODE'
blocking-jobs:
- - '^functest-pi-{tag}-(daily|docker|review)$'
+ - ^functest-(pi-)*{tag}-(daily|docker|review)$
+ # yamllint enable rule:indentation
builders:
- multijob:
name: remove former images
- string:
name: EXTERNAL_NETWORK
default: public
+
- parameter:
name: functest-VOLUME_DEVICE_NAME
parameters:
- string:
name: VOLUME_DEVICE_NAME
default: sdb
+
- parameter:
name: functest-IMAGE_PROPERTIES
parameters:
<<: *functest-containers
test: '{test}'
privileged: '{privileged}'
+ volumes: '{volumes}'
+ env: '{env}'
network: '{network}'
DASHBOARD_URL: '{DASHBOARD_URL}'
builders:
- shell: |
set +x
+ volumes=; for i in $(echo {volumes} | tr -d '[] ' |sed "s/,/ /g" ); do volumes="-v $i $volumes"; done
+ env=; for i in $(eval echo {env} | tr -d '[] ' |sed "s/,/ /g" ); do env="-e $i $env"; done
[ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/results || true
if [ "{repo}" = "_" ]; then
image={container}:{tag}
sudo docker run --rm \
--privileged={privileged} \
--network={network} \
+ $volumes \
+ $env \
-e S3_ENDPOINT_URL=https://storage.googleapis.com \
-e S3_DST_URL=s3://artifacts.opnfv.org/functest/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
-e HTTP_DST_URL=http://artifacts.opnfv.org/functest/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
-e NODE_NAME=$slave \
-e BUILD_TAG=$BUILD_TAG \
-v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
- -e EXTERNAL_NETWORK=$EXTERNAL_NETWORK \
- -e VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME \
- -e IMAGE_PROPERTIES=$IMAGE_PROPERTIES \
-e DASHBOARD_URL={DASHBOARD_URL} \
- -v /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file \
- -v /home/opnfv/functest/images:/home/opnfv/functest/images \
$image run_tests -t {test} -p -r
- builder:
- 'functest-{repo}-{container}-{tag}-rmi'
- job-template:
- name: 'functest-{repo}-{container}-{tag}-{test}-run'
+ name: 'functest-opnfv-functest-healthcheck-{tag}-{test}-run'
parameters:
- functest-slave:
slave: '{slave}'
- project:
name: 'functest-opnfv-functest-healthcheck'
<<: *functest-params
+ volumes:
+ - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
+ - /home/opnfv/functest/images:/home/opnfv/functest/images
+ env:
+ - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
+ - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
+ - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
container: 'functest-healthcheck'
test:
- connection_check
privileged: 'false'
network: bridge
jobs:
- - 'functest-{repo}-{container}-{tag}-{test}-run'
+ - 'functest-opnfv-functest-healthcheck-{tag}-{test}-run'
+
+- job-template:
+ name: 'functest-opnfv-functest-smoke-{tag}-{test}-run'
+ parameters:
+ - functest-slave:
+ slave: '{slave}'
+ - functest-build_tag:
+ build_tag: ''
+ - functest-EXTERNAL_NETWORK:
+ EXTERNAL_NETWORK: public
+ - functest-VOLUME_DEVICE_NAME:
+ VOLUME_DEVICE_NAME: sdb
+ - functest-IMAGE_PROPERTIES:
+ IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
+ builders:
+ - functest-run-containers:
+ <<: *functest-run-containers
- project:
name: 'functest-opnfv-functest-smoke'
<<: *functest-params
+ volumes:
+ - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
+ - /home/opnfv/functest/images:/home/opnfv/functest/images
+ env:
+ - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
+ - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
+ - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
container: 'functest-smoke'
test:
- tempest_neutron
privileged: 'false'
network: bridge
exclude:
- - {'tag': 'latest', 'test': 'refstack_defcore'}
- - {'tag': 'latest', 'test': 'networking-bgpvpn'}
- - {'tag': 'latest', 'test': 'networking-sfc'}
- - {'tag': 'latest', 'test': 'patrole'}
- - {'tag': 'wallaby', 'test': 'refstack_defcore'}
- - {'tag': 'wallaby', 'test': 'networking-bgpvpn'}
- - {'tag': 'wallaby', 'test': 'networking-sfc'}
- - {'tag': 'wallaby', 'test': 'patrole'}
- - {'tag': 'leguer', 'test': 'refstack_defcore'}
- - {'tag': 'leguer', 'test': 'networking-bgpvpn'}
- - {'tag': 'leguer', 'test': 'networking-sfc'}
- - {'tag': 'leguer', 'test': 'patrole'}
- - {'tag': 'kali', 'test': 'refstack_defcore'}
- - {'tag': 'kali', 'test': 'networking-bgpvpn'}
- - {'tag': 'kali', 'test': 'networking-sfc'}
- - {'tag': 'kali', 'test': 'patrole_admin'}
- - {'tag': 'kali', 'test': 'patrole_member'}
- - {'tag': 'kali', 'test': 'patrole_reader'}
- - {'tag': 'jerma', 'test': 'refstack_defcore'}
- - {'tag': 'jerma', 'test': 'networking-bgpvpn'}
- - {'tag': 'jerma', 'test': 'networking-sfc'}
- - {'tag': 'jerma', 'test': 'patrole_admin'}
- - {'tag': 'jerma', 'test': 'patrole_member'}
- - {'tag': 'jerma', 'test': 'patrole_reader'}
- - {'tag': 'jerma', 'test': 'tempest_cyborg'}
+ - tag: latest
+ test: refstack_defcore
+ - tag: latest
+ test: networking-bgpvpn
+ - tag: latest
+ test: networking-sfc
+ - tag: latest
+ test: patrole
+ - tag: wallaby
+ test: refstack_defcore
+ - tag: wallaby
+ test: networking-bgpvpn
+ - tag: wallaby
+ test: networking-sfc
+ - tag: wallaby
+ test: patrole
+ - tag: leguer
+ test: refstack_defcore
+ - tag: leguer
+ test: networking-bgpvpn
+ - tag: leguer
+ test: networking-sfc
+ - tag: leguer
+ test: patrole
+ - tag: kali
+ test: refstack_defcore
+ - tag: kali
+ test: networking-bgpvpn
+ - tag: kali
+ test: networking-sfc
+ - tag: kali
+ test: patrole_admin
+ - tag: kali
+ test: patrole_member
+ - tag: kali
+ test: patrole_reader
+ - tag: jerma
+ test: refstack_defcore
+ - tag: jerma
+ test: networking-bgpvpn
+ - tag: jerma
+ test: networking-sfc
+ - tag: jerma
+ test: patrole_admin
+ - tag: jerma
+ test: patrole_member
+ - tag: jerma
+ test: patrole_reader
+ - tag: jerma
+ test: tempest_cyborg
jobs:
- - 'functest-{repo}-{container}-{tag}-{test}-run'
+ - 'functest-opnfv-functest-smoke-{tag}-{test}-run'
+
+- job-template:
+ name: 'functest-opnfv-functest-smoke-cntt-{tag}-{test}-run'
+ parameters:
+ - functest-slave:
+ slave: '{slave}'
+ - functest-build_tag:
+ build_tag: ''
+ - functest-EXTERNAL_NETWORK:
+ EXTERNAL_NETWORK: public
+ - functest-VOLUME_DEVICE_NAME:
+ VOLUME_DEVICE_NAME: sdb
+ - functest-IMAGE_PROPERTIES:
+ IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
+ builders:
+ - functest-run-containers:
+ <<: *functest-run-containers
- project:
name: 'functest-opnfv-functest-smoke-cntt'
<<: *functest-params
+ volumes:
+ - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
+ - /home/opnfv/functest/images:/home/opnfv/functest/images
+ env:
+ - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
+ - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
+ - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
container: 'functest-smoke-cntt'
test:
- tempest_neutron_cntt
privileged: 'false'
network: bridge
jobs:
- - 'functest-{repo}-{container}-{tag}-{test}-run'
+ - 'functest-opnfv-functest-smoke-cntt-{tag}-{test}-run'
+
+- job-template:
+ name: 'functest-opnfv-functest-benchmarking-{tag}-{test}-run'
+ parameters:
+ - functest-slave:
+ slave: '{slave}'
+ - functest-build_tag:
+ build_tag: ''
+ - functest-EXTERNAL_NETWORK:
+ EXTERNAL_NETWORK: public
+ - functest-VOLUME_DEVICE_NAME:
+ VOLUME_DEVICE_NAME: sdb
+ - functest-IMAGE_PROPERTIES:
+ IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
+ builders:
+ - functest-run-containers:
+ <<: *functest-run-containers
- project:
name: 'functest-opnfv-functest-benchmarking'
<<: *functest-params
+ volumes:
+ - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
+ - /home/opnfv/functest/images:/home/opnfv/functest/images
+ env:
+ - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
+ - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
+ - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
container: 'functest-benchmarking'
test:
- rally_full
privileged: 'false'
network: bridge
jobs:
- - 'functest-{repo}-{container}-{tag}-{test}-run'
+ - 'functest-opnfv-functest-benchmarking-{tag}-{test}-run'
+
+- job-template:
+ name: 'functest-opnfv-functest-benchmarking-cntt-{tag}-{test}-run'
+ parameters:
+ - functest-slave:
+ slave: '{slave}'
+ - functest-build_tag:
+ build_tag: ''
+ - functest-EXTERNAL_NETWORK:
+ EXTERNAL_NETWORK: public
+ - functest-VOLUME_DEVICE_NAME:
+ VOLUME_DEVICE_NAME: sdb
+ - functest-IMAGE_PROPERTIES:
+ IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
+ builders:
+ - functest-run-containers:
+ <<: *functest-run-containers
- project:
name: 'functest-opnfv-functest-benchmarking-cntt'
<<: *functest-params
+ volumes:
+ - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
+ - /home/opnfv/functest/images:/home/opnfv/functest/images
+ env:
+ - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
+ - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
+ - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
container: 'functest-benchmarking-cntt'
test:
- rally_full_cntt
privileged: 'false'
network: bridge
jobs:
- - 'functest-{repo}-{container}-{tag}-{test}-run'
+ - 'functest-opnfv-functest-benchmarking-cntt-{tag}-{test}-run'
+
+- job-template:
+ name: 'functest-opnfv-functest-vnf-{tag}-{test}-run'
+ parameters:
+ - functest-slave:
+ slave: '{slave}'
+ - functest-build_tag:
+ build_tag: ''
+ - functest-EXTERNAL_NETWORK:
+ EXTERNAL_NETWORK: public
+ - functest-VOLUME_DEVICE_NAME:
+ VOLUME_DEVICE_NAME: sdb
+ - functest-IMAGE_PROPERTIES:
+ IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
+ builders:
+ - functest-run-containers:
+ <<: *functest-run-containers
- project:
name: 'functest-opnfv-functest-vnf'
<<: *functest-params
+ volumes:
+ - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
+ - /home/opnfv/functest/images:/home/opnfv/functest/images
+ env:
+ - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
+ - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
+ - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
container: 'functest-vnf'
test:
- cloudify
privileged: 'false'
network: bridge
jobs:
- - 'functest-{repo}-{container}-{tag}-{test}-run'
-
+ - 'functest-opnfv-functest-vnf-{tag}-{test}-run'
- builder:
name: functest-zip
builders:
- shell: |
set +x
+ volumes=; for i in $(echo {volumes} | tr -d '[] ' |sed "s/,/ /g" ); do volumes="-v $i $volumes"; done
+ env=; for i in $(eval echo {env} | tr -d '[] ' |sed "s/,/ /g" ); do env="-e $i $env"; done
[ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/results || true
if [ "{repo}" = "_" ]; then
image={container}:{tag}
image={repo}:{port}/{container}:{tag}
fi
sudo docker run --rm \
+ $volumes \
+ $env \
-e S3_ENDPOINT_URL=https://storage.googleapis.com \
-e S3_DST_URL=s3://artifacts.opnfv.org/functest \
-e HTTP_DST_URL=http://artifacts.opnfv.org/functest \
-e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
-e BUILD_TAG=$BUILD_TAG \
-v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
- -e EXTERNAL_NETWORK=$EXTERNAL_NETWORK \
- -e VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME \
- -e IMAGE_PROPERTIES=$IMAGE_PROPERTIES \
- -v /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file \
- -v /home/opnfv/functest/images:/home/opnfv/functest/images \
$image zip_campaign
- job-template:
builders:
- functest-zip:
<<: *functest-containers
+ volumes: '{volumes}'
+ env: '{env}'
- project:
name: 'functest-{tag}-zip'
<<: *functest-params
+ volumes:
+ - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
+ - /home/opnfv/functest/images:/home/opnfv/functest/images
+ env:
+ - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
+ - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
+ - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
container: 'functest-healthcheck'
jobs:
- 'functest-{tag}-zip'
VOLUME_DEVICE_NAME: sdb
- functest-IMAGE_PROPERTIES:
IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
+ # PyYAML and yamllint differ here
+ # see https://github.com/yaml/pyyaml/issues/234
+ # yamllint disable rule:indentation
properties:
- build-blocker:
- use-build-blocker: true
- blocking-level: 'NODE'
blocking-jobs:
- - '^functest-{tag}-(daily|docker|review)$'
+ - ^functest-(pi-)*{tag}-(daily|docker|review)$
+ # yamllint enable rule:indentation
builders:
- multijob:
name: remove former images
jobs:
- 'functest-{repo}-{container}-{tag}-gate'
-
- trigger:
name: functest-patchset-created
triggers:
VOLUME_DEVICE_NAME: sdb
- functest-IMAGE_PROPERTIES:
IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
+ # PyYAML and yamllint differ here
+ # see https://github.com/yaml/pyyaml/issues/234
+ # yamllint disable rule:indentation
properties:
- build-blocker:
- use-build-blocker: true
- blocking-level: 'NODE'
blocking-jobs:
- - '^functest-{tag}-(daily|docker|review)$'
+ - ^functest-(pi-)*{tag}-(daily|docker|review)$
+ # yamllint enable rule:indentation
builders:
- multijob:
name: remove former images
jobs:
- 'functest-{repo}-{container}-{tag}-build'
-
- job-template:
name: 'functest-{tag}-docker'
project-type: multijob
parameters:
- functest-slave:
slave: '{slave}'
+ # PyYAML and yamllint differ here
+ # see https://github.com/yaml/pyyaml/issues/234
+ # yamllint disable rule:indentation
properties:
- build-blocker:
- use-build-blocker: true
- blocking-level: 'NODE'
blocking-jobs:
- - '^functest-{tag}-(daily|docker|review)$'
+ - ^functest-(pi-)*{tag}-(daily|docker|review)$
+ # yamllint enable rule:indentation
builders:
- multijob:
name: remove dependency
- job-template:
name: 'xtesting-ci-tests-{playbook}'
+ disabled: true
triggers:
- timed: '@daily'
parameters:
- random-string:
name: build_tag
-
- xtesting-pi-run-containers: &xtesting-pi-run-containers
name: 'xtesting-pi-run-containers'
<<: *xtesting-pi-containers
test: '{test}'
privileged: '{privileged}'
+ volumes: '{volumes}'
+ env: '{env}'
network: '{network}'
- builder:
builders:
- shell: |
set +x
+ volumes=; for i in $(echo {volumes} | tr -d '[] ' |sed "s/,/ /g" ); do volumes="-v $i $volumes"; done
+ env=; for i in $(eval echo {env} | tr -d '[] ' |sed "s/,/ /g" ); do env="-e $i $env"; done
[ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/results || true
if [ "{repo}" = "_" ]; then
image={container}:{tag}
sudo docker run --rm \
--privileged={privileged} \
--network={network} \
+ $volumes \
+ $env \
-e S3_ENDPOINT_URL=https://storage.googleapis.com \
-e S3_DST_URL=s3://artifacts.opnfv.org/xtesting/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
-e HTTP_DST_URL=http://artifacts.opnfv.org/xtesting/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
- 'xtesting-pi-{repo}-{container}-{tag}-rmi'
- job-template:
- name: 'xtesting-pi-{repo}-{container}-{tag}-{test}-run'
+ name: 'xtesting-pi-ollivier-xtesting-{tag}-{test}-run'
parameters:
- xtesting-pi-slave:
slave: '{slave}'
- project:
name: 'xtesting-pi-ollivier-xtesting'
<<: *xtesting-pi-params
+ volumes:
+ env:
container: 'xtesting'
test:
- first
privileged: 'false'
network: bridge
exclude:
- - {'tag': 'leguer', 'test': 'eighth'}
- - {'tag': 'kali', 'test': 'eighth'}
- - {'tag': 'jerma', 'test': 'eighth'}
- - {'tag': 'arm-leguer', 'test': 'eighth'}
- - {'tag': 'arm-kali', 'test': 'eighth'}
- - {'tag': 'arm-jerma', 'test': 'eighth'}
- - {'tag': 'arm64-leguer', 'test': 'eighth'}
- - {'tag': 'arm64-kali', 'test': 'eighth'}
- - {'tag': 'arm64-jerma', 'test': 'eighth'}
+ - tag: leguer
+ test: eighth
+ - tag: kali
+ test: eighth
+ - tag: jerma
+ test: eighth
+ - tag: arm-leguer
+ test: eighth
+ - tag: arm-kali
+ test: eighth
+ - tag: arm-jerma
+ test: eighth
+ - tag: arm64-leguer
+ test: eighth
+ - tag: arm64-kali
+ test: eighth
+ - tag: arm64-jerma
+ test: eighth
jobs:
- - 'xtesting-pi-{repo}-{container}-{tag}-{test}-run'
+ - 'xtesting-pi-ollivier-xtesting-{tag}-{test}-run'
+
+- job-template:
+ name: 'xtesting-pi-ollivier-xtesting-mts-{tag}-{test}-run'
+ parameters:
+ - xtesting-pi-slave:
+ slave: '{slave}'
+ - xtesting-pi-build_tag:
+ build_tag: ''
+ builders:
+ - xtesting-pi-run-containers:
+ <<: *xtesting-pi-run-containers
- project:
name: 'xtesting-pi-ollivier-xtesting-mts'
<<: *xtesting-pi-params
+ volumes:
+ env:
container: 'xtesting-mts'
test:
- seventh
privileged: 'false'
network: bridge
jobs:
- - 'xtesting-pi-{repo}-{container}-{tag}-{test}-run'
-
+ - 'xtesting-pi-ollivier-xtesting-mts-{tag}-{test}-run'
- builder:
name: xtesting-pi-zip
builders:
- shell: |
set +x
+ volumes=; for i in $(echo {volumes} | tr -d '[] ' |sed "s/,/ /g" ); do volumes="-v $i $volumes"; done
+ env=; for i in $(eval echo {env} | tr -d '[] ' |sed "s/,/ /g" ); do env="-e $i $env"; done
[ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/results || true
if [ "{repo}" = "_" ]; then
image={container}:{tag}
image={repo}:{port}/{container}:{tag}
fi
sudo docker run --rm \
+ $volumes \
+ $env \
-e S3_ENDPOINT_URL=https://storage.googleapis.com \
-e S3_DST_URL=s3://artifacts.opnfv.org/xtesting \
-e HTTP_DST_URL=http://artifacts.opnfv.org/xtesting \
builders:
- xtesting-pi-zip:
<<: *xtesting-pi-containers
+ volumes: '{volumes}'
+ env: '{env}'
- project:
name: 'xtesting-pi-{tag}-zip'
<<: *xtesting-pi-params
+ volumes:
+ env:
container: 'xtesting'
jobs:
- 'xtesting-pi-{tag}-zip'
slave: '{slave}'
- xtesting-pi-build_tag:
build_tag: ''
+ # PyYAML and yamllint differ here
+ # see https://github.com/yaml/pyyaml/issues/234
+ # yamllint disable rule:indentation
properties:
- build-blocker:
- use-build-blocker: true
- blocking-level: 'NODE'
blocking-jobs:
- - '^xtesting-pi-{tag}-(daily|docker|review)$'
+ - ^xtesting-(pi-)*{tag}-(daily|docker|review)$
+ # yamllint enable rule:indentation
builders:
- multijob:
name: remove former images
- random-string:
name: build_tag
-
- xtesting-run-containers: &xtesting-run-containers
name: 'xtesting-run-containers'
<<: *xtesting-containers
test: '{test}'
privileged: '{privileged}'
+ volumes: '{volumes}'
+ env: '{env}'
network: '{network}'
- builder:
builders:
- shell: |
set +x
+ volumes=; for i in $(echo {volumes} | tr -d '[] ' |sed "s/,/ /g" ); do volumes="-v $i $volumes"; done
+ env=; for i in $(eval echo {env} | tr -d '[] ' |sed "s/,/ /g" ); do env="-e $i $env"; done
[ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/results || true
if [ "{repo}" = "_" ]; then
image={container}:{tag}
sudo docker run --rm \
--privileged={privileged} \
--network={network} \
+ $volumes \
+ $env \
-e S3_ENDPOINT_URL=https://storage.googleapis.com \
-e S3_DST_URL=s3://artifacts.opnfv.org/xtesting/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
-e HTTP_DST_URL=http://artifacts.opnfv.org/xtesting/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
- 'xtesting-{repo}-{container}-{tag}-rmi'
- job-template:
- name: 'xtesting-{repo}-{container}-{tag}-{test}-run'
+ name: 'xtesting-opnfv-xtesting-{tag}-{test}-run'
parameters:
- xtesting-slave:
slave: '{slave}'
- project:
name: 'xtesting-opnfv-xtesting'
<<: *xtesting-params
+ volumes:
+ env:
container: 'xtesting'
test:
- first
privileged: 'false'
network: bridge
exclude:
- - {'tag': 'leguer', 'test': 'eighth'}
- - {'tag': 'kali', 'test': 'eighth'}
- - {'tag': 'jerma', 'test': 'eighth'}
+ - tag: leguer
+ test: eighth
+ - tag: kali
+ test: eighth
+ - tag: jerma
+ test: eighth
jobs:
- - 'xtesting-{repo}-{container}-{tag}-{test}-run'
+ - 'xtesting-opnfv-xtesting-{tag}-{test}-run'
+
+- job-template:
+ name: 'xtesting-opnfv-xtesting-mts-{tag}-{test}-run'
+ parameters:
+ - xtesting-slave:
+ slave: '{slave}'
+ - xtesting-build_tag:
+ build_tag: ''
+ builders:
+ - xtesting-run-containers:
+ <<: *xtesting-run-containers
- project:
name: 'xtesting-opnfv-xtesting-mts'
<<: *xtesting-params
+ volumes:
+ env:
container: 'xtesting-mts'
test:
- seventh
privileged: 'false'
network: bridge
jobs:
- - 'xtesting-{repo}-{container}-{tag}-{test}-run'
-
+ - 'xtesting-opnfv-xtesting-mts-{tag}-{test}-run'
- builder:
name: xtesting-zip
builders:
- shell: |
set +x
+ volumes=; for i in $(echo {volumes} | tr -d '[] ' |sed "s/,/ /g" ); do volumes="-v $i $volumes"; done
+ env=; for i in $(eval echo {env} | tr -d '[] ' |sed "s/,/ /g" ); do env="-e $i $env"; done
[ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/results || true
if [ "{repo}" = "_" ]; then
image={container}:{tag}
image={repo}:{port}/{container}:{tag}
fi
sudo docker run --rm \
+ $volumes \
+ $env \
-e S3_ENDPOINT_URL=https://storage.googleapis.com \
-e S3_DST_URL=s3://artifacts.opnfv.org/xtesting \
-e HTTP_DST_URL=http://artifacts.opnfv.org/xtesting \
builders:
- xtesting-zip:
<<: *xtesting-containers
+ volumes: '{volumes}'
+ env: '{env}'
- project:
name: 'xtesting-{tag}-zip'
<<: *xtesting-params
+ volumes:
+ env:
container: 'xtesting'
jobs:
- 'xtesting-{tag}-zip'
slave: '{slave}'
- xtesting-build_tag:
build_tag: ''
+ # PyYAML and yamllint differ here
+ # see https://github.com/yaml/pyyaml/issues/234
+ # yamllint disable rule:indentation
properties:
- build-blocker:
- use-build-blocker: true
- blocking-level: 'NODE'
blocking-jobs:
- - '^xtesting-{tag}-(daily|docker|review)$'
+ - ^xtesting-(pi-)*{tag}-(daily|docker|review)$
+ # yamllint enable rule:indentation
builders:
- multijob:
name: remove former images
jobs:
- 'xtesting-{repo}-{container}-{tag}-gate'
-
- trigger:
name: xtesting-patchset-created
triggers:
slave: '{slave}'
- xtesting-build_tag:
build_tag: ''
+ # PyYAML and yamllint differ here
+ # see https://github.com/yaml/pyyaml/issues/234
+ # yamllint disable rule:indentation
properties:
- build-blocker:
- use-build-blocker: true
- blocking-level: 'NODE'
blocking-jobs:
- - '^xtesting-{tag}-(daily|docker|review)$'
+ - ^xtesting-(pi-)*{tag}-(daily|docker|review)$
+ # yamllint enable rule:indentation
builders:
- multijob:
name: remove former images
jobs:
- 'xtesting-{repo}-{container}-{tag}-build'
-
- job-template:
name: 'xtesting-{tag}-docker'
project-type: multijob
parameters:
- xtesting-slave:
slave: '{slave}'
+ # PyYAML and yamllint differ here
+ # see https://github.com/yaml/pyyaml/issues/234
+ # yamllint disable rule:indentation
properties:
- build-blocker:
- use-build-blocker: true
- blocking-level: 'NODE'
blocking-jobs:
- - '^xtesting-{tag}-(daily|docker|review)$'
+ - ^xtesting-(pi-)*{tag}-(daily|docker|review)$
+ # yamllint enable rule:indentation
builders:
- multijob:
name: remove dependency
--- /dev/null
+# SPDX-License-Identifier: Apache-2.0
+##############################################################################
+# Copyright (c) 2020 The Linux Foundation and others.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+---
+project: kuberef
+project-type: installer
+release-model: stable
+
+branches:
+ - name: stable/kali
+ location:
+ kuberef: e917625c424d33e892fa253cdd02da926b843325