Add common role for mastible playbook.
This commit is contained in:
parent
a6a01e1094
commit
448cfc4d08
2
roles/common/handlers/main.yml
Normal file
2
roles/common/handlers/main.yml
Normal file
@ -0,0 +1,2 @@
|
||||
- name: restart rsyslog
|
||||
service: name=rsyslog state=restarted
|
64
roles/common/tasks/main.yml
Normal file
64
roles/common/tasks/main.yml
Normal file
@ -0,0 +1,64 @@
|
||||
---
|
||||
# This role installs packages that every Mastodon server needs and does common
|
||||
# node setup
|
||||
- name: This role installs packages that every Mastodon server needs and does common node setup
|
||||
hosts: all
|
||||
remote_user: root
|
||||
- name: Install python-apt, aptitude, and debconf-utils
|
||||
shell: apt-get update && apt-get -y install python-apt aptitude debconf-utils
|
||||
- name: Do any package upgrades
|
||||
apt: upgrade=dist
|
||||
- name: Set default locale to en_US.UTF-8
|
||||
debconf: name=locales question='locales/default_environment_locale' value=en_US.UTF-8 vtype='select'
|
||||
- name: Generate locales
|
||||
debconf: name=locales question='locales/locales_to_be_generated' value='en_US.UTF-8 UTF-8' vtype='multiselect'
|
||||
- name: Set timezone area
|
||||
debconf: name=tzdata question='tzdata/Areas' value='Etc' vtype='select'
|
||||
- name: Set timezone
|
||||
debconf: name=tzdata question='tzdata/Zones/Etc' value='UTC' vtype='select'
|
||||
notify:
|
||||
- restart rsyslog
|
||||
- name: Add Nodesource apt key
|
||||
apt_key: url=https://deb.nodesource.com/gpgkey/nodesource.gpg.key state=present
|
||||
- name: Add Nodesource apt repositories
|
||||
apt_repository: repo={{item}} state=present
|
||||
with_items:
|
||||
- deb https://deb.nodesource.com/node_6.x xenial main
|
||||
- deb-src https://deb.nodesource.com/node_6.x xenial main
|
||||
- name: Add Yarnpkg apt key
|
||||
apt_key: url=https://dl.yarnpkg.com/debian/pubkey.gpg state=present
|
||||
- name: Add Yarnpkg apt repository
|
||||
apt-repository: repo=deb https://dl.yarnpkg.com/debian/ stable main state=present
|
||||
# Note that we don't install nginx, letsencrypt, postgresql and redis here, that will be in different roles
|
||||
- name: Update apt cache and install various dependencies
|
||||
apt: name={{item}} state=latest update_cache=yes
|
||||
with_items:
|
||||
- imagemagick
|
||||
- ffmpeg
|
||||
- libpq-dev
|
||||
- libxml2-dev
|
||||
- libxslt1-dev
|
||||
- file
|
||||
- git-core
|
||||
- g++
|
||||
- libprotobuf-dev
|
||||
- protobuf-compiler
|
||||
- pkg-config
|
||||
- nodejs
|
||||
- gcc
|
||||
- autoconf
|
||||
- bison
|
||||
- build-essential
|
||||
- libssl-dev
|
||||
- libyaml-dev
|
||||
- libreadline6-dev
|
||||
- zlib1g-dev
|
||||
- libncurses5-dev
|
||||
- libffi-dev
|
||||
- libgdbm3
|
||||
- libgdbm-dev
|
||||
- yarn
|
||||
- libidn11-dev
|
||||
- libicu-dev
|
||||
- name: Add mastodon system user
|
||||
user: name=mastodon state=present
|
Loading…
Reference in New Issue
Block a user