9장. 사용자 정의 알림에 대해 지원되는 속성
이 섹션에서는 지원되는 작업 특성 목록과 알림에 대한 메시지 텍스트를 구성하는 적절한 구문에 대해 설명합니다. 지원되는 작업 특성은 다음과 같습니다.
-
allow_simultaneous
- (boolean) 이 작업과 연결된 JT에서 여러 작업을 동시에 실행할 수 있는지 나타냅니다. -
controller_node
- 격리된 실행 환경을 관리하는 인스턴스 -
작성 - 이 작업이 생성
될 때 (datetime) 타임 스탬프 -
custom_virtualenv
- 작업을 실행하는 데 사용되는 사용자 지정 가상 환경 -
description
- (문자열) 작업에 대한 선택적 설명 -
diff_mode
- (boolean) 활성화된 경우 호스트의 템플릿 파일에 대한 텍스트 변경 사항이 표준 출력에 표시됩니다. -
elapsed
- 작업이 실행된 시간(초) 경과 -
execution_node
- 작업이 실행된 노드 -
failed
- 작업이 실패한 경우 (boolean) true -
finished
- (datetime) 작업 실행을 완료한 날짜 및 시간 -
force_handlers
- (boolean) 핸들러가 강제 적용되면 해당 호스트에서 작업이 실패하더라도 알림을 받을 수 있습니다(예: 연결할 수 없는 호스트)는 핸들러가 실행되지 않도록 할 수 있습니다. -
포크
- (int) 작업에 필요한 포크 수 -
ID
- 이 작업의 데이터베이스 ID -
job_explanation
- (문자열) status 필드를 실행하여 stdout을 실행하고 캡처할 수 없는 경우 작업의 상태를 나타냅니다. -
job_slice_count
- (integer) 슬라이스 작업의 일부로 실행하는 경우 총 슬라이스 수입니다(작업이 슬라이스된 작업의 일부가 아닌 경우) -
job_slice_number
- (integer) 슬라이스 작업의 일부로 실행하는 경우, 운영되는 인벤토리 슬라이스의 ID입니다( sliced 작업의 일부가 아닌 경우, 속성이 사용되지 않음) -
job_tags
- (문자열) 지정된 태그가 있는 작업만 실행합니다. -
job_type
- (선택 사항) 실행, 확인 또는 검사 -
launch_type
- (선택) 매뉴얼, relaunch, callback, scheduled, dependency, workflow, sync, scm -
limit
- (문자열) 이 호스트 집합으로 제한되는 경우 -
수정 - 이 작업이 마지막으로 수정된
시간(datetime) 타임 스탬프 -
name
- (문자열) 이 작업의 이름 -
playbook
- (문자열) 플레이북 실행 -
scm_revision
- (문자열) 이 작업에 사용된 프로젝트의 리버전(사용 가능한 경우) -
skip_tags
- (문자열) 플레이북 실행이 지정된 경우 이 태그 세트를 건너뜁니다. -
start_at_task
- (문자열) 플레이북 실행이 지정된 경우 이 이름과 일치하는 작업에서 시작됩니다. -
Started
- 작업을 시작하기 위해 대기한 날짜 및 시간입니다. -
status
- (선택) new, pending, waiting, running, successful, failed, error, canceled -
timeout
- 작업이 취소되기 전에 실행할 시간(초)입니다. -
유형
- 이 작업에 대한 데이터 유형 -
url
- 이 작업의 URL -
use_fact_cache
- 작업에 활성화된 경우 Tower는 Ansible Fact Cache 플러그인 역할을 하며, 플레이북 실행 끝에 팩트를 유지하고 Ansible에서 사용할 팩트를 캐싱합니다. -
상세 정보
- (선택 사항) 0 ~ 5 (WinRM Debug를 통해 Normal에 대응) host_status_counts
(각 상태에 고유하게 할당된 호스트의 개수)-
건너뛰기
(integer) -
확인
(integer) -
변경됨
(integer) -
실패
(integer) -
어두운
(integer) -
처리
(integer) -
구조
됨(integer) -
무시됨
(integer) -
실패
(boolean)
-
summary_fields:
인벤토리
-
ID
- 인벤토리의 데이터베이스 ID -
name
- (문자열) 인벤토리의 이름 -
description
- (문자열) 인벤토리에 대한 선택적 설명 -
has_active_failures
- (boolean) (더 이상 사용되지 않음) 이 인벤토리의 호스트가 실패했는지 여부를 나타내는 플래그 -
total_hosts
- (더 이상 사용되지 않음) 이 인벤토리의 호스트 수입니다. -
hosts_with_active_failures
- (더 이상 사용되지 않음) 이 인벤토리의 호스트 수에 활성 오류가 발생했습니다. -
total_groups
- (더 이상 사용되지 않음) 이 인벤토리의 총 그룹 수 -
groups_with_active_failures
- (더 이상 사용되지 않음) 이 인벤토리의 호스트 수(활성 실패) -
has_inventory_sources
- (더 이상 사용되지 않음) 이 인벤토리에 외부 인벤토리 소스가 있는지 여부를 나타내는 플래그 -
total_inventory_sources
- (int) 이 인벤토리 내에 구성된 외부 인벤토리 소스의 총 수 -
inventory_sources_with_failures
- (int) 실패와 함께 이 인벤토리의 외부 인벤토리 소스 수 -
organization_id
- (id) 이 인벤토리를 포함하는 조직 -
kind
- (선택 사항) (호스트를 나타내는 경우 인벤토리와의 직접 링크가 있음) 또는 'smart'
-
project
-
ID
- (int) 프로젝트의 데이터베이스 ID -
name
- (문자열) 프로젝트의 이름 -
description
- (문자열) 프로젝트에 대한 선택적 설명 -
status
- (선택) 새로운 보류중인, waiting, running, successful, failed, error, canceled, never updated, ok, missing 중 하나입니다. -
scm_type
(선택 사항) - git, hg, svn, insights 중 하나
-
job_template
-
ID
- 작업 템플릿의 데이터베이스 ID -
Name
- (문자열) 작업 템플릿의 이름 -
description
- (문자열) 작업 템플릿에 대한 선택적 설명
-
unified_job_template
-
ID
- (int) 통합 작업 템플릿의 데이터베이스 ID -
name
- (문자열) 통합 작업 템플릿의 이름 -
description
- (문자열) 통합 작업 템플릿에 대한 선택적 설명 -
unified_job_type
- (선택) 통합 작업 유형(job, workflow_job, project_update 등)
-
instance_group
-
ID
- (int) 인스턴스 그룹의 데이터베이스 ID -
Name
- (문자열) 인스턴스 그룹의 이름
-
created_by
-
작업을 시작한 사용자의 (int) 데이터베이스 ID
-
작업을 시작한 사용자 이름(문자열)
-
first_name
- (문자열) 첫 번째 이름 -
last_name
- (문자열) 마지막 이름
-
작업을 시작한 사용자의 (int) 데이터베이스 ID
labels
-
count
- (int) 라벨 수 -
results
- 라벨을 나타내는 사전 목록(예: {"id": 5, "name": "database jobs"})
-
작업에 대한 정보는 그룹화된 중괄호 {{ }}를 사용하여 사용자 정의 알림 메시지에서 참조할 수 있습니다. 특정 작업 속성은 점 표기법을 사용하여 액세스할 수 있습니다(예: {{ job.summary_fields.inventory.name }}). 일부 설명자를 나타내기 위해 앞 또는 일반 텍스트를 중심으로 사용하는 모든 문자(예: 작업 ID의 경우 '#' 및 단일-ECDHE)를 위해 설명을 위해 추가할 수 있습니다. 사용자 정의 메시지는 메시지 전체에서 여러 변수를 포함할 수 있습니다.
{{ job_friendly_name }} {{ job.id }} ran on {{ job.execution_node }} in {{ job.elapsed }} seconds.
작업 특성 외에도 기타 몇 가지 변수를 템플릿에 추가할 수 있습니다.
approval_node_name
- (문자열) 승인 노드 이름
approval_status
- 승인, 거부, timed_out 중 하나
url
- (문자열) 알림이 발송되는 작업의 URL (시작, 성공, 실패, 승인 알림에 적용됩니다)
workflow_url
- 관련 승인 노드에 대한 URL입니다. 이를 통해 알림 수신자가 관련 워크플로 작업 페이지로 이동하여 수행할 내용을 확인할 수 있습니다(즉, 이 노드는 {{ workflow_url }}에서 볼 수 있습니다). 승인 관련 알림의 경우 url 및 workflow_url 둘 다 동일합니다.
job_friendly_name
- (문자열) 작업의 친숙한 이름
job_metadata
- (문자열) 작업 메타데이터는 JSON 문자열로, 예를 들면 다음과 같습니다.
{'url': 'https://towerhost/$/jobs/playbook/13', 'traceback': '', 'status': 'running', 'started': '2019-08-07T21:46:38.362630+00:00', 'project': 'Stub project', 'playbook': 'ping.yml', 'name': 'Stub Job Template', 'limit': '', 'inventory': 'Stub Inventory', 'id': 42, 'hosts': {}, 'friendly_name': 'Job', 'finished': False, 'credential': 'Stub credential', 'created_by': 'admin'}