Steps to reproduce :
1. Use any application recipe that you want, with one service in it.
In any lifecycle event handler, place the following groovy code :
println "chef_server_url=" + context.attributes.global["chef_server_url"]
2. Open the CLI
3. cloudify@default>bootstrap-cloud ec2
Successfully created Cloudify Manager on provider...
4. cloudify@default>set-attributes -scope global '{"chef_server_url":"123.456.6337"}'
Attributes updated successfully
5. cloudify@default>list-attributes
{"chef_server_url":"123.456.6337"}
6. cloudify@default>install-application PATH_TO_APPLICATION
Application xxx installed successfully
7. Look for "chef_server_url=" in the log file/s of the service and you'll see :
chef_server_url=null
8. Go back to the CLI and invoke list-attributes again and you'll see that it's not null...
cloudify@default>list-attributes
{"chef_server_url":"123.456.6337"}
I tested it on EC2, but believe it will occur on every other cloud provider as well.
P.S.
It also occurs on localcloud.
The following zip file is the first build that contains the fix for this issue :
http://repository.cloudifysource.org/org/cloudifysource/2.5.0-SNAPSHOT/gigaspaces-cloudify-2.5.0-ga-b3993-123.zip
It will be included in the Cloudify 2.5 GA version.