Creating a Blueprint¶
A blueprint is a multi-node application, based on Linux. It contains UForge appliances and MySoftware components. It configures dependencies between services, network topology, lifecycle and policies. Once your blueprint is created, it can be deployed on multiple cloud platforms (refer to Deploying a Blueprint)
Before you can create a blueprint, you must already have appliances created on your UForge. Refer to Creating an Appliance Template.
To create a new blueprint:
Blueprintsicon on the left.
Blueprint Librarypage, click on
createin the top right.
Versionof the appliance.
Click on the appliances you want to add to the blueprint. If you add the same appliance twice, it will be saved with the same name with
_n+1added at the end. You can edit the name of the appliances in the
You should now see a window similar to the following.
If you click on the appliance name in the
Servicessection, you will be redirected to the appliance details under
You can modify the information under
Service configuration. Any extra configuration information should be entered using YAML.
If you make any modifications to the service configuration, remember to save.
The section must be written with YAML blueprinting language. This language is defined by the open-source Cloudsoft AMP project. The
service idattribute can be used in the YAML Extra configuration to retrieve some information, like IP adresses, hostname, etc. For example you can set “myService” as a service ID and then use it in the Extra configuration by using the AMP command
$brooklyn:component("myService"). In the
customize.commandattribute you can execute commands using the shell language. A customized command is not stored in the UForge appliance nor UForge images in cloud catalog. These commands will be executed with the user
uforgeduring the deployment in the deployed instances; therefore, you will be allowed to update your scripts without regenerating UForge images. If you need root access for your commands, please use the sudo. Also, ensure that packages sudo is included inside your appliances OS profile. You can use your own variables by declaring them in the
shell.envattribute. Then you can use them with this syntax:
- Once you have created your blueprint, it will be automatically saved under the
If you update any of the appliances used in the blueprint once the blueprint is created, this will be updated in the blueprint also. However, if your blueprint is already deployed, the changes will not be in the deployed blueprint.