Elixir: создание и развертывание зонтичного приложения с edeliver

Я создаю и внедряю приложение elixir в производство с edeliver. Теперь я организовал приложение в виде зонтичного проекта и застрял в настройке edeliver для сборки проекта.

Мои первые мысли заключались в том, что каждому приложению в зонтике потребуется свое .deliver/config и я должен был бы создать и развернуть каждое приложение в зонтике независимо, с которым я был крут. Когда я бегу mix edeliver build release в одном из приложений запускается процесс сборки. Однако в итоге создается сборка для каждого приложения на сервере сборки.

В конечном счете, он терпит неудачу в процессе, когда ему нужно найти tar для загрузки, и он жалуется Please set RELEASE_VERSION=x, Каждое приложение имеет свою собственную версию выпуска в файле микса, и это было все, что требовалось для установки версии выпуска для сборки.

ls: cannot access /data/web/staging.my-app.com/build/rel/my-app/releases/*/: No such file or directory
Failed to detect generated release version at
deploy@192.168.0.1:/data/web/staging.my-app.com/build/rel/my-app/releases/

Please set RELEASE_VERSION=x
Detected several releases:

 FAILED
 2:
 ssh
basename: illegal option -- o
usage: basename string [suffix]
   basename [-a] [-s suffix] string [...]

 ConnectTimeout=3
 deploy@192.168.0.1
 ls
basename: illegal option -- A
usage: basename string [suffix]
       basename [-a] [-s suffix] string [...]

 *

1 ответ

Указывая RELEASE_DIR в правильном каталоге для зонтичного приложения исправили это для меня. Добавление apps папка после build требуется, потому что приложения были перемещены в эту папку. Мне нужно ssh на сервер и очистить rel папка вручную перед каждой сборкой. Я почти уверен, что это можно исправить / автоматизировать, добавив это в хук перед настройкой или настроив GIT_CLEAN_PATHS правильно. Я также запускаю сборку зонтиков и развертывание из папки главного приложения.

RELEASE_DIR="/my-app.com/build/apps/my_app/rel/my_app/"

BUILD_AT="/my-app.com/build"

Другие вопросы по тегам