教程#

在开发周期中使用标签#

Anaconda Enterprise 4 存储库 标签 可用于促进开发周期并整理正在开发、测试和生产中的代码,而不会影响非开发用户。

在本教程中,我们将展示如何使用“test”标签,以便您可以上传文件而不会影响您的生产级包。如果没有 --label 参数,则默认标签为“main”。

  1. 您需要从 conda 包开始。如果您没有,请使用我们的示例 conda 包。在构建包之前,请编辑 anaconda-client/example-packages/conda/meta.yaml 文件中的版本为 2.0

    git clone https://github.com/anaconda-platform/anaconda-client
    cd anaconda-client/example-packages/conda/
    nano meta.yaml # Bump version to 2.0
    conda config --set anaconda_upload no
    conda build .
    
  2. 使用 Client upload 命令将您的测试包上传到存储库。添加 --label 选项告诉存储库仅对指定该标签的用户显示上传的文件

    anaconda upload /path/to/conda-package-2.0.tar.bz2 --label test
    

    注意:将 /path/to/ 替换为您存储包的路径。

  3. 您现在可以看到,即使在您搜索 conda “main”时,您也看不到测试包的 2.0 版本。这是因为您需要告诉 conda 寻找您的新“test”标签。

  4. --override 参数告诉 conda 不要使用您 ~/.condarc 文件中的任何频道。

    以下命令不生成任何 2.0 结果

    conda search --override -c USERNAME conda-package
    

    注意:将 USERNAME 替换为您的用户名。

    您的 2.0 包在这里

    conda search --override -c USERNAME/label/test conda-package
    

    注意:将 USERNAME 替换为您的用户名。

  5. 您可以将标签 USERNAME/label/test 提供给您的测试人员。

    注意:将 USERNAME 替换为您的用户名。

  6. 他们完成测试后,您可能希望将测试包复制回您的“main”标签

    anaconda label --copy test main
    

    您的 2.0 版本现在在 main 中

    conda search --override -c USERNAME conda-package
    

    注意:将 USERNAME 替换为您的用户名。

您也可以从您的仪表板管理您的包标签:https://<your-anaconda-repo>/USERNAME/conda-package

注意:将 <your-anaconda-repo> 替换为您的本地存储库的名称,将 USERNAME 替换为您的用户名。

如果您使用的是 anaconda-client 1.7 或更高版本,您可以使用 anaconda move 将包从一个标签移动到另一个标签

anaconda move --from-label OLD --to-label NEW SPEC

将 OLD 替换为旧标签,将 NEW 替换为新标签,将 SPEC 替换为要移动的包。SPEC 可以是“user/package/version/file”,也可以是“user/package/version”,在这种情况下它会移动该版本中的所有文件。

使用其他文件类型#

除了上传或下载 之外,您还可以将其他文件类型上传或下载到/从 Anaconda Enterprise 4 存储库。

上传其他文件类型#

您可以使用以下步骤通过 Anaconda Client 命令行界面 (CLI) 上传任何类型的文件。

PyPI 包文件、conda 包文件和笔记本文件会自动检测。其他类型的文件没有自动检测功能,因此您必须显式指定 packagepackage-typeversion 字段。

在以下示例中,我们将上传一个名为 baby-names 的电子表格,格式为逗号分隔值 (CSV)。

  1. 创建一个新包,这将创建一个 命名空间,它可以容纳多个文件

    anaconda login
    anaconda package --create jsmith/baby-names
    
  2. 将文件上传到新的命名空间

    anaconda upload --user jsmith --package baby-names --package-type file --version 1 baby-names1.csv
    

注意:在本示例中

  • 用户或组织名称为“jsmith”。

  • 包名称为“baby-names”。

  • 包类型为“file”。

  • 版本为“1”。

  • 完整文件名是 baby-names1.csv

下载其他文件类型#

文件(如上面创建的文件)位于

https://<your-anaconda-repo>/USERNAME/PACKAGE

任何人都可以使用 Client 下载这些文件

anaconda download USERNAME/PACKAGE

注意:将 <your-anaconda-repo> 替换为您的本地存储库的名称,将 USERNAME 替换为所需用户名,将 PACKAGE 替换为所需包名称。

如果存储库中存在多个同名但扩展名不同的文件,anaconda download 默认情况下会下载所有这些文件。如果您使用的是 anaconda-client 1.7 或更高版本,您可以使用 anaconda download 以及 --package-type-t 选项来指定其中一个文件。此选项可以使用 pypicondaipynbenv 这些值。