Azure SDK for Go のインストール

Azure SDK for Go へようこそ。 この SDK を使用すると、Go アプリケーションから Azure サービスを管理し、サービスと対話できます。

Azure SDK for Go を入手する

Azure SDK for Go は、Go バージョン 1.8 以上と互換性があります。 Azure Stack プロファイルを使用している環境では、Go バージョン 1.9 が最小要件となります。 Go をインストールする必要がある場合は、Go のインストール手順に従ってください。

go get を使用して、Azure SDK for Go と依存関係をダウンロードできます。

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

警告

URL では Azure の先頭文字を必ず大文字にしてください。 そうしないと、SDK を使用するときに大文字と小文字の区別に関連するインポートの問題が発生する可能性があります。 インポート ステートメントでも Azure の先頭文字を大文字にする必要があります。

一部の Azure サービスには独自の Go SDK が用意されていますが、これは Azure SDK for Go のコア パッケージには含まれていません。 次の表に、独自の SDK が用意されているサービスと、そのパッケージ名を示します。 これらのパッケージは、すべてプレビュー段階にあると考えられます。

サービス Package
Blob Storage github.com/Azure/azure-storage-blob-go
File Storage github.com/Azure/azure-storage-file-go
ストレージ キュー github.com/Azure/azure-storage-queue-go
イベント ハブ github.com/Azure/azure-event-hubs-go
Service Bus github.com/Azure/azure-service-bus-go

Azure SDK for Go をベンダリングする

Azure SDK for Go は、dep を使用してベンダリングできます。 安定性のため、ベンダリングすることをお勧めします。 自分のプロジェクトで dep を使用するには、github.com/Azure/azure-sdk-for-goGopkg.toml[[constraint]] セクションに追加します。 たとえば、バージョン 14.0.0 でベンダリングするには、次のエントリを追加します。

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

Azure SDK for Go をプロジェクトに含める

Go コードから Azure サービスを使用するには、対話するサービスと必要な autorest モジュールをインポートします。 提供されているモジュールの一覧については、利用可能なサービスおよび AutoRest パッケージ の GoDoc を参照してください。 必要となる go-autorest の最も一般的なパッケージを次に示します。

Package 説明
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 形式のバージョンが続き、その後にもう一度サービス名が続きます。 たとえば、Compute サービスの 2017-03-30 バージョンをインポートするには、次のように入力します。

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

開発の開始時には最新バージョンのサービスを使用して、一貫性を保つことをお勧めします。 バージョン間で Go SDK の更新プログラムが公開されない場合でも、その期間中にコードの破損につながりかねないようなサービス要件の変更が発生することがあるためです。

サービスの一括スナップショットが必要な場合は、単一のプロファイル バージョンを選択することもできます。 現時点では、ロックされたプロファイルはバージョン 2017-03-09 だけです。このバージョンには、サービスの最新の機能が含まれていない可能性があります。 プロファイルは profiles モジュールの下にあり、バージョンは YYYY-MM-DD 形式です。 サービスは、プロファイル バージョンの下にグループ化されます。 たとえば、2017-03-09 プロファイルから Azure リソース管理モジュールをインポートするには、次のように入力します。

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

警告

previewlatest の各プロファイルも用意されています。 これらは使用しないことをお勧めします。 これらのプロファイルはローリング バージョンであり、サービスの動作が変更される可能性があります。

次のステップ

Azure SDK for Go を使い始めるときには、クイック スタートをお試しください。

Go SDK で他のサービスをすぐに使用する場合は、用意されているサンプル コードを参照してください。