Add kinetic support

Add 22.10 run-on base and add kinetic to metadata.yaml.

Additional changes:
* change CHARMCRAFT_* vars to CRAFT_* and add entrypoint
* pin tox < 4.0.0 for now
* switch to charmcraft pack
* add standard bindep.txt
* switch charm-tools to 2.8.4 to remove py310 ruamel requirement
* use charmcraft_channel 2.0/stable

Change-Id: I549e8382e4c079eb9eefec13f2a72e994e2b86f0
This commit is contained in:
Corey Bryant 2023-01-25 08:51:04 -05:00
parent 0e36e8c893
commit 62482b50db
6 changed files with 20 additions and 8 deletions

4
bindep.txt Normal file
View File

@ -0,0 +1,4 @@
libffi-dev [platform:dpkg]
libpq-dev [platform:dpkg]
libxml2-dev [platform:dpkg]
libxslt1-dev [platform:dpkg]

View File

@ -2,21 +2,23 @@ type: charm
parts: parts:
charm: charm:
charm-entrypoint: "hooks/install"
build-packages: build-packages:
- tox - tox
- git - git
- python3-dev - python3-dev
- libffi-dev
override-build: | override-build: |
apt-get install ca-certificates -y apt-get install ca-certificates -y
tox -e build-reactive tox -e build-reactive
override-stage: | override-stage: |
echo "Copying charm to staging area: $CHARMCRAFT_STAGE" echo "Copying charm to staging area: $CRAFT_STAGE"
NAME=$(ls $CHARMCRAFT_PART_BUILD/build/builds) NAME=$(ls $CRAFT_PART_BUILD/build/builds)
cp -r $CHARMCRAFT_PART_BUILD/build/builds/$NAME/* $CHARMCRAFT_STAGE/ cp -r $CRAFT_PART_BUILD/build/builds/$NAME/* $CRAFT_STAGE/
override-prime: | override-prime: |
# For some reason, the normal priming chokes on the fact that there's a # For some reason, the normal priming chokes on the fact that there's a
# hooks directory. # hooks directory.
cp -r $CHARMCRAFT_STAGE/* . cp -r $CRAFT_STAGE/* .
bases: bases:
- build-on: - build-on:
@ -30,4 +32,7 @@ bases:
architectures: [amd64, s390x, ppc64el, arm64] architectures: [amd64, s390x, ppc64el, arm64]
- name: ubuntu - name: ubuntu
channel: "22.04" channel: "22.04"
architectures: [amd64, s390x, ppc64el, arm64] architectures: [amd64, s390x, ppc64el, arm64]
- name: ubuntu
channel: "22.10"
architectures: [amd64, s390x, ppc64el, arm64]

View File

@ -8,3 +8,4 @@
needs_charm_build: true needs_charm_build: true
charm_build_name: ceph-fs charm_build_name: ceph-fs
build_type: charmcraft build_type: charmcraft
charmcraft_channel: 2.0/stable

View File

@ -10,7 +10,7 @@ setuptools<50.0.0 # https://github.com/pypa/setuptools/commit/04e3df22df840c6bb
# Build requirements # Build requirements
cffi==1.14.6; python_version < '3.6' # cffi 1.15.0 drops support for py35. cffi==1.14.6; python_version < '3.6' # cffi 1.15.0 drops support for py35.
charm-tools==2.8.3 charm-tools==2.8.4
simplejson simplejson

View File

@ -12,6 +12,7 @@ tags:
series: series:
- focal - focal
- jammy - jammy
- kinetic
subordinate: false subordinate: false
requires: requires:
ceph-mds: ceph-mds:

View File

@ -23,6 +23,7 @@ requires =
pip < 20.3 pip < 20.3
virtualenv < 20.0 virtualenv < 20.0
setuptools<50.0.0 setuptools<50.0.0
tox < 4.0.0
# NOTE: https://wiki.canonical.com/engineering/OpenStack/InstallLatestToxOnOsci # NOTE: https://wiki.canonical.com/engineering/OpenStack/InstallLatestToxOnOsci
minversion = 3.18.0 minversion = 3.18.0
@ -50,7 +51,7 @@ basepython = python3
deps = -r{toxinidir}/build-requirements.txt deps = -r{toxinidir}/build-requirements.txt
commands = commands =
charmcraft clean charmcraft clean
charmcraft -v build charmcraft -v pack
{toxinidir}/rename.sh {toxinidir}/rename.sh
[testenv:build-reactive] [testenv:build-reactive]
@ -96,7 +97,7 @@ commands = stestr run --slowest {posargs}
[testenv:pep8] [testenv:pep8]
basepython = python3 basepython = python3
deps = flake8==3.9.2 deps = flake8==3.9.2
charm-tools==2.8.3 charm-tools==2.8.4
commands = flake8 {posargs} src unit_tests commands = flake8 {posargs} src unit_tests
[testenv:func-target] [testenv:func-target]