Установка пакета Azure SDK для Go

Добро пожаловать в пакет Azure SDK для Go! Этот пакет SDK позволяет взаимодействовать со службами Azure и управлять ими из приложений Go.

Получение пакета Azure SDK для Go

Пакет Azure SDK для Go совместим с Go версии 1.8 и выше. Для окружений, в которых используются профили Azure Stack, требуется Go версии не ниже 1.9. Чтобы установить Go, следуйте соответствующим инструкциям.

Вы можете скачать пакет Azure SDK для Go и его зависимости с помощью команды go get.

go get -u -d github.com/Azure/azure-sdk-for-go/...

Предупреждение

Убедитесь, что в URL-адресе слово Azure написано с прописной буквы. В противном случае при работе с пакетом SDK могут возникнуть проблемы импорта, связанные с регистром. Azure также нужно указывать с прописной буквы в операторах импорта.

Некоторые службы Azure содержат собственные пакеты SDK Go, которые не включены в основной пакет Azure SDK для Go. В следующей таблице перечислены службы, содержащие собственные пакеты SDK, с указанием имен пакетов. Все эти пакеты доступны в режиме предварительной версии.

Service Пакет
Хранилище BLOB-объектов github.com/Azure/azure-storage-blob-go
Файлы Azure github.com/Azure/azure-storage-file-go
Очередь хранилища github.com/Azure/azure-storage-queue-go
Центр событий github.com/Azure/azure-event-hubs-go
Cлужебная шина github.com/Azure/azure-service-bus-go

Вендоринг пакета Azure SDK для Go

Выполнить вендоринг пакета Azure SDK для Go можно с помощью средства dep. Чтобы обеспечить стабильность, мы рекомендуем использовать вендоринг. Для использования dep в проекте добавьте github.com/Azure/azure-sdk-for-go в раздел [[constraint]] файла Gopkg.toml. Например, чтобы выполнить вендоринг для версии 14.0.0, добавьте следующую запись:

[[constraint]]
name = "github.com/Azure/azure-sdk-for-go"
version = "14.0.0"

Добавление пакета Azure SDK для Go в проект

Чтобы использовать службы Azure из кода Go, импортируйте все службы, с которыми вы взаимодействуете, и необходимые модули autorest. Получить полный список доступных модулей для доступных служб и пакетов AutoRest можно на сайте GoDoc. Ниже приводятся наиболее распространенные пакеты, которые нужно скачать в репозитории go-autorest:

Пакет Description
github.com/Azure/go-autorest/autorest Объекты для обработки аутентификации клиента службы
github.com/Azure/go-autorest/autorest/azure Константы для взаимодействия со службами Azure
github.com/Azure/go-autorest/autorest/adal Механизмы аутентификации для доступа к службам Azure
github.com/Azure/go-autorest/autorest/to Вспомогательные приложения утверждения типа для работы со структурами данных пакета Azure SDK

Версии пакетов Go и служб Azure управляются независимо друг от друга. Версии службы входят в путь импорта модуля (под модулем services). Полный путь к модулю состоит из имени службы, за которым следует версия в формате YYYY-MM-DD и снова имя службы. Например, чтобы импортировать версию 2017-03-30 службы вычислений, выполните следующий код:

import "github.com/Azure/azure-sdk-for-go/services/compute/mgmt/2017-03-30/compute"

При запуске разработки рекомендуется использовать и поддерживать последнюю версию службы. Требования службы могут изменяться в разных версиях. Это может привести к ошибкам кода, даже если в это время обновления пакета SDK для Go не выполняются.

Если требуется общий моментальный снимок служб, вы также можете выбрать одну версию профиля. В нашем случае версия 2017-03-09 относится только к заблокированному профилю, который может не содержать последние версии служб и функций. Профили находятся в папке модуля profiles вместе с версиями в формате YYYY-MM-DD. Службы группируются по версиям профиля. Например, чтобы импортировать модуль управления ресурсами Azure из профиля 2017-03-09, используйте следующий код:

import "github.com/Azure/azure-sdk-for-go/profiles/2017-03-09/resources/mgmt/resources"

Предупреждение

Существуют также профили preview и latest. Мы не рекомендуем использовать их. Это профили промежуточных версий, и поведение службы может измениться в любое время.

Следующие шаги

Чтобы начать работу с пакетом Azure SDK для Go, используйте код быстрого запуска.

Чтобы сразу приступить к работе с другими службами с помощью пакета SDK для Go, ознакомьтесь с доступными примерами кода.