diff --git a/CHANGELOG.md b/CHANGELOG.md index e115fb292d..40928ff848 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,41 @@ # Changelog +## [v1.1.0](https://github.com/googleforgames/agones/tree/v1.1.0) (2019-10-29) + +[Full Changelog](https://github.com/googleforgames/agones/compare/v1.1.0-rc...v1.1.0) + +**Implemented enhancements:** + +- Document agones-allocator and multi-cluster allocation [\#1155](https://github.com/googleforgames/agones/pull/1155) ([pooneh-m](https://github.com/pooneh-m)) +- Add SDK.GameServer\(\) to Matchmaking Registration Diagram [\#1149](https://github.com/googleforgames/agones/pull/1149) ([markmandel](https://github.com/markmandel)) +- Update the instructions for installing a GKE cluster with terraform to disable automatic node upgrades [\#1141](https://github.com/googleforgames/agones/pull/1141) ([roberthbailey](https://github.com/roberthbailey)) + +**Fixed bugs:** + +- TestMultiClusterAllocationOnLocalCluster is flakey [\#1114](https://github.com/googleforgames/agones/issues/1114) +- TestFleetRollingUpdate/Use\_fleet\_Patch\_false\_10% test is flaky [\#1049](https://github.com/googleforgames/agones/issues/1049) +- Broke Allocator Status in Grafana Dashboard [\#1158](https://github.com/googleforgames/agones/pull/1158) ([markmandel](https://github.com/markmandel)) + +**Closed issues:** + +- Release 1.1.0-rc [\#1133](https://github.com/googleforgames/agones/issues/1133) +- Rebuild example images for the 1.1 release [\#1126](https://github.com/googleforgames/agones/issues/1126) +- Allow issues to be assigned to collaborators [\#1120](https://github.com/googleforgames/agones/issues/1120) + +**Merged pull requests:** + +- Update "Local Development" documents [\#1159](https://github.com/googleforgames/agones/pull/1159) ([aLekSer](https://github.com/aLekSer)) +- Cloud Build: Add --output-sync=target to run-sdk-conformance-tests [\#1157](https://github.com/googleforgames/agones/pull/1157) ([markmandel](https://github.com/markmandel)) +- Update the images for all examples to use the 1.1 SDKs [\#1153](https://github.com/googleforgames/agones/pull/1153) ([roberthbailey](https://github.com/roberthbailey)) +- Replace `\>` quoted text with alert shortcodes [\#1152](https://github.com/googleforgames/agones/pull/1152) ([markmandel](https://github.com/markmandel)) +- Fixed a typo [\#1147](https://github.com/googleforgames/agones/pull/1147) ([pooneh-m](https://github.com/pooneh-m)) +- Disable Auto Upgrade for Deployment Manager [\#1143](https://github.com/googleforgames/agones/pull/1143) ([aLekSer](https://github.com/aLekSer)) +- Update the instructions for manually creating a GKE cluster to disable automatic node upgrades [\#1140](https://github.com/googleforgames/agones/pull/1140) ([roberthbailey](https://github.com/roberthbailey)) +- Replace tabs with spaces in the svg file so that it renders more nicely. [\#1139](https://github.com/googleforgames/agones/pull/1139) ([roberthbailey](https://github.com/roberthbailey)) +- Remove the svg version of the old logo. [\#1138](https://github.com/googleforgames/agones/pull/1138) ([roberthbailey](https://github.com/roberthbailey)) +- CI: Update Rust SDK conformance test cache version [\#1135](https://github.com/googleforgames/agones/pull/1135) ([aLekSer](https://github.com/aLekSer)) +- Add owners files for the nodejs code [\#1119](https://github.com/googleforgames/agones/pull/1119) ([roberthbailey](https://github.com/roberthbailey)) + ## [v1.1.0-rc](https://github.com/googleforgames/agones/tree/v1.1.0-rc) (2019-10-22) [Full Changelog](https://github.com/googleforgames/agones/compare/v1.0.0...v1.1.0-rc) @@ -31,6 +67,7 @@ - Fixes, more e2e tests and logging for multi-cluster allocation [\#1077](https://github.com/googleforgames/agones/pull/1077) ([pooneh-m](https://github.com/pooneh-m)) - Longer blog post for Agones 1.0.0 announcement [\#1076](https://github.com/googleforgames/agones/pull/1076) ([markmandel](https://github.com/markmandel)) - Add a delay flag to the sdkserver [\#1070](https://github.com/googleforgames/agones/pull/1070) ([roberthbailey](https://github.com/roberthbailey)) +- Add Yager Logo to companies using Agones [\#1057](https://github.com/googleforgames/agones/pull/1057) ([topochan](https://github.com/topochan)) - Adding namespace for multi-cluster allocation policy [\#1052](https://github.com/googleforgames/agones/pull/1052) ([pooneh-m](https://github.com/pooneh-m)) - Logging Agones version and port on the startup. [\#1048](https://github.com/googleforgames/agones/pull/1048) ([pooneh-m](https://github.com/pooneh-m)) - Adding make file to generate allocation go from proto [\#1041](https://github.com/googleforgames/agones/pull/1041) ([pooneh-m](https://github.com/pooneh-m)) @@ -64,6 +101,7 @@ **Merged pull requests:** +- Release 1.1.0-rc [\#1134](https://github.com/googleforgames/agones/pull/1134) ([markmandel](https://github.com/markmandel)) - Style fixes. [\#1129](https://github.com/googleforgames/agones/pull/1129) ([roberthbailey](https://github.com/roberthbailey)) - Drop the Extension API Server reference from agones-allocator [\#1124](https://github.com/googleforgames/agones/pull/1124) ([pooneh-m](https://github.com/pooneh-m)) - Faster subsequent Rust SDK conformance builds [\#1122](https://github.com/googleforgames/agones/pull/1122) ([aLekSer](https://github.com/aLekSer)) @@ -83,7 +121,6 @@ - Add func to wait for fleet condition without Fatalf [\#1065](https://github.com/googleforgames/agones/pull/1065) ([aLekSer](https://github.com/aLekSer)) - Small refactoring of the simple udp server. [\#1062](https://github.com/googleforgames/agones/pull/1062) ([roberthbailey](https://github.com/roberthbailey)) - Preparation for 1.1.0 [\#1060](https://github.com/googleforgames/agones/pull/1060) ([markmandel](https://github.com/markmandel)) -- Add Yager Logo to companies using Agones [\#1057](https://github.com/googleforgames/agones/pull/1057) ([topochan](https://github.com/topochan)) - Update golangci-lint to 1.18, add bodyclose check [\#1051](https://github.com/googleforgames/agones/pull/1051) ([aLekSer](https://github.com/aLekSer)) - E2E test for Unhealthy GameServer on process crash [\#1038](https://github.com/googleforgames/agones/pull/1038) ([markmandel](https://github.com/markmandel)) - Build examples make target [\#1019](https://github.com/googleforgames/agones/pull/1019) ([aLekSer](https://github.com/aLekSer)) diff --git a/install/helm/agones/Chart.yaml b/install/helm/agones/Chart.yaml index 9aff513ea6..c81d86b326 100644 --- a/install/helm/agones/Chart.yaml +++ b/install/helm/agones/Chart.yaml @@ -15,8 +15,8 @@ # Declare variables to be passed into your templates. apiVersion: v1 -appVersion: "1.1.0-rc" -version: 1.1.0-rc +appVersion: "1.1.0" +version: 1.1.0 name: agones description: a library for hosting, running and scaling dedicated game servers on Kubernetes. keywords: diff --git a/install/helm/agones/values.yaml b/install/helm/agones/values.yaml index 4315b5fca1..c58475ae29 100644 --- a/install/helm/agones/values.yaml +++ b/install/helm/agones/values.yaml @@ -124,7 +124,7 @@ agones: generateTLS: true image: registry: gcr.io/agones-images - tag: 1.1.0-rc + tag: 1.1.0 controller: name: agones-controller pullPolicy: IfNotPresent diff --git a/install/yaml/install.yaml b/install/yaml/install.yaml index 42889516ba..c528c19ee9 100644 --- a/install/yaml/install.yaml +++ b/install/yaml/install.yaml @@ -20,7 +20,7 @@ metadata: namespace: agones-system labels: app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller --- @@ -31,7 +31,7 @@ metadata: namespace: agones-system labels: app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller rules: @@ -76,7 +76,7 @@ metadata: namespace: agones-system labels: app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller subjects: @@ -140,7 +140,7 @@ metadata: namespace: default labels: app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller --- @@ -151,7 +151,7 @@ metadata: namespace: agones-system labels: app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller rules: @@ -169,7 +169,7 @@ metadata: namespace: default labels: app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller subjects: @@ -205,7 +205,7 @@ metadata: labels: component: crd app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller spec: @@ -434,7 +434,7 @@ metadata: labels: component: crd app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller spec: @@ -518,7 +518,7 @@ metadata: labels: component: crd app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller spec: @@ -712,7 +712,7 @@ metadata: controller-tools.k8s.io: "1.0" component: crd app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller name: gameserverallocationpolicies.multicluster.agones.dev @@ -798,7 +798,7 @@ metadata: labels: component: crd app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller spec: @@ -1022,7 +1022,7 @@ metadata: labels: agones.dev/role: controller app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller spec: @@ -1058,7 +1058,7 @@ metadata: labels: component: allocator app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller spec: @@ -1129,7 +1129,7 @@ spec: secretName: allocator-client-ca containers: - name: agones-allocator - image: "gcr.io/agones-images/agones-allocator:1.1.0-rc" + image: "gcr.io/agones-images/agones-allocator:1.1.0" imagePullPolicy: IfNotPresent livenessProbe: httpGet: @@ -1170,7 +1170,7 @@ metadata: namespace: agones-system labels: app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller rules: @@ -1202,7 +1202,7 @@ metadata: namespace: agones-system labels: app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller @@ -1215,7 +1215,7 @@ metadata: namespace: agones-system labels: app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller subjects: @@ -1236,7 +1236,7 @@ metadata: namespace: agones-system labels: app: agones-manual - chart: "agones-1.1.0-rc" + chart: "agones-1.1.0" release: "agones-manual" heritage: "Tiller" data: @@ -1253,7 +1253,7 @@ metadata: namespace: agones-system labels: app: agones-manual - chart: "agones-1.1.0-rc" + chart: "agones-1.1.0" release: "agones-manual" heritage: "Tiller" data: @@ -1269,7 +1269,7 @@ metadata: namespace: agones-system labels: app: agones-manual - chart: "agones-1.1.0-rc" + chart: "agones-1.1.0" release: "agones-manual" heritage: "Tiller" data: @@ -1299,7 +1299,7 @@ metadata: labels: component: controller app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller spec: @@ -1344,7 +1344,7 @@ spec: serviceAccountName: agones-controller containers: - name: agones-controller - image: "gcr.io/agones-images/agones-controller:1.1.0-rc" + image: "gcr.io/agones-images/agones-controller:1.1.0" imagePullPolicy: IfNotPresent env: # minimum port that can be exposed to GameServer traffic @@ -1354,7 +1354,7 @@ spec: - name: MAX_PORT value: "8000" - name: SIDECAR_IMAGE # overwrite the GameServer sidecar image that is used - value: "gcr.io/agones-images/agones-sdk:1.1.0-rc" + value: "gcr.io/agones-images/agones-sdk:1.1.0" - name: ALWAYS_PULL_SIDECAR # set the sidecar imagePullPolicy to Always value: "false" - name: SIDECAR_CPU_REQUEST @@ -1424,7 +1424,7 @@ metadata: labels: component: ping app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller spec: @@ -1461,7 +1461,7 @@ spec: priorityClassName: agones-system containers: - name: agones-ping - image: "gcr.io/agones-images/agones-ping:1.1.0-rc" + image: "gcr.io/agones-images/agones-ping:1.1.0" imagePullPolicy: IfNotPresent livenessProbe: httpGet: @@ -1485,7 +1485,7 @@ metadata: labels: component: ping app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller spec: @@ -1506,7 +1506,7 @@ metadata: labels: component: ping app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller spec: @@ -1541,7 +1541,7 @@ metadata: labels: component: controller app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller spec: @@ -1561,7 +1561,7 @@ metadata: labels: component: controller app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller webhooks: @@ -1611,7 +1611,7 @@ metadata: labels: component: controller app: agones - chart: agones-1.1.0-rc + chart: agones-1.1.0 release: agones-manual heritage: Tiller webhooks: @@ -1641,7 +1641,7 @@ metadata: namespace: agones-system labels: app: agones-manual - chart: "agones-1.1.0-rc" + chart: "agones-1.1.0" release: "agones-manual" heritage: "Tiller" type: Opaque diff --git a/site/config.toml b/site/config.toml index 39f6ec5a5c..196d1bd56b 100644 --- a/site/config.toml +++ b/site/config.toml @@ -86,9 +86,9 @@ github_repo = "https://github.com/googleforgames/agones" gcs_engine_id = "002375903941309441958:rceiko9wfuw" # current release branch - could be rc -release_branch = "release-1.0.0" +release_branch = "release-1.1.0" # the main version. Never is rc. -release_version = "1.0.0" +release_version = "1.1.0" # example tag example_image_tag = "gcr.io/agones-images/udp-server:0.17" diff --git a/site/content/en/blog/releases/1.0.0.md b/site/content/en/blog/releases/1.0.0.md index a97cad9683..fc2ab4a4a1 100755 --- a/site/content/en/blog/releases/1.0.0.md +++ b/site/content/en/blog/releases/1.0.0.md @@ -11,7 +11,7 @@ stable, and all endeavours will be made to maintain its backward compatibility. Congratulations to everyone involved for code, bug reports, feedback, usage and more. -Check the README for details on features, installation and usage. +Check the README for details on features, installation and usage. **Implemented enhancements:** @@ -26,7 +26,7 @@ Check the CHANGELOG for more details on changes. +See CHANGELOG for more details on changes. Images available with this release: @@ -42,6 +42,6 @@ Images available with this release: Helm chart available with this release: -- helm install agones/agones --version 1.0.0 +- helm install agones/agones --version 1.0.0 > Make sure to add our stable helm repository using `helm repo add agones https://agones.dev/chart/stable` diff --git a/site/content/en/blog/releases/1.1.0-rc.md b/site/content/en/blog/releases/1.1.0-rc.md index 1d34ac2e21..5a31f9d7ab 100755 --- a/site/content/en/blog/releases/1.1.0-rc.md +++ b/site/content/en/blog/releases/1.1.0-rc.md @@ -6,7 +6,7 @@ date: "2019-10-21" This is the 1.1.0-rc release of Agones. -Check the README for details on features, installation and usage. +Check the README for details on features, installation and usage. **Breaking changes:** @@ -47,7 +47,7 @@ Check the CHANGELOG for more details on changes. +See CHANGELOG for more details on changes. Images available with this release: @@ -64,6 +64,6 @@ Images available with this release: Helm chart available with this release: -- helm install agones/agones --version 1.1.0-rc +- helm install agones/agones --version 1.1.0-rc > Make sure to add our stable helm repository using `helm repo add agones https://agones.dev/chart/stable` diff --git a/site/content/en/blog/releases/1.1.0.md b/site/content/en/blog/releases/1.1.0.md new file mode 100755 index 0000000000..246abbbe41 --- /dev/null +++ b/site/content/en/blog/releases/1.1.0.md @@ -0,0 +1,75 @@ +--- +title: "1.1.0 - Bug Fixes, Documentation and more" +linkTitle: "1.1.0" +date: "2019-10-28" +--- + +This is the 1.1.0 release of Agones. + +Starting with the 1.1.0 release of Agones, the ports to which the sdkserver sidecar binds are now configurable. To take advantage of this feature, your game will need to use an updated SDK from the 1.1.0 release. + +The default ports that the sdkserver binds to are ephemeral and can cause the [sidecar to intermittently fail to start](https://github.com/googleforgames/agones/issues/851). For backwards compatibility with game servers compiled against the 1.0.0 SDKs, the default ports remain unchanged in this release but they will be changed in the next release of Agones to fix this bug. We strongly recommend that as part of upgrading to the 1.1.0 release of Agones you also update your game server containers to include the 1.1.0 SDK along with your game. + +Check the README for details on features, installation and usage. + +**Breaking changes:** + +- Change the API for allocator to allocation.proto [\#1123](https://github.com/googleforgames/agones/pull/1123) ([pooneh-m](https://github.com/pooneh-m)) + +**Implemented enhancements:** + +- Document agones-allocator and multi-cluster allocation [\#1155](https://github.com/googleforgames/agones/pull/1155) ([pooneh-m](https://github.com/pooneh-m)) +- Add SDK.GameServer\(\) to Matchmaking Registration Diagram [\#1149](https://github.com/googleforgames/agones/pull/1149) ([markmandel](https://github.com/markmandel)) +- Update the instructions for installing a GKE cluster with terraform to disable automatic node upgrades [\#1141](https://github.com/googleforgames/agones/pull/1141) ([roberthbailey](https://github.com/roberthbailey)) +- Allocator service should log the Agones version [\#1042](https://github.com/googleforgames/agones/issues/1042) +- Allocation policy needs to expose namespace of the targeted cluster [\#980](https://github.com/googleforgames/agones/issues/980) +- Configurable log level for agones sidecar [\#971](https://github.com/googleforgames/agones/issues/971) +- Add dynamic configuration of the sidecar http port to the unreal sdk. [\#1131](https://github.com/googleforgames/agones/pull/1131) ([roberthbailey](https://github.com/roberthbailey)) +- Retry on failures for multi-cluster allocation [\#1130](https://github.com/googleforgames/agones/pull/1130) ([pooneh-m](https://github.com/pooneh-m)) +- Simplify the selection of the dynamic port in the nodejs sdk. [\#1128](https://github.com/googleforgames/agones/pull/1128) ([roberthbailey](https://github.com/roberthbailey)) +- Simplify the selection of the dynamic port in the Go sdk. [\#1127](https://github.com/googleforgames/agones/pull/1127) ([roberthbailey](https://github.com/roberthbailey)) +- Added dynamic configuration of http port in the rust sdk [\#1125](https://github.com/googleforgames/agones/pull/1125) ([roberthbailey](https://github.com/roberthbailey)) +- Added dynamic configuration of http port in the unity sdk [\#1121](https://github.com/googleforgames/agones/pull/1121) ([roberthbailey](https://github.com/roberthbailey)) +- Implement converters between the GameServerAllocation API and allocation.proto [\#1117](https://github.com/googleforgames/agones/pull/1117) ([pooneh-m](https://github.com/pooneh-m)) +- Add AltaVR logo to companies using Agones [\#1103](https://github.com/googleforgames/agones/pull/1103) ([TimoSchmechel](https://github.com/TimoSchmechel)) +- Use an environment variable to dynamically set the grpc port in the nodejs sdk [\#1093](https://github.com/googleforgames/agones/pull/1093) ([roberthbailey](https://github.com/roberthbailey)) +- Set the port to connect to the sdkserver based on the AGONES\_SDK\_GRPC\_PORT environment variable [\#1092](https://github.com/googleforgames/agones/pull/1092) ([roberthbailey](https://github.com/roberthbailey)) +- Use environment variables to dynamically set the grpc port in the golang sdk. [\#1086](https://github.com/googleforgames/agones/pull/1086) ([roberthbailey](https://github.com/roberthbailey)) +- Add mcmahan.games to the companies using agones list. [\#1085](https://github.com/googleforgames/agones/pull/1085) ([benmcmahan](https://github.com/benmcmahan)) +- Add missing "/reserve" endpoint description [\#1083](https://github.com/googleforgames/agones/pull/1083) ([aLekSer](https://github.com/aLekSer)) +- Add SDK server HTTP API test [\#1079](https://github.com/googleforgames/agones/pull/1079) ([aLekSer](https://github.com/aLekSer)) +- Sdkserver port configuration [\#1078](https://github.com/googleforgames/agones/pull/1078) ([roberthbailey](https://github.com/roberthbailey)) +- Fixes, more e2e tests and logging for multi-cluster allocation [\#1077](https://github.com/googleforgames/agones/pull/1077) ([pooneh-m](https://github.com/pooneh-m)) +- Longer blog post for Agones 1.0.0 announcement [\#1076](https://github.com/googleforgames/agones/pull/1076) ([markmandel](https://github.com/markmandel)) +- Add a delay flag to the sdkserver [\#1070](https://github.com/googleforgames/agones/pull/1070) ([roberthbailey](https://github.com/roberthbailey)) +- Add Yager Logo to companies using Agones [\#1057](https://github.com/googleforgames/agones/pull/1057) ([topochan](https://github.com/topochan)) +- Adding namespace for multi-cluster allocation policy [\#1052](https://github.com/googleforgames/agones/pull/1052) ([pooneh-m](https://github.com/pooneh-m)) +- Logging Agones version and port on the startup. [\#1048](https://github.com/googleforgames/agones/pull/1048) ([pooneh-m](https://github.com/pooneh-m)) +- Adding make file to generate allocation go from proto [\#1041](https://github.com/googleforgames/agones/pull/1041) ([pooneh-m](https://github.com/pooneh-m)) +- Add Sidecar log level parameter to GS specification [\#1007](https://github.com/googleforgames/agones/pull/1007) ([aLekSer](https://github.com/aLekSer)) + +**Security fixes:** + +- Ran `npm audit fix` to update package dependencies. [\#1097](https://github.com/googleforgames/agones/pull/1097) ([roberthbailey](https://github.com/roberthbailey)) +- Bump eslint-utils from 1.4.0 to 1.4.2 in /sdks/nodejs [\#1014](https://github.com/googleforgames/agones/pull/1014) ([dependabot[bot]](https://github.com/apps/dependabot)) + +See CHANGELOG for more details on changes. + +Images available with this release: + +- [gcr.io/agones-images/agones-controller:1.1.0](https://gcr.io/agones-images/agones-controller:1.1.0) +- [gcr.io/agones-images/agones-sdk:1.1.0](https://gcr.io/agones-images/agones-sdk:1.1.0) +- [gcr.io/agones-images/agones-ping:1.1.0](https://gcr.io/agones-images/agones-ping:1.1.0) +- [gcr.io/agones-images/cpp-simple-server:0.11](https://gcr.io/agones-images/cpp-simple-server:0.11) +- [gcr.io/agones-images/nodejs-simple-server:0.2](https://gcr.io/agones-images/nodejs-simple-server:0.2) +- [gcr.io/agones-images/rust-simple-server:0.6](https://gcr.io/agones-images/rust-simple-server:0.6) +- [gcr.io/agones-images/unity-simple-server:0.3](https://gcr.io/agones-images/unity-simple-server:0.3) +- [gcr.io/agones-images/udp-server:0.17](https://gcr.io/agones-images/udp-server:0.17) +- [gcr.io/agones-images/tcp-server:0.3](https://gcr.io/agones-images/tcp-server:0.3) +- [gcr.io/agones-images/xonotic-example:0.7](https://gcr.io/agones-images/xonotic-example:0.7) + +Helm chart available with this release: + +- helm install agones/agones --version 1.1.0 + +> Make sure to add our stable helm repository using `helm repo add agones https://agones.dev/chart/stable` diff --git a/site/content/en/docs/Examples/_index.md b/site/content/en/docs/Examples/_index.md index 60a092427a..e4b5eb2ff5 100644 --- a/site/content/en/docs/Examples/_index.md +++ b/site/content/en/docs/Examples/_index.md @@ -21,9 +21,7 @@ These are full examples for each of the resource types of Agones These are all examples of simple game server implementations, that integrate the Agones game server SDK. - {{< ghlink href="examples/simple-udp" >}}Simple UDP{{< /ghlink >}} (Go) - simple server and client that send UDP packets back and forth. -{{% feature publishVersion="1.1.0" %}} - {{< ghlink href="examples/simple-tcp" >}}Simple TCP{{< /ghlink >}} (Go) - simple server that responds to new-line delimited messages sent over a TCP connection. -{{% /feature %}} - {{< ghlink href="examples/cpp-simple" >}}CPP Simple{{< /ghlink >}} (C++) - C++ example that starts up, stays healthy and then shuts down after 60 seconds. - {{< ghlink href="examples/nodejs-simple" >}}Node.js Simple{{< /ghlink >}} (Node.js) - A simple Node.js example that marks itself as ready, sets some labels and then shutsdown. diff --git a/site/content/en/docs/Guides/Client SDKs/_index.md b/site/content/en/docs/Guides/Client SDKs/_index.md index b16559c8d1..d608626d8d 100644 --- a/site/content/en/docs/Guides/Client SDKs/_index.md +++ b/site/content/en/docs/Guides/Client SDKs/_index.md @@ -32,7 +32,6 @@ This means that more languages can be supported in the future with minimal effor There is also [local development tooling]({{< relref "local.md" >}}) for working against the SDK locally, without having to spin up an entire Kubernetes infrastructure. -{{% feature publishVersion="1.1.0" %}} ## Connecting to the SDK Server Starting with Agones 1.1.0, the port that the SDK Server listens on for incoming gRPC or HTTP requests is @@ -49,8 +48,6 @@ The SDKs will automatically discover and connect to the gRPC port specified in t If your game server requires using a REST client, it is advised to use the port from the environment variable, otherwise your game server will not be able to contact the SDK server if it is configured to use a non-default port. -{{% /feature %}} - ## Function Reference While each of the SDKs are canonical to their languages, they all have the following diff --git a/site/content/en/docs/Guides/Client SDKs/rest.md b/site/content/en/docs/Guides/Client SDKs/rest.md index 14960c74be..23508dc023 100644 --- a/site/content/en/docs/Guides/Client SDKs/rest.md +++ b/site/content/en/docs/Guides/Client SDKs/rest.md @@ -8,17 +8,11 @@ description: "This is the REST version of the Agones Game Server Client SDK. " Check the [Client SDK Documentation]({{< relref "_index.md" >}}) for more details on each of the SDK functions and how to run the SDK locally. -{{% feature expiryVersion="1.1.0" %}} -The REST API can be accessed from `http://localhost:59358/` from the game server process. -{{% /feature %}} - -{{% feature publishVersion="1.1.0" %}} The REST API can be accessed from `http://localhost:${AGONES_SDK_HTTP_PORT}/` from the game server process. `AGONES_SDK_HTTP_PORT` is an environment variable automatically set for the game server process by Agones to support binding the REST API to a dynamic port. It is advised to use the environment variable rather than a hard coded port; otherwise your game server will not be able to contact the SDK server if it is configured to use a non-default port. -{{% /feature %}} Generally the REST interface gets used if gRPC isn't well supported for a given language or platform. @@ -51,16 +45,9 @@ Call when the GameServer is ready to accept connections #### Example -{{% feature expiryVersion="1.1.0" %}} -```bash -$ curl -d "{}" -H "Content-Type: application/json" -X POST http://localhost:59358/ready -``` -{{% /feature %}} -{{% feature publishVersion="1.1.0" %}} ```bash $ curl -d "{}" -H "Content-Type: application/json" -X POST http://localhost:${AGONES_SDK_HTTP_PORT}/ready ``` -{{% /feature %}} ### Health Send a Empty every d Duration to declare that this GameSever is healthy @@ -71,16 +58,9 @@ Send a Empty every d Duration to declare that this GameSever is healthy #### Example -{{% feature expiryVersion="1.1.0" %}} -```bash -$ curl -d "{}" -H "Content-Type: application/json" -X POST http://localhost:59358/health -``` -{{% /feature %}} -{{% feature publishVersion="1.1.0" %}} ```bash $ curl -d "{}" -H "Content-Type: application/json" -X POST http://localhost:${AGONES_SDK_HTTP_PORT}/health ``` -{{% /feature %}} ### Shutdown @@ -92,16 +72,9 @@ Call when the GameServer session is over and it's time to shut down #### Example -{{% feature expiryVersion="1.1.0" %}} -```bash -$ curl -d "{}" -H "Content-Type: application/json" -X POST http://localhost:59358/shutdown -``` -{{% /feature %}} -{{% feature publishVersion="1.1.0" %}} ```bash $ curl -d "{}" -H "Content-Type: application/json" -X POST http://localhost:${AGONES_SDK_HTTP_PORT}/shutdown ``` -{{% /feature %}} ### Set Label @@ -111,16 +84,9 @@ See the SDK [SetLabel]({{< ref "/docs/Guides/Client SDKs/_index.md#setlabel-key- #### Example -{{% feature expiryVersion="1.1.0" %}} -```bash -$ curl -d '{"key": "foo", "value": "bar"}' -H "Content-Type: application/json" -X PUT http://localhost:59358/metadata/label -``` -{{% /feature %}} -{{% feature publishVersion="1.1.0" %}} ```bash $ curl -d '{"key": "foo", "value": "bar"}' -H "Content-Type: application/json" -X PUT http://localhost:${AGONES_SDK_HTTP_PORT}/metadata/label ``` -{{% /feature %}} ### Set Annotation @@ -128,16 +94,9 @@ Apply a Annotation with the prefix "agones.dev/sdk-" to the backing `GameServer` #### Example -{{% feature expiryVersion="1.1.0" %}} -```bash -$ curl -d '{"key": "foo", "value": "bar"}' -H "Content-Type: application/json" -X PUT http://localhost:59358/metadata/annotation -``` -{{% /feature %}} -{{% feature publishVersion="1.1.0" %}} ```bash $ curl -d '{"key": "foo", "value": "bar"}' -H "Content-Type: application/json" -X PUT http://localhost:${AGONES_SDK_HTTP_PORT}/metadata/annotation ``` -{{% /feature %}} ### GameServer @@ -146,16 +105,9 @@ Call when you want to retrieve the backing `GameServer` configuration details - Path: `/gameserver` - Method: `GET` -{{% feature expiryVersion="1.1.0" %}} -```bash -$ curl -H "Content-Type: application/json" -X GET http://localhost:59358/gameserver -``` -{{% /feature %}} -{{% feature publishVersion="1.1.0" %}} ```bash $ curl -H "Content-Type: application/json" -X GET http://localhost:${AGONES_SDK_HTTP_PORT}/gameserver ``` -{{% /feature %}} Response: ```json @@ -195,16 +147,9 @@ These updates will come as newline delimited JSON, send on each update. To that want to keep the http connection open, and read lines from the result stream and and process as they come in. -{{% feature expiryVersion="1.1.0" %}} -```bash -$ curl -H "Content-Type: application/json" -X GET http://localhost:59358/watch/gameserver -``` -{{% /feature %}} -{{% feature publishVersion="1.1.0" %}} ```bash $ curl -H "Content-Type: application/json" -X GET http://localhost:${AGONES_SDK_HTTP_PORT}/watch/gameserver ``` -{{% /feature %}} Response: ```json @@ -223,16 +168,9 @@ Move Gameserver into a Reserved state for a certain amount of seconds for the fu #### Example -{{% feature expiryVersion="1.1.0" %}} -```bash -$ curl -d '{"seconds": "5"}' -H "Content-Type: application/json" -X POST http://localhost:59358/reserve -``` -{{% /feature %}} -{{% feature publishVersion="1.1.0" %}} ```bash $ curl -d '{"seconds": "5"}' -H "Content-Type: application/json" -X POST http://localhost:${AGONES_SDK_HTTP_PORT}/reserve ``` -{{% /feature %}} ### Allocate @@ -247,13 +185,6 @@ relinquish control to an external service which likely doesn't have as much info #### Example -{{% feature expiryVersion="1.1.0" %}} -```bash -$ curl -d "{}" -H "Content-Type: application/json" -X POST http://localhost:59358/allocate -``` -{{% /feature %}} -{{% feature publishVersion="1.1.0" %}} ```bash $ curl -d "{}" -H "Content-Type: application/json" -X POST http://localhost:${AGONES_SDK_HTTP_PORT}/allocate ``` -{{% /feature %}} diff --git a/site/content/en/docs/Guides/Client SDKs/unreal.md b/site/content/en/docs/Guides/Client SDKs/unreal.md index 850289b8f9..0a515a196e 100644 --- a/site/content/en/docs/Guides/Client SDKs/unreal.md +++ b/site/content/en/docs/Guides/Client SDKs/unreal.md @@ -31,9 +31,6 @@ At this moment we do not provide binaries for the plugin. This requires you to c The settings for the Agones Plugin can be found in the Unreal Engine editor `Edit > Project Settings > Plugins > Agones` Available settings: -{{% feature expiryVersion="1.1.0" %}} -- Agones Sidecar IP. (default: `http://localhost:59358`) -{{% /feature %}} - Health Ping Enabled. Whether the server sends a health ping to the Agones sidecar. (default: `true`) - Health Ping Seconds. Interval of the server sending a health ping to the Agones sidecar. (default: `5`) - Debug Logging Enabled. Debug logging for development of this Plugin. (default: `false`) diff --git a/site/content/en/docs/Guides/local-game-server.md b/site/content/en/docs/Guides/local-game-server.md index 80fe57ef4d..9e1244aae6 100644 --- a/site/content/en/docs/Guides/local-game-server.md +++ b/site/content/en/docs/Guides/local-game-server.md @@ -13,30 +13,6 @@ You can register a local game server with Agones. This means you can run an expe To register your local game server you'll need to know the IP address of the machine running it and the port. With that you'll create a game server config like the one below. -{{% feature expiryVersion="1.1.0" %}} -```yaml -apiVersion: "agones.dev/v1" -kind: GameServer -metadata: - name: my-local-server - annotations: - # Causes Agones to register your local game server at 192.1.1.2, replace with your server's IP address. - agones.dev/dev-address: "192.1.1.2" -spec: - ports: - - name: default - portPolicy: Static - hostPort: 17654 - containerPort: 17654 - # The following is ignored but required due to validation. - template: - spec: - containers: - - name: simple-udp - image: gcr.io/agones-images/udp-server:0.15 -``` -{{% /feature %}} -{{% feature publishVersion="1.1.0" %}} ```yaml apiVersion: "agones.dev/v1" kind: GameServer @@ -58,7 +34,6 @@ spec: - name: simple-udp image: gcr.io/agones-images/udp-server:0.17 ``` -{{% /feature %}} Once you save this to a file make sure you have `kubectl` configured to point to your Agones cluster and then run `kubectl apply -f dev-gameserver.yaml`. This will register your server with Agones. diff --git a/site/content/en/docs/Installation/helm.md b/site/content/en/docs/Installation/helm.md index 59a7a79fb2..46680ee9dd 100644 --- a/site/content/en/docs/Installation/helm.md +++ b/site/content/en/docs/Installation/helm.md @@ -168,7 +168,7 @@ The following tables lists the configurable parameters of the Agones chart and t | `gameservers.minPort` | Minimum port to use for dynamic port allocation | `7000` | | `gameservers.maxPort` | Maximum port to use for dynamic port allocation | `8000` | -{{% feature publishVersion="1.1.0" %}} +{{% feature publishVersion="1.2.0" %}} **New Configuration Features:** | Parameter | Description | Default | diff --git a/site/content/en/docs/Reference/fleet.md b/site/content/en/docs/Reference/fleet.md index 949849352e..36970eec5e 100644 --- a/site/content/en/docs/Reference/fleet.md +++ b/site/content/en/docs/Reference/fleet.md @@ -12,61 +12,6 @@ Like any other Kubernetes resource you describe a `Fleet`'s desired state via a A full `Fleet` specification is available below and in the {{< ghlink href="examples/fleet.yaml" >}}example folder{{< /ghlink >}} for reference : -{{% feature expiryVersion="1.1.0" %}} -```yaml -apiVersion: "agones.dev/v1" -kind: Fleet -# Fleet Metadata -# https://v1-12.docs.kubernetes.io/docs/reference/generated/kubernetes-api/v1.12/#objectmeta-v1-meta -metadata: - name: fleet-example -spec: - # the number of GameServers to keep Ready or Allocated in this Fleet - replicas: 2 - # defines how GameServers are organised across the cluster. - # Options include: - # "Packed" (default) is aimed at dynamic Kubernetes clusters, such as cloud providers, wherein we want to bin pack - # resources - # "Distributed" is aimed at static Kubernetes clusters, wherein we want to distribute resources across the entire - # cluster - scheduling: Packed - # a GameServer template - see: - # https://agones.dev/site/docs/reference/gameserver/ for all the options - strategy: - # The replacement strategy for when the GameServer template is changed. Default option is "RollingUpdate", - # "RollingUpdate" will increment by maxSurge value on each iteration, while decrementing by maxUnavailable on each - # iteration, until all GameServers have been switched from one version to another. - # "Recreate" terminates all non-allocated GameServers, and starts up a new set with the new details to replace them. - type: RollingUpdate - # Only relevant when `type: RollingUpdate` - rollingUpdate: - # the amount to increment the new GameServers by. Defaults to 25% - maxSurge: 25% - # the amount to decrements GameServers by. Defaults to 25% - maxUnavailable: 25% - template: - # GameServer metadata - metadata: - labels: - foo: bar - # GameServer specification - spec: - ports: - - name: default - portPolicy: Dynamic - containerPort: 26000 - health: - initialDelaySeconds: 30 - periodSeconds: 60 - # The GameServer's Pod template - template: - spec: - containers: - - name: simple-udp - image: gcr.io/agones-images/udp-server:0.15 -``` -{{% /feature %}} -{{% feature publishVersion="1.1.0" %}} ```yaml apiVersion: "agones.dev/v1" kind: Fleet @@ -124,7 +69,6 @@ spec: - name: simple-udp image: gcr.io/agones-images/udp-server:0.17 ``` -{{% /feature %}} Since Agones defines a new [Custom Resources Definition (CRD)](https://kubernetes.io/docs/concepts/api-extension/custom-resources/) diff --git a/site/content/en/docs/Reference/gameserver.md b/site/content/en/docs/Reference/gameserver.md index f274a23a51..d8b0c4a5b9 100644 --- a/site/content/en/docs/Reference/gameserver.md +++ b/site/content/en/docs/Reference/gameserver.md @@ -9,63 +9,6 @@ description: > A full GameServer specification is available below and in the {{< ghlink href="examples/gameserver.yaml" >}}example folder{{< /ghlink >}} for reference : -{{% feature expiryVersion="1.1.0" %}} -```yaml -apiVersion: "agones.dev/v1" -kind: GameServer -# GameServer Metadata -# https://v1-12.docs.kubernetes.io/docs/reference/generated/kubernetes-api/v1.12/#objectmeta-v1-meta -metadata: - # generateName: "gds-example" # generate a unique name, with the given prefix - name: "gds-example" # set a fixed name -spec: - # if there is more than one container, specify which one is the game server - container: example-server - # Array of ports that can be exposed as direct connections to the game server container - ports: - # name is a descriptive name for the port - - name: default - # portPolicy has three options: - # - "Dynamic" (default) the system allocates a free hostPort for the gameserver, for game clients to connect to - # - "Static", user defines the hostPort that the game client will connect to. Then onus is on the user to ensure that the - # - "Passthrough" dynamically sets the `containerPort` to the same value as the dynamically selected hostPort. - # This will mean that users will need to lookup what port has been opened through the server side SDK. - # port is available. When static is the policy specified, `hostPort` is required to be populated - portPolicy: Static - # the port that is being opened on the game server process - containerPort: 7654 - # the port exposed on the host, only required when `portPolicy` is "Static". Overwritten when portPolicy is "Dynamic". - hostPort: 7777 - # protocol being used. Defaults to UDP. TCP is the only other option - protocol: UDP - # Health checking for the running game server - health: - # Disable health checking. defaults to false, but can be set to true - disabled: false - # Number of seconds after the container has started before health check is initiated. Defaults to 5 seconds - initialDelaySeconds: 5 - # If the `Health()` function doesn't get called at least once every period (seconds), then - # the game server is not healthy. Defaults to 5 - periodSeconds: 5 - # Minimum consecutive failures for the health probe to be considered failed after having succeeded. - # Defaults to 3. Minimum value is 1 - failureThreshold: 3 - # Pod template configuration - # https://v1-12.docs.kubernetes.io/docs/reference/generated/kubernetes-api/v1.12/#podtemplate-v1-core - template: - # pod metadata. Name & Namespace is overwritten - metadata: - labels: - myspeciallabel: myspecialvalue - # Pod Specification - spec: - containers: - - name: simple-udp - image: gcr.io/agones-images/udp-server:0.15 - imagePullPolicy: Always -``` -{{% /feature %}} -{{% feature publishVersion="1.1.0" %}} ```yaml apiVersion: "agones.dev/v1" kind: GameServer @@ -134,7 +77,6 @@ spec: image: gcr.io/agones-images/udp-server:0.17 imagePullPolicy: Always ``` -{{% /feature %}} Since Agones defines a new [Custom Resources Definition (CRD)](https://kubernetes.io/docs/concepts/api-extension/custom-resources/) we can define a new resource using the kind `GameServer` with the custom group `agones.dev` and API version `v1`. @@ -155,7 +97,6 @@ The `spec` field is the actual GameServer specification and it is composed as fo - `containerPort` the port that is being opened on the game server process, this is a required field for `Dynamic` and `Static` port policies, and should not be included in Passthrough configuration. - `protocol` the protocol being used. Defaults to UDP. TCP is the only other option. - `health` to track the overall healthy state of the GameServer, more information available in the [health check documentation]({{< relref "../Guides/health-checking.md" >}}). -{{% feature publishVersion="1.1.0" %}} -`sdkServer` defines parameters for the game server sidecar - `logging` field defines log level for SDK server. Defaults to "Info". It has three options: - "Info" (default) The SDK server will output all messages except for debug messages @@ -163,7 +104,6 @@ The `spec` field is the actual GameServer specification and it is composed as fo - "Error" The SDK server will only output error messages - `grpcPort` the port that the SDK Server binds to for gRPC connections - `httpPort` the port that the SDK Server binds to for HTTP gRPC gateway connections -{{% /feature %}} - `template` the [pod spec template](https://v1-12.docs.kubernetes.io/docs/reference/generated/kubernetes-api/v1.12/#podtemplatespec-v1-core) to run your GameServer containers, [see](https://kubernetes.io/docs/concepts/workloads/pods/pod-overview/#pod-templates) for more information. ## GameServer State Diagram diff --git a/site/layouts/partials/navbar.html b/site/layouts/partials/navbar.html index 5f5a6e479c..a4502e1b2d 100644 --- a/site/layouts/partials/navbar.html +++ b/site/layouts/partials/navbar.html @@ -27,6 +27,7 @@