diff --git a/lib/travis/api/v3/queries/builds.rb b/lib/travis/api/v3/queries/builds.rb new file mode 100644 index 00000000..0877bac5 --- /dev/null +++ b/lib/travis/api/v3/queries/builds.rb @@ -0,0 +1,7 @@ +module Travis::API::V3 + class Queries::Builds < Query + def find(repository) + repository.builds + end + end +end diff --git a/lib/travis/api/v3/renderer/builds.rb b/lib/travis/api/v3/renderer/builds.rb new file mode 100644 index 00000000..d8aede4c --- /dev/null +++ b/lib/travis/api/v3/renderer/builds.rb @@ -0,0 +1,6 @@ +module Travis::API::V3 + class Renderer::Builds < Renderer::CollectionRenderer + type :builds + collection_key :builds + end +end diff --git a/lib/travis/api/v3/routes.rb b/lib/travis/api/v3/routes.rb index a828f295..710621b0 100644 --- a/lib/travis/api/v3/routes.rb +++ b/lib/travis/api/v3/routes.rb @@ -28,6 +28,11 @@ module Travis::API::V3 post :create end + resource :builds do + route '/builds' + get :find + end + resource :branch do route '/branch/{branch.name}' get :find diff --git a/lib/travis/api/v3/services.rb b/lib/travis/api/v3/services.rb index 9df67da4..4aabfb7c 100644 --- a/lib/travis/api/v3/services.rb +++ b/lib/travis/api/v3/services.rb @@ -5,6 +5,7 @@ module Travis::API::V3 Accounts = Module.new { extend Services } Branch = Module.new { extend Services } Build = Module.new { extend Services } + Builds = Module.new { extend Services } Organization = Module.new { extend Services } Organizations = Module.new { extend Services } Owner = Module.new { extend Services } diff --git a/lib/travis/api/v3/services/builds/find.rb b/lib/travis/api/v3/services/builds/find.rb new file mode 100644 index 00000000..b91029cd --- /dev/null +++ b/lib/travis/api/v3/services/builds/find.rb @@ -0,0 +1,7 @@ +module Travis::API::V3 + class Services::Builds::Find < Service + def run! + find(:builds, find(:repository)) + end + end +end