2016-08-30 2 views
0

원래 루비 2.1에 있던 루비 응용 프로그램에 루비가 있지만 루비 2.0을 사용하는 오픈 시프트 플랫폼의 엔터프라이즈 버전에 배포하고 있습니다. rvm을 사용하여 루비 2.0.0을 설치했고 2.0.0 gemset을 만들었는데, 이것은 내 개발 컴퓨터에서 실행됩니다. 나는 오픈 시프트 플랫폼에 배포 할 때, 나는 다음과 같은 오류가 발생합니다 : 오픈 시프트로 배포 할 때 번들러 오류

remote: Building Ruby cartridge 
remote: bundle install --deployment --path ./app-root/repo/vendor/bundle 
remote: NOTE: You can prevent installing certain Gemfile group using: rhc env set BUNDLE_WITHOUT=groupname 
remote: `mri_21` is not a valid platform. The available options are: [:ruby, :ruby_18, 
remote: :ruby_19, :ruby_20, :mri, :mri_18, :mri_19, :mri_20, :rbx, :jruby, :mswin, 
remote: :mingw, :mingw_18, :mingw_19, :mingw_20] 
remote: An error occurred executing 'gear postreceive' (exit code: 4) 
remote: Error message: CLIENT_ERROR: Failed to execute: 'control build' 

나는 이러한 유형의 문제를 구글

는 일반 솔루션은 들러를 업데이트하는 것입니다. 그러나이 문제는 오픈 시프트 플랫폼의 번들러 인 것으로 보입니다. 이 문제를 어떻게 해결할 수 있습니까?

답변

0

bundler issue을 기반으로하면, gem 파일에 나열된 일부 보석은 루비 2.1에 의존한다는 점에서 문제가 있습니다. 내 경우

, 나는 명령을 사용하여 bye bug을 포함 생산 그룹 (에서 보석을 제거하여 문제를 해결했다.이 보석이 열려 이동에 필요한 그렇게하지 Heroku가에 사용했다.

rhc env set BUNDLE_WITHOUT=production 

을 수행해야하는 실제 단계는 보석 파일의 보석에 따라 다릅니다.

관련 문제