I am trying to deploy a service (let's say keystone) using juju-deployer and have set the "openstack-origin" to the private debian repo that we have set up. I have set the openstack-origin like this:
"openstack-origin": "deb http://local-mirror.company.com/ubuntu-cloud trusty-updates/juno main"
When I deploy the service it successfully adds the debian repo to the source list by adding a new file
and the content is the same as what I set openstack-origin to:
deb http://local-mirror.company.com/ubuntu-cloud trusty-updates/juno mainu
So far so good. The issue is that when the system goes to install packages from that repo we see the following error:
WARNING: The following packages cannot be authenticated! python-dogpile.core python-netaddr python-six python-stevedore python-oslo.config python-pbr python-keystoneclient python-keystonemiddleware python-ldappool python-sqlalchemy python-migrate python-alembic alembic python-oslo.i18n python-oslo.utils python-oslo.db python-oslo.serialization python-posix-ipc python-eventlet python-amqp python-oslo.messaging python-pycadf python-dogpile.cache python-sqlalchemy-ext python-keystone keystone E: There are problems and -y was used without --force-yes
If I manually get on that system that juju is attempting to install the service on then I can reproduce the issue by performing an
sudo apt-get -y install keystone and I can also see that I get the following error if I try
sudo apt-get update:
W: GPG error: http://local-mirror.company.com trusty-updates/juno Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 5EDB1B62EC4926EA
So... my question is how do I make juju add the appropriate public key to this system when it adds the debian repo to the source list so that when it tries to install the package we don't get a hook error? To be clear I am not asking how to add the key manually using apt-key - I need to be able to add the key from juju-deployer when the new service is deployed.