Installation
Workflows is in Alpha is a managed deployment and not ready for self-hosting.
These installation instructions are intended for Aspect Pro customers or those on a free trial. If you want to try Workflows, please contact us for assistance.
Prerequisites:
- An AWS subaccount where the infrastructure is deployed
- Provide Aspect engineers with the ability to Switch Roles into the account
The product is distributed as a workflows.tar
file.
You unpack this into your terraform repository into a workflows/
folder.
In a future release, we plan to publish to the registry at https://registry.terraform.io/
Use it
Since the module source is vendored locally, see
https://developer.hashicorp.com/terraform/language/modules/sources#local-paths
for how to import the source into your main.tf
Here's an example:
module "aspect_workflows" {
source = "./workflows"
customer_id = "MyCorp"
vpc_id = data.terraform_state.outputs.circleci_vpc.vpc_id
vpc_subnets = [data.terraform_state.outputs.circleci_vpc.private_subnets[0]]
enable_ssm_access = true
# Run on CircleCI platform
hosts = ["cci"]
# Define Bazel states we know how to warm up
warming_sets = {
default = {}
}
resource_types = {
"cci-default" = {
instance_type = "i4i.xlarge"
image_id = "ami-003527be1f1e4d048"
warming = false
}
}
runners = {
default = {
min_runners = 0
max_runners = 10
policies = {
warming_manage : module.aspect_workflows.warming_management_policies["default"].arn
}
resource_type = "cci-default"
agent_idle_timeout = "90m"
job_max_run_time = "5h"
warming = true
warming_set = "default"
}
}
}
Apply
Now, just run terraform apply
, or use whatever automation you already use for your Infrastructure-as-code such as Atlantis.
You'll get a resulting infrastructure like the following: