Validate and modify agent commands #244
Merged
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.
Description
This generalizes the mechanism of the pod visitor used by the agent controller to generate a command for each pod.
This generalization requires the controller to use a list of pods as its target (instead of a list of pod names) and pass it to the visitor. The visitor was also modified to allow returning an error if it cannot generate a command for the target.
These two changes allow the visitor to check conditions in the target (for example, that it exposes the target port) and to customize the command to the pod.
Fixes #217
Checklist:
make lint
) and all checks pass.make test
) and all tests pass.make e2e-xxx
foragent
,disruptors
,kubernetes
orcluster
related changes)