Scripts na nuvem e modelos de script na nuvem

  • Versão de lançamento: Washingtondc
  • Atualizado 10 de jan. de 2026
  • 3 min. de leitura
  • Na aplicação Cloud Provisioning and Governance, a execução do script é dividida em scripts de nuvem e modelos de script de nuvem. Use scripts em planos gráficos, blocos de recursos, perfis de SO e use scripts de política para definir atributos de formulário de solicitação. Os scripts de política não podem substituir os dados do usuário.

    Scripts em nuvem

    Scripts em nuvem são scripts java simples que usam recursos da plataforma. Um exemplo de um script de nuvem de exemplo:
    function evaluateTemplate() {
    	// Template Resolver is a helper function which we will use to fetch a template and replace its parameters,
    	// var templateResolver=new TemplateResolver(); this comes inbuild
    	// templateAttributes below will passed from the user.
    	var listDir=templateResolver.getTemplate('Install',templateAttributes);
    	return listDir;
    }
    

    Cada script de nuvem contém determinados parâmetros. Parâmetros são os atributos que você deseja acessar. Um parâmetro contém um nome, um valor padrão e um valor de substituição. O valor padrão pode ser uma cadeia de caracteres literal, um parâmetro de bloco de recursos ou uma expressão de script complexo usada em blocos de recursos.

    Um script de nuvem, por padrão, tem acesso ao objeto templateResolver. O objeto templateResolver tem, por padrão, um método getTemplate, cujo primeiro parâmetro é o nome do modelo de script na nuvem. templateAttributes são os parâmetros de script em nuvem criados como parte de um script em nuvem. Se necessário, as personalizações podem ser feitas em templateAttributes. Como exemplo, consulte o snippet de código a seguir se o valor do parâmetro DevName precisar ser alterado de John para Emilly.

    function evaluateTemplate() {
    	// Template Resolver is a helper function which we will use to fetch a template and replace its parameters,
    	// var templateResolver=new TemplateResolver(); this comes inbuild
    	// templateAttributes below will passed from the user.
    	templateAttributes['DevName'] = 'Emily';
    	var customNodeName;
    	var now_GR = new GlideRecord('some_custom_table_to_query');
    	gr.addQuery('some_parameter','some_value');
    	gr.query();
    	if(gr.next())
    	 	customNodeName=gr.getValue('some_custom_node_name');
    		
    	templateAttributes['NodeName'] = customNodeName;
    	var listDir=templateResolver.getTemplate('Install',templateAttributes);
    	return listDir;
    }
    evaluateTemplate();
    

    Modelos de scripts na nuvem

    Os modelos de script em nuvem são executáveis reais que são passados para uma máquina virtual de destino para execução. Os modelos de nuvem podem ser de qualquer tipo (Shell/PowerShell/CloudInit), dependendo do contexto de execução. Você precisa criar um modelo de nuvem primeiro e, em seguida, associá-lo a um script de nuvem.

    Scripts em nuvem como CloudInit

    Os provedores de nuvem fornecem uma maneira de executar scripts no momento da inicialização para máquinas virtuais. Na aplicação Gestão de nuvem, é possível especificar um script cloudinit em vários níveis:
    • Nível de imagem: no momento da criação de um script em nuvem, você pode especificar uma imagem na qual este script deve ser executado. Depois que um perfil de SO que contém esta imagem específica é selecionado, o script em nuvem padrão em relação a esta imagem é executado. No exemplo abaixo, um script de nuvem Apache está associado a uma imagem específica.

      Script de nuvem Apache associado a uma imagem.

    • Nível de perfil do SO: você pode executar um cloudinit em um provedor de nuvem específico e em uma AMI/imagem específica. Você também pode ser genérico e associar um cloudinit a um perfil de SO, independentemente da imagem subjacente. No exemplo a seguir, várias imagens estão associadas ao perfil do SO. Você pode mapear qualquer script em nuvem para o perfil de SO na guia Mapeamentos de perfil de SO de script em nuvem. O mapeamento de um script de nuvem com um perfil de SO tem precedência sobre a associação de script de nuvem no nível de imagem.

      padrão de script em nuvem no perfil de SO

      Neste exemplo, o script de nuvem Apache é mapeado para o perfil do sistema operacional Centos. Se necessário, você pode substituir os parâmetros de script na seção Substituições de mapeamento de perfil de SO.
    • Blocos de recursos: ao mapear um script de nuvem para um perfil de SO, você pode optar por executar o script de nuvem para um bloco de recursos específico usado em um plano gráfico e em um alias de recurso específico. Consulte Criar um perfil de SO.

    Scripts em nuvem como PostInit

    Você pode usar scripts de nuvem como scripts PostInit em um bloco de recursos. Depois de criar um bloco de recursos com uma máquina virtual a ser provisionada, você pode adicionar uma operação ExecuteScript. A operação ExecuteScript usa um parâmetro de script (um pool de scripts de nuvem) e você pode selecionar qualquer script para executar. Use o atributo ScriptParameters na operação ExecuteScript para substituir qualquer parâmetro de script. Você pode fornecer um mapa JSON do parâmetro de script e seu valor de substituição. Todas as expressões compatíveis com Gestão de nuvem funcionam no atributo ScriptParamters.