6.2. 컬렉션 생성
Ansible Galaxy CLI 툴을 사용하여 자체 컬렉션을 로컬로 생성할 수 있습니다. collection 하위 명령을 사용하여 컬렉션 관련 명령을 모두 활성화할 수 있습니다.
사전 요구 사항
- 개발 환경에 Ansible 버전 2.9 이상이 설치되어 있어야 합니다.
절차
- 터미널에서 네임스페이스 루트 디렉터리가 될 위치로 이동합니다. 단순화를 위해 이는 COLLECTIONS_PATH 의 경로여야 하지만 필수는 아닙니다.
my_namespace및my_collection_name을 선택한 값으로 교체하여 다음 명령을 실행합니다.$ ansible-galaxy collection init <my_namespace>.<my_collection_name>참고dotnet.ansible.com 또는 cloud.redhat.com/ansible/automation-hub의 "My Content" 탭에서 "My Content" 탭에서 업로드할 수 있는 적절한 권한이 있는지 확인합니다.
위의 명령은 위의 네임스페이스 인수에서 이름이 지정된 디렉토리(아직 없는 경우)를 생성한 다음 컬렉션 이름을 사용하여 그 아래에 디렉터리를 생성합니다. 해당 디렉터리의 내부는 기본값 또는 "skeleton" Collection입니다. 여기에서 역할 또는 플러그인을 추가하고 자체 컬렉션 개발에 작업을 시작할 수 있습니다.
실행 환경과 관련하여 컬렉션 개발자는 Ansible Builder를 통해 적절한 메타데이터를 제공하여 콘텐츠에 대한 요구 사항을 선언할 수 있습니다.
컬렉션의 요구 사항은 다음과 같은 방식으로 인식될 수 있습니다.
-
file
meta/execution-environment.yml은 Python 및/또는바인딩 요구 사항 파일을참조합니다. -
Python 종속 항목에 대한 정보가 들어 있으며 컬렉션 루트 수준에서 찾을 수 있는
requirements.txt파일 -
시스템 수준 종속 항목이 포함되어 있으며 Collection의 루트 수준에서 찾을 수 있는
bindep.txt파일 -
이러한 파일이 컬렉션
build_ignore에 있는 경우 이 섹션이 빌드 아티팩트에 포함되지 않아야 하는 파일 또는 디렉터리를 필터링하는 데 사용되므로 Ansible Builder는 이러한 파일을 가져오지 않습니다.
컬렉션 관리자는 introspect 명령을 사용하여 ansible-builder에서 예상되는 요구 사항을 인식하는지 확인할 수 있습니다.
$ ansible-builder introspect --sanitize ~/.ansible/collections/