package ansible // BinaryDeployPlaybook returns the Ansible playbook for binary deployment const BinaryDeployPlaybook = `--- - name: Deploy HellreigN Agent (Binary) hosts: all become: yes vars: agent_label: "{{ agent_label }}" agent_token: "{{ agent_token }}" backend_url: "{{ backend_url }}" install_dir: /opt/hellreign bin_name: hellreign-agent service_name: hellreign-agent cert_dir: "{{ install_dir }}/certs" tasks: - name: Create installation directory file: path: "{{ install_dir }}" state: directory mode: '0755' - name: Create certificates directory file: path: "{{ cert_dir }}" state: directory mode: '0755' - name: Download HellreigN Agent binary get_url: url: "https://gitea.d3m0k1d.ru/d3m0k1d/HellreigN/releases/latest/download/{{ bin_name }}" dest: "{{ install_dir }}/{{ bin_name }}" mode: '0755' - name: Create agent configuration copy: content: | backend_url: "{{ backend_url }}" label: "{{ agent_label }}" registration_token: "{{ agent_token }}" cert_dir: "{{ cert_dir }}" dest: "{{ install_dir }}/config.yml" mode: '0644' - name: Create systemd service file copy: content: | [Unit] Description=HellreigN Agent After=network.target [Service] Type=simple ExecStart={{ install_dir }}/{{ bin_name }} Restart=always RestartSec=5 Environment=CONFIG_FILE={{ install_dir }}/config.yml StandardOutput=journal StandardError=journal [Install] WantedBy=multi-user.target dest: /etc/systemd/system/{{ service_name }}.service mode: '0644' - name: Reload systemd daemon systemd: daemon_reload: yes - name: Enable and start HellreigN Agent service systemd: name: "{{ service_name }}" enabled: yes state: started ` // DockerDeployPlaybook returns the Ansible playbook for Docker deployment const DockerDeployPlaybook = `--- - name: Deploy HellreigN Agent (Docker) hosts: all become: yes vars: agent_label: "{{ agent_label }}" agent_token: "{{ agent_token }}" backend_url: "{{ backend_url }}" container_name: hellreign-agent-{{ agent_label }} image: "gitea.d3m0k1d.ru/d3m0k1d/hellreign-agent:latest" cert_dir: /etc/hellreign-agent/certs tasks: - name: Install Docker (if not present) block: - name: Check if Docker is installed command: docker --version register: docker_check ignore_errors: yes changed_when: false - name: Install Docker shell: | curl -fsSL https://get.docker.com | sh when: docker_check.rc != 0 - name: Create certificates directory file: path: "{{ cert_dir }}" state: directory mode: '0755' - name: Pull HellreigN Agent image community.docker.docker_image: name: "{{ image }}" source: pull - name: Create agent configuration copy: content: | backend_url: "{{ backend_url }}" label: "{{ agent_label }}" registration_token: "{{ agent_token }}" cert_dir: "{{ cert_dir }}" dest: "{{ cert_dir }}/config.yml" mode: '0644' - name: Create and run HellreigN Agent container community.docker.docker_container: name: "{{ container_name }}" image: "{{ image }}" state: started restart_policy: always volumes: - "{{ cert_dir }}:/etc/hellreign-agent/certs" env: CONFIG_FILE: /etc/hellreign-agent/certs/config.yml `