Skip to main content

Configuration

Note: Setting the configuration is required. If you are deploying a simple installation, you can use the default configuration.

Stage Name

A Stage Name is used to allow multiple Service Workbench deployments from the same account. The Stage Name will be the name of the configuration files and forms part of the name of the AWS resources created in this deployment. For limitations in Amazon Simple Storage Service (Amazon S3) deployment buckets, the Stage Name should not be longer than 5 characters. Buckets are the fundamental containers in Amazon S3 for data storage.

You can select your own Stage Name; if you are planning to deploy the solution only once, a common convention, is to use your own login. In the following sections of the guide, customized Stage Name is represented as <stage>.

Separately Deployable Components

The Service Workbench code is divided into multiple (currently 7) Separately Deployable Components (SDCs) with names such as backend, UI, post-deployment, edge-lambda, infrastructure, machine-images, and prepare-aster-acc. Each SDC has a directory in the location, main/solution. While you can run the script that’s located in the root folder of the project that deploys all SDCs in a sequence, you can also deploy each SDC separately using individual scripts.

Prepare Main Configuration File

You can make a copy of the sample global config file, name it for your stage, and modify it. The current default values for the main configuration are stored in the default file in the directory, main/config/settings/.defaults.yml. If the stage-named settings file is not available, the values are read from this default file.

To create a custom (stage-named) settings file, in the directory, main/config/settings, copy example.yml to <stage>.yml and edit this new file. Default values are read from .defaults.yml unless the values are overridden in this file and have the values described in Table 2.

ConfigurationValue
awsRegionus-east-1
awsProfileNo default; set this to your current AWS profile unless using a default or instance profile.
solutionNamesw
envNameSame as stage name.
envTypeprod
enableExternalResearchersfalse

Table 2: Configuration Values

(Optional) Custom Domain names

To use a custom domain name, provide the following two values, (1) the domain name itself (2) the ARN for the manually-created TLS certificate to use from ACM.

domainName: `host.domain.toplevel`

certificateArn: `<ARN>`

Note: The current implementation assumes that DNS is handled elsewhere; a future improvement will automatically handle creation of the cert and Route53 entries.

Namespace

The name of many deployed resources include a namespace string such as mystage-va-sw. This string is made up by concatenating the following:

  • Environment name
  • Region short name (eg: va for US-East-1, or for US-West-2, defined in .defaults.yml)
  • Solution name

(Optional) Prepare SDC Configuration Files

Each SDC has a config/settings directory, where you can place customized settings. Settings files are named after your Stage Name: <mystagename.yml>. Some of the SDC settings directories contain an example.yml file that may be copied and renamed as a settings file for that SDC. Otherwise, a default file .defaults.yml in that directory is read and used regardless of the Stage Name.