VCF Automation 9 – Present Kubernetes labels as dropdown

By | 18. August 2026

The VCF Automation All-Apps-Org provisions and manages resources through the vSphere Supervisor Service. This means all resources will be deployed as Kubernetes resources with a Kubernetes-based yaml file and related parameters. The consumption can be done directly using the Kubernetes interface of VCF Automation or services can be exposed in the catalog. With the catalog, customers benefit from a more controlled service offering. At the same time, they might want to let the consumer choose from some of the Kubernetes parameters available for provisioning. As an example: Consumers could attach labels to their provisioned resources which reference the application used. On subsequent provisioning it might be helpful to have a dropdown for selecting labels already used before.

With the help of my “friend” I created an Orchestrator workflow which reads all used labels from a Supervisor namespace, consolidates them and returns them back as an array. The action will retrieve this data dynamically and populate a dropdown for the consumers when they open their request form.

You can easily customize the workflow or any other use case. It’s intended to be an example for the dynamic retrieval of Kubernetes parameters.

Prerequisites

Following configurations are required to use the solution:

  • VCF Automation 9.x with at least 1 All-Apps-Org
  • External VCF Operations Orchestrator integrated with All-Apps-Org
  • VM deployed in namespace where a label is used

Linux-based Jump-VM with vcf cli and kubectl cli is installed and reachable over network per SSH (e.g. Ubuntu 24.04). Refer to the official documentation how to install kubectl:
https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/#install-using-native-package-management
For vcf cli you can download it from the overview page of the All-Apps-Org. I’d recommend storing kubectl and vcf commands in a search path like /usr/bin.

Installation of the solution

  • Customize the parameters of the Orchestrator action to match your environment
jumpHostIP of the jump Linux VM
sshUsernameUsername to access the VM (the script will automatically try to sudo if needed)
sshPasswordPassword of the SSH user
vcfaEndpointFQDN of VCF Automation
apiTokenVCF Automation token of an administrative user (can be retrieved from the UI). This is used to create a vcf cli context and get access to the proper namespace.
contextNameRandom name of the context created dynamically
insecureSkipTlsAccept non-verified TLS access
defaultTenantTypically not used. Just in case the action does not get a tenant org name.
  • Save the Action.
  • Manually start Orchestrator data collection to make sure the action shows up correctly.
  • Create a new blueprint with the content below.
formatVersion: 1
inputs:
  namespacename:
    type: string
    title: Name of Namespace
    description: Provide existing namespace name which is used as deployment target
    $data: /data/namespaces?projectId={{project}}
  label-dropdown:
    type: string
    title: Select label
    $data: /data/vro-actions/com.vmware.custom/getVmLabels?targetNamespace={{namespacename}}&tenantName={{_currentOrgName}}
resources: {}
  • Test the blueprint

When running a test in the blueprint designer, it should list all available namespaces. After selection of a namespace, the Orchestrator action is executed and will populate all available labels.

Note: If you want to publish this blueprint to the catalog, VCF 9.1 will throw an error as the organization name is not handed over correctly. To work this around you can hard-code the organization name in the blueprint input rather than using a variable. This will be fixed in a future version.

 

Have fun!

print
Christian Ferber
Category: Uncategorized VCF Automation Tags: , , , , , ,

About Christian Ferber

Christian has joined VMware in July 2015 as Senior Systems Engineer Cloud Management. Through his work in various cloud projects before and at VMware he has gained experience in datacenter, server, storage, networking and cloud management technologies. Today his primary focus is on automation and operation topics with integration into many surrounding solutions like containers, configuration management, directory services and others. He is responsible for the management components in the VMware Cloud Foundation (VCF) product family for enterprise customers in Germany.

Leave a Reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.