Skip to main content

Configuring Environment Variables for Extend App

Last updated on April 17, 2024
info

Extend is in Open Beta for AGS Premium Clients! This means that the Extend add-on is available for you to try in your development environment. You can submit your feedback via our Extend Open Beta feedback form.

Overview

In AccelByte Gaming Services (AGS), the endpoint can be extended by "plugging-in" the own custom functions. To do this, we need to create a gRPC Server, with a specific proto file that contains the implementation of the custom functions. Then we can configure AGS to invoke these custom functions in the gRPC Server, instead of the default functions.

The gRPC server itself will have some default Environment Secret Configuration and Environment Variable Configuration value as shown in the image below.

click to see configuration

In this guide, we will explain how to customize the environments. We can add, update, or delete both of the Environment Secret Configuration and Environment Variable Configuration.

How to Customize the Environment Secret Configuration

Add a new environment secret configuration

  1. In the code, create a new function to call the environment secret according to the need. For example, add secret NEW_SECRET_URL as shown below:
func main() {
...

logrus.Infof("gRPC server started")
logrus.Infof("app server started")

_ = newFunctionHere() // call the function here
}

func newFunctionHere() error {
// we can use existing GetEnv() function from this repo, or use native golang function os.GetEnv()
logrus.Printf("New secret variable: %s", server.GetEnv("NEW_SECRET_URL", "www.secreturlfallback.com"))

return nil
}
note

If docker-compose is used, add the new variable NEW_SECRET_URL in the docker-compose.yaml file under the environment: section.

services:
app:
build:
...
environment:
...
- NEW_SECRET_URL
  1. Re-deploy the gRPC server latest image to the cluster. Make sure the code is updated. click to redeployed

    click to redeployed

  2. Click Add Secret button to add NEW_SECRET_URL as key, and it's value. Then click Add button. click to add secret

  3. After successfully added, finish it by clicking the Restart and Apply button on the right side of the page. click to restart

  4. Last, check if the gRPC server is calling the right value. click to confirm secret

Update an existing environment secret configuration

  1. Click edit icon on the left side of the secret value, adjust the value according to the need, then click Save. click to update secret

  2. After successfully updated, finish it by clicking the Restart and Apply button on the right side of the page. click to update secret

Delete an existing environment secret configuration

  1. Click delete icon on the left side of the secret value, there will be confirmation, then click the Delete red button. click to delete secret

  2. After successfully deleted, finish it by clicking the Restart and Apply button on the right side of the page. click to delete secret apply

How to Customize the Environment Variable Configuration

Add a new environment variable configuration

  1. In the code, create a new function to call the environment variable according to the need. For example, add environment variable NEW_ENVAR_URL as shown below:
func main() {
...

logrus.Infof("gRPC server started")
logrus.Infof("app server started")

_ = anotherNewFunctionHere() // call the function here
}

func anotherNewFunctionHere() error {
// we can use existing GetEnv() function from this repo, or use native golang function os.GetEnv()
logrus.Printf("New environment variable: %s", server.GetEnv("NEW_ENVAR_URL", "www.envarurlfallback.com"))

return nil
}
note

If docker-compose is used, add the new variable NEW_ENVAR_URL in the docker-compose.yaml file under the environment: section.

services:
app:
build:
...
environment:
...
- NEW_ENVAR_URL
  1. Re-deploy the gRPC server latest image to the cluster. Make sure the code is updated. click to redeployed

    click to redeployed

  2. Click Add Variable button to add NEW_ENVAR_URL as key, and it's value. Then click Add button. click to add envar

  3. After successfully added, finish it by clicking the Restart and Apply button on the right side of the page. click to restart

  4. Last, check if the gRPC server is calling the right value. click to confirm envar

Update an existing environment variable configuration

  1. Click edit icon on the left side of the variable value, adjust the value, then click Save. click to update envar

  2. After successfully updated, finish it by clicking the Restart and Apply button on the right side of the page. click to update envar

Delete an existing environment variable configuration

  1. Click delete icon on the left side of the variable value, there will be confirmation, then click the Delete red button. click to delete envar

  2. After successfully deleted, finish it by clicking the Restart and Apply button on the right side of the page. click to delete envar apply