Como administrador do Automation Pipelines, você pode compartilhar pipelines para que os usuários de uma organização possam executá-los em qualquer outro projeto ou adicioná-los como tarefas aninhadas dentro de um pipeline em outro projeto.
Por que um pipeline compartilhado é útil
Ao compartilhar um pipeline, você elimina a necessidade de criar o mesmo pipeline para diferentes projetos em uma organização. E se você atualizar um pipeline compartilhado, todos os usuários do pipeline terão a mesma atualização.
Um pipeline compartilhado também pode ser usado no Automation Service Broker. Um administrador do Automation Service Broker pode adicionar seu pipeline compartilhado como item de catálogo para que os usuários solicitem e executem em vários projetos.
Somente os administradores do Automation Pipelines podem compartilhar ou interromper o compartilhamento de pipelines.
Como compartilhar um pipeline
Para compartilhar um pipeline, clique em Pipeline e selecione o pipeline que você deseja compartilhar.
- Clique em
- Se o pipeline estiver desativado, clique em .
- (Opcional) Para disponibilizar seu pipeline compartilhado no Automation Service Broker, clique em .
Depois de liberar o pipeline, um administrador do Automation Service Broker poderá adicionar você ao Automation Service Broker. Consulte Adicionar pipelines ao catálogo do Automation Service Broker.
Como executar um pipeline compartilhado
Para executar um pipeline compartilhado, selecione o pipeline e selecione um projeto.
O pipeline é executado no contexto do projeto selecionado e apenas o modelo de pipeline é compartilhado. Qualquer infraestrutura, como endpoints ou variáveis usadas no pipeline, não é compartilhada. Se um pipeline compartilhado que usa endpoints ou variáveis for executado em um projeto diferente, esses endpoints e variáveis deverão estar disponíveis nesse projeto.
Por exemplo, digamos que jenkinsPipeline
use projectA
e inclua uma tarefa com um endpoint chamado jenkinsEndpoint
.
Se você compartilhar jenkinsPipeline
e quiser executá-lo no contexto de projectB
, deverá haver um jenkinsEndpoint
em projectB
. Se não houver jenkinsEndpoint
, crie o endpoint em projectB
antes de executar o pipeline compartilhado.
O procedimento a seguir mostra como duplicar um endpoint em outro projeto. Você segue etapas semelhantes para uma variável.
- Clique em Endpoints. No endpoint que você deseja duplicar, por exemplo,
jenkinsEndpoint
, clique em . - Clique no botão Importar e selecione o arquivo YAML para
jenkinsEndpoint
. - Edite o arquivo para alterar o projeto, como
projectB
no código YAML de amostra a seguir.--- project: projectB kind: ENDPOINT name: jenkinsEndpoint ...
- Clique em Importar.
Para executar jenkinsPipeline
em projectB
, clique em Executar no cartão de pipeline e selecione projectB
como o projeto.
projectB
, você deve ter a função
Automation Pipelines de administrador, desenvolvedor ou executor. Se você for um espectador ou usuário do
Automation Pipelines, não poderá executar o pipeline, a menos que um administrador do
Automation Pipelines o torne um administrador de projeto ou membro do projeto em
projectB
. Para obter mais informações sobre como gerenciar funções no
Automation Pipelines, consulte
Como gerenciar o acesso do usuário e as aprovações no Automation Pipelines.
Como adicionar um pipeline compartilhado a outro pipeline
Usar pipelines compartilhados como tarefas aninhadas em outro pipeline permite estender a funcionalidade do pipeline além dos pipelines que estão incluídos em um projeto. Os pipelines compartilhados podem estar em projetos diferentes uns dos outros e do pipeline em que estão incluídos como tarefas aninhadas.
O exemplo a seguir mostra um pipeline chamado master-shared-pipeline-demo
com duas tarefas de pipeline aninhadas.
Para especificar o pipeline para Task0
, selecione em uma lista de pipelines compartilhados. Cada nome de pipeline inclui o nome do projeto. Se vários pipelines compartilhados tiverem o mesmo nome, você poderá usar o nome do projeto para selecionar o desejado.
Como usar um pipeline compartilhado para reversão
Para usar um pipeline compartilhado para reversão, selecione-o em uma lista de pipelines ao configurar a reversão da tarefa. O Automation Pipelines filtra a lista para exibir apenas pipelines no mesmo projeto ou pipelines compartilhados em diferentes projetos.
Como usar um modelo compartilhado em um pipeline
Você pode usar um modelo compartilhado no Automation Assembler como fonte de modelo para uma tarefa em um pipeline. O uso de modelos compartilhados fornece acesso a mais modelos do que aqueles incluídos em um projeto.
Antes de definir a tarefa no Automation Pipelines, verifique se o modelo é compartilhado no Automation Assembler e se você sabe o nome e a versão. Quando um modelo é compartilhado, um ícone ao lado do nome do projeto aparece na lista de modelos de nuvem.
- Para tipo de Tarefa, selecione Automation Template.
- Para Ação, selecione Criar Implantação ou Atualizar Implantação.
- Se você estiver atualizando uma implantação, selecione o Nome da implantação.
- Para origem do modelo de Nuvem, selecione Automation Template.
- Para o nome do modelo de Nuvem, selecione na lista de modelos ou digite um nome. Se você não vir o modelo listado, é porque o modelo está em um projeto diferente do pipeline, e o Automation Pipelines lista apenas os modelos que estão no mesmo projeto.
- Para a versão do modelo de nuvem, digite a versão do modelo.
No exemplo a seguir, shared-bp
é o modelo compartilhado que você verificou no Automation Assembler e deseja usar, mas ele não está listado como seleção, então você digita o nome.
Como excluir ou parar de compartilhar um pipeline
Se você adicionar um pipeline compartilhado como uma tarefa aninhada ou reverter uma tarefa, esse pipeline será referenciado pelo pipeline no qual ele é usado. Se você quiser excluir ou interromper o compartilhamento do pipeline, deverá removê-lo de qualquer pipeline que faça referência a ele.
Por exemplo, se master-shared-pipeline-demo
incluir Shared-Pipeline
como uma tarefa aninhada, Shared-Pipeline
será referenciado. Você não pode excluir ou interromper o compartilhamento de Shared-Pipeline
até removê-lo de master-shared-pipeline-demo
.
Ou se TestRollback
usar Shared-Pipeline
para reverter uma tarefa, Shared-Pipeline
será referenciado. Não é possível excluir ou parar Shared-Pipeline
até removê-lo da reversão na tarefa em TestRollback
.
O procedimento a seguir mostra como verificar as referências de um pipeline e removê-lo do pipeline que faz referência a ele antes de excluí-lo ou interrompê-lo.
- Verifique se há referências e atualize as referências de pipeline, se encontradas.
- Clique em Pipelines. No pipeline compartilhado que você deseja verificar, clique em .
- Anote os nomes de quaisquer Pipelines referenciados.
- Abra os pipelines que fazem referência ao pipeline compartilhado. Remova o pipeline compartilhado que está sendo usado como uma tarefa aninhada ou para reverter uma tarefa e salve o pipeline.
- Exclua ou pare de compartilhar um pipeline.
- No pipeline que você deseja excluir, clique em .
- No pipeline que você deseja interromper o compartilhamento, clique em .