构建操作系统镜像
OpenFactory 将标准化配方转换为映像工件,并在请求且可用时启动该工件进行验证。确切的构建器和阶段因基础映像系列和部署而异。
配方控制什么
| 面积 | 规范位置 | 评论问题 |
|---|---|---|
| 基础和硬件意图 | base_image、hardware | 这是正确的发行版、版本、架构和最低配置文件吗? |
| 功能和套件 | os.features、os.packages | 该基础上是否存在并支持所请求的功能? |
| 服务和账户 | os.services、os.users | 配置和最低权限访问是否明确? |
| 桌面和品牌 | os.desktop_settings、os.branding | 所选桌面是否拥有这些设置和资产? |
| 安装程序和持久性 | os.installer、os.persistence | 安装到磁盘和持久性要求是否经过实际测试? |
| 定制自动化 | os.startup_scripts,附件,源码包 | 输入是否已固定、有界并且可以安全地以声明的用户身份运行? |
| 验证 | scenarios | 测试是否观察每项实质性结果而不仅仅是引导? |
完整形状请参见食谱架构。
构建生命周期
公共状态流可以包括规划、配置、源包工作、图像生成、最终确定和测试。不保证每个目标都显示为相同的命名阶段。遵循启动请求返回的构建 ID,并将后端的当前状态视为权威。
将这些结果分开:
1.validated表示已接受已识别的配方形状;
2. 终端成功构建意味着工件已完成;
3. 测试成功意味着所选断言在其环境中通过了;和
4. 如果启用的话,认证或发布是稍后的政策决定。
安静的进展并不是创建重复构建的理由。使用相同的构建 ID 重新连接到构建控制台或状态端点。如果构建最终失败,请在重试之前保留阶段、错误和日志。
推荐的工作流程
- 写下可观察的验收标准。
- 生成或编辑配方。
- 验证它并将标准化结果与完整对话进行比较。
- 检查推断的功能、外部源、安装程序设置和场景。
- 开始一个构建并遵循其持久 ID。
- 查看工件摘要、包清单、警告和测试证据。
- 在符合要求的一次性环境中启动或安装。
- 仅通过适用的审批通道进行推广或发布。
主题指南
| 主题 | 用它来 |
|---|---|
| 基础图像 | 选择受支持的构建系列 |
| 特征 | 了解注册的能力模块 |
| 服务 | 声明服务配置 |
| 定制软件 | 审查存储库支持的包输入 |
| 用户 | 安全创建图像本地帐户 |
| 桌面 | 选择并验证桌面设置 |
| 启动脚本 | 创作有界首次启动单元 |
从最小的有用图像开始。仅在了解先前工件的行为和证据后才添加功能。