Skip to content
Branch: master
Find file History
Permalink
Type Name Latest commit message Commit time
..
Failed to load latest commit information.
templates add display_title for timemap Aug 16, 2019
vars
.example.env set ansible_become to false in example env May 22, 2019
README.md add galaxy deps to readme Aug 6, 2019
_master.yml clean and create template folder Mar 1, 2019
ansible.cfg
datasheet.yml updates scripts to support deployment of multiple datasheet-server + … May 22, 2019
nginx.yml
prepare.yml add python3 before docker install Aug 6, 2019
timemap.yml delete and copy new in succession for less downtime Aug 16, 2019

README.md

Ansible Playbook for Timemap Deployment

An Ansible playbook for remote deployment of an instance of Timemap in conjunction with a dedicated instance of datasheet-server. Multiple Timemap/Datasheet instances may be deployed to the same server, differentiated by the application_name set in vault.yml (see configuration steps below).

Overview

The playbook's tasks are broken down into four subsets, which are stored in separate files:

  • prepare.yml installs the relevant packages on the remote server.
  • datasheet.yml configures and builds an instance Datasheet-Server on the remote server and launches it inside a docker container.
  • timemap.yml configures and builds an instance of Timemap on the host machine and copies the static files to the remote server.
  • nginx.yml configures the reverse proxy on the remote server

The subtasks are called in sequence from the _master.yml playbook file.

N.B. copies of the configuration files for both Timemap and Datasheet-Server in the credentials folder on the remote server.

Configuration

First make sure Ansible is installed on the machine that will be running the playbooks. The remote server(s) that Ansible can connect to is specified in the global inventory, which is located in /etc/ansible/hosts by default. See Ansible's documentation for more details on how to configure the inventory.

Copy example.env to a new .env file in the same folder and provide your own host group (a server specified in the inventory) and the location of the ssh key associated with this server.

Copy example.vault.yml to a new vault.yml in the same folder. The vault file contains all Timemap/Datasheet specific configuration. See the Timemap and Datasheet-Server documentation for more infomation.

Running the playbook

First run

source .env

in the folder where the .env file is located.

Then install the dependency playbooks:

ansible-galaxy install angstwad.docker_ubuntu

The playbook can then be run via the command

ansible-playbook _master.yml
You can’t perform that action at this time.