Report this

What is the reason for this report?

Is adding an external repo via user-data/cloud-init on Ubuntu 24 droplet creation supported?

Posted on September 21, 2024

I’m trying to add a repo source to my cloud init with the following:

apt:
  preserve_sources_list: true
  sources:
    grafana.list:
      source: "deb https://apt.grafana.com stable main"
      key: "https://apt.grafana.com/gpg.key"

It doesn’t seem to have an effect. Does anyone know if DO support this type of configuration in cloud-init?



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.

Hi there,

I think that DigitalOcean should support cloud-init with Droplet creation, and adding external repositories should work.

I think that you need to make sure your cloud-init script includes an apt_update step after adding the source, eg:

apt:
  preserve_sources_list: true
  sources:
    grafana:
      source: "deb https://apt.grafana.com stable main"
      key: "https://apt.grafana.com/gpg.key"

package_update: true
packages:
  - grafana

This uses package_update: true to make sure apt is updated after adding the source.

If it still doesn’t work, you can add a runcmd section as a fallback:

runcmd:
  - wget -q -O - https://apt.grafana.com/gpg.key | apt-key add -
  - echo "deb https://apt.grafana.com stable main" > /etc/apt/sources.list.d/grafana.list
  - apt-get update
  - apt-get install -y grafana

- Bobby

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.