]> git.immae.eu Git - github/fretlink/ansible-clever.git/blob - README.md
readme: Add the CI status as a image badge
[github/fretlink/ansible-clever.git] / README.md
1 # ansible-clever
2
3 [![Build Status](https://travis-ci.com/fretlink/ansible-clever.svg?token=D3nFpUxMu7vStDHwUNy4&branch=master)](https://travis-ci.com/fretlink/ansible-clever)
4
5 Ansible role for clever cloud deployment
6 =======
7 Clever deploy
8 =========
9
10 This roles deploy an haskell app on clever cloud (https://www.clever-cloud.com).
11
12 Requirements
13 ------------
14
15
16 Role Variables
17 --------------
18
19 Variables for the application
20 - `clever_token`: clever_cloud token, mandatory.
21 - `clever_secret`: clever_cloud secret, mandatory.
22 - `clever_app`: the id of the app to link, mandatory.
23 - `clever_entry_point`: the executable name to be executed by clever cloud, mandatory
24 - `clever_env`: a dict of environment variables for the application (without add_ons one already available), optional.
25 - `clever_base_env`: a dict set in vars/main.yml with safe default and mandatory variables for an app to be run on clever. ` clever_base_env | combine(clever_env)` is passed to `clever env` command
26 - `clever_addons`: a list of dict describing addons enabled for the application from which we would use information during deploy, optional.<br/>
27 Example: `{ name: pg, env_prefix: POSTGRESQL_ADDON }`
28 - `clever_app_tasks_file`: tasks file to be executed after environment and addons variables where gathered. Specific to an app, should be use to run migrations. Optional.
29 - `domain`: the domain from which the application should be reachable, optional
30 - `syslog_server`: UDP Syslog server to be used as UDPSyslog drain for the application, optional. Example: `udp://198.51.100.51:12345`.
31 - `clever_metrics`: a boolean to enable or disable metrics support. Optional, default to `false`.
32
33 Variables specific to deployment, default should be fine:
34 - `clever_cli_version`: Version of clever cli tools, default to `0.9.3`.
35 - `clever_user_path`: Path relative to ansible_user home dir where cli tools and helpers are installed default to `.local/bin`.
36 - `clever_app_root`: Path of the application to deploy, default to `"{{ playbook_dir }}/.."`, ie ansible directory in the root of the application.
37 - `clever_app_confdir`: Path where to store clever cloud data specific to this application, default to `"{{ clever_app_root }}/.clever_cloud"`
38 - `clever_login_file`: Path to store login information. Default to `"{{ clever_app_confdir }}/login"`.
39
40
41 Dependencies
42 ------------
43
44 None
45
46 Example Playbook
47 ----------------
48
49 Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
50
51 - hosts: servers
52 roles:
53 - { role: fretlink.clever, clever_app: 42, clever_token: "{{ vault_clever_token }}", clever_secret: "{{ vault_clever_secret}}" }
54
55
56 TODO
57 ----
58
59 Add some tests and Travis integration
60
61 License
62 -------
63
64 BSD
65
66 Author Information
67 ------------------
68
69 Developped at Fretlink (https://www.fretlink.com) for our