This repository aims to simplify the process of getting a drupal/cms app running in cloud.gov
Important
This script is very much a work in progress. All aspects should be independently validated before using.
PRs and ideas for improvement VERY much welcome.
- Clone this repository
- Run
./bootstrap.sh PATH_TO_NEW_DIR bootstrap.shwill finish by presenting you in addev sshconsole- At that command line, run
./init.sh
Follow these steps to deploy your app:
-
Go to the directory where you bootstrapped the app (
PATH_TO_NEW_DIRabove)cd PATH_TO_NEW_DIR -
cd terraform -
terraform init -
terraform validate -
Create a
terraform/terraform.tfvarsfile to define the required variables:cf_org_name- Organization name on Cloud.gov where Drupal should be deployedcf_space_name- Space name on Cloud.gov incf_org_namewhere Drupal should be deployed. This space will be created.app_name- Name of deployed Drupal applicationcf_users- List of usernames that can deploy the application withincf_space_name
-
terraform applyto deploy to your new space
-
View the root credentials for logging in:
cf curl "/v3/service_instances/$(terraform output -raw credentials_id)/credentials"Make note of the
ROOT_USER_NAMEandROOT_USER_PASScredentials -
From
terraform output, visit the URL inroute:terraform output -raw route
-
Click the "Log in" button on the page
-
Use the
ROOT_USER_NAMEandROOT_USER_PASSvalues from the root user credentials to log in
This template does not do many things needed for a well-architected federal application. You are responsible for:
- Updating the terraform modules for proper multiple environment setup and shared backend
- Implementing egress control for the space
- CI/CD tests and scans
- Compliance documentation
- Proper authentication either through SSO or with MFA
- etc.