Documentation

27. 사용자 정의 알림에 지원되는 특성

이 섹션에서는 지원되는 작업 특성 목록과 알림에 대한 메시지 텍스트를 구성하는 적절한 구문에 대해 설명합니다. 지원되는 작업 특성은 다음과 같습니다.

  • allow_simultaneous - (부울) 이 작업과 연결된 JT에서 여러 작업을 동시에 실행할 수 있는지를 나타냄

  • controller_node - (문자열) 격리된 실행 환경을 관리하는 인스턴스

  • created - (날짜/시간) 이 작업이 생성된 때의 타임스탬프

  • custom_virtualenv - (문자열) 작업 실행에 사용되는 사용자 정의 가상 환경

  • description - (문자열) 작업에 대한 선택적 설명

  • diff_mode - (부울) 활성화하면 호스트의 템플릿 파일에 대한 텍스트 변경 사항이 표준 출력에 표시됨

  • elapsed - (십진수) 작업이 실행되는 데 경과된 시간(초)

  • execution_node - (문자열) 작업이 실행된 노드

  • failed - (부울) 작업이 실패한 경우 True

  • finished - (날짜/시간) 작업 실행이 완료된 날짜 및 시간

  • force_handlers - (부울) 핸들러가 강제 적용되면 알림이 표시될 때 해당 호스트에서 작업이 실패하더라도 실행됨(일부 조건(예: 연결할 수 없는 호스트)에서는 여전히 핸들러를 실행할 수 없음)

  • forks - (정수) 작업에 요청된 포크 수

  • id - (정수) 이 작업을 위한 데이터베이스 ID

  • job_explanation - (문자열) stdout을 실행하고 캡처할 수 없는 경우 작업 상태를 나타내는 상태 필드

  • job_slice_count - (정수) 슬라이스된 작업의 일부로 실행된 경우 총 슬라이스 수(1인 경우 작업은 슬라이스된 작업의 일부가 아님)

  • job_slice_number - (정수) 슬라이스된 작업의 일부로 실행된 경우 작동하는 인벤토리 슬라이스의 ID(슬라이스된 작업의 일부가 아닌 경우 특성이 사용되지 않음)

  • job_tags - (문자열) 지정된 태그가 있는 작업만 실행됨

  • job_type - (선택) 실행, 확인 또는 검사

  • launch_type - (선택) 수동, 다시 시작, 콜백, 스케줄링, 종속성, 워크플로우, 동기화 또는 scm

  • limit - (문자열) 지정된 경우 이 호스트 세트로 제한된 플레이북 실행

  • modified - (날짜/시간) 이 작업이 마지막으로 수정된 때의 타임스탬프

  • name - (문자열) 이 작업의 이름

  • playbook - (문자열) 실행된 플레이북

  • scm_revision - (문자열) 이 작업에 사용되는 프로젝트의 scm 버전(사용 가능한 경우)

  • skip_tags - (문자열) 지정된 경우 플레이북 실행에서 이 태그 세트를 건너뜀

  • start_at_task - (문자열) 지정된 경우 이 이름과 일치하는 작업에서 플레이북 실행이 시작됨

  • started - (날짜/시간) 작업이 시작 대기열에 추가된 날짜 및 시간

  • status - (선택) 신규, 보류 중, 대기 중, 실행 중, 성공, 실패, 오류, 취소됨

  • timeout - (정수) 작업이 취소될 때까지의 실행 시간(초)

  • type - (선택) 이 작업의 데이터 유형

  • url - (문자열) 이 작업의 URL

  • use_fact_cache - (boolean) if enabled for job, the controller acts as an Ansible Fact Cache Plugin, persisting facts at the end of a playbook run to the database and caching facts for use by Ansible

  • verbosity - (선택) 0~5(정상 ~ WinRM 디버그에 해당)

  • ``host_status_counts``(각 상태에 고유하게 할당된 호스트 수)
    • ``skipped``(정수)

    • ``ok``(정수)

    • ``changed``(정수)

    • ``failures``(정수)

    • ``dark``(정수)

    • ``processed``(정수)

    • ``rescued``(정수)

    • ``ignored``(정수)

    • ``failed``(부울)

  • summary_fields:
    • inventory
      • id - (정수) 인벤토리의 데이터베이스 ID

      • name - (문자열) 인벤토리의 이름

      • description - (문자열) 인벤토리에 대한 선택적 설명

      • has_active_failures - (부울)(더 이상 사용되지 않음) 이 인벤토리의 호스트가 실패했는지의 여부를 나타내는 플래그

      • total_hosts - (더 이상 사용되지 않음)(정수) 이 인벤토리에 있는 총 호스트 수

      • hosts_with_active_failures - (더 이상 사용되지 않음)(정수) 이 인벤토리에서 활성 상태의 오류가 있는 호스트 수

      • total_groups - (더 이상 사용되지 않음)(정수) 이 인벤토리에 있는 총 그룹 수

      • groups_with_active_failures - (더 이상 사용되지 않음)(정수) 이 인벤토리에서 활성 상태의 오류가 있는 호스트 수

      • has_inventory_sources - (더 이상 사용되지 않음)(부울) 이 인벤토리에 외부 인벤토리 소스가 있는지의 여부를 나타내는 플래그

      • total_inventory_sources - (정수) 이 인벤토리 내에 구성된 총 외부 인벤토리 소스 수

      • inventory_sources_with_failures - (정수) 이 인벤토리에서 오류가 있는 외부 인벤토리 소스 수

      • organization_id - (ID) 이 인벤토리를 포함하는 조직

      • kind - (선택)(빈 문자열)(호스트가 인벤토리와 직접 연결되어 있음을 나타냄) 또는 ‘smart’

    • project
      • id - (정수) 프로젝트의 데이터베이스 ID

      • name - (문자열) 프로젝트의 이름

      • description - (문자열) 프로젝트에 대한 선택적 설명

      • status - (선택) 신규, 보류 중, 대기 중, 실행 중, 성공, 실패, 오류, 취소됨, 업데이트되지 않음, 확인 또는 누락

      • scm_type (choice) - (빈 문자열), git, hg, svn, insights 중 하나

    • job_template
      • id - (정수) 작업 템플릿의 데이터베이스 ID

      • name - (문자열) 작업 템플릿의 이름

      • description - (문자열) 작업 템플릿에 대한 선택적 설명

    • unified_job_template
      • id - (정수) 통합 작업 템플릿의 데이터베이스 ID

      • name - (문자열) 통합 작업 템플릿의 이름

      • description - (문자열) 통합 작업 템플릿에 대한 선택적 설명

      • unified_job_type - (선택) 통합 작업 유형(job, workflow_job, project_update 등)

    • instance_group
      • id - (정수) 인스턴스 그룹의 데이터베이스 ID

      • name - (문자열) 인스턴스 그룹의 이름

    • created_by
      • id - (정수) 작업을 시작한 사용자의 데이터베이스 ID

      • username - (문자열) 작업을 시작한 사용자 이름

      • first_name - (문자열) 이름

      • last_name - (문자열) 성

    • labels
      • count - (정수) 레이블 수

      • results - 레이블을 나타내는 사전 목록(예: {“id”: 5, “name”: “database jobs”})

작업에 대한 정보는 그룹화된 중괄호 {{ }}``를 사용하여 사용자 정의 알림 메시지에서 참조할 있습니다. 특정 작업 특성은 표기법을 사용하여 액세스합니다(예: ``{{ job.summary_fields.inventory.name }} ). 중괄호 앞이나 주위에 사용된 모든 문자 또는 일반 텍스트(예: 작업 ID의 경우 ‘#’, 일부 설명자를 나타내는 작은따옴표)는 설명을 위해 추가할 수 있습니다. 사용자 정의 메시지에는 메시지 전체에 걸쳐 다양한 변수가 포함될 수 있습니다.

{{ job_friendly_name }} {{ job.id }} ran on {{ job.execution_node }} in {{ job.elapsed }} seconds.

작업 특성 외에도 기타 몇 가지 변수를 템플릿에 추가할 수 있습니다.

  • approval_node_name - (문자열) 승인 노드 이름

  • approval_status - (선택) 승인됨, 거부됨, 시간 초과 중 하나

  • url - (문자열) 알림이 발생하는 작업의 URL(시작, 성공, 실패, 승인 알림에 적용됨)

  • workflow_url - (문자열) 관련 승인 노드에 대한 URL. 이 URL을 통해 알림 수신자는 관련 워크플로우 작업 페이지로 이동하여 진행 중인 작업을 확인할 수 있습니다(예: This node can be viewed at: {{ workflow_url }}). 승인 관련 알림의 경우 urlworkflow_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'}