This document outlines how to deploy DCB Admin with AWS Amplify.
Getting started
Sign into the AWS management console and open the AWS Amplify console for your organisation. You should see a page with the title ‘All apps’.
For your first time, you will need to create an Amplify application. To do this, select ‘New app’, and then select ‘Host web app’.
On the next page, select GitLab as your repository provider, and click ‘Continue’.
On the ‘Add repository branch’ page, select the
dcb-admin-ui
repository. You will then be asked to select a branch: we will provide you with the name of the branch to select, so please choose that one and continue.In the IAM Role section, choose ‘Create and use a new service role’ to allow Amplify to automatically create a service role for you.
If you have a previously created service role that you want to use instead, select that option.
Choose ‘Next’, and then click ‘Save and deploy’.
For more information, please refer to the relevant AWS Amplify docs.
Setting up environment variables
To set up the necessary environment variables for DCB Admin, you must navigate to ‘App settings’ and then to ‘Environment variables’.
Enter the required environment variables from the table below. Some of these variables are deployment-specific, and others will need to come from your Keycloak configuration.
You will then need to modify the Amplify build specification file
amplify.yml
to make these variables accessible to Next.js. This can be found under ‘App build specification’ in ‘Build settings’. Simply click ‘Edit’ and add these lines underbuild: commands:
- env | grep -e DCB_ >> .env.production - env | grep -e KEYCLOAK_ >> .env.production - env | grep -e NEXTAUTH_ >> .env.production
Save your changes and redeploy your application - go to ‘All apps', click on your deployment and select ‘redeploy this version’.
For more information please refer to the official documentation.
Required environment variables
DCB_API_BASE | URL of your DCB deployment |
KEYCLOAK_ID | The |
KEYCLOAK_URL | URL of your Keycloak server Example: |
KEYCLOAK_SECRET | This is the |
NEXTAUTH_SECRET | Secret from NextAuth, use this example:
|
NEXTAUTH_URL | URL of your DCB Admin deployment. You can find this under ‘All apps’ in the Amplify console. |
Common errors and how to solve them
If you encounter the following error (or similar) when deploying DCB Admin, there is a simple fix:
CustomerError: It looks like you are attempting to deploy a Next.js SSR app, but your app's framework looks wrong. Please update your app's framework to 'Next.js - SSR' to ensure that your app is deployed correctly.
Solution: Run the following command in CloudShell. This will update the framework manually:
aws amplify update-branch --app-id <value> --branch-name <value> --framework 'Next.js - SSR'
The value of app-id can be found under ‘App ARN’ in App settings → General. It is the value at the end of the ARN (highlighted in the screenshot)
If you encounter an error connecting to the repository, please contact Knowledge Integration.
Amplify docs can be found here https://docs.aws.amazon.com/amplify/latest/userguide/welcome.html