X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=jjb%2Fglobal-templates-python.yaml;h=6f3c8363d2453f06d2d5eca4c9ca65f5e0a79717;hb=refs%2Fheads%2Fmaster;hp=81a54aa8b056b37d082b3fdfc8269e4d23594f75;hpb=07170cfc59227448cb02915f338412ea6470e14b;p=ci-management.git diff --git a/jjb/global-templates-python.yaml b/jjb/global-templates-python.yaml index 81a54aa8b..a2db6dad8 100644 --- a/jjb/global-templates-python.yaml +++ b/jjb/global-templates-python.yaml @@ -2,8 +2,10 @@ - job-template: # Job template for python verify jobs # - # The purpose of this job template is to run tox for projects using this - # template. + # The purpose of this job template is to run: + # 1. tox + # + # This job supports subprojects. # # Required Variables: # branch: git branch (eg. stable/lithium or master) @@ -13,102 +15,136 @@ # pattern: ant file-path pattern relative to the workspace used to # trigger the job - name: '{project-name}-{stream}-{subproject}-verify-python' - path: '$WORKSPACE' + name: "{project-name}-{stream}-{subproject}-verify-python" + path: "$WORKSPACE" project-type: freestyle concurrent: true - node: '{build-node}' + node: "{build-node}" properties: - - ecomp-infra-properties: - build-days-to-keep: '{build-days-to-keep}' + - infra-properties: + build-days-to-keep: "{build-days-to-keep}" parameters: - - ecomp-infra-parameters: - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' + - infra-parameters: + project: "{project}" + branch: "{branch}" + refspec: "refs/heads/{branch}" + artifacts: "{archive-artifacts}" + - maven-exec: + maven-version: "{maven-version}" scm: - gerrit-trigger-scm: - refspec: '$GERRIT_REFSPEC' - choosing-strategy: 'gerrit' + refspec: "$GERRIT_REFSPEC" + choosing-strategy: "gerrit" + submodule-recursive: "{submodule-recursive}" wrappers: - - ecomp-infra-wrappers: - build-timeout: '{build-timeout}' + - infra-wrappers: + build-timeout: "{build-timeout}" triggers: - gerrit-trigger-patch-submitted: - server: '{server-name}' - project: '{project}' - branch: '{branch}' - files: '{pattern}' + server: "{server-name}" + project: "{project}" + branch: "{branch}" + files: "{pattern}" builders: + - lf-infra-pre-build - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' + global-settings-file: "global-settings" + settings-file: "{mvn-settings}" - shell: | #!/bin/bash - virtualenv $WORKSPACE/venv-tox - source $WORKSPACE/venv-tox/bin/activate - pip install --upgrade pip - pip install --upgrade tox argparse - pip freeze + # shellcheck disable=SC1090 + source ~/lf-env.sh + + lf-activate-venv --python python3.8 --venv-file /tmp/.toxenv \ + tox virtualenv argparse webtest + + if [[ -d /opt/pyenv ]]; then + echo "---> Setting up pyenv" + export PYENV_ROOT="/opt/pyenv" + export PATH="$PYENV_ROOT/bin:$PATH" + PYTHONPATH="$(pwd)" + export PYTHONPATH + export TOX_TESTENV_PASSENV=PYTHONPATH + fi + + python -m pip install --upgrade pip + + # Useful debugging + python --version + python -m pip freeze + tox --version + cd $WORKSPACE/{path} tox -# publishers: -# - ecomp-infra-shiplogs: -# maven-version: 'mvn33' + publishers: + - lf-infra-publish - job-template: - name: '{project-name}-{stream}-docker-shell-daily' + # Job template for docker daily jobs for 3 SCMs + # + # The purpose of this job template is to run: + # 1. inject a version properties file + # 2. login into the docker registry + # 4. run a specified shell script + # + # Required Variables: + # branch: git branch (eg. stable/lithium or master) + + name: "{project-name}-{stream}-3scm-docker-shell-daily" project-type: freestyle - node: 'ubuntu1604-docker-8c-8g' + node: "queue-docker-4c-4g" properties: - - ecomp-infra-properties: - build-days-to-keep: '{build-days-to-keep}' + - infra-properties: + build-days-to-keep: "{build-days-to-keep}" parameters: - - ecomp-infra-parameters: - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' - + - infra-parameters: + project: "{project}" + branch: "{branch}" + refspec: "refs/heads/{branch}" + artifacts: "{archive-artifacts}" + - maven-exec: + maven-version: "{maven-version}" scm: - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' + refspec: "" + choosing-strategy: "default" + submodule-recursive: "{submodule-recursive}" wrappers: - - ecomp-infra-wrappers: - build-timeout: '{build-timeout}' + - infra-wrappers-docker-build: + build-timeout: "{build-timeout}" triggers: - # 12 AM UTC - - timed: 'H 12 * * *' + - timed: "H */4 * * *" - gerrit-trigger-release-manually: - server: '{server-name}' - project: '{project}' - branch: '{branch}' + server: "{server-name}" + project: "{project}" + branch: "{branch}" + - gerrit-trigger-patch-merged: + server: "{server-name}" + project: "{project}" + branch: "{branch}" + files: "**" builders: - + - lf-infra-pre-build - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' - + global-settings-file: "global-settings" + settings-file: "{mvn-settings}" + - inject: + properties-file: version.properties - docker-login + - shell: "{script}" - - shell: | - cp $WORKSPACE/docker/* . - docker -D build -t testsuite . - export DOCKER_REPOSITORY="nexus3.openecomp.org:10003" - docker tag openecomp/testuite:latest $DOCKER_REPOSITORY/openecomp/testuite:latest - docker push $DOCKER_REPOSITORY/openecomp/testuite:latest \ No newline at end of file + publishers: + - lf-infra-publish