Skip to content
Latchkey

Bamboo "${bamboo.X} not resolved" variable in CI

A task received the literal text ${bamboo.something} instead of a value. Bamboo only substitutes variables it knows at that scope; an undefined, misspelled, or wrongly-scoped variable is passed through unresolved.

What this error means

A command runs with a literal "${bamboo.my.var}" in its arguments or a script prints the placeholder verbatim, causing a downstream failure.

Bamboo
Deploying version ${bamboo.releaseVersion} to https://${bamboo.targetHost}
curl: (6) Could not resolve host: ${bamboo.targetHost}

Common causes

The variable is undefined at this scope

The variable is not defined as a global, plan, or deployment variable available to this task, so Bamboo leaves the placeholder unchanged.

Wrong name or syntax

The variable name is misspelled, or a plan-specific name is referenced where it does not exist, so no substitution occurs.

How to fix it

Define the variable at the correct scope

  1. Decide whether the variable should be global, plan, or deployment scoped.
  2. Define it there with the exact name the task references.
  3. Re-run so Bamboo substitutes the value.
Bamboo administration
# Plan configuration > Variables > add key 'targetHost' with a value
# reference it as ${bamboo.targetHost} in the task

Fix the reference syntax and name

Use the ${bamboo.<name>} form and confirm the name matches an existing variable exactly, including dotted namespaces.

How to prevent it

  • Define shared values as global variables so every plan resolves them.
  • Keep variable names consistent and documented per plan.
  • Fail fast when a required variable is empty rather than passing a placeholder on.

Frequently asked questions

What causes ""${bamboo.X} ... not resolved""?
The variable is not defined as a global, plan, or deployment variable available to this task, so Bamboo leaves the placeholder unchanged.
How do I fix "${bamboo.X} ... not resolved"?
Define the variable at the correct scope

Related guides

References

Run this faster and cheaper on Latchkey managed runners - self-healing included. Start free → 30-day trial · No credit card