Workflows and scoping

Q: Why do I get ‘failed to evaluate’ on an execrun action, involving a bash script?
A: Our expression language uses the ‘$’, ‘{‘ and ‘}’ characters, that also have special meaning in bash. Makes sure you escaped those by doubling ‘$$’, ‘{{‘, ‘}}’

Q: My workflow has reported success very promptly but nothing is executed. Why is that?
A: It’s very likely that you are running steps on an empty role, which means that either your provisioning phase failed (and was configured to ignore failure), or the list of IP addressses you’ve associated with the role is empty.

Q: I’m getting a ‘failed to evaluate error’ inside a workflow.Instance component despite having properties in the environment.
A: Make sure you’ve called getSignals before accessing properties (pay attention to the precedingPhases declaration) and all required properties are listed in the interface description both on the workflow.Instance and the reference.Service components.

Q: I’ve done all of the above and the requested properties are still missing from the context.
A: Make sure the referenced interface is marked as required — the execution flow won’t wait for the property values to appear otherwise.

Q: I’ve initialized some variables during launch but I can’t use them inside a different instance jobs. What am I doing wrong?
A: Only launch parameters and workflow return values appear in the global scope. So, if you want a variable scoped to the instance, return it.

Q: What’s the difference between using ! and as multi-line string signifiers?
A: According to the YAML spec, the bang does no preserve line breaks while the pipe does.

Component manifests

Q: Looks like I’m getting the wrong value of the signal. What am I doing wrong?
A: Make sure the peer component doesn’t expose a signal under the same name on a different interface. It is allowed to do that, but if two interfaces happen to be similar (or one is a superset of the other), you can get an unexpected binding. Please, don’t rely on interface names, peer matching doesn’t take them into account.


Q: Is there a way to copy environments?
A: You can do that by exporting and importing them back. This will leave out services though.


Q: My t2.* instance provisioning fails
A: t2-instances only work within VPCs. Make sure you specified subnetId and used a HVM image.


Q: How do I disallow certain roles from seeing sensitive data?
A: The only part of the portal that can be hidden right now is Environment view. You control it with the ViewEnvironment permission. The rest of the portal is available in read-only mode by default.
Q: I’m trying to reconfigure an hierarchical instance, but it says I’m denied permissions to do so and I’m sure I have them. What is wrong?
A: You have to have EditInstance for all the apps involved in reconfiguration or CreateInstance if it results in new subinstances.