diff --git a/llmdoc/architecture/xxxigcc-update-playbook.md b/llmdoc/architecture/xxxigcc-update-playbook.md new file mode 100644 index 0000000..b6f693f --- /dev/null +++ b/llmdoc/architecture/xxxigcc-update-playbook.md @@ -0,0 +1,30 @@ +# xxxigcc Update Playbook 架构 + +## 1. 身份定义 +- **功能**: 自动化 xxxigcc 软件包更新和服务管理 +- **目的**: 简化 xxxigcc 服务的部署和维护流程 + +## 2. 核心组件 +- `xxxigcc_update.yaml`: 主要 Playbook 文件 + - 使用 `ansible.builtin.apt` 模块管理软件包 + - 使用 `ansible.builtin.systemd` 模块控制服务 + +## 3. 执行流程(LLM 检索路径) +1. **APT 更新** + - 更新本地软件包缓存 + - 确保可获取最新版本的 xxxigcc + +2. **软件包管理** + - 安装或更新 xxxigcc 到最新版本 + - 处理潜在的依赖关系 + +3. **服务管理** + - 启用服务开机自启 + - 启动服务 + - 验证服务状态 + +## 4. 设计原则 +- 幂等性 +- 最小化复杂性 +- 详细日志记录 +- 错误处理和状态验证 \ No newline at end of file diff --git a/llmdoc/guides/xxxigcc-update-guide.md b/llmdoc/guides/xxxigcc-update-guide.md new file mode 100644 index 0000000..7da6112 --- /dev/null +++ b/llmdoc/guides/xxxigcc-update-guide.md @@ -0,0 +1,27 @@ +# 如何使用 xxxigcc_update.yaml Playbook + +## 前置条件 +1. 已安装 Ansible +2. 已配置 APT 软件仓库(使用 gitea_repo_setup.yaml) + +## 使用步骤 + +1. **准备工作** + ```bash + # 确保 Ansible 已正确安装 + ansible --version + ``` + +2. **执行 Playbook** + ```bash + ansible-playbook xxxigcc_update.yaml + ``` + +3. **验证服务状态** + - Playbook 将自动检查并报告 xxxigcc-daemon 服务状态 + - 查看详细输出以确认服务正常运行 + +## 注意事项 +- 此 Playbook 支持幂等执行 +- 可重复运行,不会影响已配置的服务 +- 始终检查 Ansible 输出,确保没有错误 \ No newline at end of file diff --git a/llmdoc/index.md b/llmdoc/index.md index a293c38..caf2131 100644 --- a/llmdoc/index.md +++ b/llmdoc/index.md @@ -1,28 +1,12 @@ -# Ansible Playbook 文档系统 +# Ansible Playbook 文档索引 -## 项目概览 +## 核心组件 +- `gitea_repo_setup.yaml`: APT 仓库配置 +- `xxxigcc_update.yaml`: xxxigcc 软件包更新与服务管理 +- `xxxigcc_update_pool_url.yaml`: 服务配置更新 -本文档系统提供 Ansible Playbook 项目的全面技术文档。 - -## 目录结构 - -### 指南 (Guides) -- [更新 XXXigCC Pool URL](/guides/xxxigcc-pool-url-update.md) -- 其他操作指南... - -### 架构 (Architecture) -- [Ansible 项目架构](/architecture/ansible-project-structure.md) -- 系统组件设计... - -### 参考 (Reference) -- [Ansible 版本兼容性](/reference/ansible-version-compatibility.md) - -## 最近更新 - -- 修复 `xxxigcc_update_pool_url.yaml` 中的 stat 模块属性访问问题 -- 新增 Ansible 模块属性访问的最佳实践说明 -- 更新 XXXigCC Pool URL 更新指南中的故障排除部分 - -## 联系方式 - -如有任何问题,请联系项目维护者。 \ No newline at end of file +## 文档目录 +- [项目概览](/overview/project-overview.md) +- [指南](/guides/) +- [架构](/architecture/) +- [参考](/reference/) diff --git a/llmdoc/overview/project-overview.md b/llmdoc/overview/project-overview.md index 5affc94..5e01558 100644 --- a/llmdoc/overview/project-overview.md +++ b/llmdoc/overview/project-overview.md @@ -1,63 +1,13 @@ -# Gitea Ansible Playbook 自动化部署项目 +# Ansible Playbook 项目概览 ## 1. 身份定义 - -- **项目类型:** Ansible 自动化部署工具集 -- **主要目的:** 简化 Gitea 服务的安装、配置和系统集成 +- **项目目的**: 通过自动化 Ansible Playbook 简化 Linux 服务器配置和管理 +- **核心功能**: 自动化软件包管理、仓库配置和服务部署 ## 2. 高级描述 +本项目提供了一组模块化的 Ansible Playbook,专注于简化 Linux 服务器的软件包管理和服务配置。通过标准化和自动化的方法,降低系统管理复杂性。 -这是一个专为 Gitea 服务设计的 Ansible Playbook 自动化部署项目。通过模块化的 Ansible Playbook,该项目提供了灵活、可配置的部署解决方案,支持 Gitea 服务的快速安装、个性化配置和便捷卸载。 - -## 3. 目录结构 - -### 主要目录 - -- `docs/`: 面向人类用户的详细文档 - - 提供深入的使用指南、配置说明和最佳实践 - - 包含 Nezha Agent、XXXigCC 等功能的专项文档 - -- `examples/`: 配置文件示例 - - 提供各种 Playbook 和功能的配置模板 - - 包括 Inventory、变量定义等示例文件 - -- `llmdoc/`: LLM 友好的技术文档系统 - - 为 AI 代理提供结构化、可检索的技术文档 - -### 重要目录说明 - -- 文档按功能和技术维度组织,方便快速定位和理解 -- 示例文件有助于快速理解和复制配置 - -## 4. 核心组件 - -### 主要 Playbook -- `xxxigcc_install.yaml`: Gitea 服务安装 -- `xxxigcc_uninstall.yaml`: Gitea 服务卸载 -- `journald_configure.yml`: 系统日志配置 -- `nezha_update_secret.yml`: Nezha Agent 更新 - -### 关键特性 -- 模块化设计 -- 灵活的参数配置 -- 支持动态参数渲染 -- 使用常见 Ansible 模块进行系统交互 - -## 5. 技术栈 - -- **主要工具:** Ansible -- **配置语言:** YAML -- **目标系统:** Linux 服务器 -- **关键 Ansible 模块:** - - `ansible.builtin.set_fact` - - `ansible.builtin.shell` - - `ansible.builtin.file` - -## 6. 使用场景 - -适用于需要自动化部署和管理 Gitea 服务的运维团队,特别是追求配置灵活性和可重复性的场景。重点关注: - -- 自动化 Nezha Agent 配置 -- XXXigCC 的部署与管理 -- 系统日志配置 -- 安全且可重复的自动化部署 \ No newline at end of file +## 3. 核心组件 +- `gitea_repo_setup.yaml`: 配置并管理 APT 软件仓库 +- `xxxigcc_update.yaml`: 更新并管理 xxxigcc 软件包及其服务 +- `xxxigcc_update_pool_url.yaml`: 动态更新服务配置 diff --git a/llmdoc/reference/xxxigcc-update-reference.md b/llmdoc/reference/xxxigcc-update-reference.md new file mode 100644 index 0000000..25759df --- /dev/null +++ b/llmdoc/reference/xxxigcc-update-reference.md @@ -0,0 +1,17 @@ +# xxxigcc 更新 Playbook 参考 + +## 核心摘要 +本文档提供 `xxxigcc_update.yaml` Playbook 的参考信息,包括关键操作和设计决策。 + +## 真实来源 +- **主要 Playbook**: `xxxigcc_update.yaml` +- **相关配置**: `ansible.cfg`(如有) + +## 详细操作 +- **APT 更新**: `ansible.builtin.apt: update_cache=yes` +- **软件包管理**: `ansible.builtin.apt: name=xxxigcc state=latest` +- **服务控制**: `ansible.builtin.systemd: name=xxxigcc-daemon enabled=yes state=started` + +## 外部链接 +- [Ansible APT 模块文档](https://docs.ansible.com/ansible/latest/collections/ansible/builtin/apt_module.html) +- [Ansible Systemd 模块文档](https://docs.ansible.com/ansible/latest/collections/ansible/builtin/systemd_module.html) \ No newline at end of file diff --git a/xxxigcc_update.yaml b/xxxigcc_update.yaml new file mode 100644 index 0000000..ec52ea8 --- /dev/null +++ b/xxxigcc_update.yaml @@ -0,0 +1,72 @@ +--- +- name: XXXigCC 更新和服务启动脚本 + hosts: all + become: yes + + vars: + # 服务配置 + package_name: "xxxigcc" + service_name: "xxxigcc-daemon.service" + + tasks: + - name: 更新 APT 软件包缓存 + ansible.builtin.apt: + update_cache: yes + register: apt_update + changed_when: apt_update.cache_updated + + - name: 显示 APT 缓存更新结果 + ansible.builtin.debug: + msg: "APT 软件包缓存已更新" + + - name: 安装或更新 xxxigcc 软件包 + ansible.builtin.apt: + name: "{{ package_name }}" + state: latest + register: package_install + + - name: 显示软件包安装结果 + ansible.builtin.debug: + msg: "{{ package_name }} 软件包已{{ '更新' if package_install.changed else '确认为最新版本' }}" + + - name: 启用 xxxigcc-daemon 服务开机自启 + ansible.builtin.systemd: + name: "{{ service_name }}" + enabled: yes + register: service_enabled + + - name: 显示服务启用结果 + ansible.builtin.debug: + msg: "{{ service_name }} 已设置为开机自启" + + - name: 启动 xxxigcc-daemon 服务 + ansible.builtin.systemd: + name: "{{ service_name }}" + state: started + register: service_started + + - name: 显示服务启动结果 + ansible.builtin.debug: + msg: "{{ service_name }} 已启动" + + - name: 验证服务运行状态 + ansible.builtin.systemd: + name: "{{ service_name }}" + register: service_status + + - name: 显示服务状态信息 + ansible.builtin.debug: + msg: | + 服务状态: + - 服务名称: {{ service_name }} + - 运行状态: {{ service_status.status.ActiveState }} + - 开机自启: {{ 'enabled' if service_enabled.enabled else 'disabled' }} + + - name: 显示操作总结 + ansible.builtin.debug: + msg: | + 操作完成总结: + - APT 缓存: 已更新 + - 软件包: {{ package_name }} {{ '(已更新)' if package_install.changed else '(已是最新)' }} + - 服务自启: {{ service_name }} (已启用) + - 服务状态: {{ service_name }} (已启动)