From: Clément Delafargue <39330590+clementd-fretlink@users.noreply.github.com> Date: Fri, 19 Jun 2020 13:18:13 +0000 (+0200) Subject: Merge pull request #55 from clementd-fretlink/build-flavor X-Git-Tag: v2.6~5 X-Git-Url: https://git.immae.eu/?a=commitdiff_plain;h=af67286adea7da4e01883bb6c60f44a6141e439f;hp=18c278e2d8f19fe1066908bd6bc631bdb8472333;p=github%2Ffretlink%2Fansible-clever.git Merge pull request #55 from clementd-fretlink/build-flavor Add optional build flavor configuration --- diff --git a/README.md b/README.md index 469667b..7a4557b 100644 --- a/README.md +++ b/README.md @@ -13,6 +13,7 @@ It handles the publication over git, as well as domain names, environment variab Requirements ------------ +This role requires `clever-tools` version `2.6.1` or higher. Role Variables -------------- @@ -35,9 +36,10 @@ Variables for the application - _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`. - `clever_disable_metrics`: a boolean to disable metrics support. Optional, default to `false`. - `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. +- `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. Variables specific to deployment, default should be fine: -- `clever_cli_version`: Version of clever cli tools, default to `0.9.3`. +- `clever_cli_version`: Version of clever cli tools, default to `2.6.1`. - `clever_user_path`: Path relative to ansible_user home dir where cli tools and helpers are installed default to `.local/bin`. - `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. - `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 = , clever_disable_metrics : Bool , clever_addons : List Addon , clever_env : Environment + , clever_build_flavor : Optional Text } let mkConfig = @@ -32,6 +33,7 @@ let mkConfig = , clever_disable_metrics = False , clever_addons = [] : List Addon , clever_env = {=} + , clever_build_flavor = None Text } : Config {} 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 @@ DOMAIN: "{{ clever_domain | default(domain) }}" CONFIGURATION_FILE: "{{ clever_login_file }}" +- name: Configure Build Instance + when: clever_build_flavor is defined + command: "clever scale --build-flavor {{ clever_build_flavor }}" + args: + chdir: "{{ clever_app_root }}" + environment: + CONFIGURATION_FILE: "{{ clever_login_file }}" + - name: Push Environment shell: "clever env import --json < {{ clever_app_confdir }}/env" args: