]> git.immae.eu Git - github/fretlink/ansible-clever.git/commitdiff
Extract environment building tasks from the JSON template 64/head
authorClement Delafargue <clement.delafargue@fretlink.com>
Fri, 19 Jun 2020 09:10:12 +0000 (11:10 +0200)
committerClement Delafargue <clement.delafargue@fretlink.com>
Fri, 19 Jun 2020 09:36:02 +0000 (11:36 +0200)
defaults/main.yml
tasks/environment.yml
templates/env.j2

index dcf9650e1c8bbc0e729c9c62638b96dada44e5a7..bd3b6a639db7bae21de0fb73ceacf72eb6ac33cd 100644 (file)
@@ -7,6 +7,7 @@ clever_app_confdir: "{{ clever_app_root }}/.clever_cloud"
 clever_login_file: "{{ clever_app_confdir }}/login"
 
 clever_haskell_entry_point: "{{ clever_entry_point | default(None) }}"
+clever_haskell_env: {}
 clever_env: {}
 
 clever_disable_metrics: false
index 1508ad44eca8171a9908747a2ef07a4e38363a46..60b31d2b730cf5674388a7e2c586bbc9c5143f5e 100644 (file)
@@ -1,3 +1,13 @@
+- name: Setup haskell-specific environment variables
+  set_fact:
+    clever_haskell_env:
+      CC_RUN_COMMAND: "~/.local/bin/{{ clever_haskell_entry_point }}"
+  when: clever_haskell_entry_point is defined
+
+- name: Assemble full environment
+  set_fact:
+    clever_env: "{{ clever_base_env | combine(clever_haskell_env) | combine(clever_env) }}"
+
 - name: Create environment file
   template:
     src: env.j2
index e97ef43dff6d732731a202a80d06e0c0a6564249..59f30500be4674d7ffe49e0bd6a75606b796614f 100644 (file)
@@ -1,10 +1,3 @@
-{% set static_env = clever_base_env | combine(clever_env) %}
-{% set dynamic_env = {} %}
-{% if clever_haskell_entry_point %}
-{# Haskell only #}
-{# https://www.clever-cloud.com/doc/get-help/reference-environment-variables/#haskell #}
-{% set dynamic_env = { 'CC_RUN_COMMAND': '~/.local/bin/' + clever_haskell_entry_point } %}
-{% endif %}
 {# dict2items is not enough here, all the values have to be stringified #}
 {# git-blame this line for more explanations #}
-{{ static_env | combine(dynamic_env) | json_env_map | to_json }}
+{{ clever_env | json_env_map | to_json }}