在部署symfony应用程序

时间:2015-08-06 11:37:58

标签: ruby symfony deployment capifony

首先,我从未使用过ruby和capifony所以这个问题对你们有些人来说可能很容易,但不适合我。我试图找到与我的问题有关的例子,但是找不到任何或者我太新,不能错过红宝石!

在部署我的Symfony应用程序时,我的参数文件中特定键的值应该动态附加,而不是使用来自以下分发文件的确切通用值:

parameters_prod.yml.dist

parameters:
   my_prefix: my_value_prefix_

部署后直接,参数.yml应如下所示:

parameters.yml

parameters:
   my_prefix: my_value_prefix_8235647895

8235647895上面的部分将是时间戳。

我该怎么做?

我当前的 deploy.rb

namespace :mytest do
  desc "Upload the parameters.yml"
  task :upload_parameters do

    origin_file = parameters_dir + "/" + parameters_file if parameters_dir && parameters_file
    origin_file_append = parameters_dir + "/" + parameters_file_append if parameters_dir && parameters_file_append

    if origin_file && File.exists?(origin_file)
      relative_path = "app/config/parameters.yml"

      files = [origin_file]
      files << origin_file_append if origin_file_append && File.exists?(origin_file_append)

      tmp_origin_file = origin_file + '.tmp'

      File.open(tmp_origin_file, 'w') do |fo|
        files.each do |file|
          File.foreach(file) do |li|
            fo.puts li
          end
        end
      end

      if shared_files && shared_files.include?(relative_path)
        destination_file = shared_path + "/" + relative_path
      else
        destination_file = latest_release + "/" + relative_path
      end
      try_sudo "mkdir -p #{File.dirname(destination_file)}"

      top.upload(tmp_origin_file, destination_file)

      File.delete(tmp_origin_file)
    end
  end
end

0 个答案:

没有答案