From b14ea85320c9ff2c19a89ed6a41fa1ff804c32f0 Mon Sep 17 00:00:00 2001 From: Wang Defa Date: Wed, 10 Jun 2026 12:01:28 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20XXXig=20=E5=AE=89=E8=A3=85?= =?UTF-8?q?=E3=80=81=E5=8D=B8=E8=BD=BD=E5=92=8C=E6=9B=B4=E6=96=B0=E8=84=9A?= =?UTF-8?q?=E6=9C=AC=EF=BC=8C=E5=8C=85=E5=90=AB=E6=9C=8D=E5=8A=A1=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E5=8A=9F=E8=83=BD=E5=92=8C=E8=AF=A6=E7=BB=86=E8=B0=83?= =?UTF-8?q?=E8=AF=95=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xxxig_install.yaml | 60 ++++++++++++++++++++++++++++++++++++ xxxig_uninstall.yaml | 30 ++++++++++++++++++ xxxig_update.yaml | 72 ++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 162 insertions(+) create mode 100644 xxxig_install.yaml create mode 100644 xxxig_uninstall.yaml create mode 100644 xxxig_update.yaml diff --git a/xxxig_install.yaml b/xxxig_install.yaml new file mode 100644 index 0000000..d40c93d --- /dev/null +++ b/xxxig_install.yaml @@ -0,0 +1,60 @@ +--- +- name: XXXig 安装脚本 + hosts: all + become: yes + + vars: + # 必填参数 + pool_url: "" + cc_url: "" + cc_token: "" + + # 可选参数(布尔值) + enable_cc: true + enable_tls: true + enable_cc_tls: true + enable_keepalive: true + enable_1gb_pages: true + + # 脚本URL + install_script_url: "https://gitea.bcde.io/wangdefa/xxxig/raw/branch/main/script/install.deb.sh" + + tasks: + - name: 构建安装命令参数 + ansible.builtin.set_fact: + install_command: >- + bash /tmp/install.deb.sh + -o '{{ pool_url }}' + {{ '--keepalive' if enable_keepalive else '' }} + {{ '--1gb-pages' if enable_1gb_pages else '' }} + {{ '--tls' if enable_tls else '' }} + {{ '--cc' if enable_cc else '' }} + {{ '--cc-url ' + cc_url if enable_cc else '' }} + {{ '--cc-token ' + cc_token if enable_cc else '' }} + {{ '--cc-tls' if enable_cc and enable_cc_tls else '' }} + + - name: 显示将要执行的命令 + ansible.builtin.debug: + msg: "{{ install_command }}" + + - name: 下载安装脚本 + ansible.builtin.get_url: + url: "{{ install_script_url }}" + dest: /tmp/install.deb.sh + mode: '0755' + force: yes + + - name: 执行安装脚本 + ansible.builtin.shell: "{{ install_command }}" + args: + executable: /bin/bash + register: install_output + + - name: 显示安装结果 + ansible.builtin.debug: + var: install_output.stdout_lines + + - name: 清理临时脚本 + ansible.builtin.file: + path: /tmp/install.deb.sh + state: absent diff --git a/xxxig_uninstall.yaml b/xxxig_uninstall.yaml new file mode 100644 index 0000000..a6636fe --- /dev/null +++ b/xxxig_uninstall.yaml @@ -0,0 +1,30 @@ +--- +- name: XXXig 卸载脚本 + hosts: all + become: yes + + tasks: + - name: 下载卸载脚本 + ansible.builtin.get_url: + url: https://gitea.bcde.io/wangdefa/xxxig/raw/branch/main/script/uninstall.sh + dest: /tmp/uninstall.sh + mode: '0755' + force: yes + validate_certs: yes + register: download_result + + - name: 执行卸载脚本 + ansible.builtin.shell: /tmp/uninstall.sh -y --purge + args: + executable: /bin/bash + register: script_output + changed_when: true + + - name: 显示脚本执行结果 + ansible.builtin.debug: + var: script_output.stdout_lines + + - name: 清理临时脚本文件 + ansible.builtin.file: + path: /tmp/uninstall.sh + state: absent \ No newline at end of file diff --git a/xxxig_update.yaml b/xxxig_update.yaml new file mode 100644 index 0000000..172554c --- /dev/null +++ b/xxxig_update.yaml @@ -0,0 +1,72 @@ +--- +- name: XXXig 更新和服务启动脚本 + hosts: all + become: yes + + vars: + # 服务配置 + package_name: "xxxig" + service_name: "xxxig-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: 安装或更新 xxxig 软件包 + ansible.builtin.apt: + name: "{{ package_name }}" + state: latest + register: package_install + + - name: 显示软件包安装结果 + ansible.builtin.debug: + msg: "{{ package_name }} 软件包已{{ '更新' if package_install.changed else '确认为最新版本' }}" + + - name: 启用 xxxig-daemon 服务开机自启 + ansible.builtin.systemd: + name: "{{ service_name }}" + enabled: yes + register: service_enabled + + - name: 显示服务启用结果 + ansible.builtin.debug: + msg: "{{ service_name }} 已设置为开机自启" + + - name: 启动 xxxig-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 }} (已启动)