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

Rewrite Consul cookbook to use custom resources #555

Closed
emachnic opened this issue Apr 6, 2020 · 5 comments · Fixed by #598
Closed

Rewrite Consul cookbook to use custom resources #555

emachnic opened this issue Apr 6, 2020 · 5 comments · Fixed by #598
Assignees
Labels
Feature Request Enhancement to existing functionality or new functionality Table Flip This is a large scale change with fundamental usability changes

Comments

@emachnic
Copy link

emachnic commented Apr 6, 2020

🗣️ Foreword

Thank for taking the time to fill this feature request fully. Without it we may not be able to , and the issue may be closed without resolution.

:person_frowning: Problem Statement

This cookbook is a mess of custom libraries that are difficult to maintain.

❔ Possible Solution

We should rewrite the Consul cookbook to use Chef custom resources

⤴️ Describe alternatives you've considered

➕ Additional context

#551
#515

@johnbellone
Copy link
Contributor

I totally agree here, but unfortunately do not have time to do it myself.

@johnbellone
Copy link
Contributor

I think its fair to assume major version breaking changes. 🏛️🚚

@emachnic
Copy link
Author

@johnbellone I've actually been working on a rewrite for this for a major version release that will leverage custom resources. It's been a long process thus far and I've had to refocus but hopefully be able to pick it back up

@theanirudhvyas
Copy link

Instead of doing a complete rewrite in a single commit, I'll suggest that we gradually migrate individual features (like consulDefinition) one at a time in separate releases. This will help us ensure backward compatibility and also reduce the probability of bugs.
WDYT @johnbellone @emachnic ?

@emachnic
Copy link
Author

emachnic commented Aug 4, 2020

@theanirudhvyas that would normally be the best way but, after having gone through a lot of this cookbook, a complete rewrite is probably the most expeditious.

@ramereth ramereth added Table Flip This is a large scale change with fundamental usability changes Feature Request Enhancement to existing functionality or new functionality and removed Feature Request labels Oct 4, 2020
josqu4red added a commit to criteo-forks/consul-cookbook that referenced this issue Oct 22, 2021
Port resource to use Chef native framework, and drop deprecated poise dependencies.
Specs are not ported since none were added for newest resources (policy/role/etc).

Fixes sous-chefs#551 sous-chefs#555 sous-chefs#590
josqu4red added a commit to criteo-forks/consul-cookbook that referenced this issue Oct 25, 2021
Port resource to use Chef native framework, and drop deprecated poise dependencies.
Specs are not ported since none were added for newest resources (policy/role/etc).

Fixes sous-chefs#551 sous-chefs#555 sous-chefs#590
josqu4red added a commit to criteo-forks/consul-cookbook that referenced this issue Oct 25, 2021
Port resource to use Chef native framework, and drop deprecated poise dependencies.
Specs are not ported since none were added for newest resources (policy/role/etc).

Fixes sous-chefs#551 sous-chefs#555 sous-chefs#590
josqu4red added a commit to criteo-forks/consul-cookbook that referenced this issue Oct 25, 2021
Port resource to use Chef native framework, and drop deprecated poise dependencies.
Specs are not ported since none were added for newest resources (policy/role/etc).

Fixes sous-chefs#551 sous-chefs#555 sous-chefs#590
josqu4red added a commit to criteo-forks/consul-cookbook that referenced this issue Oct 25, 2021
Port resource to use Chef native framework, and drop deprecated poise dependencies.
Specs are not ported since none were added for newest resources (policy/role/etc).

Fixes sous-chefs#551 sous-chefs#555 sous-chefs#590
josqu4red added a commit to criteo-forks/consul-cookbook that referenced this issue Oct 25, 2021
Port resource to use Chef native framework, and drop deprecated poise dependencies.
Specs are not ported since none were added for newest resources (policy/role/etc).

Fixes sous-chefs#551 sous-chefs#555 sous-chefs#590
josqu4red added a commit to criteo-forks/consul-cookbook that referenced this issue Oct 25, 2021
Port resource to use Chef native framework, and drop deprecated poise dependencies.
Specs are not ported since none were added for newest resources (policy/role/etc).

Fixes sous-chefs#551 sous-chefs#555 sous-chefs#590
@ramereth ramereth linked a pull request Oct 25, 2021 that will close this issue
3 tasks
ramereth pushed a commit that referenced this issue Nov 22, 2021
* Rewrite resources to get rid of poise

Port resource to use Chef native framework, and drop deprecated poise dependencies.
Specs are not ported since none were added for newest resources (policy/role/etc).

Fixes #551 #555 #590

* Address review comments and remove poise remains

* Move helper methods around

* Clean DSL usage up, rename attribute

* Use archive_file to extract consul binary

* Reintroduce spec_helper

Even with no spec, seems to make CI fail.

* Update nssm constraint for Chef 17

* Change the way parameters are passed to resource in default recipe

Resource blocks seem to not yield objects anymore.

* Remove CircleCI and Danger config

Co-authored-by: Jonathan Amiez <j.amiez@criteo.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature Request Enhancement to existing functionality or new functionality Table Flip This is a large scale change with fundamental usability changes
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants