Установка пакета 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, с указанием имен пакетов. Все эти пакеты доступны в режиме предварительной версии.
| Служба | Пакет |
|---|---|
| Хранилище BLOB-объектов | github.com/Azure/azure-storage-blob-go |
| Хранилище файлов | github.com/Azure/azure-storage-file-go |
| Очередь службы хранилища | github.com/Azure/azure-storage-queue-go |
| Концентратор событий | github.com/Azure/azure-event-hubs-go |
| Служебная шина | 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:
| Пакет | Описание |
|---|---|
| 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, используйте код быстрого запуска.
- Краткое руководство по развертыванию виртуальной машины Azure из шаблона с помощью пакета Azure SDK для Go
- Передача объектов в хранилище BLOB-объектов Azure и обратно с помощью Go
- Подключение к базе данных Azure для PostgreSQL
Чтобы сразу приступить к работе с другими службами с помощью пакета SDK для Go, ознакомьтесь с доступными примерами кода.
- Аутентификация с помощью служб Azure
- Развертывание новых виртуальных машин с использованием аутентификации по SSH
- Развертывание образа контейнера в службе "Экземпляры контейнеров Azure"
- Создание кластера в службе Azure Kubernetes
- Работа со службами хранилища Azure
- Все примеры для пакета Azure SDK для Go