正式なドキュメントは英語版であり、この日本語訳はAI支援翻訳により作成された参考用のものです。日本語訳の一部の内容は人間によるレビューがまだ行われていないため、翻訳のタイミングにより英語版との間に差異が生じることがあります。最新かつ正確な情報については、英語版をご参照ください。

Go Proxy API

  • プラン: Free、Premium、Ultimate
  • 提供形態: GitLab Self-Managed、GitLab Dedicated

このAPIを使用して、Goパッケージマネージャークライアントと対話します。このAPIは、デフォルトで無効になっている機能フラグの背後にあります。GitLab管理者は、GitLab Railsコンソールにアクセスして、このAPIをGitLabインスタンスで有効にできます。

このAPIは、goコマンドで使用され、通常は手動での利用を想定していません。

これらのエンドポイントは、標準のAPI認証方法に準拠していません。Go Proxyパッケージドキュメントで、サポートされているヘッダーとトークンのタイプに関する詳細を参照してください。記載されていない認証方法は、将来削除される可能性があります。

リスト

指定されたGoモジュールのすべてのタグ付きバージョンを取得します:

GET projects/:id/packages/go/:module_name/@v/list
属性必須説明
id文字列はいプロジェクトのIDまたは完全なパス。
module_name文字列はいGoモジュールの名前。
curl --header "PRIVATE-TOKEN: <personal_access_token>" \
  --url "https://gitlab.example.com/api/v4/projects/1/packages/go/my-go-module/@v/list"

出力例:

"v1.0.0\nv1.0.1\nv1.3.8\n2.0.0\n2.1.0\n3.0.0"

バージョンメタデータ

指定されたGoモジュールのすべてのタグ付きバージョンを取得します:

GET projects/:id/packages/go/:module_name/@v/:module_version.info
属性必須説明
id文字列はいプロジェクトのIDまたは完全なパス。
module_name文字列はいGoモジュールの名前。
module_version文字列はいGoモジュールのバージョン。
curl --header "PRIVATE-TOKEN: <personal_access_token>" \
  --url "https://gitlab.example.com/api/v4/projects/1/packages/go/my-go-module/@v/1.0.0.info"

出力例:

{
  "Version": "v1.0.0",
  "Time": "1617822312 -0600"
}

モジュールファイルのダウンロード

.modモジュールファイルをフェッチします:

GET projects/:id/packages/go/:module_name/@v/:module_version.mod
属性必須説明
id文字列はいプロジェクトのIDまたは完全なパス。
module_name文字列はいGoモジュールの名前。
module_version文字列はいGoモジュールのバージョン。
curl --header "PRIVATE-TOKEN: <personal_access_token>" \
  --url "https://gitlab.example.com/api/v4/projects/1/packages/go/my-go-module/@v/1.0.0.mod"

ファイルに書き込みます:

curl --header "PRIVATE-TOKEN: <personal_access_token>" \
  --url "https://gitlab.example.com/api/v4/projects/1/packages/go/my-go-module/@v/1.0.0.mod" >> foo.mod

これは現在のディレクトリのfoo.modに書き込まれます。

モジュールソースのダウンロード

モジュールソースの.zipをフェッチします:

GET projects/:id/packages/go/:module_name/@v/:module_version.zip
属性必須説明
id文字列はいプロジェクトのIDまたは完全なパス。
module_name文字列はいGoモジュールの名前。
module_version文字列はいGoモジュールのバージョン。
curl --header "PRIVATE-TOKEN: <personal_access_token>" \
  --url "https://gitlab.example.com/api/v4/projects/1/packages/go/my-go-module/@v/1.0.0.zip"

ファイルに書き込みます:

curl --header "PRIVATE-TOKEN: <personal_access_token>" \
  --url "https://gitlab.example.com/api/v4/projects/1/packages/go/my-go-module/@v/1.0.0.zip" >> foo.zip

これは現在のディレクトリのfoo.zipに書き込まれます。