Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: drop support for pinning dokku dependencies #137

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

ltalirz
Copy link
Member

@ltalirz ltalirz commented Nov 28, 2021

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] 0f8ce10

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] 0f8ce10
@ltalirz
Copy link
Member Author

ltalirz commented Nov 28, 2021

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

  • Do we need code to warn users who use the deprecated variables?
  • On second thought, I believe we may want to keep pinning (only) for the dokku package itself... not having a way to pin the dokku version makes it difficult to get reproducible builds across machines.
  • Is it even necessary to install the dokku dependencies explicitly as we do here? Wouldn't it be enough to just install dokku, which should then fetch all the necessary dependencies?

@josegonzalez
Copy link
Member

@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
Copy link
Member Author

ltalirz commented Oct 16, 2022

@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:

- name: Run role without running any tasks
include_role:
name: dokku_bot.ansible_dokku
tasks_from: init.yml
).

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
Copy link
Member

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

@ltalirz
Copy link
Member Author

ltalirz commented Oct 16, 2022

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
Copy link
Member Author

ltalirz commented Dec 23, 2022

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
Copy link
Member

Up to you :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

clean up deprecated variables
2 participants