wpn-xm/software

WPN-XM 服务器堆栈的软件资源

dev-master 2019-01-08 00:01 UTC

This package is auto-updated.

Last update: 2022-03-05 13:31:58 UTC


README

Latest Stable Version Total Downloads Build Status License

这是什么?

该仓库包含第三方软件组件的安装和配置管理文件。

它提供了配置、脚本和附加文件来配置和管理已安装的组件。

在创建安装程序期间会检索此单体仓库。

这使得我们可以

  • 将软件资源的配置包含到离线安装程序中,以便开箱即用进行配置,
  • 包含已安装软件的 CLI 任务,
  • 包含 Web 接口支持,允许基于 Web 的组件管理和行政。

单仓库到多仓库: https://github.com/wpnxm-software

每个软件资源文件夹都是一个 Composer 文件夹。

我们使用 git subtree split 策略将软件资源文件夹分割成一个单向只读子树分割仓库。

这使得在安装后可以更新软件资源的配置和管理脚本。

您可以在以下位置找到各个包:https://github.com/wpnxm-software

结构

每个文件夹包含以下顶级文件和文件夹

  • 一个 readme.md
  • 一个 manifest.json 配置文件,
  • 一个 composer.json 文件,
  • 文件夹 filesconfigstaskswebinterface

示例布局:Nginx - https://github.com/WPN-XM/software/tree/master/nginx

  nginx/
    files/
    configs/
    tasks/
    webinterface/
    composer.json
    manifest.json
    readme.md

manifest.json 参考

manifest.json 文件是一个包含包元数据的 JSON 文件。它用于在 WPN-XM 服务器堆栈的上下文中识别软件资源。始终将清单包含在包中。

以下键被使用

  • name - 软件的优美名称
  • website - 官方网站 URL
  • description - 软件的描述
  • category - (可选)软件类别
  • tags - (可选)一个或多个标签
  • logo - (可选)链接到文件文件夹中的徽标
  • tasks - 使用任务键来跟踪任务脚本的实现进度
    • installuninstallupdateconfigureunconfigurebackuprestoreversion

这是 https://github.com/WPN-XM/software/blob/master/nginx/manifest.json 的内容

{
    "name": "Nginx",
    "website": "http:\/\/nginx.org\/",
    "description": "NGINX is a free, open-source, high-performance HTTP server, reverse proxy, and IMAP\/POP3 proxy server.",
    "category": "webserver",
    "tags": [
        "webserver",
        "reverse-proxy",
        "proxy"
    ],
    "logo": "",
    "tasks": {
        "install": "todo",
        "uninstall": "todo",
        "update": "todo",
        "configure": "todo",
        "unconfigure: "todo",
        "backup": "todo",
        "restore": "todo",
        "version": "todo"
    }
}