Poetry - プライベートパッケージ
Aikido がプライベートパッケージを含む依存関係を更新するには、正確なロックファイル更新を生成できるように、プライベートレジストリへのアクセスが必要です。Poetry では、 Google Artifact Registry 設定サービスキーを提供するか、 環境変数 Aikidoで。
環境変数を使って認証情報を追加する
プライベートレジストリに接続するための認証情報が固定の場合は、環境変数として指定できます。環境変数は次の形式で作成してください:
POETRY_HTTP_BASIC_[SOURCE_NAME]_USERNAMEPOETRY_HTTP_BASIC_[SOURCE_NAME]_PASSWORD
ここで [SOURCE_NAME] は、 pyproject.toml ファイル内で指定したデータソース名を大文字にしたものです。たとえば、次を設定します: POETRY_HTTP_BASIC_ARTIFACT_USERNAME と POETRY_HTTP_BASIC_ARTIFACT_PASSWORD 次のプロジェクトファイルに対して:
[[tool.poetry.source]]
name = "artifact"
url = "https://repo-1234567890.d.codeartifact.eu-west-1.amazonaws.com/pypi/poetry/simple/"以下の手順に従って、Aikido で Poetry の環境変数を設定できます:
- Aikido の AutoFix のアカウント設定ページに移動し、 こちら.
- 「Connect Registry」をクリックすると、構成モーダルが表示されます

- Poetry を選択すると、次の
POETRY_HTTP_BASIC_[SOURCE_NAME]_USERNAMEとPOETRY_HTTP_BASIC_[SOURCE_NAME]_PASSWORD環境変数を追加できるようになります:

- [Connect Registry]をクリックして、環境変数を保存します。
Poetry と AWS CodeArtifact を併用している場合、パスワードはその場で生成する必要があります。詳しくは、こちらを参照してください: ページ Poetry を AWS CodeArtifact とともに設定する方法について。
Autofix を介して PR を作成すると、Aikido は Poetry コマンドの実行時にこれらの環境変数を含めます。
GCP Artifact Registry の認証情報を追加する
GCP Artifact Registry では、認証情報を静的に生成することはできません。この場合は、以下の手順に従ってください。
1. GCP でサービス アカウントを作成する
まず、Google Cloud プロジェクトにサービス アカウントを作成します:
-
Google Cloud Console に移動します。
-
次へ移動します: IAM & Admin > サービス アカウント.
-
クリックします サービス アカウントを作成.
-
次の内容を入力します サービス アカウント名 たとえば
Aikido Artifact Registry Readerに移動し、 作成して続行. -
サービス アカウントに次の権限を付与します Artifact Registry Reader ロールが割り当てられている必要があります。

-
クリックします 続行 と 完了.
2. GCP でサービス アカウント用のキーを作成する
- On the サービス アカウント ページで、先ほど作成したサービス アカウントを見つけます。
- 右側の 3 つの点をクリックし、 キーを管理.
- クリックします キーを追加 > 新しいキーを作成.
- 選択 JSON に移動し、 作成.
- JSON キーファイルを安全な場所に保存します。
3. Aikido での設定
前提条件を満たしたら、以下の手順に従って、依存関係を更新する際に Aikido がプライベートレジストリで認証できるように設定できます:
- Aikido の autofixer のアカウント設定ページに移動し、 こちら.
- 「Connect Registry」をクリックすると、構成モーダルが表示されます

- Poetry を選択して、
GCP サービス アカウントキーセクションをモーダルの下部で見つけてください:

- 保存した JSON キー の内容を プライベートレジストリのサービス アカウント キー 欄に貼り付け
- クリックします レジストリを接続 て設定を保存します。