修改Capfile,在正式环境不再使用migration修改数据库
原因是这样的,运维不开放正式环境数据库的alter权限,所以每次都要给他们把sql语句发过去,
由他们来操作。
https://github.com/capistrano/rails
Require everything (bundler, rails/assets and rails/migrations): # Capfile
require 'capistrano/rails'
Or require just what you need manually: # Capfile
require 'capistrano/bundler' # Rails needs Bundler, right?
require 'capistrano/rails/assets'
require 'capistrano/rails/migrations'
参考的是https://github.com/capistrano/rvm/issues/49
Using the task pattern described before, capistrano/rvm gets required after capistrano/bundler. This makes capistrano use the command bundle exec ruby --version. This command would fail on the server when it is run inside a directory without a Gemfile. There are two ways to make this work: 1) Avoid using bundle exec for all ruby commands: Capfile task :require_rvm do
require 'capistrano/rvm'
end
task 'staging' => [:require_rvm] require 'capistrano/bundler'
config/deploy/staging.rb set :bundle_bins, %w(gem rake rails)
2) Require bundler the same way we require rvm: Capfile task :require_rvm do
require 'capistrano/rvm'end task :require_bundler do
require 'capistrano/bundler'
end task 'staging' => [:require_rvm, :require_bundler]
task 'production' => [:require_bundler]
以下是最终修改后的Capfile
task :require_rails do
require 'capistrano/rails'
end
# require 'capistrano/rvm'
require 'capistrano/rbenv'
# require 'capistrano/chruby'
task :require_rails_without_migrations do
require 'capistrano/bundler'
require 'capistrano/rails/assets'
end
# require 'capistrano/rails/migrations'
# require 'capistrano/passenger' task :staging => [:require_rails]
task :production => [:require_rails_without_migrations]
修改Capfile,在正式环境不再使用migration修改数据库的更多相关文章
- 记一次oracle创建一个新数据库,并导入正式环境数据库备份的dmp包过程
背景:正式环境oracle数据库定时用exp备份一个dmp包,现在打算在一台机器上创建一个新数据库,并导入这个dmp包. 1.创建数据库 开始 -> 所有程序 -> Oracle -> ...
- 使用Swoole加速Laravel(正式环境中)
1 Laravel的速度瓶颈在哪? 1.1 已有的一些优化方法 1.1.1 laravel官方提供了一些优化laravel的优化方法 php artisan optimize php artisan ...
- vue分别打包测试环境和正式环境
vue打包时使用不同的环境变量 需求 同一个项目通过打包使用不同的环境变量,目前的环境有三个: 一.本地------开发环境 二.线上------测试环境 三.线上------正式环境 我们都知道vu ...
- 【maven】之配置开发,测试,正式环境pom.xml文件
在进行web程序开发,如果项目组没有使用自动化发布工具(jenkins + maven + svn + tomcat ),我们一般会使用maven的热部署来完成发布,在部署的过程中我们开发,测试,生产 ...
- ios-实现项目在开发、测试、正式环境快速部署
快速部署:简单的来说,就是不用更改开发.测试.正式环境下的 url ,来实现在同一台测试手机快速部署三种项目状态. Bundle ID一样只会出现一个app:不一样会出现三个app: 具体步骤: 一. ...
- Oracle 11g RAC环境下Private IP修改方法及异常处理
Oracle 11g RAC环境下Private IP修改方法及异常处理 Oracle 11g RAC环境下Private IP修改方法及异常处理 一. 修改方法 1. 确认所有节点CRS服务以启动 ...
- 通过获取DNS解析的未转义主机名,区分测试环境和正式环境代码
ASP.Net编程中经常有一些代码,测试环境下需要执行,而正式环境下不需要执行(或者反之). 我们经常做的方式是:去掉注释,测试,再注释,再编译上传(或者反之). 现在,不妨试试以下办法: Reque ...
- 整理SVN代码-->正式环境的代码
最近我被分配到了合并正式补丁代码的工作.聊聊整个流程 第一步解压补丁
- windows 环境下mysql 如何修改root密码
windows 环境下mysql 如何修改root密码 以windows为例: 无法开启服务,将mysql更目录下的data文件夹清空,然后调用 mysqld --initialize 开启mysql ...
随机推荐
- 导出EXCEL【Web方式HTML通过拼接html中table】
DataTable dt= GetTaskList(int.MaxValue); StringBuilder table = new StringBuilder(); table.Append(&qu ...
- Linq之Linq to Sql
目录 写在前面 系列文章 Linq to sql 总结 写在前面 上篇文章介绍了linq to xml的相关内容,linq to xml提供一种更便捷的创建xml树,及查询的途径.这篇文章将继续介绍l ...
- (好文推荐)一篇文章看懂JavaScript作用域链
闭包和作用域链是JavaScript中比较重要的概念,首先,看看几段简单的代码. 代码1: var name = "stephenchan"; var age = 23; func ...
- iOS -- 生成有logo的二维码
- (void)createLogoImage { NSArray *filter = [CIFilter filterNamesInCategory:kCICategoryBuiltIn]; NSL ...
- bootstrap 多个 modal 相互遮挡
当一个页面有多个modal时,他们的z-index都是相同的,会产生一个模态框被另一个挡住,失去焦点 此时在模态框的div上加入style="display: none;"就可以.
- html 中添加背景音乐
Embed (一).基本语法: embed src=url 说明:embed可以用来插入各种多媒体,格式可以是 Midi.Wav.AIFF.AU.MP3等等, Netscape及新版的IE 都支持.u ...
- 匿名函数自调用(IIFE)
什么是匿名函数 Javascript中定义函数的方式有多种,函数直接量就是其中一种.如var fun = function(){},这里function如果不赋值给fun那么它就是一个匿名函数.好,看 ...
- Cocos2d-X3.0 刨根问底(八)----- 场景(Scene)、层(Layer)相关源码分析
本章节我们重点分析Cocos2d-x3.0与 场景.层相关的源码.这部分源码集中在 libcocos2d –> layers_scenes_transitions_nodes目录下面 我先发个截 ...
- Oracle创建主外键
-创建表格语法: create table 表名( 字段名1 字段类型(长度) 是否为空, 字段名2 字段类型 是否为空); -增加主键 alt ...
- myEclipse中新建的项目导入到Eclipse之后项目出现一个红色的叉叉
1.在eclipse中打开Problems,然后看看报哪些错,