Python パッケージを発行する (CLI)

Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022

この記事では、NuGet コマンド ライン インターフェイスを使用して Python パッケージを Azure Artifacts フィードに発行する方法について説明します。

前提条件

製品 要件
Azure DevOps - Azure DevOps 組織。
- Azure DevOps プロジェクト。
- Python ダウンロードしてインストールします。

フィードの作成

  1. Azure DevOps 組織にサインインし、プロジェクトに移動します。

  2. Artifacts を選択し、フィードを作成します。

  3. フィードの 名前 を入力します。

  4. フィードでパッケージを表示できるユーザーを制御するには、[ 表示] 設定を選択します。

  5. フィードで nuget.org やnpmjs.com などのソースのアップストリーム パッケージを使用する場合は、[一般的なパブリック ソースのパッケージを含める] を選択します。

  6. [ スコープ] で、フィードのスコープを現在のプロジェクトと組織全体のどちらにするかを選択します。

  7. 終わったら [作成] を選択します。

    Azure DevOps Services で新しいフィードを作成するための選択を示すスクリーンショット。

  1. Azure DevOps サーバーにサインインし、プロジェクトに移動します。

  2. Artifacts を選択し、フィードを作成します。

  3. フィードの 名前 を入力します。

  4. フィードでパッケージを表示できるユーザーを制御するには、[ 表示] 設定を選択します。

  5. フィードで nuget.org やnpmjs.com などのソースのアップストリーム パッケージを使用する場合は、[一般的なパブリック ソースのパッケージを含める] を選択します。

  6. [ スコープ] で、フィードのスコープを現在のプロジェクトと組織全体のどちらにするかを選択します。

  1. 終わったら [作成] を選択します。

    Azure DevOps 2022 で新しいフィードを作成するための選択を示すスクリーンショット。

注記

フィードを作成すると、projectName Build Service (orgName) などのプロジェクトの Build Service アカウントに、既定でフィードおよびアップストリーム 閲覧者 (コラボレーター) ロールが割り当てられます。

パッケージの公開

  1. Project セットアップの手順に従って、フィードで認証を行っていない場合は、次の手順に進みます。

  2. Azure DevOps 組織にサインインしてから、プロジェクトに移動します。

  3. Artifacts を選択し、次に フィードに接続 を選択します。

  4. 左側のナビゲーション領域から twine を選択します。 ツインを使用して Azure Artifacts を初めて利用する場合は、必ず「ツールの取得」を選択し、指定された手順に従って、前提条件をインストールしてください。

  5. pypirc ファイルをホーム ディレクトリに追加し、指定されたスニペットを貼り付けます。 ファイルは次のスニペットのようになります。 パブリック PyPI インデックスの資格情報を含む pypirc が既にある場合は、[ pypi] セクションを削除して、プライベート パッケージを誤って PyPI に発行しないようにすることをお勧めします。

    [distutils]
    Index-servers =
    FEED_NAME
    
    [FEED_NAME]
    Repository = https://pkgs.dev.azure.com/ORGANIZATION_NAME/PROJECT_NAME/_packaging/FEED_NAME/pypi/upload/
    
  6. プロジェクト ディレクトリで次のコマンドを実行して、ソースとホイールのディストリビューションを作成します。

    python setup.py sdist bdist_wheel
    
  7. 次のコマンドを実行してパッケージを発行します。 プライベート パッケージが誤って PyPI に発行されないようにするには、 -r REPOSITORY_NAME フラグを使用します。

    twine upload -r REPOSITORY_NAME dist/*
    

重要

artifacts-keyring を使用するには、twine 1.13.0 以上が必要です。 詳細については、 Usage の要件 を参照してください。