diff options
author | Clément Delafargue <39330590+clementd-fretlink@users.noreply.github.com> | 2020-06-19 15:18:13 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-06-19 15:18:13 +0200 |
commit | af67286adea7da4e01883bb6c60f44a6141e439f (patch) | |
tree | 21fa5a6f7e5439c2548432f0c3b0f164cfb50fcb | |
parent | 18c278e2d8f19fe1066908bd6bc631bdb8472333 (diff) | |
parent | 8a5d45d789cdb5739f2f6e8490e02b9ffdfa8b2e (diff) | |
download | ansible-clever-af67286adea7da4e01883bb6c60f44a6141e439f.tar.gz ansible-clever-af67286adea7da4e01883bb6c60f44a6141e439f.tar.zst ansible-clever-af67286adea7da4e01883bb6c60f44a6141e439f.zip |
Merge pull request #55 from clementd-fretlink/build-flavor
Add optional build flavor configuration
-rw-r--r-- | README.md | 4 | ||||
-rw-r--r-- | dhall/Config.dhall | 2 | ||||
-rw-r--r-- | tasks/deploy.yml | 8 |
3 files changed, 13 insertions, 1 deletions
@@ -13,6 +13,7 @@ It handles the publication over git, as well as domain names, environment variab | |||
13 | Requirements | 13 | Requirements |
14 | ------------ | 14 | ------------ |
15 | 15 | ||
16 | This role requires `clever-tools` version `2.6.1` or higher. | ||
16 | 17 | ||
17 | Role Variables | 18 | Role Variables |
18 | -------------- | 19 | -------------- |
@@ -35,9 +36,10 @@ Variables for the application | |||
35 | - _Obsolete_: `clever_metrics`: metrics used to be disabled by default. Now they are enabled by default and can be explicitly disabled with `clever_disable_metrics`. | 36 | - _Obsolete_: `clever_metrics`: metrics used to be disabled by default. Now they are enabled by default and can be explicitly disabled with `clever_disable_metrics`. |
36 | - `clever_disable_metrics`: a boolean to disable metrics support. Optional, default to `false`. | 37 | - `clever_disable_metrics`: a boolean to disable metrics support. Optional, default to `false`. |
37 | - `clever_env_output_file`: as a post deploy task you might need to retrieve the full Clever environment configuration (i.e. with addon env variables). If this variable is set to a filename then the env will be retrieved after a successful deploy inside this file. Optional. | 38 | - `clever_env_output_file`: as a post deploy task you might need to retrieve the full Clever environment configuration (i.e. with addon env variables). If this variable is set to a filename then the env will be retrieved after a successful deploy inside this file. Optional. |
39 | - `clever_build_flavor`: an optional text value used to configure the size of the dedicated build instance (for instance `S` or `XL`). If not defined, it delegates to clever cloud default behaviour. Setting `disabled` disables the dedicated build instance altogether. | ||
38 | 40 | ||
39 | Variables specific to deployment, default should be fine: | 41 | Variables specific to deployment, default should be fine: |
40 | - `clever_cli_version`: Version of clever cli tools, default to `0.9.3`. | 42 | - `clever_cli_version`: Version of clever cli tools, default to `2.6.1`. |
41 | - `clever_user_path`: Path relative to ansible_user home dir where cli tools and helpers are installed default to `.local/bin`. | 43 | - `clever_user_path`: Path relative to ansible_user home dir where cli tools and helpers are installed default to `.local/bin`. |
42 | - `clever_app_root`: Path of the application to deploy, default to `app_root` if defined or `"{{ playbook_dir }}/.."`, ie ansible directory in the root of the application. | 44 | - `clever_app_root`: Path of the application to deploy, default to `app_root` if defined or `"{{ playbook_dir }}/.."`, ie ansible directory in the root of the application. |
43 | - `clever_app_confdir`: Path where to store clever cloud data specific to this application, default to `"{{ clever_app_root }}/.clever_cloud"` | 45 | - `clever_app_confdir`: Path where to store clever cloud data specific to this application, default to `"{{ clever_app_root }}/.clever_cloud"` |
diff --git a/dhall/Config.dhall b/dhall/Config.dhall index 1b9388e..e092e2c 100644 --- a/dhall/Config.dhall +++ b/dhall/Config.dhall | |||
@@ -15,6 +15,7 @@ let Config = | |||
15 | , clever_disable_metrics : Bool | 15 | , clever_disable_metrics : Bool |
16 | , clever_addons : List Addon | 16 | , clever_addons : List Addon |
17 | , clever_env : Environment | 17 | , clever_env : Environment |
18 | , clever_build_flavor : Optional Text | ||
18 | } | 19 | } |
19 | 20 | ||
20 | let mkConfig = | 21 | let mkConfig = |
@@ -32,6 +33,7 @@ let mkConfig = | |||
32 | , clever_disable_metrics = False | 33 | , clever_disable_metrics = False |
33 | , clever_addons = [] : List Addon | 34 | , clever_addons = [] : List Addon |
34 | , clever_env = {=} | 35 | , clever_env = {=} |
36 | , clever_build_flavor = None Text | ||
35 | } | 37 | } |
36 | : Config {} | 38 | : Config {} |
37 | 39 | ||
diff --git a/tasks/deploy.yml b/tasks/deploy.yml index 751d78f..ca1e54a 100644 --- a/tasks/deploy.yml +++ b/tasks/deploy.yml | |||
@@ -16,6 +16,14 @@ | |||
16 | DOMAIN: "{{ clever_domain | default(domain) }}" | 16 | DOMAIN: "{{ clever_domain | default(domain) }}" |
17 | CONFIGURATION_FILE: "{{ clever_login_file }}" | 17 | CONFIGURATION_FILE: "{{ clever_login_file }}" |
18 | 18 | ||
19 | - name: Configure Build Instance | ||
20 | when: clever_build_flavor is defined | ||
21 | command: "clever scale --build-flavor {{ clever_build_flavor }}" | ||
22 | args: | ||
23 | chdir: "{{ clever_app_root }}" | ||
24 | environment: | ||
25 | CONFIGURATION_FILE: "{{ clever_login_file }}" | ||
26 | |||
19 | - name: Push Environment | 27 | - name: Push Environment |
20 | shell: "clever env import --json < {{ clever_app_confdir }}/env" | 28 | shell: "clever env import --json < {{ clever_app_confdir }}/env" |
21 | args: | 29 | args: |