Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
A common pattern in Tyr is inheriting from a parent Server type and then in the
configure
method:super(Type).configure()
However, this means that when provisioning e.g. a
MongoDataNode
you end up setting the Chef attributes 4 times, resolving the security groups twice, and resolving the IAM policies thrice. That's a lot of wasted time.This moves
to a method called
resolve_dependencies
which should be invoked once before invokinglaunch
and after every invocation ofconfigure
has been completed.I've made the necessary adjustments to
autorun
inServer
andprovision
in theIIS
andNginx
clusters to invoke it.Essentially this significantly reduces the time spent between
establish_logger
andlaunch
and removes a number of API requests for information that we already have.