Trigger a rebuild of the charm to pickup an update to
charms.openstack which fixes enabling SSL for API
endpoint.
Change-Id: If5db1d72da041ed07159ab5af8fe41a863c92549
Partial-Bug: #1719331
A recent commit (ecfd7a64ad) tidied up the
keystone authentication in basic_deployment.py across most of the
charms. Barbican was a bit different in that it has an explicit v3 test
as it was implemented a bit odly and so needed a v3 test for the main
barbican software.
This fix puts back in keystone v3 support for basic_deployment.py
Change-Id: Ic689914402b7966632530d5d595d64f87f3e95bf
Closes-Bug: #1712849
With keystoneauth1 sessions the service catalog search function,
url_for takes argument interface, no longer named endpoint_type.
This change updates tests to use this argument name.
Change-Id: Iffa1f576c9dc0742c5fa3536424da0427c4bb35b
Every reactive charm that uses charms.openstack and implements unit
testing needs to mock charmhelpers, as otherwise the tests blow up.
This patch uses the mocking of charmhelpers in charms.openstack so that
a charm layer can just import test_mocks and charmhelpers will be mocked
out along with setting up a default
charmhelpers.c.o.u.OPENSTACK_RELEASES so that when an OpenStackCharm()
derived charm class won't fail on definition.
Change-Id: I294e20e383e3372dfe61d2c86424776d3e060811
Related-Bug: #1693017
Depends-On: I5ac40617ee30e5f421ec16fc7592177a5e6aa166
- Turn on Zesty-Ocata Amulet test definitions.
- Standardize test-requirements.txt
- Sync charm helpers for various fixes
Change-Id: I4c227c9b93ddfb5802b00dd0e74c8724f3468121
- Add Zesty as a supported series to metadata.yaml.
- Turn on Xenial-Ocata Amulet test definitions.
- Sync charm helpers to get Juju 2.x amulet compatibility.
- Keeping Zesty-Ocata Amulet test definitions turned off until the
metadata.yaml changes propagate to the charm store.
Change-Id: Iaae765ae308dde3d61ab1625c0980162e59b0f03
Newer versions of the mysql-shared interface automatically set the
correct hostname based on the network space binding for the relation;
stop providing this from the charm and just let the interface do
its magic!
Change-Id: I358bfe669fb50cbce0380460225866afede8bbf3
Reactive source charms are Python3-only, but have py27 unit tests
declared in project-config.
The Tox tool recently changed behavior. It used to pass when a tox
target was missing commands. Now it fails in that case.
This commit places a py27 no-op shim to allow gate tests to pass,
effectively restoring the original behavior for these py3x-only repos.
Change-Id: I652ae850c2cb8de7103cfe41caa861751893e9da
Partial-Bug: 1642981
- Remove Precise-Icehouse Amulet test definitions if they exist.
- Add Xenial-Newton Amulet test definitions.
- Add Yakkety-Newton Amulet test definitions.
- Use the percona-cluster charm in tests instead of the mysql charm.
Change-Id: I38cf4c134f0057ada305aa31926064117c7c3b8f
This is a refactor of the charm (no new functionality) to work with the
declarative helpers in charms.openstack. This means that much of the
boiler plate has disappeared from the charm and into charms.openstack
including the tests.
Change-Id: I4305eb34f314f8f5f1a7d1807508bf1e4dbfb84c
Depends-On: I3c74f60bb4ed7901828902118697f310622c4061
Depends-On: Ic81e65f5a072f67cbd2322e4cfd0eec9a5895823
All OpenStack Charms now contain identical tox.ini files,
not to be modified or made unique within each charm repo.
This is to ensure consistency across charm repos in tox
target naming, approach and purpose, also giving the
charm dev and test experience additional consistency.
Also create empty dirs with .keep files where necessary.
Some classic charms have actions and/or lib dirs, and some
do not. In all classic charms, flake will now check those
dirs to ensure lint coverage of existing or future content.
Rename bespoke amulet smoke test file name to standard.
Change-Id: I0ddef0f8bc000581fc8369e0b837c580b44e6a78
This provides both keystone v2 and v3 setup for testing barbican
manually. It demonstrates how to set up a project/tenant in each v3 and
v2 and the how to store a secret. Then only differences are in the
authentication with Keystone. However, it does demonstrate both
working.
This change also contains the v2 and v3 keystone tests with barbican.
These are pesented as two gate-*-v2 and gate-*-v3 tests which activate
testing with keystone v2 and keystone v3.
Change-Id: Id0310da7a80ee8796eeda52b7af936ae51ed0dd9
Add src/README.md placeholder to prevent inheritence of the
lower layer readme file in the built charm.
Add src/tox.ini and test-requirements for Amulet prep.
Update metadata.yaml for series.
Update tox.ini to minimize and clarify pep8 ignores.
Resolve flake8/pbr test-requirements version range conflict.
Remove legacy lint and test targets from Makefile, ensuring
these tests will execute via tox. Trusty test runners have
no py35 interpreter, and would have failed in running both
py34 and py35 in succession as it was defined.
Update src/layer.yaml repo value to point to official location
and remove unnecessary options.
Change-Id: Ia663fda7761dca6dc08583314f00beedf1db60cc
* Change charm to inherit layer:openstack-api as this is an API charm
This adds the SSL config options to the charms config.yaml
* Barbican now servers the API service through Apache so add code
to manage /etc/apache2/conf-available/barbican-api.conf
* Switch BarbicanConfigurationAdapter to be a child of
APIConfigurationAdapter to inherit methods for configuring haproxy
and apache2.
* Add reactive handle to configure ssl when identity relation is
complete
* Move Juno template dir to mitaka as mitaka is the earliest
supported release.
* Updated host_href in barbican.conf to specify the correct external
url for accessing the service. Without this clients are redirected
to the wrong location.
charms.openstack has been refactered such that OpenStackRelationAdapters has
a new derived class called OpenStackAPIRelationAdapters which contains the
amqp, db and cluster relations. As Barbican needs those, the BarbicanAdapters
needs to be derived from the more specialised class.
The barbican-hsm-plugin interface provides a mechanism for the Barbican
charm to communicate with an HSM plugin. The plugin (from the Barbican
perspective) is provided as a PKCS#11 compliant library (.so) and so is
local to the Barbican installation. Thus, the hsm-plugin charms are
subordinate to the Barbican charm and run on the same unit.
This change also provides two actions (generate-mkek and generate-hmac)
which are 'one-off' operations to initialise the HSM with the global
master keys.
Add a note to the README that the generate-mkek and generate-hmac
actions may only be done once as the HSM may reject overwriting the key.
Add Apache2.0 LICENSE and license headers to files
Removed redundant copyright file
Change the reference for the internal port to 9311 The barbican project
changed the INTERNAL port to the same as the PUBLIC port.
Add in seed_file and seed_length to template. These are needed for a
change in Barbican to support seeding the RNG in the HSM if required.
They are set to /dev/random and 32.
Fetch the barbican sources from a PPA (for bug: 1599550)
Remove the trusty support for Py3 from install hook