Ansible - Windows 모듈 개발 - 4 > Ansible 자료실

본문 바로가기

사이트 내 전체검색

뒤로가기 Ansible 자료실

실습 Ansible - Windows 모듈 개발 - 4

페이지 정보

작성자 snow 작성일 25-01-10 10:29 조회 71 댓글 0

본문

Ansible Windows 모듈 테스트

이 게시글에서는 Ansible Windows 모듈 테스트에 대한 문서를 살펴보고, 예시만 안내드리는 글입니다.

1. Windows Playbook을 사용한 모듈 테스트

Windows 환경에서 Ansible 모듈을 테스트하려면 Playbook을 작성하여 실행할 수 있습니다. 아래의 단계를 따라 진행해 보세요.

1.1. Playbook과 인벤토리 파일 생성

테스트를 시작하려면 Playbook과 인벤토리 파일을 생성해야 합니다.

터미널에서 다음 명령을 실행하세요:

```bash

touch testmodule.yml

touch hosts

```

생성된 인벤토리 파일 hosts에 Windows 호스트 연결 정보를 추가합니다.

1.2. Playbook 작성

testmodule.yml 파일에 아래 내용을 추가합니다:

```yaml

---

- name: test out windows module

  hosts: windows

  tasks:

  - name: test out module

    win_module:

      name: test name

```

이 Playbook은 지정된 Windows 모듈을 테스트하기 위한 기본 설정입니다.

1.3. Playbook 실행

다음 명령어로 Playbook을 실행하여 모듈을 테스트합니다:

```bash

ansible-playbook -i hosts testmodule.yml

```

해당 명령을 실행하면 Playbook에 작성된 내용대로 모듈이 실행됩니다.

2. Windows 디버깅 설정

Ansible 모듈 디버깅은 Windows 호스트에서만 가능합니다. 이를 설정하기 위한 구체적인 단계는 다음과 같습니다.

2.1. 필요한 파일 복사

다음 파일과 디렉토리를 Windows 서버로 복사합니다:

  • 모듈 스크립트 파일
  • ./lib/ansible/module_utils/powershell 디렉토리
  • ./lib/ansible/module_utils/csharp 디렉토리

2.2. 모듈 코드 수정

모듈 코드에서 #Requires -Module로 시작하는 모든 줄의 앞에 # 문자를 추가합니다.

2.3. 디버깅 코드 추가

다음 PowerShell 코드를 모듈 스크립트의 시작 부분에 추가합니다:

```powershell

# Set $ErrorActionPreference to what's set during Ansible execution

$ErrorActionPreference = "Stop"

# Set the first argument as the path to a JSON file that contains the module args

$args = @("$($pwd.Path)\args.json")

# Import necessary modules

Import-Module -Name "$($pwd.Path)\powershell\Ansible.ModuleUtils.AddType.psm1"

Import-Module -Name "$($pwd.Path)\powershell\Ansible.ModuleUtils.Legacy.psm1"

```

이 코드는 디버깅 환경을 설정하며, 필요한 경우 $complex_args 변수에 더 많은 매개변수를 추가할 수 있습니다.

2.4. Ansible 디버깅 유지 설정

다음 명령을 통해 Ansible이 생성한 임시 파일을 유지하도록 설정합니다:

```bash

ANSIBLE_KEEP_REMOTE_FILES=1 ansible-playbook -i hosts testmodule.yml

```

명령 실행 후 Windows 서버의 %TEMP%\.. 디렉토리에 ansible-tmp-로 시작하는 폴더가 생성됩니다. 이 폴더에서 JSON 인수 파일과 디버깅에 필요한 스크립트를 찾을 수 있습니다.

3. 디버깅 도구

Windows PowerShell 스크립트를 디버깅할 수 있는 도구로는 PowerShell ISE와 Visual Studio Code가 있습니다. 이들 도구를 사용하여 디버깅을 진행할 수 있습니다.

- PowerShell ISE: Microsoft 공식 문서에서 사용 방법을 참고하세요.

- Visual Studio Code: 스크립트 디버깅에 최적화된 환경을 제공합니다.

댓글목록 0

등록된 댓글이 없습니다.

Copyright © 소유하신 도메인. All rights reserved.

사이트 정보

회사명 : (주)리눅스데이타시스템 / 대표 : 정정모
서울본사 : 서울특별시 강남구 봉은사로 114길 40 홍선빌딩 2층 / tel : 02-6207-1160
대전지사 : 대전광역시 유성구 노은로174 도원프라자 5층 / tel : 042-331-1161

PC 버전으로 보기