目录结构:
[root@szwpldb1081 php]# cat install_php.yaml --- - hosts: tmphost tasks: - name: install dependents import_tasks: common/install_dependents.yaml - name: install php import_tasks: common/install_php.yaml [root@szwpldb1081 php]# tree . ├── common │ ├── install_dependents.yaml │ └── install_php.yaml ├── install_php.yaml ├── install_php.yaml_bak └── template ├── httpd.conf ├── index.php ├── install_php └── php.ini
主yaml文件:
[root@szwpldb1081 php]# cat install_php.yaml --- - hosts: tmphost tasks: - name: install dependents import_tasks: common/install_dependents.yaml - name: install php import_tasks: common/install_php.yaml
php一些安装依赖包:
[root@szwpldb1081 php]# cat common/install_dependents.yaml --- - name: install gcc yum: name: gcc state: present - name: install gcc-c++ yum: name: gcc-c++ state: present - name: install bzip2-devel yum: name: bzip2-devel state: present - name: install libjpeg-devel yum: name: libjpeg-devel state: present - name: install libpng-devel yum: name: libpng-devel state: present - name: install freetype-devel yum: name: freetype-devel state: present - name: install freetype-devel yum: name: libxml2-devel
主要功能文件:
[root@szwpldb1081 php]# cat common/install_php.yaml --- - name: unarchive php-7.2.13.tar.gz to remonte host unarchive: src: "/usr/local/mysqltools/sps/php/php-7.2.13.tar.gz" dest: /tmp/php - name: copy install_php.sh to remonte host copy: src: /usr/local/mysqltools/sps/php/install_php.sh dest: /tmp/php/install_php.sh - name: install php shell: /bin/bash /tmp/php/install_php.sh - name: copy php.ini to remote copy: src: ./template/php.ini dest: /usr/local/php/etc/php.ini - name: remove /tmp/install_php.sh file: dest: /tmp/php/ state: absent
脚本实现安装:
[root@szwpldb1081 php]# cat /usr/local/mysqltools/sps/php/install_php.sh #!/bin/bash #安装php脚本 err_echo(){ echo -e "