diff --git a/Gemfile.lock b/Gemfile.lock index 86931215..2d004666 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -23,7 +23,7 @@ GIT GIT remote: git://github.com/travis-ci/travis-core.git - revision: bcc14ad2fafff932f1b681a332b6435b50ddb099 + revision: 9db978cabd740dddbc94d105cc4242b56afe2e9f specs: travis-core (0.0.1) actionmailer (~> 3.2.12) @@ -39,6 +39,7 @@ GIT rake redis (~> 3.0) rollout (~> 1.1.0) + s3 (~> 0.3) simple_states (~> 1.0.0) thor (~> 0.14.6) @@ -177,6 +178,7 @@ GEM newrelic_rpm (3.6.7.152) pg (0.13.2) polyglot (0.3.3) + proxies (0.2.1) pry (0.9.12.2) coderay (~> 1.0.5) method_source (~> 0.8) @@ -226,6 +228,8 @@ GEM rspec-expectations (2.14.0) diff-lcs (>= 1.1.3, < 2.0) rspec-mocks (2.14.1) + s3 (0.3.17) + proxies (~> 0.2.0) sidekiq (2.5.4) celluloid (~> 0.12.0) connection_pool (~> 0.9.2) diff --git a/lib/travis/api/app/endpoint/repos.rb b/lib/travis/api/app/endpoint/repos.rb index d6cf9f16..fd4a36a5 100644 --- a/lib/travis/api/app/endpoint/repos.rb +++ b/lib/travis/api/app/endpoint/repos.rb @@ -68,6 +68,16 @@ class Travis::Api::App respond_with service(:find_branch, params), type: :branch, version: :v2 end + # List caches for a given repo. Can be filtered with `branch` and `match` query parameter. + get '/:repository_id/caches', scope: :private do + respond_with service(:find_caches, params), type: :caches, version: :v2 + end + + # Delete caches for a given repo. Can be filtered with `branch` and `match` query parameter. + delete '/:repository_id/caches', scope: :private do + respond_with service(:delete_caches, params), type: :caches, version: :v2 + end + # Gets the repository with the given name. # # ### Response @@ -129,6 +139,16 @@ class Travis::Api::App get '/:owner_name/:name/branches/:branch' do respond_with service(:find_branch, params), type: :branch, version: :v2 end + + # List caches for a given repo. Can be filtered with `branch` and `match` query parameter. + get '/:owner_name/:name/caches', scope: :private do + respond_with service(:find_caches, params), type: :caches, version: :v2 + end + + # Delete caches for a given repo. Can be filtered with `branch` and `match` query parameter. + delete '/:owner_name/:name/caches', scope: :private do + respond_with service(:delete_caches, params), type: :caches, version: :v2 + end end end end diff --git a/travis-api.gemspec b/travis-api.gemspec index 810b381e..b6596011 100644 --- a/travis-api.gemspec +++ b/travis-api.gemspec @@ -9,9 +9,9 @@ Gem::Specification.new do |s| s.require_path = 'lib' s.authors = [ - "Sven Fuchs", - "Konstantin Haase", "Piotr Sarnacki", + "Konstantin Haase", + "Sven Fuchs", "Josh Kalderimis", "Mathias Meyer", "Henrik Hodne", @@ -20,24 +20,29 @@ Gem::Specification.new do |s| "Steve Richert", "Brian Ford", "Nick Schonning", - "James Dennes" + "Patrick Williams", + "James Dennes", + "Tim Carey-Smith" ] s.email = [ + "drogus@gmail.com", "konstantin.mailinglists@googlemail.com", "me@svenfuchs.com", - "drogus@gmail.com", "josh.kalderimis@gmail.com", "meyer@paperplanes.de", "me@henrikhodne.com", - "svenfuchs@artweb-design.de", + "henrik@hodne.io", + "konstantin.haase@gmail.com", "andre@arko.net", + "svenfuchs@artweb-design.de", "sferik@gmail.com", "steve.richert@gmail.com", "bford@engineyard.com", - "jdennes@gmail.com", "nschonni@gmail.com", - "konstantin.haase@gmail.com" + "jdennes@gmail.com", + "tim@spork.in", + "patrick@bittorrent.com" ] s.files = [ @@ -48,6 +53,8 @@ Gem::Specification.new do |s| "config.ru", "config/database.yml", "config/newrelic.yml", + "config/nginx.conf.erb", + "config/puma-config.rb", "config/unicorn.rb", "docs/00_overview.md", "docs/01_cross_origin.md", @@ -107,6 +114,7 @@ Gem::Specification.new do |s| "lib/travis/api/app/endpoint/repos.rb", "lib/travis/api/app/endpoint/requests.rb", "lib/travis/api/app/endpoint/stats.rb", + "lib/travis/api/app/endpoint/uptime.rb", "lib/travis/api/app/endpoint/users.rb", "lib/travis/api/app/endpoint/workers.rb", "lib/travis/api/app/extensions.rb", @@ -145,6 +153,7 @@ Gem::Specification.new do |s| "spec/integration/responders_spec.rb", "spec/integration/routes.backup.rb", "spec/integration/scopes_spec.rb", + "spec/integration/uptime_spec.rb", "spec/integration/v1/branches_spec.rb", "spec/integration/v1/builds_spec.rb", "spec/integration/v1/hooks_spec.rb",