Warning: call_user_func_array() expects parameter 1 to be a valid callback, no array or string given in /home/kalofero/public_html/blog/wp-includes/class-wp-hook.php on line 286
Using Blueprint Options in Cloud Assembly (SKKB1051) | Spas Kaloferov's Blog

Using Blueprint Options in Cloud Assembly (SKKB1051)

In this blog post we are going to look at how to use Blueprint Options in Cloud Assembly to extend ABX extensibility.


Update Log:


Subscriptions in Cloud Assembly let you subscribe an extensibility action to a particular Event Type so that the action is only triggered for that event type. In addition, subscriptions offer Event Typic Condition Filtering which lets you filter even more when an action should be triggered. For example you can use event.data.zoneId filter to trigger the subscribed action only if a particular zone was selected for deployment. Condition filtering is great and adds a lot of flexibility.

Blueprint Options can further exchange an enrich the extensibility options, by allowing you to enable or disable particular ABX actins to run from within the blueprint. For example in one of my previous posts spoke a bout an ABX action which I created which syncs blueprint versions to Gitlab. Now if I want that action to run only for particular blueprints I can enable the corresponding Blueprint Option from within each blueprint.

Blueprint Options

Here are the currently supported Blueprint Options:

  • GItlab
    • gitlabSyncEnable (Boolean)
      • True: Enables Gitlab synchronization
      • False: Disables Gitlab synchronization
    • gitlabSyncDelete (Boolean)
      • True: If blueprint is deleted from Assembly, it will be deleted in git.
      • False: If a blueprint is deleted from Assembly, it will not be deleted in git.
  • Slack
    • slackPostEnable
      • True: Enables Slack Notification
      • False: Disables Slack Notification
  • AWS Simple Email Service (SES)
    • awsSesEmailEnable
      • True: Enables Email Notification
      • False: Disables Email Notification


These Blueprint Options are set via level properties in the blueprint yaml. Here again an example of the supported Blueprint Options in the blueprint yaml:

  1. #--------------------------------------------------------#
  2. #                     Spas Kaloferov                     #
  3. #                   www.kaloferov.com                    #
  4. # bit.ly/The-Twitter      Social     bit.ly/The-LinkedIn #
  5. # bit.ly/The-Gitlab        Git         bit.ly/The-Github #
  6. # bit.ly/The-BSD         License          bit.ly/The-GNU #
  7. #--------------------------------------------------------#
  8. info: |-
  9.   #
  10.   #     VMware Cloud Assembly Blueprint Code Sample    
  11.   #
  12. name: Blueprint Options
  13. version: 1
  14. options:
  15.   gitlabSyncEnable: True
  16.   gitlabSyncDelete: false
  17.   awsSesEmailEnable: True
  18.   slackPostEnable: false
  19. inputs: {}
  20. resources: {}

More on this and how to use the Blueprint Options in general can be found here: ABX Action to Sync Blueprints from Assembly to Gitlab (SKKB1050)

The actions can be found on bit.ly/The-Gitlab.

Here directly download links:


ABX Action


Sample Exchange



















Final Step

If all went well, go grab a beer.

DISCLAIMER; This is a personal blog. Any views or opinions represented in this blog are personal and belong solely to the blog owner and do not represent those of people, institutions or organizations that the owner may or may not be associated with in professional or personal capacity, unless explicitly stated. Any views or opinions are not intended to malign any religion, ethnic group, club, organization, company, or individual.
All content provided on this blog is for informational purposes only. The owner of this blog makes no representations as to the accuracy or completeness of any information on this site or found by following any link on this site. The owner will not be liable for any errors or omissions in this information nor for the availability of this information. The owner will not be liable for any losses, injuries, or damages from the display or use of this information.
Unless stated, all photos are the work of the blog owner and are licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License. If used with watermark, no need to credit to the blog owner. For any edit to photos, including cropping, please contact me first.
Unless stated, all recipes are the work of the blog owner and are licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License. Please credit all recipes to the blog owner and link back to the original blog post.
Downloadable Files
Any downloadable file, including but not limited to pdfs, docs, jpegs, pngs, is provided at the user’s own risk. The owner will not be liable for any losses, injuries, or damages resulting from a corrupted or damaged file.
Comments are welcome. However, the blog owner reserves the right to edit or delete any comments submitted to this blog without notice due to
– Comments deemed to be spam or questionable spam
– Comments including profanity
– Comments containing language or concepts that could be deemed offensive
– Comments containing hate speech, credible threats, or direct attacks on an individual or group
The blog owner is not responsible for the content in comments.
This policy is subject to change at anytime.

Leave a Reply

Your email address will not be published. Required fields are marked *