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

Add Node.js SDK and example - closes #538 #581

Merged
merged 2 commits into from
Mar 6, 2019

Conversation

steven-supersolid
Copy link
Collaborator

This includes

  • Generated SDK pb files
  • SDK wrapper
  • Tests
  • Example project that uses the SDK

The example project was tested using local SDK server

Site documentation has not been added yet

@googlebot
Copy link

Thanks for your pull request. It looks like this may be your first contribution to a Google open source project (if not, look below for help). Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

📝 Please visit https://cla.developers.google.com/ to sign.

Once you've signed (or fixed any issues), please reply here (e.g. I signed it!) and we'll verify it.


What to do if you already signed the CLA

Individual signers
Corporate signers

@steven-supersolid
Copy link
Collaborator Author

I signed it!

@googlebot
Copy link

CLAs look good, thanks!

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: cef37619-7c5e-4c29-a216-9befbe3935e3

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:

  • git fetch https://github.com/GoogleCloudPlatform/agones.git pull/581/head:pr_581 && git checkout pr_581
  • helm install install/helm/agones --namespace agones-system --name agones --set agones.image.tag=0.8.0-ad87f02

sdks/nodejs/README.md Outdated Show resolved Hide resolved
@markmandel markmandel added kind/feature New features for Agones area/user-experience Pertaining to developers trying to use Agones, e.g. SDK, installation, etc labels Feb 12, 2019
@markmandel markmandel added the feature-freeze-do-not-merge Only eligible to be merged once we are out of feature freeze (next full release) label Feb 13, 2019
Copy link
Collaborator

@markmandel markmandel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good (I assume it works 😄) would like to see it integrated into our build tooling though.

sdks/nodejs/README.md Outdated Show resolved Hide resolved
sdks/nodejs/package.json Show resolved Hide resolved
sdks/nodejs/spec/agonesSDK.spec.js Show resolved Hide resolved
sdks/nodejs/src/agonesSDK.js Outdated Show resolved Hide resolved
sdks/nodejs/src/agonesSDK.js Show resolved Hide resolved
@steven-supersolid
Copy link
Collaborator Author

steven-supersolid commented Feb 14, 2019

Regarding it working, it works against the local dev server sdk-server.windows.amd64 --local but I've not tried it against our existing project so that would be worth doing. We could also mark as experimental until it has been battle tested. Will take a look at the build tooling too and see if I can figure out how to integrate

@markmandel
Copy link
Collaborator

Added some notes on build tooling - first step would be generation -- then probably adding the test suite to the make test command. If you have questions, pop into #development.

We will also want to add some docs 😄 to the website as well 📜

But this looks like a good first start!

@cyriltovena
Copy link
Collaborator

This looks good I'll help you get that into our Makefile soon.

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: 1280cdb3-446e-4146-be80-c8090e46aa24

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:

  • git fetch https://github.com/GoogleCloudPlatform/agones.git pull/581/head:pr_581 && git checkout pr_581
  • helm install install/helm/agones --namespace agones-system --name agones --set agones.image.tag=0.8.0-bd5a3d8

@markmandel markmandel removed feature-freeze-do-not-merge Only eligible to be merged once we are out of feature freeze (next full release) labels Feb 21, 2019
@markmandel
Copy link
Collaborator

Just touching base - I'm guessing the things that are outstanding are (a) documentation and (b) integration with our build system?

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: 838427a7-5832-4894-b174-e64875fe7e28

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:

  • git fetch https://github.com/GoogleCloudPlatform/agones.git pull/581/head:pr_581 && git checkout pr_581
  • helm install install/helm/agones --namespace agones-system --name agones --set agones.image.tag=0.8.0-162545f

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: 8e1d8686-c622-42f8-a29c-005458209c89

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:

  • git fetch https://github.com/GoogleCloudPlatform/agones.git pull/581/head:pr_581 && git checkout pr_581
  • helm install install/helm/agones --namespace agones-system --name agones --set agones.image.tag=0.8.0-909b3b7

@steven-supersolid
Copy link
Collaborator Author

Getting closer now :) I've added some documentation and also had a go at updating make test but not sure how to proceed on this so not committed.

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: 5a6128e5-ec31-454a-a5bc-85ec7e3ad816

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:

  • git fetch https://github.com/GoogleCloudPlatform/agones.git pull/581/head:pr_581 && git checkout pr_581
  • helm install install/helm/agones --namespace agones-system --name agones --set agones.image.tag=0.8.0-b967d76

Copy link
Collaborator

@markmandel markmandel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think I only found one thing to add - and that's so we can automate the tests.

sdks/nodejs/package.json Show resolved Hide resolved
sdks/nodejs/spec/agonesSDK.spec.js Show resolved Hide resolved
@agones-bot
Copy link
Collaborator

Build Failed 😱

Build Id: 393aae42-c65c-41c0-9050-33c426517dbf

To get permission to view the Cloud Build view, join the agones-discuss Google Group.

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: d2015911-74b4-4980-9575-1d9a1edf7387

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:

  • git fetch https://github.com/GoogleCloudPlatform/agones.git pull/581/head:pr_581 && git checkout pr_581
  • helm install install/helm/agones --namespace agones-system --name agones --set agones.image.tag=0.8.0-32d01d5

@markmandel
Copy link
Collaborator

This looks great to me! @Kuqd anything you wanted to touch on? (Since I know you were looking at this closely). Otherwise, I say this is good to merge.

@markmandel
Copy link
Collaborator

@steven-supersolid - this will need to be squashed into a single commit please. But otherwise, I think we are good to merge this!

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: 860e59be-bb1d-4430-8fe1-828f2c7c1ccb

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:

  • git fetch https://github.com/GoogleCloudPlatform/agones.git pull/581/head:pr_581 && git checkout pr_581
  • helm install install/helm/agones --namespace agones-system --name agones --set agones.image.tag=0.8.0-d19a1e4

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: b160c943-4829-4215-ba2a-f3b6b2eec9d1

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:

  • git fetch https://github.com/GoogleCloudPlatform/agones.git pull/581/head:pr_581 && git checkout pr_581
  • helm install install/helm/agones --namespace agones-system --name agones --set agones.image.tag=0.8.0-887b8d6

Copy link
Collaborator

@markmandel markmandel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚒

Awesome!

@agones-bot
Copy link
Collaborator

Build Failed 😱

Build Id: 40af02c3-d584-4dd0-a660-406f718e9a25

To get permission to view the Cloud Build view, join the agones-discuss Google Group.

let result = await agonesSDK.getGameServer();
```

To get [updates on the backing GameServer]({{< relref "_index.md#watchgameserverfunctiongameserver" >}}) as they happen, call `watchGameServer(callback)`. The callback will be called with a parameter matching the result of `getGameServer()`.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
To get [updates on the backing GameServer]({{< relref "_index.md#watchgameserverfunctiongameserver" >}}) as they happen, call `watchGameServer(callback)`. The callback will be called with a parameter matching the result of `getGameServer()`.
To get [updates on the backing GameServer]({{< relref "_index.md#watchgameserver-function-gameserver" >}}) as they happen, call `watchGameServer(callback)`. The callback will be called with a parameter matching the result of `getGameServer()`.

That will fix the test failure, since the anchor is now inline with master.

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: 494afb75-d54a-4949-8f7c-d0681fad4cba

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:

  • git fetch https://github.com/GoogleCloudPlatform/agones.git pull/581/head:pr_581 && git checkout pr_581
  • helm install install/helm/agones --namespace agones-system --name agones --set agones.image.tag=0.9.0-8dd6e59

@markmandel markmandel added this to the 0.9.0 milestone Mar 6, 2019
@markmandel markmandel merged commit 2344edb into googleforgames:master Mar 6, 2019
@steven-supersolid steven-supersolid deleted the nodejs branch July 27, 2019 10:15
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/feature New features for Agones
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants