Update to classic charms to build using charmcraft in CI
This update is to ensure that the Zuul Canonical CI builds the charm before functional tests and ensure that that artifact is used for the functional tests. This is to try to ensure that the charm that gets landed to the charmhub is the same charm that was tested with. Change-Id: I7c695c77c67f43f02c72c3b50d949c451be53bc3
This commit is contained in:
parent
690d1d190c
commit
1c7f320cb6
1
.gitignore
vendored
1
.gitignore
vendored
@ -5,6 +5,7 @@ bin
|
|||||||
tags
|
tags
|
||||||
*.sw[nop]
|
*.sw[nop]
|
||||||
*.pyc
|
*.pyc
|
||||||
|
*.charm
|
||||||
.unit-state.db
|
.unit-state.db
|
||||||
trusty/
|
trusty/
|
||||||
xenial/
|
xenial/
|
||||||
|
7
build-requirements.txt
Normal file
7
build-requirements.txt
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# NOTES(lourot):
|
||||||
|
# * We don't install charmcraft via pip anymore because it anyway spins up a
|
||||||
|
# container and scp the system's charmcraft snap inside it. So the charmcraft
|
||||||
|
# snap is necessary on the system anyway.
|
||||||
|
# * `tox -e build` successfully validated with charmcraft 1.2.1
|
||||||
|
|
||||||
|
cffi==1.14.6; python_version < '3.6' # cffi 1.15.0 drops support for py35.
|
@ -6,9 +6,11 @@ parts:
|
|||||||
source: .
|
source: .
|
||||||
prime:
|
prime:
|
||||||
- actions/*
|
- actions/*
|
||||||
|
- charmhelpers/*
|
||||||
- files/*
|
- files/*
|
||||||
- hooks/*
|
- hooks/*
|
||||||
- lib/*
|
- lib/*
|
||||||
|
- scripts/*
|
||||||
- templates/*
|
- templates/*
|
||||||
- actions.yaml
|
- actions.yaml
|
||||||
- config.yaml
|
- config.yaml
|
||||||
|
@ -11,11 +11,16 @@
|
|||||||
voting: false
|
voting: false
|
||||||
- vault-jammy-yoga:
|
- vault-jammy-yoga:
|
||||||
voting: false
|
voting: false
|
||||||
|
vars:
|
||||||
|
needs_charm_build: true
|
||||||
|
charm_build_name: nova-cloud-controller
|
||||||
|
build_type: charmcraft
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
name: vault-focal-xena
|
name: vault-focal-xena
|
||||||
parent: func-target
|
parent: func-target
|
||||||
dependencies:
|
dependencies:
|
||||||
|
- charm-build
|
||||||
- osci-lint
|
- osci-lint
|
||||||
- tox-py38
|
- tox-py38
|
||||||
- tox-py39
|
- tox-py39
|
||||||
|
13
rename.sh
Executable file
13
rename.sh
Executable file
@ -0,0 +1,13 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
charm=$(grep "charm_build_name" osci.yaml | awk '{print $2}')
|
||||||
|
echo "renaming ${charm}_*.charm to ${charm}.charm"
|
||||||
|
echo -n "pwd: "
|
||||||
|
pwd
|
||||||
|
ls -al
|
||||||
|
echo "Removing bad downloaded charm maybe?"
|
||||||
|
if [[ -e "${charm}.charm" ]];
|
||||||
|
then
|
||||||
|
rm "${charm}.charm"
|
||||||
|
fi
|
||||||
|
echo "Renaming charm here."
|
||||||
|
mv ${charm}_*.charm ${charm}.charm
|
@ -69,7 +69,7 @@ applications:
|
|||||||
channel: latest/edge
|
channel: latest/edge
|
||||||
|
|
||||||
nova-cloud-controller:
|
nova-cloud-controller:
|
||||||
charm: ../../../nova-cloud-controller
|
charm: ../../nova-cloud-controller.charm
|
||||||
num_units: 1
|
num_units: 1
|
||||||
options:
|
options:
|
||||||
openstack-origin: *openstack-origin
|
openstack-origin: *openstack-origin
|
||||||
@ -92,7 +92,7 @@ applications:
|
|||||||
neutron-security-groups: true
|
neutron-security-groups: true
|
||||||
to:
|
to:
|
||||||
- '5'
|
- '5'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
keystone:
|
keystone:
|
||||||
charm: ch:keystone
|
charm: ch:keystone
|
||||||
@ -101,7 +101,7 @@ applications:
|
|||||||
openstack-origin: *openstack-origin
|
openstack-origin: *openstack-origin
|
||||||
to:
|
to:
|
||||||
- '6'
|
- '6'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
neutron-gateway:
|
neutron-gateway:
|
||||||
charm: ch:neutron-gateway
|
charm: ch:neutron-gateway
|
||||||
@ -111,7 +111,7 @@ applications:
|
|||||||
bridge-mappings: physnet1:br-ex
|
bridge-mappings: physnet1:br-ex
|
||||||
to:
|
to:
|
||||||
- '7'
|
- '7'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
glance:
|
glance:
|
||||||
charm: ch:glance
|
charm: ch:glance
|
||||||
@ -120,11 +120,11 @@ applications:
|
|||||||
openstack-origin: *openstack-origin
|
openstack-origin: *openstack-origin
|
||||||
to:
|
to:
|
||||||
- '8'
|
- '8'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
neutron-openvswitch:
|
neutron-openvswitch:
|
||||||
charm: ch:neutron-openvswitch
|
charm: ch:neutron-openvswitch
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
placement:
|
placement:
|
||||||
charm: ch:placement
|
charm: ch:placement
|
||||||
@ -133,7 +133,7 @@ applications:
|
|||||||
openstack-origin: *openstack-origin
|
openstack-origin: *openstack-origin
|
||||||
to:
|
to:
|
||||||
- '9'
|
- '9'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
nova-compute:
|
nova-compute:
|
||||||
charm: ch:nova-compute
|
charm: ch:nova-compute
|
||||||
@ -149,7 +149,7 @@ applications:
|
|||||||
to:
|
to:
|
||||||
- '10'
|
- '10'
|
||||||
- '11'
|
- '11'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
vault:
|
vault:
|
||||||
charm: ch:vault
|
charm: ch:vault
|
||||||
|
@ -69,7 +69,7 @@ applications:
|
|||||||
channel: latest/edge
|
channel: latest/edge
|
||||||
|
|
||||||
nova-cloud-controller:
|
nova-cloud-controller:
|
||||||
charm: ../../../nova-cloud-controller
|
charm: ../../nova-cloud-controller.charm
|
||||||
num_units: 1
|
num_units: 1
|
||||||
options:
|
options:
|
||||||
openstack-origin: *openstack-origin
|
openstack-origin: *openstack-origin
|
||||||
@ -92,7 +92,7 @@ applications:
|
|||||||
neutron-security-groups: true
|
neutron-security-groups: true
|
||||||
to:
|
to:
|
||||||
- '5'
|
- '5'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
keystone:
|
keystone:
|
||||||
charm: ch:keystone
|
charm: ch:keystone
|
||||||
@ -101,7 +101,7 @@ applications:
|
|||||||
openstack-origin: *openstack-origin
|
openstack-origin: *openstack-origin
|
||||||
to:
|
to:
|
||||||
- '6'
|
- '6'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
neutron-gateway:
|
neutron-gateway:
|
||||||
charm: ch:neutron-gateway
|
charm: ch:neutron-gateway
|
||||||
@ -111,7 +111,7 @@ applications:
|
|||||||
bridge-mappings: physnet1:br-ex
|
bridge-mappings: physnet1:br-ex
|
||||||
to:
|
to:
|
||||||
- '7'
|
- '7'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
glance:
|
glance:
|
||||||
charm: ch:glance
|
charm: ch:glance
|
||||||
@ -120,11 +120,11 @@ applications:
|
|||||||
openstack-origin: *openstack-origin
|
openstack-origin: *openstack-origin
|
||||||
to:
|
to:
|
||||||
- '8'
|
- '8'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
neutron-openvswitch:
|
neutron-openvswitch:
|
||||||
charm: ch:neutron-openvswitch
|
charm: ch:neutron-openvswitch
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
placement:
|
placement:
|
||||||
charm: ch:placement
|
charm: ch:placement
|
||||||
@ -133,7 +133,7 @@ applications:
|
|||||||
openstack-origin: *openstack-origin
|
openstack-origin: *openstack-origin
|
||||||
to:
|
to:
|
||||||
- '9'
|
- '9'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
nova-compute:
|
nova-compute:
|
||||||
charm: ch:nova-compute
|
charm: ch:nova-compute
|
||||||
@ -149,7 +149,7 @@ applications:
|
|||||||
to:
|
to:
|
||||||
- '10'
|
- '10'
|
||||||
- '11'
|
- '11'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
vault:
|
vault:
|
||||||
charm: ch:vault
|
charm: ch:vault
|
||||||
|
@ -69,7 +69,7 @@ applications:
|
|||||||
channel: latest/edge
|
channel: latest/edge
|
||||||
|
|
||||||
nova-cloud-controller:
|
nova-cloud-controller:
|
||||||
charm: ../../../nova-cloud-controller
|
charm: ../../nova-cloud-controller.charm
|
||||||
num_units: 1
|
num_units: 1
|
||||||
options:
|
options:
|
||||||
openstack-origin: *openstack-origin
|
openstack-origin: *openstack-origin
|
||||||
@ -92,7 +92,7 @@ applications:
|
|||||||
neutron-security-groups: true
|
neutron-security-groups: true
|
||||||
to:
|
to:
|
||||||
- '5'
|
- '5'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
keystone:
|
keystone:
|
||||||
charm: ch:keystone
|
charm: ch:keystone
|
||||||
@ -101,7 +101,7 @@ applications:
|
|||||||
openstack-origin: *openstack-origin
|
openstack-origin: *openstack-origin
|
||||||
to:
|
to:
|
||||||
- '6'
|
- '6'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
neutron-gateway:
|
neutron-gateway:
|
||||||
charm: ch:neutron-gateway
|
charm: ch:neutron-gateway
|
||||||
@ -111,7 +111,7 @@ applications:
|
|||||||
bridge-mappings: physnet1:br-ex
|
bridge-mappings: physnet1:br-ex
|
||||||
to:
|
to:
|
||||||
- '7'
|
- '7'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
glance:
|
glance:
|
||||||
charm: ch:glance
|
charm: ch:glance
|
||||||
@ -120,11 +120,11 @@ applications:
|
|||||||
openstack-origin: *openstack-origin
|
openstack-origin: *openstack-origin
|
||||||
to:
|
to:
|
||||||
- '8'
|
- '8'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
neutron-openvswitch:
|
neutron-openvswitch:
|
||||||
charm: ch:neutron-openvswitch
|
charm: ch:neutron-openvswitch
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
placement:
|
placement:
|
||||||
charm: ch:placement
|
charm: ch:placement
|
||||||
@ -133,7 +133,7 @@ applications:
|
|||||||
openstack-origin: *openstack-origin
|
openstack-origin: *openstack-origin
|
||||||
to:
|
to:
|
||||||
- '9'
|
- '9'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
nova-compute:
|
nova-compute:
|
||||||
charm: ch:nova-compute
|
charm: ch:nova-compute
|
||||||
@ -149,7 +149,7 @@ applications:
|
|||||||
to:
|
to:
|
||||||
- '10'
|
- '10'
|
||||||
- '11'
|
- '11'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
vault:
|
vault:
|
||||||
charm: ch:vault
|
charm: ch:vault
|
||||||
|
@ -69,7 +69,7 @@ applications:
|
|||||||
channel: latest/edge
|
channel: latest/edge
|
||||||
|
|
||||||
nova-cloud-controller:
|
nova-cloud-controller:
|
||||||
charm: ../../../nova-cloud-controller
|
charm: ../../nova-cloud-controller.charm
|
||||||
num_units: 1
|
num_units: 1
|
||||||
options:
|
options:
|
||||||
openstack-origin: *openstack-origin
|
openstack-origin: *openstack-origin
|
||||||
@ -92,7 +92,7 @@ applications:
|
|||||||
neutron-security-groups: true
|
neutron-security-groups: true
|
||||||
to:
|
to:
|
||||||
- '5'
|
- '5'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
keystone:
|
keystone:
|
||||||
charm: ch:keystone
|
charm: ch:keystone
|
||||||
@ -101,7 +101,7 @@ applications:
|
|||||||
openstack-origin: *openstack-origin
|
openstack-origin: *openstack-origin
|
||||||
to:
|
to:
|
||||||
- '6'
|
- '6'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
neutron-gateway:
|
neutron-gateway:
|
||||||
charm: ch:neutron-gateway
|
charm: ch:neutron-gateway
|
||||||
@ -111,7 +111,7 @@ applications:
|
|||||||
bridge-mappings: physnet1:br-ex
|
bridge-mappings: physnet1:br-ex
|
||||||
to:
|
to:
|
||||||
- '7'
|
- '7'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
glance:
|
glance:
|
||||||
charm: ch:glance
|
charm: ch:glance
|
||||||
@ -120,11 +120,11 @@ applications:
|
|||||||
openstack-origin: *openstack-origin
|
openstack-origin: *openstack-origin
|
||||||
to:
|
to:
|
||||||
- '8'
|
- '8'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
neutron-openvswitch:
|
neutron-openvswitch:
|
||||||
charm: ch:neutron-openvswitch
|
charm: ch:neutron-openvswitch
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
placement:
|
placement:
|
||||||
charm: ch:placement
|
charm: ch:placement
|
||||||
@ -133,7 +133,7 @@ applications:
|
|||||||
openstack-origin: *openstack-origin
|
openstack-origin: *openstack-origin
|
||||||
to:
|
to:
|
||||||
- '9'
|
- '9'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
nova-compute:
|
nova-compute:
|
||||||
charm: ch:nova-compute
|
charm: ch:nova-compute
|
||||||
@ -149,7 +149,7 @@ applications:
|
|||||||
to:
|
to:
|
||||||
- '10'
|
- '10'
|
||||||
- '11'
|
- '11'
|
||||||
channel: latest/edge
|
channel: yoga/edge
|
||||||
|
|
||||||
vault:
|
vault:
|
||||||
charm: ch:vault
|
charm: ch:vault
|
||||||
|
12
tox.ini
12
tox.ini
@ -37,10 +37,20 @@ setenv = VIRTUAL_ENV={envdir}
|
|||||||
install_command =
|
install_command =
|
||||||
{toxinidir}/pip.sh install {opts} {packages}
|
{toxinidir}/pip.sh install {opts} {packages}
|
||||||
commands = stestr run --slowest {posargs}
|
commands = stestr run --slowest {posargs}
|
||||||
allowlist_externals = juju
|
allowlist_externals =
|
||||||
|
charmcraft
|
||||||
|
rename.sh
|
||||||
passenv = HOME TERM CS_* OS_* TEST_*
|
passenv = HOME TERM CS_* OS_* TEST_*
|
||||||
deps = -r{toxinidir}/test-requirements.txt
|
deps = -r{toxinidir}/test-requirements.txt
|
||||||
|
|
||||||
|
[testenv:build]
|
||||||
|
basepython = python3
|
||||||
|
deps = -r{toxinidir}/build-requirements.txt
|
||||||
|
commands =
|
||||||
|
charmcraft clean
|
||||||
|
charmcraft -v build
|
||||||
|
{toxinidir}/rename.sh
|
||||||
|
|
||||||
[testenv:py35]
|
[testenv:py35]
|
||||||
basepython = python3.5
|
basepython = python3.5
|
||||||
deps = -r{toxinidir}/requirements.txt
|
deps = -r{toxinidir}/requirements.txt
|
||||||
|
Loading…
x
Reference in New Issue
Block a user