[ansible] move deploy role in other repo

This commit is contained in:
2018-03-30 14:47:03 +03:00
parent d2360fde25
commit 92a2628e90
7 changed files with 15 additions and 84 deletions

View File

@@ -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
View File

@@ -0,0 +1,5 @@
---
- src: git@bitbucket.org:shmyga/ansible-deploy.git
name: ansible-deploy
version: master
scm: git

View File

@@ -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] }}"

View File

@@ -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

View File

@@ -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

View File

@@ -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 }}"

View File

@@ -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 }}"