【问题标题】:Assuming Development on a Ruby On Rails App? [closed]假设在 Ruby On Rails 应用程序上进行开发? [关闭]
【发布时间】:2020-01-24 13:59:24
【问题描述】:

我想从 StackOverflow 社区获得一些关于从其他开发人员那里继承 Rails 应用程序时的最佳实践/指南的建议。

我目前正在承担我工作地点的开发控制权。我在前端、SQL/Mongo 和 Node.js 方面有不错的经验,并且对 Ruby 有很多了解。但是,我对 Rails 本身并没有太多经验。

以前的开发人员在提供应用程序使用的各种包的依赖项和软件版本方面非常无助。但是,我已经能够获得以下信息并且我已经安装了这些依赖项(尽管它们可能与应用所需的版本不同):

  • Postgres
  • Heroku CLI
  • AWS CLI
  • Redis
  • Sidekiq
  • AngularJS

你们中的任何人能否简要描述一下让以前存在的应用程序运行的后续步骤(或将我指向另一个来源)?

非常感谢您能提供的任何帮助。谢谢!

【问题讨论】:

  • 您可以访问生产系统吗?您可以从中派生版本吗?你有生产数据库的备份吗?
  • 我确实有来自生产数据库的转储文件。我曾尝试对其进行 pg_restore,但遇到角色和数据库错误。

标签: ruby-on-rails angularjs postgresql amazon-web-services heroku


【解决方案1】:

你需要保留的东西:

  1. 所有生产服务器和使用的服务(包括域名和备份服务器,如果有的话)的访问凭据。不一定要成为您,但公司的某个人应该拥有它们(可能存在一些与安全/隐私相关的问题)。
  2. 获取源代码
  3. 新的生产备份(如果可能)

一旦您拥有完全访问权限,就可以从生产系统推断出大多数版本。 其他一些(如 sidekiq 等)位于 Gemfile.lockyarn.lock 文件中。

然后尝试从备份中启动系统 - 如果成功 - 你将确保一切正常

【讨论】:

  • 我确实有源代码,但没有任何生产服务/服务器的凭据。我将查阅 Gemfile.lock 和 yarn.lock 文件,Rails 应用程序中是否还有其他有助于查看的位置?谢谢!
  • 对于凭据,我认为您或您公司的某个人需要获得 application.yml 文件或以前开发人员的文件。那应该有很多凭据/api密钥等。
  • 凭证也可以直接在生产环境的 ENV vars 中设置。特别是如果它是一个早于加密机密的应用程序,并且开发人员足够聪明,不会将其检查到源代码控制中。
猜你喜欢
  • 2019-07-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-10
  • 2012-09-11
  • 1970-01-01
相关资源
最近更新 更多