Usar perfis de versão da API com o Go no Azure Stack Hub

Go e perfis de versão

Um perfil é uma combinação de diferentes tipos de recursos com versões diferentes de serviços diferentes. O uso de um perfil ajuda você a misturar e combinar entre diferentes tipos de recursos. Os perfis podem fornecer os seguintes benefícios:

  • Estabilidade para seu aplicativo bloqueando versões de API específicas.
  • Compatibilidade para seu aplicativo com o Azure Stack Hub e datacenters regionais do Azure.

No SDK do Go, os perfis estão disponíveis no caminho dos perfis. Os números de versão do perfil são rotulados no formato YYYY-MM-DD . Por exemplo, o perfil de API do Azure Stack Hub versão 2020-09-01 é para as versões 2102 ou posteriores do Azure Stack Hub. Para importar um determinado serviço de um perfil, importe seu módulo correspondente do perfil. Por exemplo, para importar o serviço de computação do perfil 2020-09-01 , use o seguinte código:

import "github.com/Azure/azure-sdk-for-go/profiles/2020-09-01/compute/mgmt/compute"

Instale o SDK do Azure para linguagem Go

  1. Instale o Git. Consulte Introdução – Instalando o Git.
  2. Instale o Go. Os perfis de API do Azure exigem o Go versão 1.9 ou mais recente. Consulte a linguagem de programação Go.

Perfis

Para usar outro perfil ou versão do SDK, substitua a data em uma instrução de importação, como github.com/Azure/azure-sdk-for-go/profiles/<date>/storage/mgmt/storage. Por exemplo, para a versão de 2008, o perfil é 2019-03-01, e a cadeia de caracteres se torna github.com/Azure/azure-sdk-for-go/profiles/2019-03-01/storage/mgmt/storage. Observe que, às vezes, a equipe do SDK altera o nome dos pacotes, portanto, simplesmente substituir a data de uma cadeia de caracteres por uma data diferente pode não funcionar. Consulte a tabela a seguir para associação de perfis e versões do Azure Stack.

Versão do Azure Stack Perfil
2108 2020-09-01
2102 2020-09-01
2008 01/03/2019

Para obter mais informações sobre os perfis de API e do Azure Stack Hub, consulte o Resumo dos perfis de API.

Consulte perfis do SDK do Go.

Subscription

Se você ainda não tiver uma assinatura, crie uma assinatura e salve a ID da assinatura a ser usada posteriormente. Para obter informações sobre como criar uma assinatura, consulte este documento.

Entidade de serviço

Uma entidade de serviço e suas informações de ambiente associadas devem ser criadas e salvas em algum lugar. A entidade de serviço com owner função é recomendada, mas dependendo do exemplo, uma contributor função pode ser suficiente. Consulte o README no repositório de exemplo para os valores necessários. Você pode ler esses valores em qualquer formato compatível com a linguagem SDK, como em um arquivo JSON (que nossos exemplos usam). Dependendo do exemplo que está sendo executado, nem todos esses valores podem ser usados. Consulte o repositório de exemplo para obter um código de exemplo atualizado ou informações adicionais.

ID do locatário

Para localizar a ID do diretório ou locatário do Azure Stack Hub, siga as instruções neste artigo.

Registrar provedores de recursos

Registre os provedores de recursos necessários seguindo este documento. Esses provedores de recursos serão necessários dependendo dos exemplos que você deseja executar. Por exemplo, se você quiser executar um exemplo de VM, o registro do Microsoft.Compute provedor de recursos será necessário.

Ponto de extremidade do gerenciador de recursos do Azure Stack

O ARM (Azure Resource Manager) é uma estrutura de gerenciamento que permite que os administradores implantem, gerenciem e monitorem recursos do Azure. O Azure Resource Manager pode lidar com essas tarefas como um grupo, em vez de individualmente, em uma única operação. Você pode obter as informações de metadados do ponto de extremidade do Resource Manager. O ponto de extremidade retorna um arquivo JSON com as informações necessárias para executar seu código.

  • O ResourceManagerEndpointUrl no ASDK (Azure Stack Development Kit) é: https://management.local.azurestack.external/.
  • O ResourceManagerEndpointUrl em sistemas integrados é: https://management.region.<fqdn>/, onde <fqdn> está seu nome de domínio totalmente qualificado.
  • Para recuperar os metadados necessários: <ResourceManagerUrl>/metadata/endpoints?api-version=1.0. Para versões de API disponíveis, consulte as especificações da API rest do Azure. Por exemplo, na 2020-09-01 versão de perfil, você pode alterar o api-version para 2019-10-01 provedor de recursos microsoft.resources.

JSON de exemplo:

{
   "galleryEndpoint": "https://portal.local.azurestack.external:30015/",
   "graphEndpoint": "https://graph.windows.net/",
   "portal Endpoint": "https://portal.local.azurestack.external/",
   "authentication": 
      {
         "loginEndpoint": "https://login.windows.net/",
         "audiences": ["https://management.yourtenant.onmicrosoft.com/3cc5febd-e4b7-4a85-a2ed-1d730e2f5928"]
      }
}

Exemplos

Consulte o repositório de exemplo para obter o código de exemplo atualizado. A raiz README.md descreve os requisitos gerais e cada subdiretório contém um exemplo específico próprio README.md sobre como executar esse exemplo.

Veja aqui o exemplo aplicável para a versão 2008 ou perfil 2019-03-01 do Azure Stack e abaixo.

Próximas etapas

Saiba mais sobre perfis de API: