-
Notifications
You must be signed in to change notification settings - Fork 4.6k
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
adding missing lifecycle to route table task #3616
adding missing lifecycle to route table task #3616
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good spot, LGTM!
The CI tests seem a bit flaky today, if you restart it should pass cleanly. |
Thanks @KashifSaadat - it is because I am doing #3619 - I noticed the problem, but that is how I found it :) |
Fixes #3529 |
/lgtm |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: justinsb The full list of commands accepted by this bot can be found here.
Needs approval from an approver in each of these OWNERS Files:
You can indicate your approval by writing |
/test all [submit-queue is verifying that this PR is safe to merge] |
Automatic merge from submit-queue. |
Automatic merge from submit-queue. Phase integration tests This depends on #3616 in order to pass. Please only review chrislovecnm@eeafe64 ## Use Cases This improvement of phases and lifecycles will allow a user to: 1. allows users to have complex networking patterns that kops does not support out of the box: no IG, custom nat gw, vpn, etc 2. allows users to just run a single phase w/o dependencies 3. allows users to output tf for certain sections of phase 4. allow users to have validation fail, but still run kops ## Design ### Phase / Lifecycle Improvement Break down lifecycles and corresponding phases into: 1. IAM - already exists 1. Network - already exists, but need to remove components 1. Security Groups - new, pretty self explanitory 1. Cluster - exists already but has too much in it 1. ELB - new will include ELBs and DNS, if required The implementation will consist of new phases and lifecycles ### Capability for kops to fail validation but run Currently, if kops fails validation in a lifecycle it will not run. Along with these lifecycles, I am recommending a mode where a user can allow for validation to fail. I would like to introduce into kops a cli or API mapping that allows users to fail particular phase validation. We can start with the cli options, but with a kops server, I think we will need it in the API. An idea ``` kops update cluster --phase cluster --allow-validate-fail=iam,network ``` This would run update cluster and allow the IAM and network validation to fail. But security groups validation would need to pass. ## This PR - test cases This is creating the tests for the reworking of phases, and the work allowing failed validation. The cluster test, for instance, will not pass, until we allow for kops phase validation to fail, but then still allow `kops update` to run. The TF files are pretty solid for the tests, once the work has been completed. I filed a couple of other issues in regards to no DNS for the bastion exists, and the outputs are also clashing with each other if you have TF broken into the Phases.
We missed one