refactor deployment process
continuous-integration/drone/push Build is failing
Details
continuous-integration/drone/push Build is failing
Details
This commit is contained in:
parent
e4a509776e
commit
f34da510c7
|
@ -1,5 +1,5 @@
|
|||
---
|
||||
zigbee2mqtt_version: 0.1.8
|
||||
zigbee2mqtt_version: 1.5.1
|
||||
|
||||
zigbee2mqtt_user: zigbee2mqtt
|
||||
zigbee2mqtt_group: zigbee2mqtt
|
||||
|
|
|
@ -8,71 +8,81 @@
|
|||
mode: 0750
|
||||
with_items:
|
||||
- "{{ zigbee2mqtt_base_dir }}"
|
||||
- "{{ zigbee2mqtt_base_dir }}/data"
|
||||
- "{{ zigbee2mqtt_log_dir }}"
|
||||
become: True
|
||||
become_user: root
|
||||
|
||||
- block:
|
||||
- name: Check data dir
|
||||
stat:
|
||||
path: "{{ zigbee2mqtt_base_dir }}/data"
|
||||
register: __zigbee_datadir
|
||||
# - name: Check data dir
|
||||
# stat:
|
||||
# path: "{{ zigbee2mqtt_base_dir }}/data"
|
||||
# register: __zigbee_datadir
|
||||
|
||||
- name: Backup data directory
|
||||
synchronize:
|
||||
src: "{{ zigbee2mqtt_base_dir }}/data/"
|
||||
dest: "/tmp/zigbee_data"
|
||||
recursive: yes
|
||||
delegate_to: "{{ inventory_hostname }}"
|
||||
when: __zigbee_datadir.stat.exists
|
||||
# - name: Backup data directory
|
||||
# synchronize:
|
||||
# src: "{{ zigbee2mqtt_base_dir }}/data/"
|
||||
# dest: "/tmp/zigbee_data"
|
||||
# recursive: yes
|
||||
# delegate_to: "{{ inventory_hostname }}"
|
||||
# when: __zigbee_datadir.stat.exists
|
||||
|
||||
- name: Setup zigbee2mqtt
|
||||
git:
|
||||
repo: "https://github.com/Koenkk/zigbee2mqtt"
|
||||
# - name: Setup zigbee2mqtt
|
||||
# git:
|
||||
# repo: "https://github.com/Koenkk/zigbee2mqtt"
|
||||
# dest: "{{ zigbee2mqtt_base_dir }}/bin"
|
||||
# version: "{{ zigbee2mqtt_version }}"
|
||||
# force: yes
|
||||
# register: __zigbee2mqtt_install
|
||||
|
||||
# - name: Restore data directory
|
||||
# synchronize:
|
||||
# src: "/tmp/zigbee_data/"
|
||||
# dest: "{{ zigbee2mqtt_base_dir }}/data"
|
||||
# recursive: yes
|
||||
# delegate_to: "{{ inventory_hostname }}"
|
||||
# when: __zigbee_datadir.stat.exists
|
||||
|
||||
- name: Download release 'v{{ zigbee2mqtt_version }}'
|
||||
unarchive:
|
||||
src: "https://github.com/Koenkk/zigbee2mqtt/archive/{{ zigbee2mqtt_version }}.tar.gz"
|
||||
dest: "{{ zigbee2mqtt_base_dir }}"
|
||||
version: "{{ zigbee2mqtt_version }}"
|
||||
force: yes
|
||||
register: __zigbee2mqtt_install
|
||||
remote_src: yes
|
||||
exclude: "{{ __zigbee2mqtt_release_exclude }}"
|
||||
extra_opts:
|
||||
- --strip-components=1
|
||||
|
||||
- name: Restore data directory
|
||||
synchronize:
|
||||
src: "/tmp/zigbee_data/"
|
||||
dest: "{{ zigbee2mqtt_base_dir }}/data"
|
||||
recursive: yes
|
||||
delegate_to: "{{ inventory_hostname }}"
|
||||
when: __zigbee_datadir.stat.exists
|
||||
register: __zigbee2mqtt_install
|
||||
|
||||
- name: Delete existing node_modules folder
|
||||
file:
|
||||
path: "{{ zigbee2mqtt_base_dir }}/node_modules"
|
||||
state: absent
|
||||
when: __zigbee2mqtt_install.changed
|
||||
|
||||
- name: Install nodejs dependencies
|
||||
npm:
|
||||
path: "{{ zigbee2mqtt_base_dir }}"
|
||||
environment:
|
||||
PATH: "{{ __zigbee2mqtt_npm_executable | dirname }}:{{ ansible_env.PATH }}"
|
||||
when: __zigbee2mqtt_install.changed
|
||||
notify: __zigbee2mqtt_restart
|
||||
when: zigbee2mqtt_version is version(zigbee2mqtt_current_version, ">")
|
||||
become: True
|
||||
become_user: "{{ zigbee2mqtt_user }}"
|
||||
|
||||
- block:
|
||||
- name: Cleanup base directory
|
||||
file:
|
||||
path: "{{ zigbee2mqtt_base_dir }}/{{ item }}"
|
||||
state: absent
|
||||
loop:
|
||||
- docker
|
||||
- docs
|
||||
- images
|
||||
- LICENSE
|
||||
- README.md
|
||||
- scripts
|
||||
- test
|
||||
- update.sh
|
||||
# - name: Cleanup base directory
|
||||
# file:
|
||||
# path: "{{ zigbee2mqtt_base_dir }}/{{ item }}"
|
||||
# state: absent
|
||||
# loop:
|
||||
# - docker
|
||||
# - docs
|
||||
# - images
|
||||
# - LICENSE
|
||||
# - README.md
|
||||
# - scripts
|
||||
# - test
|
||||
# - update.sh
|
||||
|
||||
- name: Deploy configuration file
|
||||
template:
|
||||
|
|
|
@ -1,2 +1,12 @@
|
|||
---
|
||||
__zigbee2mqtt_npm_executable: /usr/local/bin/npm
|
||||
__zigbee2mqtt_release_exclude:
|
||||
- data/
|
||||
- docker/
|
||||
- docs/
|
||||
- images/
|
||||
- LICENSE
|
||||
- README.md
|
||||
- scripts/
|
||||
- test/
|
||||
- update.sh
|
||||
|
|
Loading…
Reference in New Issue