dokku / ansible-dokku

Ansible modules for installing and configuring Dokku
MIT License
169 stars 44 forks source link

chore: drop support for pinning dokku dependencies #137

Open ltalirz opened 2 years ago

ltalirz commented 2 years ago

fix #130

Pinning the versions of dokku dependencies (herokuish, plugn, sshcommand) was deprecated in 2021-02 [1] since it made updating dokku tedious: users would have had to guess/look up what versions of the dependencies were needed for the new dokku version.

The initial deprecation period was 6 months until July 2021; since this has passed, the deprecated variables are now being removed.

[1] 0f8ce10988239fca3b977413dc28d6e1d210b631

ltalirz commented 2 years ago

I'll hold off this PR until there's a review to answer the following open questions:

josegonzalez commented 1 year ago

@ltalirz should there be a way to use just the libraries from this role? I feel like including them is a mistake, as it makes it so using the libraries always requires running through the install of dokku...

ltalirz commented 1 year ago

@ltalirz should there be a way to use just the libraries from this role? I feel like including them is a mistake, as it makes it so using the libraries always requires running through the install of dokku...

Just to clarify: you're talking about the modules in the libraries folder; not dependencies of the dokku package (the topic of this PR), right?

It is actually possible to use the modules without running the entire role, but it's a bit of a hack (we do this at the verify stage of the tests where it would make no sense to run the role once more: https://github.com/dokku/ansible-dokku/blob/cfd3d022f29cda63497e7248946d35a7fbbc47cb/molecule/default/verify.yml#L6-L9 ).

I haven't kept up much with the latest developments in ansible, but it's possible that using collections would provide a more flexible distribution method. See also the migration guide.

josegonzalez commented 1 year ago

Yeah thats right. I was basically looking for something that could support this new plugin, which currently just deletes the tasks folder.

ltalirz commented 1 year ago

To play around with it, you can use the hack mentioned above.

I guess the "right" way of doing it would be to migrate the role to a dokku collection, which, once installed, would then make the modules available under dokku.dokku_builder I assume. I'll open an issue for it (but I currently don't have the time to do it).

ltalirz commented 1 year ago

Hm... since we switched to empty default values for dokku_version, etc. we haven't had a single complaint. Perhaps it would be fine to just keep the variables and "un-deprecate" them...

josegonzalez commented 1 year ago

Up to you :)