-
Notifications
You must be signed in to change notification settings - Fork 820
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
Flakiness: TestGameServerAllocationDeletionOnUnAllocate #1328
Flakiness: TestGameServerAllocationDeletionOnUnAllocate #1328
Conversation
Build Succeeded 👏 Build Id: 38d4ccc6-d19f-4f1f-89ba-1120c2416aab The following development artifacts have been built, and will exist for the next 30 days:
A preview of the website (the last 30 builds are retained): To install this version:
|
Build Succeeded 👏 Build Id: c7752cf5-faf8-449f-afae-eeb9056c45f1 The following development artifacts have been built, and will exist for the next 30 days:
A preview of the website (the last 30 builds are retained): To install this version:
|
Build Succeeded 👏 Build Id: 56c9a35f-385e-411e-8eb6-cb78fff75d40 The following development artifacts have been built, and will exist for the next 30 days:
A preview of the website (the last 30 builds are retained): To install this version:
|
Build Failed 😱 Build Id: 7e56763e-881f-42b6-9716-60df13350e64 To get permission to view the Cloud Build view, join the agones-discuss Google Group. |
Got bit by different flaky bug #1276 - running again. |
Build Succeeded 👏 Build Id: 91da735d-9b25-46c4-8b66-538aa59682ff The following development artifacts have been built, and will exist for the next 30 days:
A preview of the website (the last 30 builds are retained): To install this version:
|
Running a bunch of tests to make sure it's working, and if that passes, will cleanup and submit. |
Build Succeeded 👏 Build Id: d4871666-6079-4b34-b11e-0aeb86433870 The following development artifacts have been built, and will exist for the next 30 days:
A preview of the website (the last 30 builds are retained): To install this version:
|
Build Succeeded 👏 Build Id: 6b119ad8-3c68-4f60-b748-95aef181f5b6 The following development artifacts have been built, and will exist for the next 30 days:
A preview of the website (the last 30 builds are retained): To install this version:
|
c613c8c
to
6574c55
Compare
6574c55
to
569daf4
Compare
Build Failed 😱 Build Id: 3affb86f-ed11-49d7-93cf-01d915a01f02 To get permission to view the Cloud Build view, join the agones-discuss Google Group. |
Build Succeeded 👏 Build Id: 0226c81d-675e-4b13-bbea-65a8787eb1a9 The following development artifacts have been built, and will exist for the next 30 days:
A preview of the website (the last 30 builds are retained): To install this version:
|
test/e2e/controller/missing_test.go
Outdated
@@ -12,7 +12,7 @@ | |||
// See the License for the specific language governing permissions and | |||
// limitations under the License. | |||
|
|||
package e2e | |||
package controller |
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.
Can we rename the file name to something else? missing_test.go sounds like it includes the tests that were missing from test coverage :D
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.
crash_test.go
? That better?
Tests where the controller crashes for whatever reason? WDYT?
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.
Thanks, much better!
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.
SGTM! Will make the change.
test/e2e/controller/missing_test.go
Outdated
// getAgonesControllerPods returns all the Agones controller pods | ||
func getAgonesControllerPods() (*corev1.PodList, error) { | ||
opts := metav1.ListOptions{LabelSelector: labels.Set{"agones.dev/role": "controller"}.String()} | ||
return framework.KubeClient.CoreV1().Pods("agones-system").List(opts) | ||
} | ||
|
||
func defaultGameServer(namespace string) *agonesv1.GameServer { |
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.
Can we refactor this instead?
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.
Yeah I thought about centralising that too - moving it into framework maybe. Wasn't sure if 2 duplication was enough to warrant it. If you think so, I'm happy to do it.
I assume that is what you mean here?
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.
Correct, thanks for the clarification. framework.go should be a good place or you can add a new file such as testhelper and centralize the common helper methods there?
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.
Sounds good - I like the idea of testhelper.go or similar (I think we have a previous pattern for this somewhere, maybe, I can copy).
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: markmandel, pooneh-m The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Realised that Go test will compile and run tests in parallel per file, which means we could shutdown the controller while an allocation is in process - which means, it will fail completely, as the Kubernetes API cannot reach the controller's http endpoint for allocation. Split the controller tests into a separate package which could be run with -parallel=1 so that there can be no race condition. Also did some grouping of e2e test functionality to reduce code repetition. Closes googleforgames#1326
569daf4
to
b94b0f0
Compare
New changes are detected. LGTM label has been removed. |
Build Failed 😱 Build Id: ae943e9a-ac4b-4da6-965f-cff6d3f585c3 To get permission to view the Cloud Build view, join the agones-discuss Google Group. |
Build Succeeded 👏 Build Id: dd3a7cd5-cf28-47e3-9a06-64dcbb4a4a61 The following development artifacts have been built, and will exist for the next 30 days:
A preview of the website (the last 30 builds are retained): To install this version:
|
Realised that Go test will compile and run tests in parallel per file, which means we could shutdown the controller while an allocation is in process - which means, it will fail completely, as the Kubernetes API cannot reach the controller's http endpoint for allocation. Split the controller tests into a separate package which could be run with -parallel=1 so that there can be no race condition. Also did some grouping of e2e test functionality to reduce code repetition. Closes googleforgames#1326
Realised that Go test will compile and run tests in parallel per file,
which means we could shutdown the controller while an allocation is in
process - which means, it will fail completely, as the Kubernetes API
cannot reach the controller's http endpoint for allocation.
Split the controller tests into a separate package which could be run
with -parallel=1 so that there can be no race condition.
Also did some grouping of e2e test functionality to reduce code
repetition.
Closes #1326