Bash에서는 일반적으로 다음과 같이 Composer를 설치합니다.
curl -sS https://getcomposer.org/installer -o composer-setup.php
php composer-setup.php --install-dir=/usr/local/bin --filename=composer
나는 읽으려고 노력한다Ansible Composer 모듈 문서 팁을 드리자면Ansible을 사용하여 Composer를 설치하는 데 권장되는 방법이 무엇인지 찾을 수 없습니다.
저는 Composer를 설치할 때마다 최신 설치 명령을 통해 Composer가 설치되는지 확인하고 Ansible이 SSH를 통해 내 컴퓨터에서 지속적으로 업그레이드되는지 확인하고 싶습니다.
state: latest
Ansible " " 방식(Ansible 모듈 사용)으로 이 작업을 어떻게 수행할 수 있나요 apt
?
답변1
하다
ansible-galaxy install geerlingguy.composer
이것은 추가됩니다geerlingguy.composer
캐릭터에 추가한 다음 스크립트에 추가할 수 있습니다.
답변2
여기에 또 다른 접근 방식이 있으며 여기에 모든 것이 설명되어 있습니다.https://www.devopsaurus.com/install-composer-with-ansible/
---
- name: Validate Composer checksum
get_url:
checksum: "sha384:795f976fe0ebd8b75f26a6dd68f78fd3453ce79f32ecb33e7fd087d39bfeb978342fb73ac986cd4f54edd0dc902601dc"
dest: /usr/src/
url: https://getcomposer.org/installer
become: yes
- name: Download and install Composer
shell: curl -sS https://getcomposer.org/installer | php
args:
chdir: /usr/src/
creates: /usr/local/bin/composer
warn: false
become: yes
- name: Add Composer to global path
copy:
dest: /usr/local/bin/composer
group: root
mode: '0755'
owner: root
src: /usr/src/composer.phar
remote_src: yes
become: yes
답변3
파일로
get_url
출력 하려면 바람직하게는 일부 디렉토리에 다음과 같이 말하십시오.https://getcomposer.org/installer
composer-setup.php
/tmp
command
모듈을 사용하여php /tmp/composer-setup.php ...
단계 실행
또는 Ansible Galaxy를 검색하여 다른 사람이 해당 작업을 수행했는지 확인하세요.
답변4
체크섬을 읽고 변수에 저장한 후 PHAR 파일을 디렉토리에 다운로드합니다 /usr/local/bin
. 체크섬 작업은 선택 사항입니다. 그러나 이 버전을 읽으려면 PHP가 필요합니다.
---
- name: "Read Checksum"
shell: curl https://getcomposer.org/download/latest-stable/composer.phar.sha256
register: composer_checksum
- name: "Download PHAR file"
ansible.builtin.get_url:
url: https://getcomposer.org/download/latest-stable/composer.phar
dest: /usr/local/bin/composer
force: yes
checksum: "sha256:{{ composer_checksum.stdout }}"
- name: "Read composer version"
shell: composer -V
register: composer_version
- debug:
var: composer_version.stdout
예상 출력
ok: [127.0.0.1] => { "composer_version.stdout": "컴포저 버전 2.1.9 2021-10-05 09:47:38" }