Skip to content

Commit

Permalink
Merge pull request #55 from clementd-fretlink/build-flavor
Browse files Browse the repository at this point in the history
Add optional build flavor configuration
  • Loading branch information
clementd-fretlink authored Jun 19, 2020
2 parents 18c278e + 8a5d45d commit af67286
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 1 deletion.
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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
--------------
Expand All @@ -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"`
Expand Down
2 changes: 2 additions & 0 deletions dhall/Config.dhall
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ let Config =
, clever_disable_metrics : Bool
, clever_addons : List Addon
, clever_env : Environment
, clever_build_flavor : Optional Text
}

let mkConfig =
Expand All @@ -32,6 +33,7 @@ let mkConfig =
, clever_disable_metrics = False
, clever_addons = [] : List Addon
, clever_env = {=}
, clever_build_flavor = None Text
}
: Config {}

Expand Down
8 changes: 8 additions & 0 deletions tasks/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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:
Expand Down

0 comments on commit af67286

Please sign in to comment.