【问题标题】:Rake Capistrano - how to pass dynamic parameters to execute a shell commandRake Capistrano - 如何传递动态参数来执行 shell 命令
【发布时间】:2016-05-20 16:35:31
【问题描述】:

在我的 Rake capistrano 脚本中,我正在创建需要具有动态参数的 shell 命令。我的 rake 代码如下

execute "sed -i '/SPARK_HOME=/c\\export SPARK_HOME=<arg1>' #{release_path}/backend_layer/configs/hdfs/cluster.sh"

如何调用这个 rake 并发送参数 ,以便我的命令是动态的

【问题讨论】:

    标签: ruby-on-rails ruby parameters rake capistrano


    【解决方案1】:

    像下面这样写你的 rake 任务

    desc 'Passing argument on rake task'
    task :symlink_shared, [:arg1] => :environment do |t, args|
      execute "sed -i '/SPARK_HOME=/c\\export SPARK_HOME=#{args.arg1}' #{release_path}/backend_layer/configs/hdfs/cluster.sh"
    end
    

    然后,使用如下参数运行 cap 脚本

    cap staging postdeploy:symlink_shared[<your_arg1>]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-08
      • 2010-10-23
      • 1970-01-01
      • 1970-01-01
      • 2018-12-10
      • 1970-01-01
      • 2021-04-21
      相关资源
      最近更新 更多