There is a command group 'az_vmss_extension'. This group of commands could 'manage extensions on a vm scale set'. The group of commands has global parameter '--debug' which means 'Increase logging verbosity to show all debug logs.'. The group of commands has global parameter '--help -h' which means 'Show this help message and exit.'. The group of commands has global parameter '--only-show-errors' which means 'Only show errors, suppressing warnings.'. The group of commands has global parameter '--output -o' which means 'Output format.'. The group of commands has global parameter '--query' which means 'JMESPath query string. See <a href="http://jmespath.org/">http://jmespath.org/</a> for more information and examples.'. The group of commands has global parameter '--subscription' which means 'Name or ID of subscription. You can configure the default subscription using `az account set -s NAME_OR_ID`.'. The group of commands has global parameter '--verbose' which means 'Increase logging verbosity. Use --debug for full debug logs.'. This group contains a child command 'az_vmss_extension_set'.The syntax is: az vmss extension set --name
                      --publisher
                      --resource-group
                      --vmss-name
                      [--enable-auto-upgrade {false, true}]
                      [--extension-instance-name]
                      [--force-update]
                      [--no-auto-upgrade {false, true}]
                      [--no-auto-upgrade-minor-version {false, true}]
                      [--no-wait]
                      [--protected-settings]
                      [--provision-after-extensions]
                      [--settings]
                      [--version]. The 1th example of the child command would be to use it to 'set an extension which depends on two previously set extensions  that is  when a vmss instance is created or reimaged  the customscript extension will be provisioned only after all extensions that it depends on have been provisioned  the extension need not depend on the other extensions for pre requisite configurations', the syntax is: az vmss extension set --vmss-name my-vmss --name customScript --resource-group my-group \
    --version 2.0 --publisher Microsoft.Azure.Extensions \
    --provision-after-extensions NetworkWatcherAgentLinux VMAccessForLinux  \
    --settings '{"commandToExecute": "echo testing"}'. The 2th example of the child command would be to use it to 'add an extension and enable automatic upgrade by the platform if there is a newer version of the extension available', the syntax is: az vmss extension set -n extName --publisher publisher --vmss-name my-vmss -g my-group \ --enable-auto-upgrade true. The parameter '--name -n' is required. It is used to name of the extension.. The parameter '--publisher' is required. It is used to the name of the extension publisher.. The parameter '--resource-group -g' is required. It is used to name of resource group. you can configure the default group using `az configure --defaults group=<name>`.. The parameter '--vmss-name' is required. It is used to scale set name. you can configure the default using `az configure --defaults vmss=<name>`.. The parameter '--enable-auto-upgrade' is optional. indicate the extension should be automatically upgraded by the platform if there is a newer version of the extension available.. The parameter '--extension-instance-name' is optional. name of extension instance, which can be customized. default: name of the extension.. The parameter '--force-update' is optional. force to update even if the extension configuration has not changed.. The parameter '--no-auto-upgrade' is optional. if set, the extension service will not automatically pick or upgrade to the latest minor version, even if the extension is redeployed.. The parameter '--no-auto-upgrade-minor-version' is optional. if set, the extension service will not automatically pick or upgrade to the latest minor version, even if the extension is redeployed.. The parameter '--no-wait' is optional. do not wait for the long-running operation to finish.. The parameter '--protected-settings' is optional. protected settings in json format for sensitive information like credentials. a json file path is also accepted.. The parameter '--provision-after-extensions' is optional. space-separated list of extension names after which this extension should be provisioned. these extensions must already be set on the vm.. The parameter '--settings' is optional. extension settings in json format. a json file path is also accepted.. The parameter '--version' is optional. the version of the extension. to pin extension version to this value, please specify --no-auto-upgrade-minor-version.. 