
Pipenv is a tool that brings better package dependency management to python. It can automatically create and manage virtualenv as well as managing package dependencies using Pipfile and Pipfile.lock. Adding this dependency manager into Airship projects will decrease package version conflicts between projects and help increase security through hash validation of packages and vulnerability scans. Changes: - Imports requirements.txt type files into Pipfile - Pipenv dependency management in tox - Switches Safety package for "pipenv check", an implementation of Safety - Adds `-e` flag on VCS dependencies to resolve good versions on all packages - Unpins or loosens pins on "dev"-type packages Pipenv Docs: https://docs.pipenv.org/en/latest/ Helpful Pipenv Guide: https://realpython.com/pipenv-guide/ Change-Id: I47e7e7b440d76103b4984499e6ffce4482a59353
243 lines
9.7 KiB
YAML
243 lines
9.7 KiB
YAML
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
- project:
|
|
templates:
|
|
- docs-on-readthedocs
|
|
- openstack-python36-jobs
|
|
- openstack-python37-jobs
|
|
- openstack-cover-jobs
|
|
- release-notes-jobs-python3
|
|
vars:
|
|
rtd_webhook_id: '38574'
|
|
rtd_project_name: 'airship-pegleg'
|
|
check:
|
|
jobs:
|
|
- openstack-tox-pep8
|
|
- pegleg-dependency-vulnerability-check
|
|
- airship-pegleg-docker-build-gate-ubuntu_xenial
|
|
- airship-pegleg-docker-build-gate-ubuntu_bionic
|
|
- airship-pegleg-docker-build-gate-opensuse
|
|
gate:
|
|
jobs:
|
|
- openstack-tox-pep8
|
|
- pegleg-dependency-vulnerability-check
|
|
- airship-pegleg-docker-build-gate-ubuntu_xenial
|
|
- airship-pegleg-docker-build-gate-ubuntu_bionic
|
|
- airship-pegleg-docker-build-gate-opensuse
|
|
post:
|
|
jobs:
|
|
- airship-pegleg-docker-publish-ubuntu_xenial
|
|
- airship-pegleg-docker-publish-ubuntu_bionic
|
|
- airship-pegleg-docker-publish-opensuse
|
|
- pegleg-upload-git-mirror
|
|
|
|
- nodeset:
|
|
name: airship-pegleg-single-node
|
|
nodes:
|
|
- name: primary
|
|
label: ubuntu-xenial
|
|
|
|
- job:
|
|
name: pegleg-dependency-vulnerability-check
|
|
parent: tox-py36
|
|
voting: false
|
|
timeout: 600
|
|
nodeset: ubuntu-bionic
|
|
vars:
|
|
tox_envlist: safety
|
|
bindep_profile: test py36
|
|
|
|
- job:
|
|
name: airship-pegleg-docker-build-gate-ubuntu_xenial
|
|
timeout: 1800
|
|
run: tools/gate/playbooks/docker-image-build.yaml
|
|
nodeset: airship-pegleg-single-node
|
|
irrelevant-files:
|
|
- '^doc/.*'
|
|
vars:
|
|
publish: false
|
|
distro: ubuntu_xenial
|
|
tags:
|
|
dynamic:
|
|
patch_set: true
|
|
|
|
- job:
|
|
name: airship-pegleg-docker-build-gate-ubuntu_bionic
|
|
timeout: 1800
|
|
run: tools/gate/playbooks/docker-image-build.yaml
|
|
nodeset: airship-pegleg-single-node
|
|
irrelevant-files:
|
|
- '^doc/.*'
|
|
vars:
|
|
publish: false
|
|
distro: ubuntu_bionic
|
|
tags:
|
|
dynamic:
|
|
patch_set: true
|
|
|
|
- job:
|
|
name: airship-pegleg-docker-build-gate-opensuse
|
|
timeout: 1800
|
|
run: tools/gate/playbooks/docker-image-build.yaml
|
|
nodeset: airship-pegleg-single-node
|
|
irrelevant-files:
|
|
- '^doc/.*'
|
|
vars:
|
|
publish: false
|
|
distro: opensuse_15
|
|
tags:
|
|
dynamic:
|
|
patch_set: true
|
|
|
|
- job:
|
|
name: airship-pegleg-docker-publish-ubuntu_xenial
|
|
timeout: 1800
|
|
run: tools/gate/playbooks/docker-image-build.yaml
|
|
nodeset: airship-pegleg-single-node
|
|
secrets:
|
|
- airship_pegleg_quay_creds
|
|
irrelevant-files:
|
|
- '^doc/.*'
|
|
vars:
|
|
publish: true
|
|
distro: ubuntu_xenial
|
|
tags:
|
|
dynamic:
|
|
branch: true
|
|
commit: true
|
|
static:
|
|
- latest
|
|
|
|
- job:
|
|
name: airship-pegleg-docker-publish-ubuntu_bionic
|
|
timeout: 1800
|
|
run: tools/gate/playbooks/docker-image-build.yaml
|
|
nodeset: airship-pegleg-single-node
|
|
secrets:
|
|
- airship_pegleg_quay_creds
|
|
irrelevant-files:
|
|
- '^doc/.*'
|
|
vars:
|
|
publish: true
|
|
distro: ubuntu_bionic
|
|
tags:
|
|
dynamic:
|
|
branch: true
|
|
commit: true
|
|
static:
|
|
- latest
|
|
|
|
- job:
|
|
name: airship-pegleg-docker-publish-opensuse
|
|
timeout: 1800
|
|
run: tools/gate/playbooks/docker-image-build.yaml
|
|
nodeset: airship-pegleg-single-node
|
|
secrets:
|
|
- airship_pegleg_quay_creds
|
|
irrelevant-files:
|
|
- '^doc/.*'
|
|
vars:
|
|
publish: true
|
|
distro: opensuse_15
|
|
tags:
|
|
dynamic:
|
|
branch: true
|
|
commit: true
|
|
static:
|
|
- latest
|
|
|
|
- secret:
|
|
name: airship_pegleg_quay_creds
|
|
data:
|
|
username: !encrypted/pkcs1-oaep
|
|
- BI1sCnCyps8RaXf/BQ2ZtobrXn4MfnimRr5wE5Rv3U95NCCK5EoUwBEvnz7yNmQ8m99D7
|
|
9Gx4qA0N1ry7QL+o2Ll0D/ahb/HsaVBNU3CeVfe+3shpEVEuSi2xrA8K9LQPfIK1237vr
|
|
wVvN/R+y/uYm7mpPr/aEPjQwJf3wgEK8xV/ZTvqYSVCpGylbfV0tWxm6uEVdBc1kMPLJN
|
|
8uItJPaAaYMkFEasnVlI/DV8suiK13BLT7bNpNZBQsQ3AlcBCoq9mt50C3slV1wIneaz9
|
|
qK+O++z7r8OTWUDMQqWE5d1m6jz1WIp5DROmnOvb9dfS73XsTcgmXwilrQt3VSvFCToga
|
|
gAVHcoWbIKfxgrbOhoLFr+68id3VwVKN+NXgkoxTAJSzFCWwrs0X4n4W6D4O9buQyFTiZ
|
|
s9o5rB1f2bdF5iI8Npqg6YchPtWn2eR78w1hRyge2HJk2RQgN1CqjpbiQ0uiEy0QA/Ksu
|
|
VTtuONyV3T7FUYXaK3cHYrCwhV/idquSNRCWnKQAbs8mU8w298UbpOq4lZk1Njeg9StIs
|
|
0DYyG1SX2k4mBS4//9i488qBSss2CBMhZWHbesSDi/OW4fNzz/2wm2FaW1uaJJSOTXEyJ
|
|
E3p4+eejcYknXR+XD6BWfSvSwabsCezGSCg7wg7CRFsuTYXx5a4y/+P8Jh+Y7Y=
|
|
password: !encrypted/pkcs1-oaep
|
|
- x/0RHX1OlOfFgyb5ed0sknZQi8waSQLzWv+Aog0CziVMf9r3MtZ29LAcrqp9VUdFRYGCk
|
|
Hf71TJb1Zb8b+WNcUJH2JjVo//Z1smU5F5xEqzhz0gTm1HYQjMAlqd1VNDYv0IpWl2dLE
|
|
sGnEOT/Uq0RfH3rRt+33GagmXBUNuOIMdx41ubrMaF6ddg8IbjISRaCdfPOlNIrj24gCj
|
|
a16UNiSyAhvqkod2G2HO7JE7Nv2//5hI1MD1o7sip8/eub12XtHMjpDRKR+KymX81LGAS
|
|
PeCAn+Hw41uUKnxI/OTW47YtNvQVZZ4gRTOKTumsSNSceFfbf5ljm/JHTWx0SO6Z/kvzH
|
|
RAJwBmLPHg7leD2wF9vWXwcmlyWJFyeEW/K/+6gYycQ2H0OnRuRxzYaNpSa96zPWUfNsA
|
|
3TEKJcXjFXJSr00KnWmUZw8ZmPYAziu+pZoBXpkIhYoP1MAtggv/pvVsODDHmokP9nVE6
|
|
s6YbtUXzthM/TgsE5KMZ2QP4udetj11RGDC+7fz/edtLcrpL3Nrq2rkJ2tRV+yR1ElKGx
|
|
b2YX7cwM/vx3DPhWRBPJJfOoSRl+ZJByDM1KKWmAB91LT9vB3oVk/vq2XUsbTH2w20LcK
|
|
xBXFJMtVHOavHIIWM7qHvkvZzWSBON7ydspje9MbYtTS5/97ccdLxDHA0MX0wM=
|
|
|
|
- job:
|
|
name: pegleg-upload-git-mirror
|
|
parent: upload-git-mirror
|
|
description: Mirrors airship/pegleg to airshipit/pegleg
|
|
vars:
|
|
git_mirror_repository: airshipit/pegleg
|
|
secrets:
|
|
- name: git_mirror_credentials
|
|
secret: pegleg-airshipit-github-secret
|
|
pass-to-parent: true
|
|
|
|
- secret:
|
|
name: pegleg-airshipit-github-secret
|
|
data:
|
|
user: git
|
|
host: github.com
|
|
host_key: github.com ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ==
|
|
ssh_key: !encrypted/pkcs1-oaep
|
|
- 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
- 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
- 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
- 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
|