Skip to main content

内部 python 脚本的应用程序处理程序

项目描述

世界树

概念

yggdrasil 库旨在通过定义应用程序来促进将脚本分发到生产环境中。从概念上讲,每个应用程序定义为:

  • 名称:描述要安装/卸载的应用程序
  • 源代码:必须访问的项目的源代码
  • 入口点:项目的入口点
  • 虚拟环境:运行应用程序的环境

通过其 API,yggdrasil 为您提供了在多个虚拟环境之间无缝切换的方法,同时可以轻松地从命令行调用您的自制脚本。

入门

在使用该工具创建应用程序之前,yggdrasil 需要进行初始设置。首先,安装包(来自 PyPI 或 Github):

pip install ud-yggdrasil
pip install git+https://www.github.com/um-ed/ud-yggdrasil.git

然后,创建基本文件夹结构以将 yggdrasil 安装到:

yggdrasil seed

如果路径设置为环境变量(YGGDRASIL_ROOT),文件夹结构将在那里创建。如果没有,它将在用户的Documents文件夹下创建。为了使每个应用程序都可以从命令行轻松调用,还建议将 Yggdrasil\Scripts完整路径添加到Path环境变量中。

就是这样,您已准备好创建您的第一个应用程序!

申请要求

应用程序的定义是通过 settings.yaml 文件(在 Y​​ggdrasil\settings 下)完成的。该库提供了安装仅存储在本地的应用程序(以下称为本地应用程序)或在线托管在 git 存储库中(以下称为 Web 应用程序)的可能性。运行种子时会自动创建设置文件,已经预先填充了本地和网络设置的虚拟示例。如果有疑问/在本地进行了更改,也可以在此存储库 (yggdrasil\data\template_settings.yaml) 下找到它。为了能够创建应用程序,核心项目还需要定义:

  • 包含项目依赖项的 requirements.txt 文件,位于包/项目目录的源代码中
  • 对于基于 Web 的应用程序,项目需要在 setup.py 文件中定义入口点

Yggdrasil 命令

Yggdrasil 可以从 shell 或 python 调用。从外壳:

yggdrasil seed # Creates a seed for yggdrasil
yggdrasil create app_name # Installs an app for the given name
yggdrasil remove app_name # Uninstalls an app for the given name
yggdrasil show app_name # Show information related to the app name provided

(进一步的参数化可用,详细信息使用 -h)

从蟒蛇:

import yggdrasil as ygg
ygg.seed() # Creates a seed for yggdrasil
ygg.create("app_name") # Installs an app for the given name
ygg.remove("app_name") # Uninstalls an app for the given name
ygg.show("app_name") # Show information related to the app name provided

通过 yggdrasil 安装应用程序后(并假设 yggdrasil 脚本的路径已添加到Path环境变量中),您将能够直接从命令行调用项目的入口点:

app_name

欢迎任何反馈!

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

ud-yggdrasil-2.0.0.tar.gz (10.2 kB 查看哈希

已上传 source

内置分布

ud_yggdrasil-2.0.0-py3-none-any.whl (17.1 kB 查看哈希

已上传 py3