如何使用所需的gem分发Ruby脚本

时间:2016-05-06 19:13:18

标签: ruby

我有一个遇到问题的Ruby脚本,因为最终用户没有所有必需的宝石。我一直在研究这个问题,它似乎将它打包成宝石是确保它适用于任何人的最好方法。

  1. 这是分发Ruby脚本的最佳方式,而不必担心最终用户在运行时没有gem吗?
  2. 如果我这样做,最终用户将如何运行脚本?现在他们正在使用ruby script_name执行它,我正在编写一个bash脚本来自动为它们运行它。
  3. 我是否仍然可以使用可以运行脚本的bash脚本作为gem安装?拥有一个可双击的文件来运行脚本对于需要使用它而不是技术倾向的人来说是天赐之物。

1 个答案:

答案 0 :(得分:2)

我假设您所需的宝石位于Gemfile中。如果您让他们运行bash脚本来运行您的Ruby脚本,您是否考虑在运行Ruby脚本之前将bundle install添加到bash脚本中?这将在运行脚本之前安装所有必需的gem。

另一个选择是设置一个已经安装了所有gem的Docker容器,并且只是自动运行Ruby脚本。这可以解决您的用户使用错误版本的Ruby的问题,但是让他们安装Docker会增加成本。