张立卡斯/manifest-publisher

一个命令行工具,用于构建和发布 herrera-io/php-phar-update 的 manifest.json 文件

0.2.0 2017-12-19 03:01 UTC

This package is auto-updated.

Last update: 2024-08-25 13:22:12 UTC


README

Build Status HHVM Status Scrutinizer Code Quality Latest Stable Version License

想在自己的 phar 中实现和维持一个类似于 Composer 的 self-update 命令的自更新功能吗?

Manifest Publisher 是一个 CLI 工具,基于 BoxPhar Update 项目构建,以便轻松实现和维护 phar 的自更新功能。从技术角度来看,它自动生成并发布用于确定您的应用程序何时可更新的 Phar Update 库的 manifest.json 文件。该 manifest.json 文件可以发布到各种目标,通常是 GitHub Pages

背景

多亏了 Kevin HerreraBox 项目上的出色工作,将 CLI 应用程序作为 phar 分发变得非常简单。他甚至更进一步,使实现类似于 Composer 的 php composer.phar self-update 命令的自更新功能变得非常简单,这样您的用户就可以轻松保持应用程序的更新。请参阅 Matthieu Moquet 的博客文章 Distributing a PHP CLI app with ease,其中详细介绍了 Phar Update 工具。本项目从博客文章的结尾开始,提供一个更强大的工具,可自动生成并发布到各种目标的 manifest.json 文件。

安装

通过浏览器从 https://github.com/cpliakas/manifest-publisher/releases 下载 manifest.phar 文件,或通过命令行下载最新稳定版本

  • curl -O http://www.chrispliakas.com/manifest-publisher/download/latest/manifest.phar

用法

vendor/repository 项目生成 manifest.json 并将其发布到 GitHub Pages。

  • php manifest.phar publish:gh-pages vendor/repository

manifest.phar 应用程序更新到最新稳定版本(是的,本项目自食其果)。

  • php manifest.phar self-update

假设

  • 您正在操作一个位于 GitHub 上且您有推送访问权限的存储库
  • 项目的根目录中存在 box.json 文件
  • 已根据 GitHub 的文档 设置了 gh-pages 分支
  • phar 通过 GitHub Releases 分发,标签名称与相应的 VCS 标签完全匹配

注意事项

  • 确保将 vendor/herrera-io/phar-update/res/schema.json 包含在 box.json 中
  • Manifest Publisher 当前不支持私有 GitHub 仓库