Skip to content

Terraform Community Edition action is not working

0

I wanted to use "Terraform Community Edition" action by CodeCatalyst Labs. I was trying to build the simplest workflow with only a single action - Terraform Community Edition action:

  • operation mode - plan
  • region - Europe(Ireland)
  • Compute type -EC2

After commiting it is connecting to my AWS account and trying to do something. In cloudtrail I can see an event -"CreateNetworkInterface" - and then there is a long idle time and after about 20 minutes I can see another event - "DeleteNetworkInterface" ... and thats all.

Workflow run logs in codecatalyst are saying "CLIENT_ERROR: Provided image is incompatible with the container architecture". I don't why its saying about image and container architecture... cloudtrail doesn't report any try of doing any compute other than creating interface.

Has anyone succesfully used "Terraform Community Edition" action in last months?

  • The error is due to an architecture mismatch between the container image and the EC2 compute. Try using a different compute type, check for action updates

  • ok. but the action's developer has prepared action's configuration template (in GUI) and the only options there are EC2 or Lambda and I tried both. Thats not the case where I could do something wrong or right, I just choose from available options but it doesn't work :( does anybody know that action's developer to tell him that he need to fix it?

  • I don't understand how this action (Terraform Community Edition) was developed but it has environment section in it's GUI template. I did enter all these environment information and I thought that compute will be provisioned using that environment (my AWS account). Now i'm starting to realize that the compute cannot be provisioned in my AWS accout and the codecatalyst managed compute is the only option. I don't understand what is the purpoce of the environment section in action's GUI template as the codecatalyst managed compute is the only option. Can any one help me to uderstad that?

asked a year ago175 views

1 Answer
0

The error you're encountering with the Terraform Community Edition action in CodeCatalyst is related to container architecture compatibility issues.

Based on your description, the "CLIENT_ERROR: Provided image is incompatible with the container architecture" suggests there's a mismatch between the container image being used by the action and the EC2 compute environment you've selected.

To resolve this issue, you should:

  1. Make sure you're using the correct action identifier. The proper identifier for the Terraform Community action is codecatalyst-labs/provision-with-terraform-community@v1.

  2. Check your workflow configuration. A proper Terraform Community action configuration should include:

  • AWSRegion (you've set this to Europe/Ireland)
  • StateBucket (for storing Terraform state)
  • StateKey (the Terraform state file name)
  • StateTable (DynamoDB table for state locking)
  • TerraformVersion (specify a version like '1.5.1')
  • TerraformOperationMode (you've set this to 'plan')
  1. Ensure your IAM role has the necessary permissions to perform the Terraform operations.

As an alternative approach, you could use the aws/build@v1 action with custom steps to download and run Terraform directly. This approach involves:

  • Downloading the specific Terraform version
  • Extracting and installing it
  • Running the necessary Terraform commands (init, validate, plan, apply)

This method gives you more control over the Terraform execution process and might avoid the container architecture compatibility issues.

Remember that due to licensing changes, AWS has moved from "Terraform Open Source" to "External" as the product type for Terraform Community Edition in some services, though this is specifically for AWS Service Catalog and shouldn't directly affect your CodeCatalyst workflow.
Sources
Automate Terraform Deployments with Amazon CodeCatalyst and Terraform Community action | AWS DevOps Blog
Community | Amazon CodeCatalyst workflow for Terraform
Community | Amazon CodeCatalyst workflow for Terraform
Updating existing Terraform Open Source products and provisioned products to the External product type - AWS Service Catalog

answered a year ago

  • I did everything that was mandatory in GUI template for Terraform Community Edition action so I assume I couldn't do anything wrong. The problem seems to be with compute provisioning. EC2 has been chosen in action template but the error says somoething about container architecture. Can see if youre able to use this action properly? You dont have to have s3 bucket and dynamo DB and terraform code, I think it will fail on compute provisioning so maybe it won't go with the next steps :)

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.