Chamar Função
Este estágio chama uma função do OCI (Oracle Cloud Infrastructure). O estágio de Chamar Função pode ser usado para executar código ou lógica personalizada sem servidor. Por exemplo, você pode criar uma função que valide seu aplicativo no ambiente de preparação e, se bem-sucedido, implantar o aplicativo no ambiente de produção.
Antes de começar, você deve ter um pipeline de implantação definido e deve criar uma função que seja chamada quando o pipeline for executado.
- Abra o menu de navegação e clique em Serviços do Desenvolvedor. Em DevOps, clique em Projetos.
- Selecione um projeto e um pipeline associados a esse projeto.
- Para adicionar o estágio de Integrações sequencial ou em paralelo, clique no ícone + e selecione Adicionar estágio.
- Selecione Integrações - Chamar Função e clique em Próximo.
- Digite um nome e uma descrição para o estágio. A adição de uma descrição é opcional.
- Para Ambiente, selecione uma função existente a ser chamada.
O campo Nome da função somente para leitura exibe a função que é chamada no pipeline.
- (Opcional) Para selecionar e adicionar artefatos ao estágio, clique em Selecionar Artefato.
Selecione um recurso de artefato existente no seu projeto do DevOps. O artefato deve ser um tipo de arquivo genérico (universal). Os parâmetros no artefato devem estar no formato JSON e podem ter placeholders. Marque a caixa de seleção Permitir parâmetro ao configurar o recurso de artefato DevOps para substituir os placeholders pelo valor do argumento durante a implantação. Para obter mais informações, consulte Configurando Parâmetros.
Este é um exemplo do conteúdo do artefato genérico para especificar dois parâmetros definidos pelo usuário e seus valores:- Parâmetros:
test_name
,app_version
- Valores:
{"test_name":"verify_production", "app_version":"${app_version}"}
- Parâmetros:
- Para Modo de execução do estágio, selecione a execução assíncrona ou síncrona.
Se você selecionar Executar de forma assíncrona, o serviço chamará a função, mas não aguardará a conclusão da função. Ao selecionar Executar de forma síncrona, o serviço chama a função e aguarda a conclusão da função.
- Selecione para desativar ou ativar a validação.
Se a validação estiver ativada, o serviço verificará o valor de retorno da função. O valor de retorno é uma string literal UTF-8,
true
oufalse
. Se o valor de retorno fortrue
, o estágio será marcado como Bem-sucedido; caso contrário, o estágio será marcado como Falha.Se a validação estiver desativada, o serviço não verificará o valor de retorno.
A validação só ocorrerá se você tiver selecionado a opção "Executar sincronicamente" para o modo de execução do estágio.
- (Opcional) Para adicionar tags ao pipeline, clique em Mostrar opções de tag. Tag é um sistema de metadados que permite organizar e rastrear os recursos de sua tenancy.
Se você tiver permissões para criar um recurso, também terá permissões para adicionar tags de formato livre a esse recurso.
Para adicionar uma tag definida, você deverá ter permissões para usar o namespace de tag.
Para obter mais informações, consulte Tags de Recursos
- Para adicionar o estágio de Integrações ao pipeline, clique em Adicionar.
Para implantar a saída de build no ambiente de destino, execute o pipeline de implantação. Para acionar automaticamente uma implantação no pipeline de build, você pode adicionar um estágio Acionar Implantação ao pipeline de build.
Para chamar uma função no pipeline, execute o comando
create-invoke-function-stage
:oci devops deploy-stage create-invoke-function-stage
Parâmetros obrigatórios para o comando
create-invoke-function-stage
:--function-environment-id
--is-async
--is-validation-enabled
--pipeline-id
--stage-predecessor-collection
Para obter todos os comandos de
deploy-pipeline
edeploy-stage
:oci devops deploy-pipeline -h
oci devops deploy-stage -h
Para obter ajuda para o comando
create-invoke-function-stage
:oci devops deploy-stage create-invoke-function-stage -h
Para chamar uma função no pipeline, use a operação
CreateDeployStage
. Para o atributodeployStageType
, especifique o valorINVOKE_FUNCTION
.