我有一个包含3个伞形项目的万能药应用程序。我试图通过distellary和edeliver自动化他们的发布。
我可以通过运行此命令来创建一个版本:
mix release --verbose --env =" production" --name =" se_example"
但是当我运行以下内容时: 混合edeliver构建版本生成--verbose
它编译应用程序但后来在创建版本时抛出此错误:
- - - - >使用mix生成发布以生成发布
**(混合)任务"发布"无法找到
我是elixir和酿酒厂/ edeliver世界的新手,所以想知道我是否遗漏了这个流程中的东西。
以下是我的.deliver / config文件:
PRODUCTION_HOSTS="elixir-build"
PRODUCTION_USER="meraj"
DELIVER_TO="/home/meraj/se_example_build"
# For *Phoenix* projects, symlink prod.secret.exs to our tmp source
pre_erlang_get_and_update_deps() {
local _prod_secret_path="/home/meraj/se_example_build/prod.secret.exs"
if [ "$TARGET_MIX_ENV" = "prod" ]; then
__sync_remote "
ln -sfn '$_prod_secret_path' '$BUILD_AT/config/prod.secret.exs'
ln -sfn '$_prod_secret_path' '$BUILD_AT/apps/se/config/prod.secret.exs'
"
fi
}
这是rel / config.exs文件:
Path.join(["rel", "plugins", "*.exs"])
|> Path.wildcard()
|> Enum.map(&Code.eval_file(&1))
use Mix.Releases.Config,
default_release: :default,
default_environment: Mix.env()
environment :dev do
set dev_mode: true
set include_erts: false
set cookie: :"P@/3]_>gLBMM9c@&aRUg>lkN)<q6Z$0`ZM_/./!8N_/*1Fx:toH9n~I5_=O&=>$:"
end
environment :prod do
set include_erts: true
set include_src: false
set cookie: :"BD:?3o^s?_Yn4SV%s.;@A>Sva*A}s5NbEC[&.qBMhA.*6^?ElspFmoF%GKX]:[En"
end
release :se_example do
set version: "0.1.0"
set applications: [
:runtime_tools,
se: :permanent,
se_stats: :permanent,
se_web: :permanent
]
end
答案 0 :(得分:0)
我有相同的错误并找到了解决方案(至少在我的情况下),请在此处的另一个相关主题-https://stackoverflow.com/a/53950284/6371774
中进行回答 TLDR:明确指向分支,并确保git下的文件夹/rel/
已提交:
$ mix edeliver build release --branch=feature/deploy