]>
Commit | Line | Data |
---|---|---|
1 | # ansible-clever | |
2 | Ansible role for clever cloud deployment | |
3 | ======= | |
4 | Clever deploy | |
5 | ========= | |
6 | ||
7 | This roles deploy an haskell app on clever cloud (https://www.clever-cloud.com). | |
8 | ||
9 | Requirements | |
10 | ------------ | |
11 | ||
12 | ||
13 | Role Variables | |
14 | -------------- | |
15 | ||
16 | Variables for the application | |
17 | - `clever_token`: clever_cloud token, mandatory. | |
18 | - `clever_secret`: clever_cloud secret, mandatory. | |
19 | - `clever_app`: the id of the app to link, mandatory. | |
20 | - `clever_entry_point`: the executable name to be executed by clever cloud, mandatory | |
21 | - `clever_env`: a dict of environment variables for the application (without add_ons one already available), optional. | |
22 | - `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 | |
23 | - `clever_addons`: a list of dict describing addons enabled for the application from which we would use information during deploy, optional.<br/> | |
24 | Example: `{ name: pg, env_prefix: POSTGRESQL_ADDON }` | |
25 | - `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. | |
26 | - `domain`: the domain from which the application should be reachable, optional | |
27 | - `syslog_server`: UDP Syslog server to be used as UDPSyslog drain for the application, optional. Example: `udp://198.51.100.51:12345`. | |
28 | ||
29 | Variables specific to deployment, default should be fine: | |
30 | - `clever_cli_version`: Version of clever cli tools, default to `0.9.3`. | |
31 | - `clever_user_path`: Path relative to ansible_user home dir where cli tools and helpers are installed default to `.local/bin`. | |
32 | - `clever_app_root`: Path of the application to deploy, default to `"{{ playbook_dir }}/.."`, ie ansible directory in the root of the application. | |
33 | - `clever_app_confdir`: Path where to store clever cloud data specific to this application, default to `"{{ clever_app_root }}/.clever_cloud"` | |
34 | - `clever_login_file`: Path to store login information. Default to `"{{ clever_app_confdir }}/login"`. | |
35 | ||
36 | ||
37 | Dependencies | |
38 | ------------ | |
39 | ||
40 | None | |
41 | ||
42 | Example Playbook | |
43 | ---------------- | |
44 | ||
45 | Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too: | |
46 | ||
47 | - hosts: servers | |
48 | roles: | |
49 | - { role: fretlink.clever, clever_app: 42, clever_token: "{{ vault_clever_token }}", clever_secret: "{{ vault_clever_secret}}" } | |
50 | ||
51 | ||
52 | TODO | |
53 | ---- | |
54 | ||
55 | Add some tests and Travis integration | |
56 | ||
57 | License | |
58 | ------- | |
59 | ||
60 | BSD | |
61 | ||
62 | Author Information | |
63 | ------------------ | |
64 | ||
65 | Developped at Fretlink (https://www.fretlink.com) for our |