Skip to content

Instantly share code, notes, and snippets.

@damonp
Created September 16, 2014 16:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save damonp/643a46e2361e01bba0ab to your computer and use it in GitHub Desktop.
Save damonp/643a46e2361e01bba0ab to your computer and use it in GitHub Desktop.
Simiple skeleton to checkout/update git app project on remote webserver, run composer if necessary and set webserver file permissions.
---
# file: deploy_git.yml
-
hosts: "{{ hosts }}"
user: root
vars:
- project: "{{ project }}"
- repo: "{{ repo }}"
- releasedir: "{{ releasedir }}"
- run_composer: "{{ composer | default(false) }}"
tasks:
- name: Check node alive
action: ping
- name: Update {{ project }}/ from {{ repo.replace('ssh://', '') }}
git: repo={{ repo }} dest={{ releasedir }} version=HEAD
- name: Run composer install
composer: working_dir={{ releasedir }}
when: run_composer
- name: Update {{ project }}/ owner/group
file: path={{ releasedir }} mode=0664 owner=nginx group=nginx
- name: Update {{ project }}/ permissions
shell: chown -R nginx:nginx {{ releasedir }}*;
chmod -R 664 {{ releasedir }}*;
chmod -R a+X {{ releasedir }}*;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment