mastible/roles/mastodon-app/tasks/main.yml

48 lines
1.6 KiB
YAML

---
# All tasks in this role should be done as the mastodon user
# This role clones the Mastodon GitHub repository and installs
# it's node.js and Ruby dependencies
- name: Clone Mastodon git repository [1st clone]
git:
repo: 'https://github.com/tootsuite/mastodon.git'
dest: /home/mastodon/live
become: true
become_user: mastodon
- name: Get latest version as an Ansible variable
shell: cd /home/mastodon/live && git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1
become: true
become_user: mastodon
args:
executable: /bin/bash
register: MASTODON_VERSION
- name: Checkout latest Mastodon version
git:
repo: 'https://github.com/tootsuite/mastodon.git'
dest: /home/mastodon/live
version: "{{ MASTODON_VERSION.stdout }}"
become: true
become_user: mastodon
- name: Install bundler
shell: cd /home/mastodon/live && gem install bundler && gem install bundler -v 1.16.6
args:
executable: /bin/bash
environment:
PATH: '/home/mastodon/.rbenv/bin:/home/mastodon/.rbenv/shims:/home/mastodon/.rbenv/plugins/ruby-build/bin:{{ ansible_env.PATH }}'
become: true
become_user: mastodon
- name: Use bundler to install the rest of the Ruby dependencies
shell: cd /home/mastodon/live && bundle install
args:
executable: /bin/bash
environment:
PATH: '/home/mastodon/.rbenv/bin:/home/mastodon/.rbenv/shims:/home/mastodon/.rbenv/plugins/ruby-build/bin:{{ ansible_env.PATH }}'
become: true
become_user: mastodon
- name: Use yarn to install node.js dependencies
shell: cd /home/mastodon/live && yarn install --pure-lockfile
args:
executable: /bin/bash
become: true
become_user: mastodon