[ansible] move deploy role in other repo
This commit is contained in:
@@ -1,3 +1,12 @@
|
|||||||
- hosts: all
|
- hosts: all
|
||||||
|
vars:
|
||||||
|
ansible_user: holop
|
||||||
|
deploy_project: tankz
|
||||||
|
deploy_repo_url: git@bitbucket.org:infernalgames/tankz.git
|
||||||
|
deploy_repo_version: ansible
|
||||||
|
deploy_npm: yes
|
||||||
|
deploy_config: yes
|
||||||
|
deploy_gulp: yes
|
||||||
|
deploy_service: yes
|
||||||
roles:
|
roles:
|
||||||
- deploy
|
- ansible-deploy
|
||||||
5
ansible/requirements.yml
Normal file
5
ansible/requirements.yml
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
---
|
||||||
|
- src: git@bitbucket.org:shmyga/ansible-deploy.git
|
||||||
|
name: ansible-deploy
|
||||||
|
version: master
|
||||||
|
scm: git
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
|
|
||||||
- name: Find old releases
|
|
||||||
find:
|
|
||||||
paths: "{{ project_dir }}/releases"
|
|
||||||
recurse: no
|
|
||||||
file_type: directory
|
|
||||||
register: releases
|
|
||||||
|
|
||||||
- name: Delete old releases
|
|
||||||
file:
|
|
||||||
path: "{{ item.path }}"
|
|
||||||
state: absent
|
|
||||||
with_items: "{{ (releases.files | sort(attribute='path'))[0:-5] }}"
|
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
- import_tasks: repo.yml
|
|
||||||
- import_tasks: npm.yml
|
|
||||||
|
|
||||||
- name: Copy config.json
|
|
||||||
copy:
|
|
||||||
src: "{{ release_dir }}/config.shmyga.ru.json"
|
|
||||||
dest: "{{ release_dir }}/config.json"
|
|
||||||
remote_src: true
|
|
||||||
|
|
||||||
- name: Gulp build
|
|
||||||
command: "gulp default"
|
|
||||||
args:
|
|
||||||
chdir: "{{ release_dir }}"
|
|
||||||
|
|
||||||
- name: Create symlink to release
|
|
||||||
file:
|
|
||||||
src: "{{ release_dir }}"
|
|
||||||
dest: "{{ project_dir }}/current"
|
|
||||||
state: link
|
|
||||||
|
|
||||||
- name: Restart {{ project_name }} service
|
|
||||||
command: "sudo /bin/systemctl restart tankz"
|
|
||||||
args:
|
|
||||||
warn: no
|
|
||||||
|
|
||||||
- import_tasks: clean.yml
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
- name: Create directory for node_modules
|
|
||||||
file:
|
|
||||||
path: "{{ project_dir }}/npm"
|
|
||||||
state: directory
|
|
||||||
|
|
||||||
- name: Copy package.json
|
|
||||||
copy:
|
|
||||||
src: "{{ release_dir }}/package.json"
|
|
||||||
dest: "{{ project_dir }}/npm/"
|
|
||||||
remote_src: true
|
|
||||||
|
|
||||||
- name: npm install
|
|
||||||
command: npm install
|
|
||||||
args:
|
|
||||||
chdir: "{{ project_dir }}/npm/"
|
|
||||||
|
|
||||||
- name: Create symlink to node_modules
|
|
||||||
file:
|
|
||||||
src: "{{ project_dir }}/npm/node_modules"
|
|
||||||
dest: "{{ release_dir }}/node_modules"
|
|
||||||
state: link
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
- name: Update git repository
|
|
||||||
git:
|
|
||||||
repo: "{{ repo_url }}"
|
|
||||||
dest: "{{ project_dir }}/repo"
|
|
||||||
version: ansible
|
|
||||||
|
|
||||||
- name: Creates directory for release
|
|
||||||
file:
|
|
||||||
path: "{{ release_dir }}"
|
|
||||||
state: directory
|
|
||||||
|
|
||||||
- name: Copy project files
|
|
||||||
synchronize:
|
|
||||||
src: "{{ project_dir }}/repo/"
|
|
||||||
dest: "{{ release_dir }}"
|
|
||||||
rsync_opts:
|
|
||||||
- "--exclude=.git"
|
|
||||||
delegate_to: "{{ inventory_hostname }}"
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
ansible_user: holop
|
|
||||||
date_str: "{{ ansible_date_time.year }}{{ ansible_date_time.month }}{{ ansible_date_time.day }}{{ ansible_date_time.hour }}{{ ansible_date_time.minute }}{{ ansible_date_time.second }}"
|
|
||||||
|
|
||||||
repo_url: "git@bitbucket.org:infernalgames/{{ project_name }}.git"
|
|
||||||
release_dir: "{{ project_dir }}/releases/{{ date_str }}"
|
|
||||||
Reference in New Issue
Block a user