-
Notifications
You must be signed in to change notification settings - Fork 171
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
new cat for readiness health check feature - linux & windows #915
Conversation
2fcaee8
to
74e6ac7
Compare
[#185045027](https://www.pivotaltracker.com/story/show/185045027) Signed-off-by: Geoff Franks <gfranks@vmware.com> Signed-off-by: Amelia Downs <adowns@vmware.com>
74e6ac7
to
906325d
Compare
Signed-off-by: Amelia Downs <adowns@vmware.com>
Signed-off-by: Geoff Franks <gfranks@vmware.com>
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.
I've left a bunch of comments for your review. Generally it looks good.
🤔 I do wonder whether there's a way we can split up the tests to reduce the time this adds to CATs. I'm thinking that maybe the test could be split in two:
- Push an app that will fail the readiness health check (i.e. push with
--no-start
and set an env var that will cause readiness to health check to fail at first), then reactivate it with the proxy app c2c and see everything work. - Push an app that will pass the readiness health check, then deactivate the readiness health check with the endpoint, and see it removed from the routing chain.
assets/nora/Nora.Tests/obj/Release/Nora.Tests.csproj.FileListAbsolute.txt
Outdated
Show resolved
Hide resolved
Signed-off-by: Geoff Franks <gfranks@vmware.com>
Signed-off-by: Amelia Downs <adowns@vmware.com>
Signed-off-by: Geoff Franks <gfranks@vmware.com>
Feedback has been addressed/commented on. I looked into splitting them out into multiple tests to parallelize. Unfortunately we don't have any feedback from an app starting up that it has failed the initial readiness checks, other than absence of a message. Short of waiting for a while, we can't differentiate "readiness hasn't checked yet" and "readiness ran and failed." This makes the second test run slightly longer than when a single test runs both cases. |
- convert various assertions to use gbytes.Say() - remove fixed fixmes/todos - make logic between windows + linux identical - using SSH to recover for time reduction + simplicity - put SSH recovery steps in a condition based on test config enabling app SSH - reduce max wait times where possible Signed-off-by: Amelia Downs <adowns@vmware.com> Signed-off-by: Geoff Franks <gfranks@vmware.com> Signed-off-by: Amelia Downs <adowns@vmware.com>
662aafc
to
4281256
Compare
@geofffranks and I chatted about this and discovered that he accidentally ran his comparison with no parallelization, as 👉 I'm waiting for that comparison to be re-ran with parallelization before I review this PR again. 👈 |
I re-ran with The main difference is that when split, the un-ready app has to wait in a Consistently() for 25s to ensure the app never becomes ready, which the original test doesn't have. Going to leave this as a single test. |
assets/nora/Nora/Properties/PublishProfiles/FolderProfile.pubxml
Outdated
Show resolved
Hide resolved
assets/nora/Nora/Properties/PublishProfiles/FolderProfile.pubxml.user
Outdated
Show resolved
Hide resolved
I'm still seeing the local path Can you all please search for the term Edit:
|
Signed-off-by: Geoff Franks <gfranks@vmware.com>
Aaaah shoot, can't believe I didn't catch this earlier 🤦 The base branch for this PR needs to be |
Signed-off-by: Geoff Franks <gfranks@vmware.com>
9a19a13
to
2245a36
Compare
Are you submitting this PR against the develop branch?
✅ Yes.
What is this change about?
This PR adds a new CAT for readiness health checks, a feature that is coming out with new versions of CAPI and Diego soon.
Please provide contextual information.
What version of cf-deployment have you run this cf-acceptance-test change against?
⛔️⛔️⛔️TBD⛔️⛔️⛔️
Please check all that apply for this PR:
Did you update the README as appropriate for this change?
If you are introducing a new acceptance test, what is your rationale for including it CATs rather than your own acceptance test suite?
We are adding a major new feature to CF. This CAT will test one basic workflow for that feature.
How many more (or fewer) seconds of runtime will this change introduce to CATs?
220-ish seconds. Sorry :(
What is the level of urgency for publishing this change?
Tag your pair, your PM, and/or team!