我尝试了命名缓存的各种变体,但似乎没有任何效果
我的缓存正在正确下载,正如我在构建设置中看到的那样。
Cache "bundler": Downloading
Cache "bundler": Downloaded 25.2 MiB in 1 seconds
Cache "bundler": Extracting
Cache "bundler": Extracted in 0 seconds
但是当我去
bundle install
时我总是得到
Fetching gem metadata from https://rubygems.org/.......
Installing rake 12.3.3
Installing concurrent-ruby 1.1.5
Installing i18n 0.9.5
Installing minitest 5.11.3
Installing thread_safe 0.3.6
Installing tzinfo 1.2.5
Installing activesupport 5.2.3
Installing builder 3.2.3
..........
这是我的
bitbucket-pipelines.yml
pipelines:
default:
- step:
name: Run Tests
image: ruby:2.6.4
caches:
- bundler
script:
- apt-get update && apt-get install -y build-essential libpq-dev nodejs python-dev
- bundle install --path ./vendor
- cp config/database.yml.example config/database.yml
- RAILS_ENV=test bundle exec rake db:setup
- RAILS_ENV=test bundle exec rake db:schema:load
- RAILS_ENV=test bundle exec rspec
services:
- postgres
- redis
definitions:
caches:
bundler: ./vendor
services:
redis:
image: redis
postgres:
image: postgres
environment:
POSTGRES_DB: 'xxxxx'
POSTGRES_USER: 'xxxxx'
POSTGRES_PASSWORD: 'xxxxx'
我希望您能解决您的问题,BitBucket Caches 文档已经过时了。所以用这个命令解决了我的问题:
- gem install bundler -v 2.1.4
- bundle config set path 'vendor/bundle'
- bundle install
- bundle binstubs --all
我的,需要删除
tzinfo-data
以进行 Linux 部署。
您可以阅读
bundle binstubs
文档了解更多信息。
将其放在这里是为了将来帮助某人:
我在我的 bitbucket 管道上运行
bundle check
来检查依赖关系。
我得到了这个输出:
https://github.com/oauth-xx/oauth2 (at 1-4-stable@d41fb6e) is not yet checked
out. Run `bundle install` first.
我假设即使缓存可用,应用程序仍然需要捆绑安装,因为缺少 oauth2。
如果我找到解决方案或解决方法,我会再次发布。