question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Switch from digital_ocean module to digital_ocean_droplet

See original GitHub issue

Issue Type

  • Feature request

Summary

Deprecations to the digital_ocean module in by ansible 2.8 have broken an import in functional tests and potentially change what dependencies are required based on the version of ansible being used.

Background

Molecule should, of course, stop using the deprecated module in favor of the new module added in ansible 2.8. Doing so introduces some complexity, which is that molecule will now need to inspect the ansible version to conditionally decide which module to use, both in playbooks that use the digitalocean modules, and in the supports_digitalocean function above. There are a few different ways that molecule can deal with this complexity, which I’ve tried to outline here.

Options

  1. Fix the broken import, continue using the deprecated module until ansible 2.10 comes out, at which point ansible <2.8 will no longer be supported and we can switch from the deprecated digital_ocean module, which will be removed in ansible 2.12 (so we’ll be able to safely transition during the ansible 2.10 and 2.11 releases. This is a simple option, but is not very user-friendly since it requires ansible 2.8 users to install a dependency to use digitialocean that is no longer required in ansible 2.8.
  2. Fix the broken import, conditionally use the correct module based on which version of ansible is currently being used. This is less simple, but means that users should no longer have to install the dopy module for ansible >= 2.8. It will result in more complicated create.yml and destroy.yml playbooks for digitalocean scenarios.
  3. Fix the broken import, conditionally use a different cookiecutter template based on the version of ansible installed when the cookiecutter template is used to initialize a scenario. This is the opposite of simple, and while it is an option I don’t think it’s a very good one.
  4. Other options welcome. 😃

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Comments:15 (12 by maintainers)

github_iconTop GitHub Comments

6reactions
bmildrencommented, Sep 16, 2019

Apologies, I lost track of this one - I’ll take a look this week

1reaction
decentral1secommented, Sep 15, 2019

Bump @bmildren @seandst 🦈 🦈 🦈

Read more comments on GitHub >

github_iconTop Results From Across the Web

How to Install or Uninstall the DigitalOcean Droplet Agent
Install the Droplet agent on older Droplets to enable features like the Droplet Console, or uninstall the agent to remove access.
Read more >
DigitalOcean Droplets For WHMCS
Automatically provision Droplets and offer your clients tools to manage the servers in your WHMCS.
Read more >
How to Manage a Droplet's Kernel
If your Droplet is using legacy kernel management, you can switch to the DigitalOcean GrubLoader kernel to support internal kernels.
Read more >
Droplets - DigitalOcean Documentation
DigitalOcean Droplets are Linux-based virtual machines (VMs). Each Droplet you create is a new server you can use.
Read more >
How to Resize Droplets - DigitalOcean Documentation
Next, go to the DigitalOcean Control Panel. On the Droplets page, click on the name of the Droplet you want to resize, then...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found