Small Ansible fixes
pull/375/head
Aidaho 2024-02-16 16:49:13 +03:00
parent f981819505
commit cb03546ca2
7 changed files with 30 additions and 26 deletions

View File

@ -1,4 +1,3 @@
import logging
import uuid
from peewee import fn

View File

@ -23,12 +23,12 @@ def ssh_command(server_ip: str, commands: list, **kwargs):
stdin, stdout, stderr = ssh.run_command(command, timeout=timeout)
stdin.close()
except Exception as e:
roxywi_common.handle_exceptions(e, server_ip, f'Something wrong with SSH connection. Probably sudo with password', roxywi=1)
roxywi_common.handle_exceptions(e, server_ip, 'Something wrong with SSH connection. Probably sudo with password', roxywi=1)
if stderr:
for line in stderr.readlines():
if line:
roxywi_common.handle_exceptions(e, server_ip, line, roxywi=1)
roxywi_common.handle_exceptions(line, server_ip, line, roxywi=1)
if kwargs.get('raw'):
return stdout.readlines()
@ -40,7 +40,7 @@ def ssh_command(server_ip: str, commands: list, **kwargs):
else:
return stdout.read().decode(encoding='UTF-8')
except Exception as e:
roxywi_common.handle_exceptions(e, server_ip, f'Something wrong with SSH connection. Probably sudo with password', roxywi=1)
roxywi_common.handle_exceptions(e, server_ip, 'Something wrong with SSH connection. Probably sudo with password', roxywi=1)
def subprocess_execute(cmd):

View File

@ -38,7 +38,7 @@ def add_agent(data) -> int:
try:
inv, server_ips = generate_agent_inc(server_ip, 'install', agent_uuid)
run_ansible(inv, server_ips, f'smon_agent')
run_ansible(inv, server_ips, 'smon_agent')
except Exception as e:
common_roxywi.handle_exceptions(e, server_ip, 'Cannot install SMON agent', roxywi=1, login=1)
@ -55,7 +55,7 @@ def delete_agent(agent_id: int):
agent_uuid = ''
try:
inv, server_ips = generate_agent_inc(server_ip, 'uninstall', agent_uuid)
run_ansible(inv, server_ips, f'smon_agent')
run_ansible(inv, server_ips, 'smon_agent')
except Exception as e:
common_roxywi.handle_exceptions(e, server_ip, 'error: Cannot uninstall SMON agent', roxywi=1, login=1)
@ -87,7 +87,7 @@ def send_get_request_to_agent(agent_id: int, server_ip: str, api_path: str) -> b
headers = get_agent_headers(agent_id)
agent_port = sql.get_setting('agent_port')
try:
req = requests.get(f'http://{server_ip}:{agent_port}/{api_path}', headers=headers)
req = requests.get(f'http://{server_ip}:{agent_port}/{api_path}', headers=headers, timeout=5)
return req.content
except Exception as e:
raise Exception(f'error: Cannot get agent status: {e}')
@ -97,7 +97,7 @@ def send_post_request_to_agent(agent_id: int, server_ip: str, api_path: str, jso
headers = get_agent_headers(agent_id)
agent_port = sql.get_setting('agent_port')
try:
req = requests.post(f'http://{server_ip}:{agent_port}/{api_path}', headers=headers, json=json_data)
req = requests.post(f'http://{server_ip}:{agent_port}/{api_path}', headers=headers, json=json_data, timeout=5)
return req.content
except Exception as e:
raise Exception(f'error: Cannot get agent status: {e}')
@ -107,7 +107,7 @@ def delete_check(agent_id: int, server_ip: str, check_id: int) -> bytes:
headers = get_agent_headers(agent_id)
agent_port = sql.get_setting('agent_port')
try:
req = requests.delete(f'http://{server_ip}:{agent_port}/check/{check_id}', headers=headers)
req = requests.delete(f'http://{server_ip}:{agent_port}/check/{check_id}', headers=headers, timeout=5)
return req.content
except requests.exceptions.HTTPError as e:
common_roxywi.logging(server_ip, f'error: Cannot delete check from agent: http error {e}', roxywi=1, login=1)

View File

@ -3,19 +3,17 @@
src: haproxy.service.j2
dest: /usr/lib/systemd/system/haproxy.service
mode: 0644
when: (ansible_facts['os_family'] == "RedHat" or ansible_facts['os_family'] == 'CentOS') and haproxy_from_wi is defined
when: ansible_os_family == "RedHat" and haproxy_from_wi is defined
- name: test to see if selinux is running
command: getenforce
register: sestatus
when: (ansible_facts['os_family'] == "RedHat" or ansible_facts['os_family'] == 'CentOS')
when: ansible_os_family == "RedHat"
changed_when: false
ignore_errors: yes
debugger: never
- name: Disble SELINUX in config
- name: Disable SELINUX in config
template:
src: selinux.j2
dest: /etc/selinux/config
@ -24,8 +22,7 @@
- sestatus.stdout is defined
- '"Enforcing" in sestatus.stdout'
- name: Disble SELINUX in env
- name: Disable SELINUX in env
shell: setenforce 0 &> /dev/null
ignore_errors: yes
debugger: never
@ -44,7 +41,7 @@
debugger: never
when:
- '"firewalld" in ansible_facts.packages'
- ansible_facts['os_family'] == "RedHat" or ansible_facts['os_family'] == 'CentOS'
- ansible_os_family == "RedHat"
- ansible_facts.services["firewalld.service"]['state'] == "running"
with_items: [ "{{ STAT_PORT }}", "{{ SOCK_PORT }}", "10000" ]
@ -72,6 +69,13 @@
mode: 0644
force: no
- name: Copy HAProxy state file in place.
template:
src: haproxy.state.j2
dest: /etc/haproxy/haproxy.state
mode: 0644
force: no
- name: Creates HAProxy stats directory
file:
path: /var/lib/haproxy

View File

@ -3,7 +3,7 @@
name: epel-release
state: latest
disable_gpg_check: yes
when: (ansible_facts['os_family'] == "RedHat" or ansible_facts['os_family'] == 'CentOS') and HAPVER|length > 0
when: ansible_os_family == "RedHat" and HAPVER|length > 0
ignore_errors: yes
environment:
http_proxy: "{{PROXY}}"
@ -12,7 +12,7 @@
- name: Set dist short name if EL
set_fact:
distr_short_name: "el"
when: ansible_facts['os_family'] == "RedHat" or ansible_facts['os_family'] == 'CentOS'
when: ansible_os_family == "RedHat"
- name: Set dist short name if Amazon Linux
set_fact:
@ -27,7 +27,7 @@
- rsyslog
state: present
disable_gpg_check: yes
when: (ansible_facts['os_family'] == "RedHat" or ansible_facts['os_family'] == 'CentOS') and HAPVER|length > 0
when: ansible_os_family == "RedHat" and HAPVER|length > 0
ignore_errors: yes
register: install_result
retries: 5
@ -45,7 +45,7 @@
- rsyslog
- bind-utils
state: present
when: (ansible_facts['os_family'] == "RedHat" or ansible_facts['os_family'] == 'CentOS') and ("'timed out' in install_result.stderr")
when: (ansible_os_family == "RedHat") and ("'timed out' in install_result.stderr")
ignore_errors: yes
register: install_result1
retries: 5
@ -59,7 +59,7 @@
- name: set_fact from wi
set_fact:
haproxy_from_wi: "yes"
when: (ansible_facts['os_family'] == "RedHat" or ansible_facts['os_family'] == 'CentOS' or ansible_distribution == 'Amazon') and HAPVER|length > 0
when: (ansible_os_family == "RedHat"' or ansible_distribution == 'Amazon') and HAPVER|length > 0
- name: install the latest version of HAProxy
@ -69,7 +69,7 @@
- socat
- rsyslog
state: latest
when: (ansible_facts['os_family'] == "RedHat" or ansible_facts['os_family'] == 'CentOS') and (install_result.rc != 0 and install_result1.rc != 0)
when: (ansible_os_family == "RedHat") and (install_result.rc != 0 and install_result1.rc != 0)
register: install_result
retries: 5
until: install_result.rc == 0
@ -86,7 +86,7 @@
- socat
- rsyslog
state: present
when: ansible_facts['os_family'] == 'Debian' or ansible_facts['os_family'] == 'Ubuntu'
when: ansible_os_family == "Debian"
environment:
http_proxy: "{{PROXY}}"
https_proxy: "{{PROXY}}"

View File

@ -11,7 +11,7 @@
src: /var/www/haproxy-wi/app/scripts/ansible/roles/haproxy/templates/logrotate.conf.j2
dest: /etc/logrotate.d/haproxy.conf
force: no
when: (ansible_facts['os_family'] == "RedHat" or ansible_facts['os_family'] == 'CentOS')
when: ansible_os_family == "RedHat"
ignore_errors: yes
- name: Installing HAProxy conf for logrotate on Debian
@ -19,5 +19,5 @@
src: /var/www/haproxy-wi/app/scripts/ansible/roles/haproxy/templates/logrotate-debian.conf.j2
dest: /etc/logrotate.d/haproxy-roxy-wi
force: no
when: (ansible_facts['os_family'] == "Debian" or ansible_facts['os_family'] == 'Ubuntu')
when: ansible_os_family == "Debian"
ignore_errors: yes

View File

@ -0,0 +1 @@
1