Updates to enable jammy and finalise charmcraft builds
- Add 22.04 to charmcraft.yaml - Update metadata to include jammy - Remove impish from metadata - Update osci.yaml to include py3.10 default job - Modify tox.ini to remove py35,py36,py37 tox target and add py310 target. - ensure that the openstack-origin is yoga - Fix mocking on unit tests for install.real hook Change-Id: I7bf692965341c0cc1c84c7d3c77cce63a6cb6cbc
This commit is contained in:
parent
1887807f8f
commit
eb913cfb5d
|
@ -1,4 +1,4 @@
|
||||||
- project:
|
- project:
|
||||||
templates:
|
templates:
|
||||||
- openstack-python3-ussuri-jobs
|
- openstack-python3-charm-yoga-jobs
|
||||||
- openstack-cover-jobs
|
- openstack-cover-jobs
|
||||||
|
|
|
@ -22,7 +22,15 @@ parts:
|
||||||
- README.md
|
- README.md
|
||||||
|
|
||||||
bases:
|
bases:
|
||||||
- name: ubuntu
|
- build-on:
|
||||||
channel: "20.04"
|
- name: ubuntu
|
||||||
architectures:
|
channel: "20.04"
|
||||||
- amd64
|
architectures:
|
||||||
|
- amd64
|
||||||
|
run-on:
|
||||||
|
- name: ubuntu
|
||||||
|
channel: "20.04"
|
||||||
|
architectures: [amd64, s390x, ppc64el, arm64]
|
||||||
|
- name: ubuntu
|
||||||
|
channel: "22.04"
|
||||||
|
architectures: [amd64, s390x, ppc64el, arm64]
|
||||||
|
|
|
@ -10,7 +10,7 @@ options:
|
||||||
Setting this to True will allow supporting services to log to syslog.
|
Setting this to True will allow supporting services to log to syslog.
|
||||||
openstack-origin:
|
openstack-origin:
|
||||||
type: string
|
type: string
|
||||||
default: distro
|
default: yoga
|
||||||
description: |
|
description: |
|
||||||
Repository from which to install. May be one of the following:
|
Repository from which to install. May be one of the following:
|
||||||
distro (default), ppa:somecustom/ppa, a deb url sources entry,
|
distro (default), ppa:somecustom/ppa, a deb url sources entry,
|
||||||
|
|
|
@ -11,7 +11,7 @@ extra-bindings:
|
||||||
public: # Only used to allow specifying a hostname for DNS-HA.
|
public: # Only used to allow specifying a hostname for DNS-HA.
|
||||||
series:
|
series:
|
||||||
- focal
|
- focal
|
||||||
- impish
|
- jammy
|
||||||
provides:
|
provides:
|
||||||
nrpe-external-master:
|
nrpe-external-master:
|
||||||
interface: nrpe-external-master
|
interface: nrpe-external-master
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
- project:
|
- project:
|
||||||
templates:
|
templates:
|
||||||
- charm-unit-jobs-py38
|
- charm-unit-jobs-py38
|
||||||
- charm-unit-jobs-py39
|
- charm-unit-jobs-py310
|
||||||
- charm-xena-functional-jobs
|
- charm-xena-functional-jobs
|
||||||
- charm-yoga-functional-jobs
|
- charm-yoga-functional-jobs
|
||||||
check:
|
check:
|
||||||
|
@ -21,7 +21,8 @@
|
||||||
dependencies:
|
dependencies:
|
||||||
- osci-lint
|
- osci-lint
|
||||||
- tox-py38
|
- tox-py38
|
||||||
- tox-py39
|
- name: tox-py310
|
||||||
|
soft: true
|
||||||
- charm-build
|
- charm-build
|
||||||
vars:
|
vars:
|
||||||
tox_extra_args: vault:jammy-vault dashboard:jammy-yoga-cmr-vault
|
tox_extra_args: vault:jammy-vault dashboard:jammy-yoga-cmr-vault
|
||||||
|
|
|
@ -11,6 +11,16 @@ pbr==5.6.0
|
||||||
simplejson>=2.2.0
|
simplejson>=2.2.0
|
||||||
netifaces>=0.10.4
|
netifaces>=0.10.4
|
||||||
|
|
||||||
|
# Build requirements
|
||||||
|
cffi==1.14.6; python_version < '3.6' # cffi 1.15.0 drops support for py35.
|
||||||
|
|
||||||
|
# NOTE: newer versions of cryptography require a Rust compiler to build,
|
||||||
|
# see
|
||||||
|
# * https://github.com/openstack-charmers/zaza/issues/421
|
||||||
|
# * https://mail.python.org/pipermail/cryptography-dev/2021-January/001003.html
|
||||||
|
#
|
||||||
|
cryptography<3.4
|
||||||
|
|
||||||
# Strange import error with newer netaddr:
|
# Strange import error with newer netaddr:
|
||||||
netaddr>0.7.16,<0.8.0
|
netaddr>0.7.16,<0.8.0
|
||||||
|
|
||||||
|
|
17
tox.ini
17
tox.ini
|
@ -51,8 +51,8 @@ commands =
|
||||||
charmcraft -v build
|
charmcraft -v build
|
||||||
{toxinidir}/rename.sh
|
{toxinidir}/rename.sh
|
||||||
|
|
||||||
[testenv:py35]
|
[testenv:py3]
|
||||||
basepython = python3.5
|
basepython = python3
|
||||||
deps = -r{toxinidir}/requirements.txt
|
deps = -r{toxinidir}/requirements.txt
|
||||||
-r{toxinidir}/test-requirements.txt
|
-r{toxinidir}/test-requirements.txt
|
||||||
|
|
||||||
|
@ -60,26 +60,25 @@ deps = -r{toxinidir}/requirements.txt
|
||||||
basepython = python3.6
|
basepython = python3.6
|
||||||
deps = -r{toxinidir}/requirements.txt
|
deps = -r{toxinidir}/requirements.txt
|
||||||
-r{toxinidir}/test-requirements.txt
|
-r{toxinidir}/test-requirements.txt
|
||||||
|
commands = stestr run --slowest {posargs}
|
||||||
[testenv:py37]
|
|
||||||
basepython = python3.7
|
|
||||||
deps = -r{toxinidir}/requirements.txt
|
|
||||||
-r{toxinidir}/test-requirements.txt
|
|
||||||
|
|
||||||
[testenv:py38]
|
[testenv:py38]
|
||||||
basepython = python3.8
|
basepython = python3.8
|
||||||
deps = -r{toxinidir}/requirements.txt
|
deps = -r{toxinidir}/requirements.txt
|
||||||
-r{toxinidir}/test-requirements.txt
|
-r{toxinidir}/test-requirements.txt
|
||||||
|
commands = stestr run --slowest {posargs}
|
||||||
|
|
||||||
[testenv:py39]
|
[testenv:py39]
|
||||||
basepython = python3.9
|
basepython = python3.9
|
||||||
deps = -r{toxinidir}/requirements.txt
|
deps = -r{toxinidir}/requirements.txt
|
||||||
-r{toxinidir}/test-requirements.txt
|
-r{toxinidir}/test-requirements.txt
|
||||||
|
commands = stestr run --slowest {posargs}
|
||||||
|
|
||||||
[testenv:py3]
|
[testenv:py310]
|
||||||
basepython = python3
|
basepython = python3.10
|
||||||
deps = -r{toxinidir}/requirements.txt
|
deps = -r{toxinidir}/requirements.txt
|
||||||
-r{toxinidir}/test-requirements.txt
|
-r{toxinidir}/test-requirements.txt
|
||||||
|
commands = stestr run --slowest {posargs}
|
||||||
|
|
||||||
[testenv:pep8]
|
[testenv:pep8]
|
||||||
basepython = python3
|
basepython = python3
|
||||||
|
|
|
@ -111,6 +111,12 @@ class TestHorizonHooks(CharmTestCase):
|
||||||
_determine_packages.return_value = []
|
_determine_packages.return_value = []
|
||||||
self.filter_installed_packages.return_value = ['foo', 'bar']
|
self.filter_installed_packages.return_value = ['foo', 'bar']
|
||||||
self.os_release.return_value = 'icehouse'
|
self.os_release.return_value = 'icehouse'
|
||||||
|
|
||||||
|
def config_side_effect(key):
|
||||||
|
return {
|
||||||
|
'openstack-origin': 'distro',
|
||||||
|
}[key]
|
||||||
|
self.config.side_effect = config_side_effect
|
||||||
self._call_hook('install.real')
|
self._call_hook('install.real')
|
||||||
self.configure_installation_source.assert_called_with('distro')
|
self.configure_installation_source.assert_called_with('distro')
|
||||||
self.apt_update.assert_called_with(fatal=True)
|
self.apt_update.assert_called_with(fatal=True)
|
||||||
|
@ -122,6 +128,12 @@ class TestHorizonHooks(CharmTestCase):
|
||||||
self.filter_installed_packages.return_value = ['foo', 'bar']
|
self.filter_installed_packages.return_value = ['foo', 'bar']
|
||||||
self.os_release.return_value = 'icehouse'
|
self.os_release.return_value = 'icehouse'
|
||||||
self.lsb_release.return_value = {'DISTRIB_CODENAME': 'precise'}
|
self.lsb_release.return_value = {'DISTRIB_CODENAME': 'precise'}
|
||||||
|
|
||||||
|
def config_side_effect(key):
|
||||||
|
return {
|
||||||
|
'openstack-origin': 'distro',
|
||||||
|
}[key]
|
||||||
|
self.config.side_effect = config_side_effect
|
||||||
self._call_hook('install.real')
|
self._call_hook('install.real')
|
||||||
self.configure_installation_source.assert_called_with('distro')
|
self.configure_installation_source.assert_called_with('distro')
|
||||||
self.apt_update.assert_called_with(fatal=True)
|
self.apt_update.assert_called_with(fatal=True)
|
||||||
|
|
Loading…
Reference in New Issue