共享源码
从统一的 Git 源码开始,并保留与发布关联的精确提交和易读版本号。不同部署类型可以独立推进,同时继续关联到同一份源码历史。
软件交付
Microwave Pie 的软件交付能力旨在简化自托管应用的实施:基于共享源码管理发布,为部署创建合适的软件包,应用许可证,并让安装与更新始终关联到明确的发布版本。
共享交付模型
能力
不同环境并不总是需要相同的软件包格式,也不一定需要同时使用相同的发布版本。Microwave Pie 将共享应用源码、可复用发布、软件包、许可证和已安装实例分开管理,让每个方面都能有计划地推进。
从统一的 Git 源码开始,并保留与发布关联的精确提交和易读版本号。不同部署类型可以独立推进,同时继续关联到同一份源码历史。
当透明性、直接运行时部署或平台特定的 Python 安装更合适时,以源码形式交付应用。源码软件包与编译软件包使用相同的发布和许可模型。
当希望获得更自包含的运行环境时,交付编译后的应用软件包。编译只是交付方式的选择,并不是独立的产品分支,因此发布来源保持一致。
发布软件包时即可关联其许可证和目标部署上下文。软件包生命周期、许可证状态、下载、安装、更新、撤销和关闭可以统一管理,而无需以后再重新拼凑这些信息。
在有需要时,Raspberry Pi、GCP、源码和编译部署可以保持在不同的发布级别。缺失的 Git 提交既可以按部署类型检查,也可以在整个应用范围内检查。
当已批准的更新可用时,受管理应用可以自动提示,而不会强制安装。管理员可在应用 UI 中选择何时准备和应用更新;重启后,可向共享交付服务确认当前安装的发布版本,同时保留软件包与许可证的关系。
实施
软件包可以携带把应用发布转化为可运行部署所需的实施上下文:目标平台、软件包格式、安装行为、发布身份以及许可关系。
这样,实施流程可以从明确的发布版本开始,而不必要求每个环境单独重建构建和交付决策。当更高版本合适时,现有的软件包与许可证关系仍可保持不变,同时有计划地推进所选发布版本。
应用发布保留实际构建的制品和 Git 身份。
可自动通知更新可用,但下载、准备、应用和重启仍由管理员有意识地执行。
软件包、许可证和已安装实例在安装、更新、撤销和关闭过程中始终保持关联。
Blackcap
Blackcap 可通过源码或编译软件包部署到受支持的 Raspberry Pi 和 GCP 环境,同时保持发布、软件包、许可证和更新行为一致。