darexsu.php

Ansible Rolle PHP 7.x, 8.x

CI MoleculeAnsible Rolle

Plattformen

Testen Repo: Distribution Repo: Drittanbieter
Debian 11 PHP 7.4 Sury
Debian 10 PHP 7.3 Sury
Ubuntu 20.04 PHP 7.4 ppa:andrej
Ubuntu 18.04 PHP 7.2 ppa:andrej
Oracle Linux 8 PHP 7.2-7.4 Remi
Rocky Linux 8 PHP 7.2-7.4 Remi

Installation

ansible-galaxy install darexsu.php --force

Mischverhalten

Ersetzen oder Mischen von Wörterbüchern (mit "hash_behaviour=replace" in ansible.cfg):

# Ersetzen             # Mischen
---                   ---
  vars:                 vars:
    dict:                 merge:
      a: "value"            dict: 
      b: "value"              a: "value" 
                              b: "value"

# Wie funktioniert das Mischen?:
Ihre Variablen [host_vars]  -->  Standardvariablen [aktuelle Rolle] --> Standardvariablen [einschließen Rolle]
  
  dict:          dict:              dict:
    a: "1" -->     a: "1"    -->      a: "1"
                   b: "2"    -->      b: "2"
                                      c: "3"
    
installieren und konfigurieren: PHP (Mischversion)
---
- hosts: all
  become: true

  vars:
    merge:
      # PHP
      php:
        enabled: true
        version: "7.4"
      # PHP -> installieren
      php_install:
        enabled: true
        modules: [common, fpm]
      # PHP -> konfigurieren -> php.ini
      php_ini:
        enabled: true
        file: "php.ini"
        src: "php_ini.j2"
        backup: false
        data:
          php:
            max_execution_time: "30"
            max_input_time: "60"
            memory_limit: "128M"
            upload_max_filesize: "2M"
      # PHP -> konfigurieren -> php-fpm
      php_fpm:
        www_conf:
          enabled: true
          file: "www.conf"
          state: "present"
          data:
            webserver_user: "www-data"
            webserver_group: "www-data"
            pm: "dynamic"
            pm_max_children: "10"
            pm_start_servers: "5"
            pm_min_spare_servers: "5"
            pm_max_spare_servers: "5"
            pm_max_requests: "500"
            unix_socket:
              enabled: true
              file: "php{{ php.version }}-fpm.sock"
              user: "www-data"
              group: "www-data"

  tasks:
    - name: Rolle darexsu.php einbinden
      include_role:
        name: darexsu.php
installieren: PHP, Repository: Distribution (Mischversion)
---
- hosts: all
  become: true

  vars:
    merge:
      # PHP
      php:
        enabled: true
        version: "7.4"
        repo: "distribution"
      # PHP -> installieren
      php_install:
        enabled: true
        modules: [common, fpm]

  tasks:
    - name: Rolle darexsu.php einbinden
      include_role: 
        name: darexsu.php
installieren: PHP, Repository: Drittanbieter (Mischversion)
---
- hosts: all
  become: true

  vars:
    merge:
      # PHP
      php:
        enabled: true
        version: "8.0"
        repo: "third_party"

      # PHP -> installieren
      php_install:
        enabled: true
        modules: [common, fpm]

  tasks:
    - name: Rolle darexsu.php einbinden
      include_role: 
        name: darexsu.php
installieren: PHP-Module (Mischversion)
---
- hosts: all
  become: true

  vars:
    merge:
      # PHP
      php:
        enabled: true
        version: "7.4"
        repo: "third_party"
      # PHP -> installieren
      php_install:
        enabled: true
      # PHP -> installieren -> benutzerdefinierte Module installieren
        modules: [common, fpm, gd]

  tasks:
    - name: Rolle darexsu.php einbinden
      include_role:
        name: darexsu.php
konfigurieren: php.ini (Mischversion)
---
- hosts: all
  become: true

  vars:
    merge:
      # PHP
      php:
        enabled: true
        version: "7.4"
        repo: "third_party"
      # PHP -> konfigurieren -> php.ini
      php_ini:
        enabled: true
        data:
          php:
            engine: "On"
            short_open_tag: "Off"
            precision: "14"
            output_buffering: "4096"
            zlib_output_compression: "Off"
            implicit_flush: "Off"
            # ...
       #    ...

  tasks:
    - name: Rolle darexsu.php einbinden
      include_role:
        name: darexsu.php
konfigurieren: php-fpm tcpip-Socket (Mischversion)
---
- hosts: all
  become: yes

  vars:
    merge:
      # PHP
      php:
        enabled: true
        version: "7.4"
        repo: "third_party"
      # PHP -> konfigurieren -> php-fpm Pool
      php_fpm:
        www_conf:
          enabled: true
          file: "www.conf"
          state: "present"
          src: "php_fpm.j2"
          backup: true          
          data:
            webserver_user: "www-data"
            webserver_group: "www-data"
            pm: "dynamic"
            pm_max_children: "10"
            pm_start_servers: "5"
            pm_min_spare_servers: "5"
            pm_max_spare_servers: "5"
            pm_max_requests: "500"
      # PHP -> konfigurieren -> php-fpm Pool -> TCP/IP Socket aktivieren   
            tcp_ip_socket:
              enabled: true
              listen: "127.0.0.1:9000"
      # PHP -> konfigurieren -> php-fpm Pool -> Unix Socket deaktivieren
            unix_socket:
              enabled: false
              file: "php{{ php.version }}-fpm.sock"
              user: "www-data"
              group: "www-data"  

  tasks:
    - name: Rolle darexsu.php einbinden
      include_role: 
        name: darexsu.php
konfigurieren: php-fpm Unix-Socket (Mischversion)
---
- hosts: all
  become: yes

  vars:
    merge:
      # PHP
      php:
        enabled: true
        version: "7.4"
        repo: "third_party"
      # PHP -> konfigurieren -> php-fpm Pool
      php_fpm:
        www_conf:
          enabled: true
          file: "www.conf"
          state: "present"
          src: "php_fpm.j2"
          backup: true         
          data:
            webserver_user: "www-data"
            webserver_group: "www-data"
            pm: "dynamic"
            pm_max_children: "10"
            pm_start_servers: "5"
            pm_min_spare_servers: "5"
            pm_max_spare_servers: "5"
            pm_max_requests: "500"
      # PHP -> konfigurieren -> php-fpm Pool -> TCP/IP Socket deaktivieren       
            tcp_ip_socket:
              enabled: false
              listen: "127.0.0.1:9000"
      # PHP -> konfigurieren -> php-fpm Pool -> Unix Socket aktivieren
            unix_socket:
              enabled: true
              file: "php{{ php.version }}-fpm.sock"
              user: "www-data"
              group: "www-data"  

  tasks:
    - name: Rolle darexsu.php einbinden 
      include_role: 
        name: darexsu.php
konfigurieren: mehrere Konfigurationen hinzufügen (Mischversion)
---
- hosts: all
  become: yes

  vars:
    merge:
      # PHP
      php:
        enabled: true
        version: "7.4"
        repo: "third_party"
      # PHP -> konfigurieren -> php-fpm Pool
      php_fpm:
      # PHP -> konfigurieren -> php-fpm Pool -> www.conf löschen  
        www_conf:
          enabled: true
          state: "absent"
      # PHP -> konfigurieren -> php-fpm Pool -> new.conf hinzufügen
        first_conf:
          enabled: true
          file: "first.conf"
          state: "present"
          src: "php_fpm.j2"
          backup: true         
          data:
            webserver_user: "www-data"
            webserver_group: "www-data"
            pm: "dynamic"
            pm_max_children: "10"
            pm_start_servers: "5"
            pm_min_spare_servers: "5"
            pm_max_spare_servers: "5"
            pm_max_requests: "500"      
            tcp_ip_socket:
              enabled: false
              listen: "127.0.0.1:9000"
            unix_socket:
              enabled: true
              file: "php{{ php.version }}-first-fpm.sock"
              user: "www-data"
              group: "www-data"
      # PHP -> konfigurieren -> php-fpm Pool -> second.conf hinzufügen
        second_conf:
          enabled: true
          file: "second.conf"
          state: "present"
          src: "php_fpm.j2"
          backup: true         
          data:
            webserver_user: "www-data"
            webserver_group: "www-data"
            pm: "dynamic"
            pm_max_children: "10"
            pm_start_servers: "5"
            pm_min_spare_servers: "5"
            pm_max_spare_servers: "5"
            pm_max_requests: "500"      
            tcp_ip_socket:
              enabled: false
              listen: "127.0.0.1:9000"
            unix_socket:
              enabled: true
              file: "php{{ php.version }}-second-fpm.sock"
              user: "www-data"
              group: "www-data"  

  tasks:
    - name: Rolle darexsu.php einbinden
      include_role: 
        name: darexsu.php
installieren und konfigurieren: PHP (Vollversion)
---
- hosts: all
  become: true

  vars:
    # PHP
    php:
      enabled: true
      version: "7.4"
      repo: "third_party"
      service:
        enabled: true
        state: "started"
    # PHP -> installieren
    php_install:
      enabled: true
      modules: [common, fpm]
    # PHP -> konfigurieren -> php.ini
    php_ini:
      enabled: true
      file: "php.ini"
      src: "php_ini.j2"
      backup: false
      data:
        php:
          engine: "On"
          short_open_tag: "Off"
          precision: "14"
          output_buffering: "4096"
          zlib_output_compression: "Off"
          implicit_flush: "Off"
          unserialize_callback_func: ""
          serialize_precision: "-1"
          disable_functions: ""
          disable_classes: ""
          zend_enable_gc: ""
          zend_exception_ignore_args: "On"
          zend_exception_string_param_max_len: "0"
          expose_php: "On"
          max_execution_time: "30"
          max_input_time: "60"
          memory_limit: "128M"
          error_reporting: "E_ALL & ~E_DEPRECATED & ~E_STRICT"
          display_errors: "Off"
          display_startup_errors: "Off"
          log_errors: "On"
          log_errors_max_len: "1024"
          ignore_repeated_errors: "Off"
          ignore_repeated_source: "Off"
          report_memleaks: "On"
          variables_order: "GPCS"
          request_order: "GP"
          register_argc_argv: "Off"
          auto_globals_jit: "On"
          post_max_size: "8M"
          auto_prepend_file: ""
          auto_append_file: ""
          default_mimetype: "text/html"
          default_charset: "UTF-8"
          doc_root: ""
          user_dir: ""
          enable_dl: "Off"
          file_uploads: "On"
          upload_max_filesize: "2M"
          max_file_uploads: "20"
          allow_url_fopen: "On"
          allow_url_include: "Off"
          default_socket_timeout: "60"
    # PHP -> konfigurieren -> php.fpm
    php_fpm:
      www_conf:
        enabled: true
        file: "www.conf"
        state: "present"
        src: "php_fpm.j2"
        backup: false
        data:
          webserver_user: "www-data"
          webserver_group: "www-data"
          pm: "dynamic"
          pm_max_children: "10"
          pm_start_servers: "5"
          pm_min_spare_servers: "5"
          pm_max_spare_servers: "5"
          pm_max_requests: "500"
          tcp_ip_socket:
            enabled: false
            listen: "127.0.0.1:9000"
          unix_socket:
            enabled: true
            file: "php{{ php.version }}-fpm.sock"
            user: "www-data"
            group: "www-data"

  tasks:
    - name: Rolle darexsu.php einbinden
      include_role: 
        name: darexsu.php
installieren: PHP, Repository: Distribution (Vollversion)
---
- hosts: all
  become: true

  vars:
    # PHP
    php:
      enabled: true
      version: "7.4"
      repo: "distribution"
      service:
        enabled: true
        state: "started"
    # PHP -> installieren
    php_install:
      enabled: true
      modules: [common, fpm]

  tasks:
    - name: Rolle darexsu.php einbinden
      include_role: 
        name: darexsu.php
installieren: PHP, Repository: Drittanbieter (Vollversion)
---
- hosts: all
  become: true

  vars:
    # PHP
    php:
      enabled: true
      version: "8.0"
      repo: "third_party"
      service:
        enabled: true
        state: "started"
    # PHP -> installieren
    php_install:
      enabled: true
      modules: [common, fpm]

  tasks:
    - name: Rolle darexsu.php einbinden
      include_role: 
        name: darexsu.php
installieren: PHP-Module (Vollversion)
---
- hosts: all
  become: true

  vars:
    # PHP
    php:
      enabled: true
      version: "7.4"
      repo: "third_party"
      service:
        enabled: true
        state: "started"
    # PHP -> installieren
    php_install:
      enabled: true
    # PHP -> installieren -> benutzerdefinierte Module installieren
      modules: [common, fpm, gd]

  tasks:
    - name: Rolle darexsu.php einbinden
      include_role: 
        name: darexsu.php 
konfigurieren: php.ini (Vollversion)
---
- hosts: all
  become: true

  vars:
    # PHP
    php:
      enabled: true
      version: "7.4"
      repo: "third_party"
      service:
        enabled: true
        state: "started"
    # PHP -> konfigurieren -> php.ini
    php_ini:
      enabled: true
      file: "php.ini"
      src: "php_ini.j2"
      backup: false
      data:
        php:
          engine: "On"
          short_open_tag: "Off"
          precision: "14"
          output_buffering: "4096"
          zlib_output_compression: "Off"
          implicit_flush: "Off"
          unserialize_callback_func: ""
          serialize_precision: "-1"
          disable_functions: ""
          disable_classes: ""
          zend_enable_gc: ""
          zend_exception_ignore_args: "On"
          zend_exception_string_param_max_len: "0"
          expose_php: "On"
          max_execution_time: "30"
          max_input_time: "60"
          memory_limit: "128M"
          error_reporting: "E_ALL & ~E_DEPRECATED & ~E_STRICT"
          display_errors: "Off"
          display_startup_errors: "Off"
          log_errors: "On"
          log_errors_max_len: "1024"
          ignore_repeated_errors: "Off"
          ignore_repeated_source: "Off"
          report_memleaks: "On"
          variables_order: "GPCS"
          request_order: "GP"
          register_argc_argv: "Off"
          auto_globals_jit: "On"
          post_max_size: "8M"
          auto_prepend_file: ""
          auto_append_file: ""
          default_mimetype: "text/html"
          default_charset: "UTF-8"
          doc_root: ""
          user_dir: ""
          enable_dl: "Off"
          file_uploads: "On"
          upload_max_filesize: "2M"
          max_file_uploads: "20"
          allow_url_fopen: "On"
          allow_url_include: "Off"
          default_socket_timeout: "60"

  tasks:
    - name: Rolle darexsu.php einbinden
      include_role: 
        name: darexsu.php
konfigurieren: php-fpm tcpip-Socket (Vollversion)
---
- hosts: all
  become: yes

  vars:
    # PHP
    php:
      enabled: true
      version: "7.4"
      repo: "third_party"
    # PHP -> konfigurieren -> php-fpm Pool
    php_fpm:
      www_conf:
        enabled: true
        file: "www.conf"
        state: "present"
        src: "php_fpm.j2"
        backup: true          
        data:
          webserver_user: "www-data"
          webserver_group: "www-data"
          pm: "dynamic"
          pm_max_children: "10"
          pm_start_servers: "5"
          pm_min_spare_servers: "5"
          pm_max_spare_servers: "5"
          pm_max_requests: "500"
    # PHP -> konfigurieren -> php-fpm Pool -> TCP/IP Socket aktivieren   
          tcp_ip_socket:
            enabled: true
            listen: "127.0.0.1:9000"
    # PHP -> konfigurieren -> php-fpm Pool -> Unix Socket deaktivieren
          unix_socket:
            enabled: false
            file: "php{{ php.version }}-fpm.sock"
            user: "www-data"
            group: "www-data"  

  tasks:
    - name: Rolle darexsu.php einbinden
      include_role: 
        name: darexsu.php
konfigurieren: php-fpm Unix-Socket (Vollversion)
---
- hosts: all
  become: yes

  vars:
    # PHP
    php:
      enabled: true
      version: "7.4"
      repo: "third_party"
    # PHP -> konfigurieren -> php-fpm Pool
    php_fpm:
      www_conf:
        enabled: true
        file: "www.conf"
        state: "present"
        src: "php_fpm.j2"
        backup: true         
        data:
          webserver_user: "www-data"
          webserver_group: "www-data"
          pm: "dynamic"
          pm_max_children: "10"
          pm_start_servers: "5"
          pm_min_spare_servers: "5"
          pm_max_spare_servers: "5"
          pm_max_requests: "500"
    # PHP -> konfigurieren -> php-fpm Pool -> TCP/IP Socket deaktivieren       
          tcp_ip_socket:
            enabled: false
            listen: "127.0.0.1:9000"
    # PHP -> konfigurieren -> php-fpm Pool -> Unix Socket aktivieren
          unix_socket:
            enabled: true
            file: "php{{ php.version }}-fpm.sock"
            user: "www-data"
            group: "www-data"  

  tasks:
    - name: Rolle darexsu.php einbinden
      include_role: 
        name: darexsu.php
konfigurieren: mehrere Konfigurationen hinzufügen (Vollversion)
---
- hosts: all
  become: yes

  vars:
    # PHP
    php:
      enabled: true
      version: "7.4"
      repo: "third_party"
    # PHP -> konfigurieren -> php-fpm Pool
    php_fpm:
    # PHP -> konfigurieren -> php-fpm Pool -> www.conf löschen  
      www_conf:
        enabled: true
        state: "absent"
    # PHP -> konfigurieren -> php-fpm Pool -> new.conf hinzufügen
      first_conf:
        enabled: true
        file: "first.conf"
        state: "present"
        src: "php_fpm.j2"
        backup: true         
        data:
          webserver_user: "www-data"
          webserver_group: "www-data"
          pm: "dynamic"
          pm_max_children: "10"
          pm_start_servers: "5"
          pm_min_spare_servers: "5"
          pm_max_spare_servers: "5"
          pm_max_requests: "500"      
          tcp_ip_socket:
            enabled: false
            listen: "127.0.0.1:9000"
          unix_socket:
            enabled: true
            file: "php{{ php.version }}-first-fpm.sock"
            user: "www-data"
            group: "www-data"
    # PHP -> konfigurieren -> php-fpm Pool -> second.conf hinzufügen
      second_conf:
        enabled: true
        file: "second.conf"
        state: "present"
        src: "php_fpm.j2"
        backup: true         
        data:
          webserver_user: "www-data"
          webserver_group: "www-data"
          pm: "dynamic"
          pm_max_children: "10"
          pm_start_servers: "5"
          pm_min_spare_servers: "5"
          pm_max_spare_servers: "5"
          pm_max_requests: "500"      
          tcp_ip_socket:
            enabled: false
            listen: "127.0.0.1:9000"
          unix_socket:
            enabled: true
            file: "php{{ php.version }}-second-fpm.sock"
            user: "www-data"
            group: "www-data"

  tasks:
    - name: Rolle darexsu.php einbinden
      include_role: 
        name: darexsu.php
Über das Projekt

install and configure php 7.x, php 8.x.

Installieren
ansible-galaxy install darexsu.php
GitHub Repository
Lizenz
mit
Downloads
2.9k
Besitzer