Skip to content

Instantly share code, notes, and snippets.

@s3w47m88
Forked from louim/uploads.yml
Created November 6, 2017 01:43
Show Gist options
  • Save s3w47m88/827eecba5eeb2a1d9b73b3b455f615ea to your computer and use it in GitHub Desktop.
Save s3w47m88/827eecba5eeb2a1d9b73b3b455f615ea to your computer and use it in GitHub Desktop.
Drop-in playbook for Trellis to push and pull uploads from the server to your local machine.
---
- name: Sync uploads between environments
hosts: web
remote_user: "{{ web_user }}"
vars:
project: "{{ wordpress_sites[site] }}"
project_root: "{{ www_root }}/{{ site }}"
tasks:
# ansible-playbook uploads.yml -i hosts/staging --extra-vars="site=example.com mode=push"
- name: Push uploads
synchronize:
src: "{{ project.local_path }}/web/app/uploads/"
dest: "{{ project_root }}/current/web/app/uploads/"
rsync_opts: --exclude=.DS_Store
when: mode is not defined or mode == "push"
# ansible-playbook uploads.yml -i hosts/staging --extra-vars="site=example.com mode=pull"
- name: Pull uploads
synchronize:
src: "{{ project_root }}/current/web/app/uploads/"
dest: "{{ project.local_path }}/web/app/uploads/"
mode: pull
rsync_opts: --exclude=.DS_Store
when: mode is defined and mode == "pull"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment