Getting Started
Special
SINGLE SIGN-ON
Teams
Users
Escalation Policies
Service
Incident
On-Call Shift
Schedules
Schedule Override
API Token
Logs
Webhook
Apps Integration
Reports
Preference
Profile
Automation
FAQ
Terraform Action
This document provides step-by-step instructions for creating and configuring an action using the Terraform action type in Callgoose SQIBS automation platform. The Terraform action type allows users to execute Terraform operations for infrastructure automation workflows. Below are the configuration options and their descriptions:
Creating an Action Using Action Type: Terraform
1. Navigate to Add Action
- Access the automation section in the Callgoose SQIBS automation platform.
- Go to Automation, and you can see Action.
- Click on Action and then click on Add Actions to create a new action.
2. Select Action Type
Choose Terraform as the action type from the list of available options.
3. Copy from Existing Actions
You can copy an existing action and edit later on.
- Copy From:
- Click on Copy From to copy an existing action.
- You can copy actions from:
- Callgoose Actions: Predefined task-based scripts and programs available free of charge.
- Team Actions: Actions shared within your team.
- Global Actions: Actions available globally across the platform.
- Callgoose Actions provide several task-based scripts and programs that you can use and modify according to your requirements.
4. Fill in the Details
- Name*:
Provide a descriptive name for the action.
- Example: Deploy Infrastructure.
- Description*:
Add a detailed description of what the action does.
- Example: This action executes a Terraform plan to deploy infrastructure.
- Version*:
Select the required Terraform version.
- Example: Terraform 1.8.2.
- Have Argument:
Choose whether the action requires arguments.
- Yes: Enables input fields to define arguments for the script.
- No: Indicates that no arguments are required.
- Git or Callgoose?*
Specify where the Action files are located.
- Git: The files are stored within the Git repository. You'll need to provide the necessary credentials to access it. Go here to view more details about how to configure Git.
- Callgoose Platform: The files will be stored on the Callgoose Platform.
If you choose Git, then set up git properly and use valid Git Entry File.
- Success Exit Code*:
Define the expected output when the script runs successfully. The success response is similar to the exit status in Linux.
- Example: 0 exit status indicates the script or command executed successfully.
- Expected Run Time (in Minutes)*:
Specify the estimated time for the execution.
- Example: 5 (indicating 5 minutes).
- Configure "Keep .terraform Folder" Option
Choose whether to keep the .terraform folder after execution:
- Yes: Retains the folder.
- No: Deletes the folder after execution.
- Choose Terraform Operation*:
Choose operation: Apply, Destroy or Command
- Apply:
- Init Options:
Specify initialization options, such as --backend-config options. Refer to the tooltip for more information.
- Operation Options:
Specify options for the apply operation, such as --var-file="variables.tfvars". Refer to the tooltip for more information.
- Terraform File:
Upload the Terraform file to be executed.
- Add Commands:
Add commands to be executed after the apply operation.
You can add multiple commands by clicking the + symbol.
- Destroy:
- Init Options:
Specify initialization options, such as --backend-config options. Refer to the tooltip for more information.
- Operation Options:
Specify options for the destroy operation, such as --var-file="variables.tfvars". Refer to the tooltip for more information.
- Terraform File:
Upload the Terraform file to be executed.
- Add Commands:
Add commands to be executed after the destroy operation.
You can add multiple commands by clicking the + symbol.
- Command:
- Init Options:
Specify initialization options, such as --backend-config options. Refer to the tooltip for more information.
- Add Commands:
Add Terraform ad-hoc commands to be executed.
You can add multiple commands by clicking the + symbol.
- Upload Multiple Files
If you have multiple files to upload:
- First, create the action.
- Then, open that action.
- Click on Show Details.
- Click on Edit, and you will be able to see the Other Files option.
- Upload the additional files as required by your Terraform setup.
- Click on Save after uploading the files if necessary.
Additional Notes
- Fields marked with an asterisk (*) are mandatory.
- Ensure the Terraform files and commands are tested locally before configuring the action to avoid runtime errors.
- Use descriptive names and success responses to make it easier for team members to understand the action.
- The "Expected Run Time" should be realistic to help with workflow monitoring and optimization.
Example Configuration
Name: Deploy Infrastructure
Description: This action executes a Terraform plan to deploy infrastructure.
Version: Terraform 1.8.2
Have Argument: Yes
Git or Callgoose?: Callgoose Platform
Success Exit Code: 0 (indicating the operation executed successfully).
Expected Run Time (in Minutes): 15
Keep .terraform Folder: No
Terraform Operation: Apply
Terraform File: Upload a file named main.tf.
Add Commands: Add post-operation commands such as terraform output.
Conclusion
By following these steps, you can effectively configure and execute a Terraform action in Callgoose SQIBS automation platform. This capability enhances the automation of infrastructure management tasks and simplifies workflow management.