Report this

What is the reason for this report?

cloud-init: apt can't import key

Posted on September 3, 2017

Hello, I’m using Debian 9.1 x64 and I’m trying to configure my droplet on creation with cloud-init. I want to install multiple package and one of them require a different source and to import a key.

This is done very easily using something like this: https://cloudinit.readthedocs.io/en/latest/topics/examples.html#additional-apt-configuration where you specify a source, a keyserver, and a keyid.

However, this will fail to import the key. gpg will be used to import the key from the server and it requires dirmngr to do so. However in Debian 9.1, dirmngr is not installed (in fact I think the whole thing along with apt-key is deprecated on Debian). So this is a bit problematic. I haven’t found any documentation referring that I can execute things in the order that I want. Cloud-init seems to execute about everything, then the apt module, install packages, then execute custom commands no matter what order I write them in my config file.

Easiest solution would be to install dirmngr first, then let it import the key, then install the rest of the packages that I need. How can I do this?



This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Hello. Did you solved this?

I would be interested in know what you did.

In any case, I’m not sure exactly how the order is established, but the directive cloud_final_modules kind of set that order.

The developer cloud

Scale up as you grow — whether you're running one virtual machine or ten thousand.

Get started for free

Sign up and get $200 in credit for your first 60 days with DigitalOcean.*

*This promotional offer applies to new accounts only.