Referência - integre tarefas de compilação personalizadas em extensões
Serviços de DevOps do Azure | Azure DevOps Server 2022 - Azure DevOps Server 2019
Use essa referência quando quiser criar e integrar tarefas de pipeline de compilação personalizadas com extensões no Azure DevOps.
Gorjeta
Confira nossa documentação mais recente sobre desenvolvimento de extensões usando o SDK de Extensão do Azure DevOps.
Tarefas personalizadas
As tarefas são os blocos de construção para definir a automação em um pipeline de compilação ou versão. Oferecemos muitas tarefas internas para permitir cenários fundamentais de compilação e implantação. Recomendamos que você analise esses cenários antes de criar o seu próprio. Se as tarefas existentes não satisfizerem as suas necessidades, pode criar uma tarefa personalizada.
Tarefa de compilação personalizada JSON
Quando você está criando uma tarefa de compilação ou liberação personalizada com uma extensão, sua extensão inclui um task.json
arquivo para cada tarefa de compilação ou versão.
O task.json
arquivo descreve a tarefa de compilação ou lançamento. O sistema de compilação usa-o para renderizar opções de configuração para o usuário e para saber quais scripts executar no momento da compilação.
A documentação do SDK da tarefa de compilação/liberação está no GitHub. Especificamente, você pode estar interessado no esquema task.json.
Agrupe várias versões de tarefas de compilação/lançamento em uma extensão
Você pode incluir várias versões de uma tarefa de compilação ou lançamento em sua extensão. Implemente versões futuras da sua extensão sem interromper o serviço de usuários em versões mais antigas. As informações a seguir mostram o layout para ter várias versões em uma extensão.
Layout de extensão tradicional
- extensionManifest.json
- extensionIcon.png
- Tarefa1
- task.json
- icon.png
- taskScript.ps1
Nota
Ao configurar um ícone de tarefa, verifique se o seguinte é verdadeiro.
- O nome do ícone é icon.png
- O tamanho do ícone é 32x32 pixels
- O ícone está no mesmo local que o
task.json
arquivo
Layout de várias versões
Nota
O código procura o task.json
arquivo dentro da pasta de tarefas e, em seguida, um nível mais profundo.
Se um não for encontrado em nenhum dos níveis, você verá uma mensagem de erro.
- extensionManifest.json
- extensionIcon.png
- Tarefa1
- Tarefa1V1
- task.json
- icon.png
- taskScript.ps1
- Tarefa1V2
- task.json
- icon.png
- taskScript.ps1
- Tarefa1V1
- Tarefa2
- Tarefa2V1
- task.json
- icon.png
- taskScript.ps1
- Tarefa2V2
- task.json
- icon.png
- taskScript.ps1
- Tarefa2V1
Gorjeta
Para garantir que a _build/Tasks/ssrsfilesdeploy
pasta contenha o conteúdo V1 e V2, defina matchCopy(item, srcPath, destPath, { noRecurse:
como false
make-util.js
no arquivo.