Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ---
- - name: Check if OpenResty tarball is downloaded
- stat: path=/tmp/openresty.tar.gz
- register: resty_tar
- # meta_end_play in 2.2 gist.github.com/jimi-c/c45b225e101fe673e42ffb719f259fbd
- - name: Check if OpenResty already installed...
- shell: /usr/local/openresty/bin/openresty -v
- register: nginx_ver
- ignore_errors: yes
- - name: OpenResty is not installed
- block:
- - name: Install Ubuntu Dependencies
- block:
- - name: Update apt cache
- apt:
- update_cache: yes
- become: yes
- - name: Install required packages to compile OpenResty from source - Ubuntu
- apt: name={{ item }}
- with_items:
- - build-essential
- - libreadline-dev
- - make
- - libncurses5-dev
- - libpcre3-dev
- - libssl-dev
- - perl
- - libxml2-dev #Optional
- - libxslt-dev #Optional
- - libgd-dev #Optional
- - libgeoip-dev #Optional
- - libpq-dev #Optional
- - libgd2-xpm-dev #Optional
- - libxslt1-dev #Optional
- when: ansible_distribution == "Ubuntu"
- - name: Intall CentOS Dependencies
- block:
- - name: Update yum
- yum:
- name: '*'
- state: latest
- - name: Install required packages to compile OpenResty from source - CentOS
- yum:
- name: "{{ item }}"
- state: latest
- with_items:
- - "@Development tools"
- - readline-devel
- - pcre-devel
- - openssl-devel
- - gcc
- - curl
- - postgresql-libs
- - postgresql-devel
- - perl
- - libxslt-devel
- - libxml2-devel
- - gd-devel
- - geoip-devel
- when: ansible_distribution == "CentOS"
- - name: OpenResty tarball does not exist
- block:
- - name: Download OpenResty source
- get_url: url={{ openresty_download_url }}{{ openresty_version }}.tar.gz dest=/tmp/openresty-{{ openresty_version }}.tar.gz mode=0440
- - name: Extract Openresty tarball
- unarchive: src=/tmp/openresty-{{ openresty_version }}.tar.gz dest=/tmp/ copy=no
- when: resty_tar.stat.exists == False
- - name: Build configure command
- template: src=configure_command.j2 dest=/tmp/openresty-{{ openresty_version }}/ansible_build.sh mode=0777
- - name: Configure Openresty
- command: chdir=/tmp/openresty-{{ openresty_version }} ./ansible_build.sh
- - name: Compile Openresty
- command: chdir=/tmp/openresty-{{ openresty_version }} make -j{{ resty_compile_threads }}
- - name: Install Openresty
- command: chdir=/tmp/openresty-{{ openresty_version }} make install
- - name: register openresty bin files
- find:
- paths: /usr/local/openresty/bin
- follow: yes
- recurse: no
- register: openresty_bins
- - name: link openresty bin files
- file:
- src: "{{ item.path }}"
- dest: "/usr/bin/{{ item.path | basename}}"
- state: link
- owner: root
- mode: 0755
- with_items: "{{ openresty_bins.files }}"
- when: nginx_ver.stderr.find(openresty_version) == -1
Add Comment
Please, Sign In to add comment