[RTFACT-10589] A RubyGems repository that is marked as offline will respond with a 500 to certain requests Created: 17/Jun/16  Updated: 17/Jul/19  Resolved: 02/Oct/18

Status: Resolved
Project: Artifactory Binary Repository
Component/s: Remote Repository , RubyGems
Affects Version/s: 4.8.1
Fix Version/s: 6.5.0

Type: Bug Priority: High
Reporter: Arturo Aparicio Assignee: Dudi Morad
Resolution: Fixed Votes: 2
Labels: None

Issue Links:
Relationship
Assigned QA: Barak Hacham
Sprint: Leap 34

 Description   

A RubyGems repository that is marked as offline will respond with a 500 to certain requests. This will make packages inaccessible to bundler requests.

Notice the call that fails:

20160617031308|4|REQUEST|192.168.99.1|anonymous|GET|/api/gems/rubygems/api/v1/dependencies|HTTP/1.1|500|0

To reproduce:

1. Create a remote RubyGems repository
2. Create a GemFile with a few dependencies, such as this:

source 'http://192.168.99.100:8081/artifactory/api/gems/rubygems/'
gem 'nokogiri'
gem 'rack', '~>1.1'
gem 'rspec', :require => 'spec'

3. Use bundler to pull the dependencies: bundle install --no-cache
4. Set the repository as offline
5. Remove the gem files (rm -rf vendor)
6. Attempt the bundler pull again, notice failure.



 Comments   
Comment by Dudi Morad [ 18/Sep/18 ]

Fix Notes:

Gems remote repository will now cache dependencies requests(http://localhost:8080/artifactory/api/gems/gems-virtual/api/v1/dependencies?gems=jaro_winkler,parallel,parser).
for each request artifactory will split the result into separate dependencies files(jaro_winkler,parallel,parser) and cache them in .dependencies/ folder,

Generated at Sun Oct 20 11:10:07 UTC 2019 using JIRA 7.6.16#76018-sha1:9ed376192612a49536ac834c64177a0fed6290f5.