Я использую комплект для развертывания драгоценных камней из репозитория git в доме в моем приложении rails. Я хотел бы иметь разные названия отделений для различных групп, однако, это:Название динамической ветки для драгоценных камней, основанных на git
group :production, :release_candidate, :staging, :demo do
gem "my_inhouse_gem", '0.0.1', git: '[email protected]:my_gem.git', branch: 'master'
end
group :development, :develop do
gem "my_inhouse_gem", '0.0.1', git: '[email protected]:my_gem.git', branch: 'develop'
end
терпит неудачу с
You cannot specify the same gem twice coming from different sources.
You specified that mygem (= 0.0.1) should come from
[email protected]:my_gem.git (at develop) and
[email protected]:my_gem.git (at master)
Хотя следующее:
group :production, :release_candidate, :staging, :demo do
my_gem = 'master'
end
group :development, :develop do
my_gem = "develop"
end
gem "my_inhouse_gem", '0.0.1', git: '[email protected]:my_gem.git', branch: my_gem
Просто использует какую группа печатается последним ,
После того, как прочитал об этом и нашел эту статью: http://yehudakatz.com/2010/05/09/the-how-and-why-of-bundler-groups/, я понимаю, что это связано с тем, что bundler все равно будет выполнять содержимое каждой группы, а затем просто установите те, которые соответствуют.
Как я могу получить динамическое имя ветви на основе конфигурации среды в моем Gemfile?
Есть ли нет возможности программно подключиться к Bundler :: DSL и извлечь текущее имя группы во время выполнения? –
Нет, это не так работает Бундлер. Он разрешает набор драгоценных камней, прежде чем какие-либо группы придут в игру. –