Prettyplan has moved. Click here for the new location!
Source on
GitHub
By
Chris Lewis
Release Notes
prettyplan
Just paste in your output from terraform plan (or use the provided example), and hit Prettify!
Refreshing Terraform state in-memory prior to plan... The refreshed state will be used to calculate this plan, but will not be persisted to local or remote state storage. aws_alb_target_group.sample_app: Refreshing state... (ID: arn:aws:elasticloadbalancing:us-east-1:...up/sample-app/d5eedf0680cc9834) aws_iam_role.service_role: Refreshing state... (ID: SampleApp) aws_cloudwatch_log_group.sample_app: Refreshing state... (ID: sample-app) aws_ecr_repository.sample_app: Refreshing state... (ID: sample-app) aws_iam_role_policy.service_role_policy: Refreshing state... (ID: SampleApp:SampleApp) null_resource.promote_images: Refreshing state... (ID: 1236159896537553123) aws_ecs_task_definition.sample_app: Refreshing state... (ID: sample-app) aws_alb_listener_rule.routing: Refreshing state... (ID: arn:aws:elasticloadbalancing:us-east-1:...94bc/2825bddee1920172/ec8bc47bb5409ead) aws_ecs_service.sample_app: Refreshing state... (ID: arn:aws:ecs:us-east-1:123123123123:service/sample-app) ------------------------------------------------------------------------ An execution plan has been generated and is shown below. Resource actions are indicated with the following symbols: ~ update in-place -/+ destroy and then create replacement <= read (data resources) Terraform will perform the following actions: <= data.external.ecr_image_digests id:
program.#: "1" program.0: "extract-image-digests" result.%:
~ aws_ecs_service.sample_app task_definition: "arn:aws:ecs:us-east-1:123123123123:task-definition/sample-app:186" => "${ aws_ecs_task_definition.sample_app.arn }" -/+ aws_ecs_task_definition.sample_app (new resource required) id: "sample-app" =>
(forces new resource) arn: "arn:aws:ecs:us-east-1:123123123123:task-definition/sample-app:186" =>
container_definitions: "[{\"cpu\":1,\"environment\":[],\"essential\":true,\"image\":\"123123123123.dkr.ecr.us-east-1.amazonaws.com/sample-app@sha256:18979dcf521de65f736585d30b58e8085ecc44560fa8c530ad1eb17fecad1cab\",\"logConfiguration\":{\"logDriver\":\"awslogs\",\"options\":{\"awslogs-group\":\"sample-app\",\"awslogs-region\":\"us-east-1\",\"awslogs-stream-prefix\":\"sample-app\"}},\"memory\":256,\"mountPoints\":[],\"name\":\"sample-app\",\"portMappings\":[{\"containerPort\":8443,\"hostPort\":0,\"protocol\":\"tcp\"}],\"volumesFrom\":[]}]" => "[\n {\n \"name\": \"sample-app\",\n \"image\": \"${ aws_ecr_repository.sample_app.repository_url }@${ data.external.ecr_image_digests.result[\"sample-app\"] }\",\n \"cpu\": 1,\n \"memory\": 256,\n \"essential\": true,\n \"logConfiguration\": {\n \"logDriver\": \"awslogs\",\n \"options\": {\n \"awslogs-group\": \"${ aws_cloudwatch_log_group.sample_app.name }\",\n \"awslogs-region\": \"${ var.target_aws_region }\",\n \"awslogs-stream-prefix\": \"sample-app\"\n }\n },\n \"portMappings\": [\n {\n \"containerPort\": 8443,\n \"hostPort\": 0\n }\n ]\n }\n]\n" (forces new resource) family: "sample-app" => "sample-app" network_mode: "" =>
revision: "186" =>
task_role_arn: "arn:aws:iam::123123123123:role/SampleApp" => "arn:aws:iam::123123123123:role/SampleApp" -/+ null_resource.promote_images (new resource required) id: "1236159896537553123" =>
(forces new resource) triggers.%: "1" => "1" triggers.deploy_job_hash: "6c37ac7175bdf35e24a2f2755addd238" => "1a0bd86fc5831ee66858f2e159efa547" (forces new resource) Plan: 2 to add, 1 to change, 2 to destroy. ------------------------------------------------------------------------ This plan was saved to: terraform.plan To perform exactly these actions, run the following command to apply: terraform apply "terraform.plan"
Prettify it!
That doesn't look like a Terraform plan. Did you copy the entire output (without colouring) from the plan command?
Expand all
Collapse all