Bird
Raised Fist0
Terraformcloud~10 mins

Default workspace in Terraform - Interactive Code Practice

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to select the default Terraform workspace.

Terraform
terraform workspace select [1]
Drag options to blanks, or click blank then click option'
Adefault
Bdev
Cprod
Dstaging
Attempts:
3 left
💡 Hint
Common Mistakes
Using workspace names like 'prod' or 'dev' which are not default.
Forgetting to specify the workspace name.
2fill in blank
medium

Complete the code to create a new workspace named 'test'.

Terraform
terraform workspace [1] test
Drag options to blanks, or click blank then click option'
Acreate
Binit
Cselect
Dnew
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'create' instead of 'new'.
Using 'select' which switches but does not create.
3fill in blank
hard

Fix the error in the command to list all workspaces.

Terraform
terraform workspace [1]
Drag options to blanks, or click blank then click option'
Alist
Bstatus
Cshow
Dls
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'show' or 'status' which are invalid for listing workspaces.
Using 'ls' when the full command 'list' is expected here.
4fill in blank
hard

Fill both blanks to create and switch to a new workspace named 'prod'.

Terraform
terraform workspace [1] prod && terraform workspace [2] prod
Drag options to blanks, or click blank then click option'
Anew
Bdelete
Cselect
Dlist
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'delete' or 'list' instead of 'new' or 'select'.
Switching before creating the workspace.
5fill in blank
hard

Fill all three blanks to delete the workspace named 'old' and switch to default.

Terraform
terraform workspace [1] old && terraform workspace [2] [3]
Drag options to blanks, or click blank then click option'
Adelete
Bselect
Cdefault
Dlist
Attempts:
3 left
💡 Hint
Common Mistakes
Trying to delete the default workspace.
Not switching to a workspace before deleting another.

Practice

(1/5)
1. What is the default workspace in Terraform?
easy
A. A workspace only for remote backends
B. A workspace you must create manually before use
C. A temporary workspace that deletes after each run
D. The main workspace Terraform uses automatically to store state

Solution

  1. Step 1: Understand Terraform workspaces

    Terraform uses workspaces to manage different states. The default workspace is created automatically.
  2. Step 2: Identify the role of the default workspace

    The default workspace stores the state unless you create and switch to others.
  3. Final Answer:

    The main workspace Terraform uses automatically to store state -> Option D
  4. Quick Check:

    Default workspace = main automatic workspace [OK]
Hint: Default workspace is automatic and stores state by default [OK]
Common Mistakes:
  • Thinking default workspace must be created manually
  • Assuming default workspace deletes after runs
  • Confusing default workspace with remote backend only
2. Which command shows the current active workspace in Terraform?
easy
A. terraform workspace list
B. terraform workspace show
C. terraform workspace current
D. terraform workspace status

Solution

  1. Step 1: Recall Terraform workspace commands

    Common commands include list to see all workspaces and show to display the current one.
  2. Step 2: Identify the command to show active workspace

    terraform workspace show outputs the current active workspace name.
  3. Final Answer:

    terraform workspace show -> Option B
  4. Quick Check:

    Show current workspace = terraform workspace show [OK]
Hint: Use 'terraform workspace show' to see active workspace [OK]
Common Mistakes:
  • Using 'terraform workspace list' to show current workspace
  • Assuming 'terraform workspace current' is valid
  • Confusing 'status' with workspace commands
3. Given this Terraform CLI output after running terraform workspace list:

  default
* dev
  staging
Which workspace is currently active?
medium
A. default
B. staging
C. dev
D. No workspace is active

Solution

  1. Step 1: Understand workspace list output format

    The asterisk (*) marks the currently active workspace in the list.
  2. Step 2: Identify the active workspace

    The workspace with * is dev, so it is active.
  3. Final Answer:

    dev -> Option C
  4. Quick Check:

    Asterisk marks active workspace = dev [OK]
Hint: Look for * in workspace list to find active workspace [OK]
Common Mistakes:
  • Choosing 'default' because it sounds like default
  • Ignoring the asterisk symbol
  • Assuming no workspace is active if not obvious
4. You run terraform workspace new test but get an error: "Workspace 'test' already exists." What should you do next?
medium
A. Run terraform workspace select test to switch to it
B. Delete the existing workspace with terraform workspace delete test
C. Rename the existing workspace before creating a new one
D. Run terraform init again to fix the error

Solution

  1. Step 1: Understand the error message

    The error says the workspace already exists, so you cannot create it again.
  2. Step 2: Choose the correct action

    Since it exists, you should switch to it using terraform workspace select test.
  3. Final Answer:

    Run terraform workspace select test to switch to it -> Option A
  4. Quick Check:

    Workspace exists? Select it, don't create [OK]
Hint: Select existing workspace instead of creating it again [OK]
Common Mistakes:
  • Trying to create workspace again without switching
  • Deleting workspace unnecessarily
  • Running init does not fix workspace existence
5. You want to manage two environments, prod and dev, using Terraform workspaces. Which approach correctly uses the default workspace?
hard
A. Use default workspace for dev and create/select prod workspace
B. Create both prod and dev workspaces and never use default
C. Rename default workspace to prod and create dev workspace
D. Use the default workspace for prod and create/select dev workspace

Solution

  1. Step 1: Understand default workspace role

    The default workspace is ready to use and often used for simpler or initial environments.
  2. Step 2: Apply best practice for environment separation

    Use default for dev (development) and create/select a separate workspace for prod (production) to isolate states.
  3. Final Answer:

    Use default workspace for dev and create/select prod workspace -> Option A
  4. Quick Check:

    Default workspace = dev environment [OK]
Hint: Use default for dev, create prod workspace for safety [OK]
Common Mistakes:
  • Using default for prod which risks accidental changes
  • Ignoring default workspace and creating all manually
  • Trying to rename default workspace (not supported)