diff --git a/modules/openstack_project/files/jenkins_job_builder/config/pbr.yaml b/modules/openstack_project/files/jenkins_job_builder/config/pbr.yaml new file mode 100644 index 0000000000..340c0e2f7f --- /dev/null +++ b/modules/openstack_project/files/jenkins_job_builder/config/pbr.yaml @@ -0,0 +1,43 @@ +- job: + name: gate-pbr-devstack-vm-rawinstall + node: devstack-precise + + wrappers: + - timeout: + timeout: 120 + fail: true + - timestamps + + parameters: + - label: + name: NODE_LABEL + description: Label of node to use for this build + default: devstack-precise + + builders: + - devstack-inprogress + - devstack-checkout + - shell: | + #!/bin/bash -xe + export PYTHONUNBUFFERED=true + export DEVSTACK_GATE_TEMPEST=0 + export DEVSTACK_GATE_EXERCISES=0 + function gate_hook { + bash $GATE_SCRIPT_DIR/devstack-vm-gate.sh && \ + bash -xe $BASE/new/pbr/tools/integration.sh $PROJECTS $BASE + } + export -f gate_hook + cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh + ./safe-devstack-vm-gate-wrap.sh + - link-logs + + publishers: + - scp: + site: 'static.openstack.org' + files: + - target: 'logs/$LOG_PATH' + source: '**/pip.log' + keep-hierarchy: false + copy-after-failure: true + - console-log + - devstack-complete diff --git a/modules/openstack_project/files/jenkins_job_builder/config/projects.yaml b/modules/openstack_project/files/jenkins_job_builder/config/projects.yaml index 1d8ac80f1e..aa9504d541 100644 --- a/modules/openstack_project/files/jenkins_job_builder/config/projects.yaml +++ b/modules/openstack_project/files/jenkins_job_builder/config/projects.yaml @@ -181,13 +181,11 @@ node: precise doc-publisher-site: docs.openstack.org tarball-site: tarballs.openstack.org - mirror: mirror jobs: - openstack-publish-jobs - python-jobs - pypi-jobs - - gate-requirements-integration-{mirror} - project: @@ -230,14 +228,12 @@ github-org: openstack-infra node: precise tarball-site: tarballs.openstack.org - mirror: mirror jobs: - gate-{name}-pep8 - gate-{name}-pyflakes - '{name}-tarball' - pypi-jobs - - gate-requirements-integration-{mirror} - project: @@ -803,12 +799,10 @@ node: precise tarball-site: tarballs.openstack.org doc-publisher-site: docs.openstack.org - mirror: no-mirror jobs: - gate-{name}-pep8 - gate-{name}-python27 - - gate-requirements-integration-{mirror} - project: diff --git a/modules/openstack_project/files/jenkins_job_builder/config/requirements.yaml b/modules/openstack_project/files/jenkins_job_builder/config/requirements.yaml index 9745875751..b8e4780d82 100644 --- a/modules/openstack_project/files/jenkins_job_builder/config/requirements.yaml +++ b/modules/openstack_project/files/jenkins_job_builder/config/requirements.yaml @@ -1,46 +1,29 @@ -- job-template: - name: gate-requirements-integration-{mirror} - node: devstack-precise - - wrappers: - - timeout: - timeout: 120 - fail: true - - timestamps - - parameters: - - label: - name: NODE_LABEL - description: Label of node to use for this build - default: devstack-precise +- job: + name: gate-requirements-install + node: precise builders: - - devstack-inprogress - - devstack-checkout + - gerrit-git-prep - shell: | #!/bin/bash -xe - export PYTHONUNBUFFERED=true - export DEVSTACK_GATE_TEMPEST=0 - export DEVSTACK_GATE_EXERCISES=0 - if [ "{mirror}" == "no-mirror" ]; then - MIRROR="--no-mirror" + /usr/local/jenkins/slave_scripts/select-mirror.sh openstack requirements + virtualenv --clear .venv + PIP_ARGS="" + REQ_FILES="tools/pip-requires tools/test-requires requirements.txt test-requirements.txt" + for FILE in $REQ_FILES + do + if [ -e $FILE ] + then + # Ignore lines beginning with https?:// just as the mirror script does. + sed -e '/^https\?:\/\//d' $FILE > $FILE.clean + PIP_ARGS="$PIP_ARGS -r $FILE.clean" + fi + done + # Run the same basic pip command that the mirror script runs. + .venv/bin/pip install -M -U --exists-action=w $PIP_ARGS + if [ -e dev-requirements.txt ] ; then + .venv/bin/pip install -M -U --exists-action=w -r dev-requirements.txt fi - function gate_hook ( - bash $GATE_SCRIPT_DIR/devstack-vm-gate.sh && \ - bash -xe $BASE/new/pbr/tools/integration.sh $MIRROR $PROJECTS - ) - export -f gate_hook - cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh - ./safe-devstack-vm-gate-wrap.sh - - link-logs publishers: - - scp: - site: 'static.openstack.org' - files: - - target: 'logs/$BASE_LOG_PATH/$JOB_NAME/$BUILD_NUMBER' - source: '**/pip.log' - keep-hierarchy: false - copy-after-failure: true - console-log - - devstack-complete diff --git a/modules/openstack_project/files/zuul/layout.yaml b/modules/openstack_project/files/zuul/layout.yaml index 5272038599..d2fab4a41d 100644 --- a/modules/openstack_project/files/zuul/layout.yaml +++ b/modules/openstack_project/files/zuul/layout.yaml @@ -309,11 +309,9 @@ projects: check: - gate-jeepyb-pep8 - gate-jeepyb-pyflakes - - gate-requirements-integration-mirror gate: - gate-jeepyb-pep8 - gate-jeepyb-pyflakes - - gate-requirements-integration-mirror pre-release: - jeepyb-tarball release: @@ -1198,18 +1196,18 @@ projects: - name: openstack/requirements check: + - gate-requirements-install - gate-requirements-pep8 - gate-requirements-python27 - - gate-requirements-integration-no-mirror - gate-tempest-devstack-vm-full - gate-tempest-devstack-vm-cells-full - gate-tempest-devstack-vm-postgres-full - gate-tempest-devstack-vm-neutron - gate-grenade-devstack-vm gate: + - gate-requirements-install - gate-requirements-pep8 - gate-requirements-python27 - - gate-requirements-integration-no-mirror - gate-tempest-devstack-vm-full - gate-tempest-devstack-vm-postgres-full - gate-tempest-devstack-vm-neutron @@ -1267,7 +1265,7 @@ projects: - gate-pbr-python26 - gate-pbr-python27 - gate-pbr-python33 - - gate-requirements-integration-mirror + - gate-pbr-devstack-vm-rawinstall - gate-tempest-devstack-vm-smoke - gate-tempest-devstack-vm-full - gate-tempest-devstack-vm-cells-full @@ -1282,7 +1280,7 @@ projects: - gate-pbr-python26 - gate-pbr-python27 - gate-pbr-python33 - - gate-requirements-integration-mirror + - gate-pbr-devstack-vm-rawinstall - gate-tempest-devstack-vm-smoke - gate-tempest-devstack-vm-full - gate-tempest-devstack-vm-cinder