Merge branch 'master' into ar-enqueue-restarting-jobs

This commit is contained in:
Ana Rosas 2016-06-06 11:04:44 +02:00
commit 8b9df97e3f
13 changed files with 86 additions and 39 deletions

1
.gitignore vendored
View File

@ -12,3 +12,4 @@ vendor
.yardoc
.coverage
*.env
.ruby-gemset

View File

@ -1,8 +1,6 @@
source 'https://rubygems.org'
gemspec
ruby '2.1.7' if ENV.key?('DYNO')
gem 's3', github: 'travis-ci/s3'
gem 'travis-core', github: 'travis-ci/travis-core'

View File

@ -102,7 +102,7 @@ module Travis::Api
use(Rack::Config) { |env| env['metriks.request.start'] ||= Time.now.utc }
use Travis::Api::App::Cors # if Travis.env == 'development' ???
use Raven::Rack if Travis.env == 'production' || Travis.env == 'staging'
use Raven::Rack if Travis::Api::App.use_monitoring?
use Rack::SSL if Endpoint.production?
use ActiveRecord::ConnectionAdapters::ConnectionManagement
use ActiveRecord::QueryCache
@ -192,7 +192,7 @@ module Travis::Api
end
end
if use_monitoring? and not console?
if use_monitoring? && !console?
setup_monitoring
end
end

View File

@ -9,7 +9,7 @@ class Travis::Api::App
Thread.new do
loop do
begin
Raven.send queue.pop
Raven.send_event queue.pop
rescue Exception => e
puts e.message, e.backtrace
end

View File

@ -3,7 +3,7 @@ require 'travis/api/v3/renderer/model_renderer'
module Travis::API::V3
class Renderer::Cron < Renderer::ModelRenderer
representation(:minimal, :id)
representation(:standard, :id, :repository, :branch, :interval, :disable_by_build, :next_enqueuing)
representation(:standard, :id, :repository, :branch, :interval, :disable_by_build, :next_enqueuing, :created_at)
def repository
model.branch.repository

View File

@ -16,7 +16,7 @@ end
V3 = Travis::API::V3
Travis::Api::App.setup
Travis::Api::App.new
console = Travis::Console.new
methods = Travis::Console.instance_methods - Object.instance_methods

View File

@ -26,7 +26,7 @@ describe 'Exception' do
it 'enques error into a thread' do
error = TestError.new('Konstantin broke all the thingz!')
Travis::Api::App::Endpoint::Repos.any_instance.stubs(:service).raises(error)
Raven.expects(:send).with do |event|
Raven.expects(:send_event).with do |event|
event.message == "#{error.class}: #{error.message}"
end
expect { get "/repos" }.to raise_error(TestError)

View File

@ -64,7 +64,8 @@ describe Travis::API::V3::Services::Cron::Create do
"name" => "#{branch.name}" },
"interval" => "monthly",
"disable_by_build" => false,
"next_enqueuing" => current_cron.next_enqueuing.strftime('%Y-%m-%dT%H:%M:%SZ')
"next_enqueuing" => current_cron.next_enqueuing.strftime('%Y-%m-%dT%H:%M:%SZ'),
"created_at" => current_cron.created_at.strftime('%Y-%m-%dT%H:%M:%SZ')
}}
end

View File

@ -52,7 +52,8 @@ describe Travis::API::V3::Services::Cron::Delete do
"name" => branch.name },
"interval" => "daily",
"disable_by_build" => true,
"next_enqueuing" => cron.next_enqueuing.strftime('%Y-%m-%dT%H:%M:%SZ')
"next_enqueuing" => cron.next_enqueuing.strftime('%Y-%m-%dT%H:%M:%SZ'),
"created_at" => cron.created_at.strftime('%Y-%m-%dT%H:%M:%SZ')
}}
end

View File

@ -46,8 +46,9 @@ describe Travis::API::V3::Services::Cron::Find do
"@representation" => "minimal",
"name" => branch.name },
"interval" => "daily",
"disable_by_build" => true,
"next_enqueuing" => cron.next_enqueuing.strftime('%Y-%m-%dT%H:%M:%SZ')
"disable_by_build" => true,
"next_enqueuing" => cron.next_enqueuing.strftime('%Y-%m-%dT%H:%M:%SZ'),
"created_at" => cron.created_at.strftime('%Y-%m-%dT%H:%M:%SZ')
}}
end
@ -105,8 +106,9 @@ describe Travis::API::V3::Services::Cron::Find do
"@representation" => "minimal",
"name" => branch.name },
"interval" => "daily",
"disable_by_build" => true,
"next_enqueuing" => cron.next_enqueuing.strftime('%Y-%m-%dT%H:%M:%SZ')
"disable_by_build" => true,
"next_enqueuing" => cron.next_enqueuing.strftime('%Y-%m-%dT%H:%M:%SZ'),
"created_at" => cron.created_at.strftime('%Y-%m-%dT%H:%M:%SZ')
}}
end

View File

@ -47,8 +47,9 @@ describe Travis::API::V3::Services::Cron::ForBranch do
"@representation" => "minimal",
"name" => branch.name },
"interval" => "daily",
"disable_by_build" => true,
"next_enqueuing" => cron.next_enqueuing.strftime('%Y-%m-%dT%H:%M:%SZ')
"disable_by_build" => true,
"next_enqueuing" => cron.next_enqueuing.strftime('%Y-%m-%dT%H:%M:%SZ'),
"created_at" => cron.created_at.strftime('%Y-%m-%dT%H:%M:%SZ')
}}
end

View File

@ -68,7 +68,8 @@ describe Travis::API::V3::Services::Crons::ForRepository do
"name" => "#{branch.name}" },
"interval" => "daily",
"disable_by_build" => true,
"next_enqueuing" => cron.next_enqueuing.strftime('%Y-%m-%dT%H:%M:%SZ')
"next_enqueuing" => cron.next_enqueuing.strftime('%Y-%m-%dT%H:%M:%SZ'),
"created_at" => cron.created_at.strftime('%Y-%m-%dT%H:%M:%SZ')
}
]
}}

View File

@ -17,62 +17,82 @@ Gem::Specification.new do |s|
"Mathias Meyer",
"Josh Kalderimis",
"Henrik Hodne",
"Steffen Kötte",
"Ana Rosas",
"Tyranja",
"Lennard Wolf",
"Steffen",
"Jonas Chromik",
"Dan Buch",
"Andre Arko",
"C. Scott Ananian",
"Erik Michaels-Ober",
"Brian Ford",
"C. Scott Ananian",
"Christopher Weyand",
"Lisa P",
"Brian Ford",
"Renée Hendricksen",
"Steve Richert",
"Bryan Goldstein",
"Dan Rice",
"James Dennes",
"María de Antón",
"Nick Schonning",
"Patrick Williams",
"Lucas CHERIFI",
"Puneeth Chaganti",
"Bryan Goldstein",
"James Dennes",
"Igor Wiedler",
"rainsun",
"Igor",
"Thais Camilo and Konstantin Haase",
"Tim Carey-Smith",
"Dan Rice",
"Zachary Scott",
"rainsun"
"María de Antón",
"Patrick Williams"
]
s.email = [
"konstantin.mailinglists@googlemail.com",
"drogus@gmail.com",
"me@svenfuchs.com",
"carla@travis-ci.com",
"me@svenfuchs.com",
"asari.ruby@gmail.com",
"meyer@paperplanes.de",
"josh.kalderimis@gmail.com",
"me@henrikhodne.com",
"steffen.koette@gmail.com",
"carlad@users.noreply.github.com",
"me@henrikhodne.com",
"henrik@hodne.io",
"carla@travis-ci.org",
"konstantin.haase@gmail.com",
"a.rosas10@gmail.com",
"tyranja@cassiopeia.uberspace.de",
"andre@arko.net",
"konstantin.haase@gmail.com",
"lennardwolf@live.de",
"steffen.koette@gmail.com",
"Jonas.Chromik@student.hpi.uni-potsdam.de",
"dan@travis-ci.org",
"svenfuchs@artweb-design.de",
"cscott@cscott.net",
"andre@arko.net",
"christopher.weyand@student.hpi.de",
"sferik@gmail.com",
"cscott@cscott.net",
"steve.richert@gmail.com",
"bford@engineyard.com",
"henrik@travis-ci.com",
"mail@lislis.de",
"steve.richert@gmail.com",
"brysgo@gmail.com",
"dan@meatballhat.com",
"dan@zoombody.com",
"jdennes@gmail.com",
"MariadeAnton@users.noreply.github.com",
"nschonni@gmail.com",
"renee@travis-ci.org",
"patrick@bittorrent.com",
"punchagan@muse-amuse.in",
"rainsuner@gmail.com",
"nschonni@gmail.com",
"MariadeAnton@users.noreply.github.com",
"lucas@cherifi.info",
"jdennes@gmail.com",
"igor@travis-ci.org",
"dev+narwen+rkh@rkh.im",
"tim@spork.in",
"igorwwwwwwwwwwwwwwwwwwww@users.noreply.github.com",
"e@zzak.io",
"rainsuner@gmail.com"
"dan@zoombody.com",
"dan@meatballhat.com",
"brysgo@gmail.com",
"punchagan@muse-amuse.in"
]
s.files = [
@ -152,6 +172,7 @@ Gem::Specification.new do |s|
"lib/travis/api/app/services/schedule_request.rb",
"lib/travis/api/app/stack_instrumentation.rb",
"lib/travis/api/attack.rb",
"lib/travis/api/enqueue/services/enqueue_build.rb",
"lib/travis/api/instruments.rb",
"lib/travis/api/serializer.rb",
"lib/travis/api/v2.rb",
@ -203,6 +224,7 @@ Gem::Specification.new do |s|
"lib/travis/api/v3/models/broadcast.rb",
"lib/travis/api/v3/models/build.rb",
"lib/travis/api/v3/models/commit.rb",
"lib/travis/api/v3/models/cron.rb",
"lib/travis/api/v3/models/email.rb",
"lib/travis/api/v3/models/job.rb",
"lib/travis/api/v3/models/log.rb",
@ -223,6 +245,7 @@ Gem::Specification.new do |s|
"lib/travis/api/v3/permissions.rb",
"lib/travis/api/v3/permissions/account.rb",
"lib/travis/api/v3/permissions/build.rb",
"lib/travis/api/v3/permissions/cron.rb",
"lib/travis/api/v3/permissions/generic.rb",
"lib/travis/api/v3/permissions/job.rb",
"lib/travis/api/v3/permissions/organization.rb",
@ -235,6 +258,8 @@ Gem::Specification.new do |s|
"lib/travis/api/v3/queries/broadcasts.rb",
"lib/travis/api/v3/queries/build.rb",
"lib/travis/api/v3/queries/builds.rb",
"lib/travis/api/v3/queries/cron.rb",
"lib/travis/api/v3/queries/crons.rb",
"lib/travis/api/v3/queries/job.rb",
"lib/travis/api/v3/queries/jobs.rb",
"lib/travis/api/v3/queries/organization.rb",
@ -259,6 +284,8 @@ Gem::Specification.new do |s|
"lib/travis/api/v3/renderer/builds.rb",
"lib/travis/api/v3/renderer/collection_renderer.rb",
"lib/travis/api/v3/renderer/commit.rb",
"lib/travis/api/v3/renderer/cron.rb",
"lib/travis/api/v3/renderer/crons.rb",
"lib/travis/api/v3/renderer/error.rb",
"lib/travis/api/v3/renderer/job.rb",
"lib/travis/api/v3/renderer/jobs.rb",
@ -288,6 +315,12 @@ Gem::Specification.new do |s|
"lib/travis/api/v3/services/build/find.rb",
"lib/travis/api/v3/services/build/restart.rb",
"lib/travis/api/v3/services/builds/find.rb",
"lib/travis/api/v3/services/cron/create.rb",
"lib/travis/api/v3/services/cron/delete.rb",
"lib/travis/api/v3/services/cron/find.rb",
"lib/travis/api/v3/services/cron/for_branch.rb",
"lib/travis/api/v3/services/crons/for_repository.rb",
"lib/travis/api/v3/services/crons/start.rb",
"lib/travis/api/v3/services/job/cancel.rb",
"lib/travis/api/v3/services/job/debug.rb",
"lib/travis/api/v3/services/job/find.rb",
@ -332,6 +365,7 @@ Gem::Specification.new do |s|
"script/console",
"script/repos_stats.rb",
"script/server",
"script/start_crons",
"script/web_concurrency",
"spec/active_record_postgres_variables_spec.rb",
"spec/integration/error_handling_spec.rb",
@ -415,6 +449,8 @@ Gem::Specification.new do |s|
"spec/v3/error_handling_spec.rb",
"spec/v3/extensions/belongs_to_spec.rb",
"spec/v3/metrics_spec.rb",
"spec/v3/models/cron_spec.rb",
"spec/v3/queries/cron_spec.rb",
"spec/v3/renderer/avatar_url_spec.rb",
"spec/v3/result_spec.rb",
"spec/v3/service_index_spec.rb",
@ -426,6 +462,11 @@ Gem::Specification.new do |s|
"spec/v3/services/build/find_spec.rb",
"spec/v3/services/build/restart_spec.rb",
"spec/v3/services/builds/find_spec.rb",
"spec/v3/services/cron/create_spec.rb",
"spec/v3/services/cron/delete_spec.rb",
"spec/v3/services/cron/find_spec.rb",
"spec/v3/services/cron/for_branch_spec.rb",
"spec/v3/services/crons/for_repository_spec.rb",
"spec/v3/services/job/cancel_spec.rb",
"spec/v3/services/job/debug_sepc.rb",
"spec/v3/services/job/find_spec.rb",
@ -443,6 +484,7 @@ Gem::Specification.new do |s|
"spec/v3/services/repository/star_spec.rb",
"spec/v3/services/repository/unstar_spec.rb",
"spec/v3/services/requests/create_spec.rb",
"spec/v3/services/requests/find_spec.rb",
"spec/v3/services/user/current_spec.rb",
"spec/v3/services/user/find_spec.rb",
"spec/v3/services/user/sync_spec.rb",