SlapOS菜谱。
项目描述
slapos.cookbook
SlapOS菜谱的菜谱。
测试
可以在 slapos/test/recipe 下找到菜谱的单元测试。要运行测试,请使用 slapos/test/test_recipe 中的 provided unittest.defaultTestLoader,通过以下命令调用:
python setup.py test –test-suite slapos.test.test_recipe.additional_tests
generic_cloudooo
generic_cloudooo 菜谱可以帮助您部署带有配置文件的 cloudooo 服务。
如何使用 generic_cloudooo?
以下是在您的软件.cfg 中添加的示例部分:
[cloudooo-configuration]
recipe = slapos.cookbook:generic_cloudooo
configuration-file = ${directory:etc}/cloudooo.cfg
wrapper = ${directory:services}/cloudooo
data-directory = ${directory:srv}/cloudooo
ip = 0.0.0.0
port = 1234
ooo-paster = ${directory:bin}/cloudooo_paster
mimetype_entry_addition =
text/html application/pdf wkhtmltopdf
openoffice-port = 1235
ooo-binary-path = ${directory:libreoffice-bin}/program
environment =
FONTCONFIG_FILE = $${fontconfig-conf:output}
PATH = ${binary-link:target-directory}
ooo-uno-path = ${directory:libreoffice-bin}/basis-link/program
其中
配置文件路径 是放置配置文件的位置;
包装器 是放置最终可执行文件的位置;
数据目录 是 cloudooo 放置临时文件的位置;
ip 和 port 是 cloudooo 将监听的位置;
ooo-paster 是加载 cloudooo 配置并启动应用程序的程序路径;
mimetype_entry_addition 是要提供给默认 mimetype 注册表的额外条目。(见下面章节。)mimetype 条目列表按顺序排序,以便将全局 mimetype 放在列表底部。(例如,* * ooo > text/* * ooo)
mimetype_entry_addition = <input_format> <output_format> <handler>
openoffice-port 是内部 OpenOffice.org 服务将监听的位置;
ooo-binary-path 是 openoffice 服务的可执行文件路径;
环境 是与 openoffice 可执行文件一起使用的环境变量;
ooo-uno-path 是 UNO 库安装的路径。
默认 mimetype 注册表
application/vnd.oasis.opendocument* * ooo
application/vnd.sun.xml* * ooo
application/pdf text/* pdf
application/pdf * ooo
video/* * ffmpeg
audio/* * ffmpeg
application/x-shockwave-flash * ffmpeg
application/ogg * ffmpeg
application/ogv * ffmpeg
image/png image/jpeg imagemagick
image/png * ooo
image/* image/* imagemagick
text/* * ooo
application/zip * ooo
application/msword * ooo
application/vnd* * ooo
application/x-vnd* * ooo
application/postscript * ooo
application/wmf * ooo
application/csv * ooo
application/x-openoffice-gdimetafile * ooo
application/x-emf * ooo
application/emf * ooo
application/octet* * ooo
* application/vnd.oasis.opendocument* ooo
librecipe
感谢使用 slapos.cookbook:librecipe,在 SlapOS 环境中创建 zc.buildout 菜谱变得更容易。
如何使用?
在菜谱的 setup.py 中添加一个仅对 slap.lib.recipe 的安装要求。
在代码本身中从 slap.lib.recipe.BaseSlapRecipe.BaseSlapRecipe 继承。
使用 _install 钩子
from slap.lib.recipe.BaseSlapRecipe import BaseSlapRecipe class Recipe(BaseSlapRecipe): ... def _install(self): # refer below for list of available objects specific code of recipe
可用的变量 self。
由 zc.buildout 在 init 期间传递的名称和选项
work_directory – buildout 的目录
bin_directory –生成的二进制文件的位置
running_wrapper_location –要创建的包装器的文件名
data_root_directory –数据容器目录 –建议在此目录内为需要数据的服务提供命名目录
backup_directory –备份容器目录 –建议在此目录内为备份创建命名目录,其结构与 data_root_directory 相同
var_directory –各种,遵循 unix 的东西的容器
log_directory –日志的容器
run_directory –pidfiles 和套接字的容器
etc_directory –放置提供的服务配置的命名文件和目录的位置
computer_id –计算机 id
computer_partition_id –计算机分区的 id
server_url - Vifib 服务器的 url
software_release_url –实例化的软件发布版本的 url
slap –初始化与 Vifib 服务器的连接
computer_partition –初始化与计算机分区的连接
request –计算机分区请求方法的快捷方式
默认情况下,在调用 _install 钩子之前创建所有目录。
_install 方法应返回一个列表,其中包含 buildout 在部分卸载期间可以安全删除的路径。
重要假设
因为SlapOS环境中zc.buildout不知道数据何时改变,所以配方总是需要卸载/安装。这是在构建从BaseSlapRecipe派生的配方实例时完成的。
mkdirectory
mkdirectory会循环其选项并创建连接的目录
创建的目录不会被添加到路径列表中。
这些配方提供在实例文件夹中的自定义文件中保存一些buildout参数及其值的能力。
在这两个配方中,您必须提供一个文件名,它将被存储在实例文件夹的根目录中
WriteRecipe
用于创建一个部分(按buildout的section_name命名)。
您可以提供您想要的任何参数,以及它们的默认值。
每次运行buildout时,如果参数已在配置文件中保存,则不会执行任何操作。
如果参数的值在配置文件中已更改,则不会覆盖
/!如果您决定更改某个参数的默认值,则即使在手动更改后,配置文件中的所有其他参数也将被重置。说明:默认值不期望更改,除非出于开发目的。
ReadRecipe
它使用配置文件中所有部分的选项填充其自己的部分。
项目详情
slapos.cookbook-1.0.369.tar.gz的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | fffd1056f3468c94031a01b2db7adb63e3340b53d7930835409138189230a6b7 |
|
MD5 | 861f0a40dabf5dcae20b0f385b40d045 |
|
BLAKE2b-256 | 0d5dc17ee3b79477e1f07dba62cf13af7e91b676ee6c98b43e4ba09395ad9ea0 |