Skip to content
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

Local SDK Server should update internal GameServer on Ready(), Allocate() etc. #958

Closed
markmandel opened this issue Jul 29, 2019 · 10 comments
Assignees
Labels
area/user-experience Pertaining to developers trying to use Agones, e.g. SDK, installation, etc kind/design Proposal discussing new features / fixes and how they should be implemented kind/feature New features for Agones
Milestone

Comments

@markmandel
Copy link
Member

Is your feature request related to a problem? Please describe.

When using the Local SDK Server, Ready(), Allocate(), Shutdown(), Reserve(seconds), do not change the state of the local GameServer, and do not fire watch actions.

It would be really nice if they did - especially since SetLabel(...) and SetAnnotation(...) do do this - so there is precedent.

Describe the solution you'd like

Ready(), Allocate(), Shutdown(), Reserve(seconds) should update the underlying GameServer record as appropriate for their logic, and fire WatchGameServer events as well that can be intercepted by the game server SDK.

Describe alternatives you've considered
Leaving it as is - but that does leave an inconsistent user experience - and one that I believe is less smooth.

Users can edit a YAML file directly to make the same thing happen, but its far less intuitive and smooth an experience.

Additional context

Code

@markmandel markmandel added kind/feature New features for Agones kind/design Proposal discussing new features / fixes and how they should be implemented area/user-experience Pertaining to developers trying to use Agones, e.g. SDK, installation, etc labels Jul 29, 2019
@aLekSer
Copy link
Collaborator

aLekSer commented Jul 29, 2019

You can assign this to me, that's really frustrating fo developers who want to test their code versus local sidecar.

@markmandel
Copy link
Member Author

Assigned!

aLekSer added a commit to aLekSer/agones that referenced this issue Aug 5, 2019
Update the state of local SDK GS according to calls which were made
by SDK client. Local sidecar now keeps the current state.
For googleforgames#958.
aLekSer added a commit to aLekSer/agones that referenced this issue Aug 6, 2019
Update the state of local SDK GS according to calls which were made
by SDK client. Local sidecar now keeps the current state.
For googleforgames#958.
aLekSer added a commit to aLekSer/agones that referenced this issue Aug 6, 2019
Update the state of local SDK GS according to calls which were made
by SDK client. Local sidecar now keeps the current state.
For googleforgames#958.
aLekSer added a commit to aLekSer/agones that referenced this issue Aug 6, 2019
Update the state of local SDK GS according to calls which were made
by SDK client. Local sidecar now keeps the current state.
For googleforgames#958.
aLekSer added a commit to aLekSer/agones that referenced this issue Aug 15, 2019
Update the state of local SDK GS according to calls which were made
by SDK client. Local sidecar now keeps the current state.
For googleforgames#958.
aLekSer added a commit to aLekSer/agones that referenced this issue Aug 15, 2019
Update the state of local SDK GS according to calls which were made
by SDK client. Local sidecar now keeps the current state.
For googleforgames#958.
aLekSer added a commit to aLekSer/agones that referenced this issue Aug 15, 2019
Update the state of local SDK GS according to calls which were made
by SDK client. Local sidecar now keeps the current state.
For googleforgames#958.
markmandel pushed a commit that referenced this issue Aug 15, 2019
Update the state of local SDK GS according to calls which were made
by SDK client. Local sidecar now keeps the current state.
For #958.
@markmandel
Copy link
Member Author

@aLekSer can we close this ticket now?

@aLekSer
Copy link
Collaborator

aLekSer commented Aug 23, 2019

Yes, I think we can close this as long as we don't need to implement Unhealthy state logic for local GameServer.

@markmandel
Copy link
Member Author

Oh that's an interesting question. I would say - since that isn't covered by this ticket, we can close this ticket. If we have users that want this functionality as part of the local SDK, we can include it there as well.

How does that sound?

That also being said - should we add documentation to: https://agones.dev/site/docs/guides/client-sdks/local/ ? I'm thinking probably. WDYT?

@aLekSer
Copy link
Collaborator

aLekSer commented Aug 23, 2019

If we have users that want this functionality as part of the local SDK, we can include it there as well.

For health check it could be helpful and we can turn it off (so could support both options).

That also being said - should we add documentation to: https://agones.dev/site/docs/guides/client-sdks/local/ ?

Definitely yes, I will explain current behavior of Local SDK in upcoming PR.

@markmandel
Copy link
Member Author

All of this sounds good! Okay, let's not close this ticket then 👍

@aLekSer
Copy link
Collaborator

aLekSer commented Oct 29, 2019

Returning back to this ticket, will add documentation to https://agones.dev/site/docs/guides/client-sdks/local/ .

@markmandel
Copy link
Member Author

I assume we can close this now?

@aLekSer
Copy link
Collaborator

aLekSer commented Oct 30, 2019

Yes, now it is done

@markmandel markmandel added this to the 1.2.0 milestone Nov 4, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/user-experience Pertaining to developers trying to use Agones, e.g. SDK, installation, etc kind/design Proposal discussing new features / fixes and how they should be implemented kind/feature New features for Agones
Projects
None yet
Development

No branches or pull requests

2 participants