From 2968a4ba215d23fddc804144c540f2edd622fba4 Mon Sep 17 00:00:00 2001 From: ogrechko Date: Wed, 10 Dec 2025 09:21:18 +0000 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8=D1=82?= =?UTF-8?q?=D1=8C=20playbooks/inventory.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- playbooks/inventory.yml | 46 ++++++++++++++++++++++++++++++++--------- 1 file changed, 36 insertions(+), 10 deletions(-) diff --git a/playbooks/inventory.yml b/playbooks/inventory.yml index 13e6659..7b188ea 100644 --- a/playbooks/inventory.yml +++ b/playbooks/inventory.yml @@ -1,15 +1,41 @@ --- -- name: Сбор инвентаря и создание его в Semaphore UI - hosts: localhost - connection: local - gather_facts: no - vars: +- name: Debug Payload + debug: + msg: + - "Name: {{ inventory_name }}" + - "SSH Key ID: {{ semaphore_key_id }}" + - "Content Length: {{ inventory_content | length }}" +#- name: Сбор инвентаря и создание его в Semaphore UI + #hosts: localhost + #connection: local + #gather_facts: no + #vars: # --- НАСТРОЙКИ SEMAPHORE --- - semaphore_url: "http://192.168.0.198:9999" # Адрес вашего Semaphore - semaphore_project_id: 1 # ID проекта - semaphore_key_id: 7 # ID ключа (Store Key) для подключения к хостам - semaphore_api_token: "9ojexqiwt1xkemig7j1bd1pe-frh7hkre4reryk2occ=" # Вставьте токен или передайте через Extra Vars - inventory_name: "Auto Scanned Network" # Как назвать инвентарь в Semaphore + #semaphore_url: "http://192.168.0.198:9999" # Адрес вашего Semaphore + #semaphore_project_id: 1 # ID проекта + #semaphore_key_id: 7 # ID ключа (Store Key) для подключения к хостам + #semaphore_api_token: "9ojexqiwt1xkemig7j1bd1pe-frh7hkre4reryk2occ=" # Вставьте токен или передайте через Extra Vars + #inventory_name: "Auto Scanned Network" # Как назвать инвентарь в Semaphore + +- name: Создание инвентаря в Semaphore через API + uri: + url: "{{ semaphore_url }}/api/project/{{ semaphore_project_id }}/inventory" + method: POST + headers: + Authorization: "Bearer {{ semaphore_api_token }}" + Content-Type: "application/json" + Accept: "application/json" + body_format: json + body: + name: "{{ inventory_name }}" + project_id: "{{ semaphore_project_id | int }}" + type: "static" + # ВАЖНО: поле называется ssh_key_id, а не key_id + ssh_key_id: "{{ semaphore_key_id | int }}" + inventory: "{{ inventory_content }}" + status_code: [201, 200] + # 201 - Created, 200 - OK + register: api_response # --- НАСТРОЙКИ СЕТИ (из вашего примера) --- subnets: