composer: Upgrade only if requested
This commit is contained in:
2
roles/composer/defaults/main.yaml
Normal file
2
roles/composer/defaults/main.yaml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
---
|
||||||
|
composer_upgrade: false
|
||||||
10
roles/composer/meta/argument_specs.yaml
Normal file
10
roles/composer/meta/argument_specs.yaml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
---
|
||||||
|
argument_specs:
|
||||||
|
main:
|
||||||
|
description: Installs composer if not already installed system-wide
|
||||||
|
options:
|
||||||
|
composer_upgrade:
|
||||||
|
description: Whether to upgrade composer to the latest version if already installed
|
||||||
|
type: bool
|
||||||
|
required: false
|
||||||
|
default: false
|
||||||
@@ -1,20 +1,24 @@
|
|||||||
---
|
---
|
||||||
|
|
||||||
- name: Test if composer is installed system-wide
|
- name: Test if composer is installed system-wide
|
||||||
stat:
|
ansible.builtin.stat:
|
||||||
path: /usr/bin/composer
|
path: /usr/bin/composer
|
||||||
register: global_composer
|
register: _composer_global_executable
|
||||||
|
|
||||||
- block:
|
- name: Install composer for user
|
||||||
- name: Download latest version of composer locally
|
when: not _composer_global_executable.stat.exists
|
||||||
get_url:
|
block:
|
||||||
url: https://getcomposer.org/download/latest-stable/composer.phar
|
- name: Check if composer installed
|
||||||
dest: "{{ ansible_user_dir }}/.local/bin/composer"
|
ansible.builtin.stat:
|
||||||
mode: 0755
|
path: "{{ ansible_user_dir }}/.local/bin/composer"
|
||||||
|
register: _composer_user_executable
|
||||||
|
|
||||||
- name: Set composer path to use local installation
|
- name: Download latest version of composer locally
|
||||||
set_fact:
|
ansible.builtin.get_url:
|
||||||
composer_path: "{{ ansible_user_dir }}/.local/bin/composer"
|
url: https://getcomposer.org/download/latest-stable/composer.phar
|
||||||
|
dest: "{{ ansible_user_dir }}/.local/bin/composer"
|
||||||
when: not global_composer.stat.exists
|
mode: "0755"
|
||||||
|
when: (not _composer_user_executable.stat.exists) or composer_upgrade
|
||||||
|
|
||||||
|
- name: Set composer path to use local installation
|
||||||
|
ansible.builtin.set_fact:
|
||||||
|
composer_path: "{{ ansible_user_dir }}/.local/bin/composer"
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
---
|
---
|
||||||
dependencies:
|
dependencies:
|
||||||
- composer
|
- role: composer
|
||||||
|
composer_upgrade: "{{ kimai_upgrade }}"
|
||||||
|
|||||||
Reference in New Issue
Block a user