Apps that run on the koala tree for Vizzly E2E testing
To get a dashboard connected to a managed query engine quickly, simply;
- Create a managed cloud project on https://staging.app.vizzly.co
- Run on staging API
Vizz.Office.SetManagedKeyPairForEucalyptus.run("<< managed query engine id >>")
- Visit
https://example.vizzly.co:9040?parentDashboardId=...&projectId=...&managedQueryEngineId=...
- Build a new project under the
apps
directory. - Build the
Dockerfile
that runs the app. - Add the app to the list in the
publish.yml
GitHub action. - Run the CloudFormation template to provision a new ECS service to run the image.
- Update the script to force a redeploy of the service to pull the latest image.
- Create a new dashboard for the app (ideally in an isolated project).
- Create a new project on the "staging" environment. Choose the "Managed" type if possible.
- Save this public key to the project under "key pairs". [WARNING ONLY DO THIS FOR TEST PROJECTS ON THE STAGING ENVIRONMENT]
-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEVyKF4GBkz101/6Ta3fDgvvRItU7j
tScr9CSIWn5Ov0Zya/CzF4XjfOSMKfaodpFtjYZ0MC4BjmVuYlrixXSrQg==
-----END PUBLIC KEY-----
- Create the parent dashboards required in the project.
- Build out the
identity
function of the dashboard by sending a POST request with the access token claims tohttps://example.vizzly.co:9012/identity
As each app will be an independent project, each will need its own query engine if that is the implementation type required.
If possible, this should be setup using a managed query engine project on the staging environment.
To enable a managed query engine project, on staging this need to be ran;
Vizz.Office.SetManagedKeyPairForEucalyptus.run("<< managed query engine id >>")
- Go through the project setup steps to generate your vizzly.env file
- Run
echo "\nVIZZLY_API_HOST=https://staging.api.vizzly.co" >> vizzly.env
to the vizzly.env file - Change the
VIZZLY_PUBLIC_KEYS
value too the base encoded version of the public key; (remember to include the final =)
WyItLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLVxyXG5NRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVWeUtGNEdCa3oxMDEvNlRhM2ZEZ3Z2Ukl0VTdqXHJcbnRTY3I5Q1NJV241T3YwWnlhL0N6RjRYamZPU01LZmFvZHBGdGpZWjBNQzRCam1WdVlscml4WFNyUWc9PVxyXG4tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS1cclxuIl0=
- Upload the env file to the S3 bucket;
{{environment}}-eucalyptus-qe-envs
and save as{{app-folder-name}}.env
- Run the CloudFormation script (query-engine-ecs-service.yml) to create a query engine on a specific port of the koala tree
target group: vizzl-Vizzl-SGVAZMRO699O
log group: example-koala
ecs service: example-vizzly-service-Service-i41X8yR5XVYO
target group: mariad-Vizzl-7TQ9FAQHQSQ4
log group: example-mariadb-qe
target group: mysql-Vizzl-AXGXJXN6PRM5
log group: example-mysql-query-engine
target group: snowfl-Vizzl-YKZWWDZHRZVR
log group: example-snowflake-query-engine
target group: vizzly-Vizzl-1F0EYQVF5VNT
log group: example-vizzly-backed-config
target group: dynami-Vizzl-QWJLX2T6D2DV
log group: example-dynamic-query-engine
target group: stagin-Vizzl-LY84YDX3018U
log group: example-query-engine-staging-backed-api