プライベート、リモート、バーチャルGoレジストリの設定方法について

How to set up a Go Registry

Goパッケージの依存関係を管理および整理する最も簡単な方法は、Go repositoryを使用することです。チーム全体で共有されている依存関係に対して、信頼性が高く、安全で、一貫性があり、効率的なアクセスを中央で行う必要があります。Goクライアントと透過的に動作する複数のレジストリを設定する場所が含まれます。

JFrog Artifactory、Xray、Pipelinesを含むJFrog無料クラウドサブスクリプションを使えば、無料のローカル、リモート、バーチャルGoレジストリを数分でセットアップできます。このブログ記事では、手順について説明します。

開始する前に

事前準備として必要な作業は以下の通りです。

手順1:使用する環境にログインする

デフォルトのユーザー名「admin」および、パスワード:オンプレミスのインストール用のパスワード「password」、またはクラウドインストール用に電子メールで提供された認証情報を使用してログインする。

Login to your environment

手順2:ローカルGo repositoryを追加する

後の手順で作成するカスタマイズされたGoパッケージの依存関係を格納するために使用します。Administrationモジュールに移動します。「Repositories」メニューを展開し、メニュー項目「Repositories」をクリックします。

Goパッケージタイプの新しいローカルリポジトリを追加します。Repository Keyに [Go-challenge-local] を入力し、残りの設定はデフォルトのままにします。

Add local Go repository

手順3:リモートGo repositoryを追加する

キャッシュプロキシとして使用されるように、http://proxy.golang.org/からサードパーティの依存関係を格納します。

リポジトリページの「Remote」タブをクリックして、新規のリモートリポジトリをGoパッケージタイプで追加します。Repository Keyに [Go-challenge-remote] を入力し、残りの設定はデフォルトのままにします。

Add remote Go repository

手順4:バーチャルGo repositoryを追加する

最初のGoプロジェクトを作成するときに使用します。

リポジトリページの「Virtual」タブをクリックして、新規のバーチャルリポジトリをGoパッケージタイプで追加します。Repository Keyに [Go-challenge] を入力し、手順2および3で作成したローカルおよびリモートのGo repositoryを追加します(矢印ボタンを使用して、[Available Items] から [Included Items] に移動します)。リスト内のリポジトリの順序によって、Goプロジェクトの構築に必要な依存関係の解決に使用される順序が決まります。手順2で作成したローカルリポジトリをデフォルトのデプロイリポジトリ(Default Deployment Repository)として選択します。デフォルトのデプロイリポジトリは、ビルドするGoパッケージの依存関係がプッシュされるリポジトリです。残りの設定はデフォルトのままにしておきます。

Add virtual Go repository

手順5:JFrog GitHubのリポジトリをフォークし、Goのサンプルを取得する

このリポジトリには、プロジェクトの構築に使用する簡単なサンプルが含まれています。

手順6:JFrog CLIを構成する

自動化スクリプトを簡素化するJFrog製品へのアクセスを自動化する、単純なインタフェースを提供するスマートクライアントであるJFrog CLIを構成します。

  • JFrog Platformを構成します。
    $ jfrog config add
    Configure the JFrog Platform
  • 次の手順を使用して、Goでプロジェクトをビルドし、Artifactoryからプロジェクトの依存関係を解決します。
    • ルートプロジェクトディレクトリに移動するcd Go_Challenge)
    • プロジェクトのリポジトリを構成します。
      $ jf go-config
      Configure project repositories
    • プロジェクトをビルドし、Artifactoryからプロジェクトの依存関係を解決します。
      $ jf go build --build-name=my-go-build --build-number=1.0.0
      Build project and resolve project dependencies
    • go publishを使用して、GoパッケージをArtifactoryに公開します。
      jf gp v1.2.3 --build-name=my-go-build --build-number=1.0.0
      Publish Go Packages to Artifactory
    • ビルド情報をArtifactoryに公開します。
      $ jf rt bp my-go-build 1.0.0

手順8:リポジトリを表示する

プラットフォームUIでApplicationモジュールに移動し、[Artifactory] メニューを展開して [Artifacts] をクリックします。ここでは、新しいアーティファクトの詳細を確認できます。

View your repository

Go repository

Go repositoryの設定が完了したら、ローカル、リモート、およびバーチャルのリポジトリにすべての依存関係を保存できます。このような手順で設定していきます。

Your Go repository

以上です。

あとは、各自お試しください。