+ latest extensions - deployed nginx, apache, php 74 & 81, nvm, automatic databases import and phpmyadmin with nginx basic auth
+ dhcp dnsmasq server playbook for create inner server network #861m7vaer Шаблон операционной системы на Debian 10
This commit is contained in:
82
playbooks/debops/php-wp.yml
Normal file
82
playbooks/debops/php-wp.yml
Normal file
@ -0,0 +1,82 @@
|
||||
---
|
||||
|
||||
- name: Install and manage PHP environment
|
||||
collections: [ 'debops.debops', 'debops.roles01',
|
||||
'debops.roles02', 'debops.roles03' ]
|
||||
hosts: [ 'debian10' ]
|
||||
become: True
|
||||
|
||||
environment: '{{ inventory__environment | d({})
|
||||
| combine(inventory__group_environment | d({}))
|
||||
| combine(inventory__host_environment | d({})) }}'
|
||||
|
||||
vars_files:
|
||||
- ./../../vars/php.yml
|
||||
|
||||
vars:
|
||||
php__sury: '{{ ansible_local.php.sury
|
||||
|d(ansible_distribution_release in [ "buster" ]) | bool }}'
|
||||
php__sury_apt_key_id: '{{ php__sury_apt_key_id_map[ansible_distribution] }}'
|
||||
php__sury_apt_repo: '{{ php__sury_apt_repo_map[ansible_distribution] }}'
|
||||
php__sury_apt_key_id_map:
|
||||
'Debian':
|
||||
- id: '1505 8500 A023 5D97 F5D1 0063 B188 E2B6 95BD 4743'
|
||||
repo: 'deb https://packages.sury.org/php/ {{ ansible_distribution_release }} main'
|
||||
state: '{{ "present" if php__sury|bool else "absent" }}'
|
||||
|
||||
# Key replaced due to security concerns
|
||||
# Ref: https://www.patreon.com/posts/dpa-new-signing-25451165
|
||||
- id: 'DF3D 585D B8F0 EB65 8690 A554 AC0E 4758 4A7A 714D'
|
||||
state: 'absent'
|
||||
php__sury_apt_repo_map:
|
||||
'Debian': 'deb https://packages.sury.org/php/ {{ ansible_distribution_release }} main'
|
||||
'Ubuntu': 'ppa:ondrej/php'
|
||||
php__base_packages:
|
||||
- unzip
|
||||
- git
|
||||
# mysql - это нужно только для WordPress
|
||||
# mbstring требует только некоторые пакеты в laravel
|
||||
# bcmath - нужно для работы парсера Excel файлов на одном из проектов
|
||||
php__packages: [ 'curl', 'xml', 'gd', 'zip', 'mbstring', 'mysql', 'bcmath' ]
|
||||
php__composer_upstream_enabled: '{{ True
|
||||
if (ansible_distribution_release in
|
||||
[ "buster" ])
|
||||
else False }}'
|
||||
php__php_included_packages: '{{ php__common_included_packages
|
||||
+ [ "sysvsem", "sysvshm" ] }}'
|
||||
|
||||
pre_tasks:
|
||||
|
||||
- name: Apply keyring configuration for php environment
|
||||
import_role:
|
||||
name: 'keyring'
|
||||
vars:
|
||||
keyring__dependent_apt_keys:
|
||||
- '{{ php__keyring__dependent_apt_keys }}'
|
||||
tags: [ 'role::keyring', 'skip::keyring', 'role::php' ]
|
||||
|
||||
- name: Prepare php environment
|
||||
import_role:
|
||||
name: 'php'
|
||||
tasks_from: 'main_env'
|
||||
tags: [ 'role::php', 'role::php:env', 'role::logrotate' ]
|
||||
|
||||
roles:
|
||||
|
||||
- role: apt_preferences
|
||||
tags: [ 'role::apt_preferences', 'skip::apt_preferences' ]
|
||||
apt_preferences__dependent_list:
|
||||
- '{{ php__apt_preferences__dependent_list }}'
|
||||
|
||||
- role: cron
|
||||
tags: [ 'role::cron', 'skip::cron' ]
|
||||
|
||||
- role: logrotate
|
||||
tags: [ 'role::logrotate', 'skip::logrotate' ]
|
||||
logrotate__dependent_config:
|
||||
- '{{ php__logrotate__dependent_config }}'
|
||||
|
||||
- role: apt_install
|
||||
|
||||
- role: php
|
||||
tags: [ 'role::php', 'skip::php' ]
|
||||
Reference in New Issue
Block a user