--- - name: Gitea Runner Management hosts: hcp become: yes vars: gitea_runner_user: "gitea-runner" gitea_runner_data_dir: "/var/lib/gitea-runner" gitea_runner_log_dir: "/var/log/gitea-runner" tasks: - name: Check gitea-runner service status systemd: name: gitea-runner register: service_status - name: Display service status debug: msg: | Service: {{ service_status.status.ActiveState }} Enabled: {{ service_status.status.UnitFileState }} Main PID: {{ service_status.status.MainPID | default('N/A') }} - name: Show recent logs command: journalctl -u gitea-runner --no-pager -n 20 register: recent_logs changed_when: false - name: Display recent logs debug: var: recent_logs.stdout_lines - name: Check runner registration stat: path: "{{ gitea_runner_data_dir }}/.runner" register: runner_registered - name: Display registration status debug: msg: "Runner registered: {{ runner_registered.stat.exists }}" - name: Show runner configuration (if registered) command: cat {{ gitea_runner_data_dir }}/.runner register: runner_config become_user: "{{ gitea_runner_user }}" when: runner_registered.stat.exists changed_when: false - name: Display runner configuration debug: var: runner_config.stdout_lines when: runner_registered.stat.exists - name: Check Docker access for runner user command: docker ps become_user: "{{ gitea_runner_user }}" register: docker_access changed_when: false failed_when: false - name: Display Docker access status debug: msg: | Docker access: {{ 'OK' if docker_access.rc == 0 else 'FAILED' }} {% if docker_access.rc != 0 %} Error: {{ docker_access.stderr }} {% endif %} # 单独的任务用于管理服务 - name: Service Management Tasks hosts: hcp become: yes tasks: - name: Start gitea-runner service systemd: name: gitea-runner state: started when: ansible_run_tags is defined and 'start' in ansible_run_tags - name: Stop gitea-runner service systemd: name: gitea-runner state: stopped when: ansible_run_tags is defined and 'stop' in ansible_run_tags - name: Restart gitea-runner service systemd: name: gitea-runner state: restarted when: ansible_run_tags is defined and 'restart' in ansible_run_tags - name: Reload gitea-runner service systemd: name: gitea-runner state: reloaded when: ansible_run_tags is defined and 'reload' in ansible_run_tags