Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Serviços de DevOps do Azure
Neste artigo, criaremos um novo hub que será exibido nos Painéis do Azure após os hubs Sprints e Consultas .
Estrutura de uma extensão
|--- README.md
|--- sdk
|--- node_modules
|--- scripts
|--- SDK.js
|--- images
|--- icon.png
|--- scripts // not used in this tutorial
|--- hello-world.html // html page to be used for your hub
|--- vss-extension.json // extension's manifest
Obtenha o SDK do cliente: SDK.js
O script SDK principal, SDK.js, permite que as extensões da Web se comuniquem com o host, Azure DevOps Services, frame. Esse script também inicializa, notifica que a extensão foi carregada ou obtém contexto sobre a página atual. Obtenha o arquivo SDK SDK.js do cliente e adicione-o ao seu aplicativo Web.
Coloque-o na home/sdk/scripts pasta.
Use o comando 'npm install' através da linha de comando (requer Node) para recuperar o SDK:
npm install azure-devops-extension-sdk
Observação
Para obter mais informações, consulte Azure DevOps Web Extension SDK.
Sua página de hub: hello-world.html
- Cada hub exibe uma página da Web
- Confira os grupos de hub addressáveis na referência de pontos de extensão
Crie um hello-world.html arquivo no home diretório da sua extensão.
Faça referência ao SDK e chame init() e notifiifyLoadSucceeded().
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Hello World</title>
<script src="sdk/scripts/SDK.js"></script>
</head>
<body>
<script type="text/javascript">SDK.init();</script>
<h1>Hello World</h1>
<script type="text/javascript">SDK.notifyLoadSucceeded();</script>
</body>
</html>
Arquivo de manifesto da sua extensão: vss-extension.json
- Cada extensão deve ter um ficheiro manifesto de extensão
- Leia a Referência do Manifesto de Extensão
- Saiba mais sobre os pontos de contribuição em Pontos de extensibilidade
Crie um arquivo json (vss-extension.json, por exemplo) no home diretório com o seguinte conteúdo:
{
"manifestVersion": 1,
"id": "sample-extension",
"version": "0.1.0",
"name": "My first sample extension",
"description": "A sample Visual Studio Services extension.",
"publisher": "fabrikamdev",
"categories": ["Azure Boards"],
"targets": [
{
"id": "Microsoft.VisualStudio.Services"
}
],
"icons": {
"default": "images/logo.png"
},
"contributions": [
{
"id": "Fabrikam.HelloWorld",
"type": "ms.vss-web.hub",
"description": "Adds a 'Hello' hub to the Work hub group.",
"targets": [
"ms.vss-work-web.work-hub-group"
],
"properties": {
"name": "Hello",
"order": 99,
"uri": "hello-world.html"
}
}
],
"scopes": [
"vso.work"
],
"files": [
{
"path": "hello-world.html", "addressable": true
},
{
"path": "sdk/scripts", "addressable": true
},
{
"path": "images/logo.png", "addressable": true
}
]
}
Observação
Altere o editor para o seu nome de editor. Para criar um editor, consulte Empacotar, publicar e instalar.
Ícones
A secção icons especifica o caminho para o ícone da sua extensão no manifesto.
Adicione uma imagem quadrada intitulada logo.png, conforme mostrado no manifesto da extensão.
Contribuições
A secção de contribuições adiciona a sua contribuição - o hub Hello - ao seu manifesto de extensão.
Para cada contribuição na sua extensão, o manifesto define o seguinte:
- tipo de contribuição, hub
- Meta de contribuição, o grupo de hub de trabalho (confira todos os grupos de hub segmentáveis,
- as propriedades específicas de cada tipo de contribuição. Um hub tem as seguintes propriedades.
| Propriedade | Descrição |
|---|---|
| nome | Nome do hub. |
| Ordem / Encomenda | Posicionamento do hub no grupo de hubs. |
| URI | Caminho (relativo ao URI de base da extensão) da página para aparecer como o hub. |
Alcances
Inclua os escopos que a sua extensão exige.
Neste caso, precisamos aceder aos itens de vso.work trabalho.
Ficheiros
A secção de ficheiros indica os ficheiros que pretenda incluir no seu pacote - a sua página HTML, os seus scripts, o script SDK e o seu logótipo.
Defina addressable como true a menos que inclua outros arquivos que não precisam ser endereçáveis via URL.
Observação
Para obter mais informações sobre o ficheiro de manifesto de extensão, como propriedades e funcionalidades, confira a referência do manifesto de extensão.