assist - Build Assistance
These files "assist" when building with MakeMe, Gulp and working with GitLab.
- build-parts - Invoke "me", "make" or "gulp" to build parts of an app
- cdrc - Copy to .cdrc to define environment for interactive use
- common - Included by other scripts
- configure - Core logic for top level configure script
- configure-node - Configuration for node apps
- deploy-parts - Invoke "me", "make" or "gulp" to deploy parts of an app
- docker-login - Functions to login to the AWS ECR docker repository
- docker-publish - Publish an image to the AWS ECR docker repository
- gitlab-app.yml - Gitlab rules for a "gulp" based app
- gitlab-makeme.yml - Gitlab rules for MakeMe projects
- gitlab-website.yml - Gitlab rules for web site projects
- index.js - Module to read configuration for gulp projects
- json2env - Convert a JSON config file to environment key=value commands
- publish-parts - Invoke "me", "make" or "gulp" to publish parts of an app
- remote-access - Included script to configure remote access via SSH to AWS
- s3-publish-files - Copy file tree to S3
Secrets
Secrets are needed when building and executing applications. This development pattern stores secrets encrypted in S3 and in the application repository.
S3 Secrets
- Keys stored encrypted in S3 for use by Gitlab for CI/CD. The secrets are stored in buckets named {PROFILE}.config.
- The "secrets" script is used to get/set secrets.
- Gitlab build scripts use these secrets to access AWS accounts.
- The gitlab repository defines the secrets in the "keys" directory and includes a MakeMe script to define in S3.
- gitlab/keys/* has the actual AWS ops account keys to use by gitlab
In the future, we need script to update these keys with the output from terraform commands.
eval $(paks/assist/secrets --env '' --profile "${PROFILE}" --aws-profile "${AWS_PROFILE}" get)