Bug 1849: LTS Support 21/11521/3
authorbeierlm <mark.beierl@canonical.com>
Thu, 13 Jan 2022 18:21:53 +0000 (13:21 -0500)
committerbeierlm <mark.beierl@canonical.com>
Tue, 18 Jan 2022 14:59:16 +0000 (15:59 +0100)
Updates base to Ubuntu 20.04
Updates python to 3.8
Updates pip dependencies to more recent versions
Adds apt cache to stage 2 dockerfile

Fixes bug 1849

Change-Id: I8a589bbc76bb11f4bc0c42ebb727729da5c5c906
Signed-off-by: beierlm <mark.beierl@canonical.com>
Dockerfile
requirements-dev.txt
requirements-dist.in
requirements-dist.txt
requirements.in
requirements.txt
tox.ini

index 8230f42..f99b758 100644 (file)
 #   devops-stages/stage-build.sh
 #
 
 #   devops-stages/stage-build.sh
 #
 
-FROM ubuntu:18.04
+FROM ubuntu:20.04
+
+ARG APT_PROXY
+RUN if [ ! -z $APT_PROXY ] ; then \
+    echo "Acquire::http::Proxy \"$APT_PROXY\";" > /etc/apt/apt.conf.d/proxy.conf ;\
+    echo "Acquire::https::Proxy \"$APT_PROXY\";" >> /etc/apt/apt.conf.d/proxy.conf ;\
+    fi
 
 RUN DEBIAN_FRONTEND=noninteractive apt-get update && \
     DEBIAN_FRONTEND=noninteractive apt-get -y install \
         debhelper \
 
 RUN DEBIAN_FRONTEND=noninteractive apt-get update && \
     DEBIAN_FRONTEND=noninteractive apt-get -y install \
         debhelper \
+        dh-python \
         git \
         python3 \
         python3-all \
         python3-dev \
         python3-setuptools
 
         git \
         python3 \
         python3-all \
         python3-dev \
         python3-setuptools
 
-RUN python3 -m easy_install pip==21.0.1
-RUN pip3 install tox==3.22.0
+RUN python3 -m easy_install pip==21.3.1
+RUN pip install tox==3.24.5
 
 ENV LC_ALL C.UTF-8
 ENV LANG C.UTF-8
 
 ENV LC_ALL C.UTF-8
 ENV LANG C.UTF-8
index 0359fb8..21f6ba6 100644 (file)
@@ -14,7 +14,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #######################################################################################
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #######################################################################################
-aiokafka==0.7.0
+aiokafka==0.7.2
     # via -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=master
 dataclasses==0.6
     # via -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=master
     # via -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=master
 dataclasses==0.6
     # via -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=master
@@ -22,11 +22,11 @@ kafka-python==2.0.2
     # via
     #   -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=master
     #   aiokafka
     # via
     #   -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=master
     #   aiokafka
-git+https://osm.etsi.org/gerrit/osm/common.git@master#egg=osm-common
+osm-common @ git+https://osm.etsi.org/gerrit/osm/common.git@master
     # via -r requirements-dev.in
 pycrypto==2.6.1
     # via -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=master
     # via -r requirements-dev.in
 pycrypto==2.6.1
     # via -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=master
-pymongo==3.11.3
+pymongo==3.12.3
     # via -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=master
 pyyaml==5.4.1
     # via -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=master
     # via -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=master
 pyyaml==5.4.1
     # via -r https://osm.etsi.org/gitweb/?p=osm/common.git;a=blob_plain;f=requirements.txt;hb=master
index 501638f..4f8784f 100644 (file)
@@ -12,7 +12,7 @@
 # implied.
 # See the License for the specific language governing permissions and
 # limitations under the License.
 # implied.
 # See the License for the specific language governing permissions and
 # limitations under the License.
-##
 
 stdeb
 setuptools-version-command
 
 stdeb
 setuptools-version-command
+setuptools<60
\ No newline at end of file
index 77debcf..8192b48 100644 (file)
@@ -20,4 +20,7 @@ stdeb==0.10.0
     # via -r requirements-dist.in
 
 # The following packages are considered to be unsafe in a requirements file:
     # via -r requirements-dist.in
 
 # The following packages are considered to be unsafe in a requirements file:
-# setuptools
+setuptools==59.8.0
+    # via
+    #   -r requirements-dist.in
+    #   setuptools-version-command
index eb57866..36e393a 100644 (file)
@@ -31,9 +31,5 @@
 -r RO-VIM-openvim/requirements.in
 -r RO-VIM-vmware/requirements.in
 -r RO-VIM-gcp/requirements.in
 -r RO-VIM-openvim/requirements.in
 -r RO-VIM-vmware/requirements.in
 -r RO-VIM-gcp/requirements.in
-# Needed to pin due to failure in finding package version
-pyyaml==5.4.1
-importlib-metadata<4.9.0
-jaraco.functools<3.5.0
-portend<3.1.0
-zipp<3.7.0
+
+pyyaml<6
index 05ff2d6..2d6abdf 100644 (file)
@@ -36,7 +36,7 @@ azure-core==1.21.1
     #   azure-mgmt-core
 azure-identity==1.7.1
     # via -r RO-VIM-azure/requirements.in
     #   azure-mgmt-core
 azure-identity==1.7.1
     # via -r RO-VIM-azure/requirements.in
-azure-mgmt-compute==23.1.0
+azure-mgmt-compute==24.0.0
     # via -r RO-VIM-azure/requirements.in
 azure-mgmt-core==1.3.0
     # via
     # via -r RO-VIM-azure/requirements.in
 azure-mgmt-core==1.3.0
     # via
@@ -62,7 +62,7 @@ cffi==1.15.0
     #   bcrypt
     #   cryptography
     #   pynacl
     #   bcrypt
     #   cryptography
     #   pynacl
-charset-normalizer==2.0.9
+charset-normalizer==2.0.10
     # via requests
 cheroot==8.6.0
     # via cherrypy
     # via requests
 cheroot==8.6.0
     # via cherrypy
@@ -95,7 +95,7 @@ debtcollector==2.3.0
     #   oslo.utils
     #   python-keystoneclient
     #   python-neutronclient
     #   oslo.utils
     #   python-keystoneclient
     #   python-neutronclient
-decorator==5.1.0
+decorator==5.1.1
     # via
     #   dogpile.cache
     #   openstacksdk
     # via
     #   dogpile.cache
     #   openstacksdk
@@ -105,16 +105,16 @@ flufl.enum==4.1.1
     # via pyvcloud
 google-api-core==2.3.2
     # via google-api-python-client
     # via pyvcloud
 google-api-core==2.3.2
     # via google-api-python-client
-google-api-python-client==2.33.0
+google-api-python-client==2.34.0
     # via -r RO-VIM-gcp/requirements.in
     # via -r RO-VIM-gcp/requirements.in
-google-auth-httplib2==0.1.0
-    # via google-api-python-client
 google-auth==2.3.3
     # via
     #   -r RO-VIM-gcp/requirements.in
     #   google-api-core
     #   google-api-python-client
     #   google-auth-httplib2
 google-auth==2.3.3
     # via
     #   -r RO-VIM-gcp/requirements.in
     #   google-api-core
     #   google-api-python-client
     #   google-auth-httplib2
+google-auth-httplib2==0.1.0
+    # via google-api-python-client
 google-cloud==0.34.0
     # via -r RO-VIM-gcp/requirements.in
 googleapis-common-protos==1.54.0
 google-cloud==0.34.0
     # via -r RO-VIM-gcp/requirements.in
 googleapis-common-protos==1.54.0
@@ -127,10 +127,8 @@ humanfriendly==10.0
     # via pyvcloud
 idna==3.3
     # via requests
     # via pyvcloud
 idna==3.3
     # via requests
-importlib-metadata==4.8.3
-    # via
-    #   -r NG-RO/requirements.in
-    #   -r requirements.in
+importlib-metadata==4.10.0
+    # via -r NG-RO/requirements.in
 iso8601==1.0.2
     # via
     #   keystoneauth1
 iso8601==1.0.2
     # via
     #   keystoneauth1
@@ -141,9 +139,8 @@ iso8601==1.0.2
     #   python-openstackclient
 isodate==0.6.1
     # via msrest
     #   python-openstackclient
 isodate==0.6.1
     # via msrest
-jaraco.functools==3.4.0
+jaraco.functools==3.5.0
     # via
     # via
-    #   -r requirements.in
     #   cheroot
     #   tempora
 jinja2==3.0.3
     #   cheroot
     #   tempora
 jinja2==3.0.3
@@ -178,12 +175,12 @@ more-itertools==8.12.0
     #   cheroot
     #   cherrypy
     #   jaraco.functools
     #   cheroot
     #   cherrypy
     #   jaraco.functools
-msal-extensions==0.3.1
-    # via azure-identity
 msal==1.16.0
     # via
     #   azure-identity
     #   msal-extensions
 msal==1.16.0
     # via
     #   azure-identity
     #   msal-extensions
+msal-extensions==0.3.1
+    # via azure-identity
 msgpack==1.0.3
     # via oslo.serialization
 msrest==0.6.21
 msgpack==1.0.3
     # via oslo.serialization
 msrest==0.6.21
@@ -268,7 +265,7 @@ oslo.utils==4.12.0
     #   python-openstackclient
 packaging==21.3
     # via oslo.utils
     #   python-openstackclient
 packaging==21.3
     # via oslo.utils
-paramiko==2.9.1
+paramiko==2.9.2
     # via
     #   -r RO-SDN-dpb/requirements.in
     #   -r RO-VIM-gcp/requirements.in
     # via
     #   -r RO-SDN-dpb/requirements.in
     #   -r RO-VIM-gcp/requirements.in
@@ -295,11 +292,9 @@ pbr==5.8.0
     #   stevedore
 portalocker==2.3.2
     # via msal-extensions
     #   stevedore
 portalocker==2.3.2
     # via msal-extensions
-portend==3.0.0
-    # via
-    #   -r requirements.in
-    #   cherrypy
-prettytable==2.5.0
+portend==3.1.0
+    # via cherrypy
+prettytable==3.0.0
     # via
     #   -r RO-VIM-vmware/requirements.in
     #   cliff
     # via
     #   -r RO-VIM-vmware/requirements.in
     #   cliff
@@ -308,19 +303,19 @@ prettytable==2.5.0
     #   python-novaclient
 progressbar==2.5
     # via -r RO-VIM-vmware/requirements.in
     #   python-novaclient
 progressbar==2.5
     # via -r RO-VIM-vmware/requirements.in
-protobuf==3.19.1
+protobuf==3.19.3
     # via
     #   google-api-core
     #   googleapis-common-protos
     # via
     #   google-api-core
     #   googleapis-common-protos
-pyasn1-modules==0.2.8
-    # via google-auth
 pyasn1==0.4.8
     # via
     #   pyasn1-modules
     #   rsa
 pyasn1==0.4.8
     # via
     #   pyasn1-modules
     #   rsa
+pyasn1-modules==0.2.8
+    # via google-auth
 pycparser==2.21
     # via cffi
 pycparser==2.21
     # via cffi
-pygments==2.11.1
+pygments==2.11.2
     # via pyvcloud
 pyinotify==0.9.6
     # via oslo.log
     # via pyvcloud
 pyinotify==0.9.6
     # via oslo.log
@@ -328,7 +323,7 @@ pyjwt[crypto]==2.3.0
     # via
     #   adal
     #   msal
     # via
     #   adal
     #   msal
-pynacl==1.4.0
+pynacl==1.5.0
     # via paramiko
 pyopenssl==21.0.0
     # via python-glanceclient
     # via paramiko
 pyopenssl==21.0.0
     # via python-glanceclient
@@ -352,7 +347,7 @@ python-dateutil==2.8.2
     #   oslo.log
 python-glanceclient==3.5.0
     # via -r RO-VIM-openstack/requirements.in
     #   oslo.log
 python-glanceclient==3.5.0
     # via -r RO-VIM-openstack/requirements.in
-python-keystoneclient==4.3.0
+python-keystoneclient==4.4.0
     # via
     #   -r RO-VIM-openstack/requirements.in
     #   python-neutronclient
     # via
     #   -r RO-VIM-openstack/requirements.in
     #   python-neutronclient
@@ -388,9 +383,7 @@ pyyaml==5.4.1
     #   openstacksdk
     #   oslo.config
     #   pyvcloud
     #   openstacksdk
     #   oslo.config
     #   pyvcloud
-requests-oauthlib==1.3.0
-    # via msrest
-requests==2.27.0
+requests==2.27.1
     # via
     #   -r NG-RO/requirements.in
     #   -r RO-SDN-arista_cloudvision/requirements.in
     # via
     #   -r NG-RO/requirements.in
     #   -r RO-SDN-arista_cloudvision/requirements.in
@@ -423,9 +416,11 @@ requests==2.27.0
     #   pyvcloud
     #   pyvmomi
     #   requests-oauthlib
     #   pyvcloud
     #   pyvmomi
     #   requests-oauthlib
+requests-oauthlib==1.3.0
+    # via msrest
 requestsexceptions==1.4.0
     # via openstacksdk
 requestsexceptions==1.4.0
     # via openstacksdk
-rfc3986==1.5.0
+rfc3986==2.0.0
     # via oslo.config
 rsa==4.8
     # via google-auth
     # via oslo.config
 rsa==4.8
     # via google-auth
@@ -448,7 +443,6 @@ six==1.16.0
     #   keystoneauth1
     #   msrestazure
     #   munch
     #   keystoneauth1
     #   msrestazure
     #   munch
-    #   pynacl
     #   pyopenssl
     #   python-dateutil
     #   python-keystoneclient
     #   pyopenssl
     #   python-dateutil
     #   python-keystoneclient
@@ -465,11 +459,11 @@ stevedore==3.5.0
     #   python-keystoneclient
     #   python-novaclient
     #   python-openstackclient
     #   python-keystoneclient
     #   python-novaclient
     #   python-openstackclient
-tempora==4.1.2
+tempora==5.0.0
     # via portend
 uritemplate==4.1.1
     # via google-api-python-client
     # via portend
 uritemplate==4.1.1
     # via google-api-python-client
-urllib3==1.26.7
+urllib3==1.26.8
     # via requests
 uuid==1.30
     # via -r RO-SDN-arista_cloudvision/requirements.in
     # via requests
 uuid==1.30
     # via -r RO-SDN-arista_cloudvision/requirements.in
@@ -485,10 +479,8 @@ wrapt==1.13.3
     #   python-glanceclient
 zc.lockfile==2.0
     # via cherrypy
     #   python-glanceclient
 zc.lockfile==2.0
     # via cherrypy
-zipp==3.6.0
-    # via
-    #   -r requirements.in
-    #   importlib-metadata
+zipp==3.7.0
+    # via importlib-metadata
 
 # The following packages are considered to be unsafe in a requirements file:
 # setuptools
 
 # The following packages are considered to be unsafe in a requirements file:
 # setuptools
diff --git a/tox.ini b/tox.ini
index 699ff96..c650490 100644 (file)
--- a/tox.ini
+++ b/tox.ini
@@ -199,15 +199,19 @@ commands =
 
 #######################################################################################
 [testenv:pip-compile]
 
 #######################################################################################
 [testenv:pip-compile]
-deps =  pip-tools==5.5.0
+deps =  pip-tools==6.4.0
 skip_install = true
 skip_install = true
-whitelist_externals = sh
+whitelist_externals = bash
+        [
 commands =
 commands =
-        - sh -c "for file in requirements*.in ; do pip-compile -rU --no-header $file ;\
+        - bash -c "for file in requirements*.in ; do \
+        UNSAFE="" ; \
+        if [[ $file =~ 'dist' ]] ; then UNSAFE='--allow-unsafe' ; fi ; \
+        pip-compile -rU --no-header $UNSAFE $file ;\
         out=`echo $file | sed 's/.in/.txt/'` ; \
         sed -i -e '1 e head -16 tox.ini' $out ;\
         done"
         out=`echo $file | sed 's/.in/.txt/'` ; \
         sed -i -e '1 e head -16 tox.ini' $out ;\
         done"
-        - sh -c "sed -i 's/.*RO-plugin/-e RO-plugin/g' requirements-test.txt"
+        - bash -c "sed -i 's/.*RO-plugin/-e RO-plugin/g' requirements-test.txt"
 
 
 #######################################################################################
 
 
 #######################################################################################