Commit Graph

561 Commits

Author SHA1 Message Date
Piotr Sarnacki
360881a888 Remove ssh_keys endpoint
SshKeys will make sense only on Travis CI Pro
2014-04-15 11:14:11 +02:00
Piotr Sarnacki
c42335a286 Merge pull request #117 from travis-ci/ps-ssh-keys
Add ssh keys to settings API
2014-04-15 10:59:59 +02:00
Piotr Sarnacki
17fd6201b8 Don't error out on settings
We didn't have scope: :private specified on settings endpoint which
resulted in errors (services check permissions of current user anyway,
but it will error out if there is no user available).
2014-04-15 10:58:08 +02:00
Piotr Sarnacki
f107d4676e Params in POST and PATCH requests should be fetched from request body
This also adds missing specs for ssh_keys endpoint
2014-04-10 14:07:20 +02:00
Henrik Hodne
26064f95a1 Merge pull request #119 from travis-ci/hh-skylight
Skylight
2014-04-09 18:08:48 -05:00
Henrik Hodne
9b0fb64ba1 skylight: add service probe 2014-04-09 16:53:24 -05:00
Henrik Hodne
162b5b0cca skylight: extract probes from config.ru 2014-04-09 14:34:20 -05:00
Henrik Hodne
928ed11c62 skylight: use Sinatra support from skylight gem
This hasn't been merged in yet, so use my fork for now.
2014-04-09 14:30:04 -05:00
Konstantin Haase
993e46bea1 Merge branch 'rkh-check-state' 2014-04-09 13:33:29 -04:00
Henrik Hodne
208a8248f7 skylight: refactor more into extension 2014-04-09 06:09:43 -05:00
Henrik Hodne
da92cfd640 Remove New Relic 2014-04-09 05:25:00 -05:00
Henrik Hodne
749ee8b943 skylight: only load extension if skylight is available 2014-04-09 04:14:19 -05:00
Henrik Hodne
37f2102513 Add Skylight stuff 2014-04-09 02:57:34 -05:00
Thais Camilo and Konstantin Haase
6e12bed1b5 store oauth state in cookie to verify it corresponds to current client 2014-04-08 15:17:23 -04:00
Piotr Sarnacki
a926ac1945 Render strings as text/plain 2014-04-08 15:22:33 +02:00
Piotr Sarnacki
54fb58a941 Special case for settings in rewrite is not needed 2014-04-01 16:58:36 +02:00
Piotr Sarnacki
e9cdef1c9b Add /settings/ssh_keys API 2014-04-01 13:05:25 +02:00
Piotr Sarnacki
1b524071f4 Allow to handle settings collections 2014-04-01 12:00:06 +02:00
Piotr Sarnacki
c1db39610e Remove code accidentally checked in 2014-03-26 13:01:46 +01:00
Piotr Sarnacki
8c82d9af89 Move API v2 payload definitions to travis-api from travis-core 2014-03-24 20:25:06 +01:00
Mathias Meyer
515ffb8a8a Return right mime type for SVG. 2014-03-19 15:05:11 +01:00
Mathias Meyer
a635f7d916 Add Badge to available responders. 2014-03-19 15:01:23 +01:00
Mathias Meyer
e85d19d33d Add responder for svg badges. 2014-03-19 14:31:38 +01:00
Piotr Sarnacki
400b6ae6ee Add /requests/:id endpoint 2014-03-12 10:50:16 +01:00
Piotr Sarnacki
ccbc3c8469 Merge pull request #110 from punchagan/minor-doc-fix
Fix entry point url for /auth/github in docs
2014-03-11 18:10:51 +01:00
Piotr Sarnacki
efa6a48a58 Merge pull request #112 from travis-ci/ps-requests-api
Add requests API
2014-03-11 13:24:09 +01:00
Piotr Sarnacki
093831c1a2 Add requests API
Requests API allows to get the requests from the DB and thus enable
users to have more insight into what's going on in their repositories.
2014-03-06 19:36:55 +01:00
Puneeth Chaganti
fdc4e47bd1 Fix entry point url for /auth/github in docs 2014-02-27 09:45:04 +05:30
Konstantin Haase
a7df899adc be more forgiving with scopes for /auth/github 2014-02-26 19:28:20 +01:00
Hiro Asari
5517623265 Respond with 409 to POST '/users/sync' if sync is in progress
Fixes travis-ci/travis-ci#1659.

[Henrik Hodne: squashed commits]
2014-01-28 10:22:10 -06:00
Hiro Asari
6069f429cd Merge pull request #67 from travis-ci/hh-add-metadata-endpoint
Add annotation endpoints (#1220)
2014-01-24 06:50:39 -08:00
Hiro Asari
8e1b190725 Require status for updating Annotation and bump travis-core 2014-01-22 09:34:26 -05:00
Mathias Meyer
1de288cc60 Fix links to docs and blog in API doco.
[skip ci]
2014-01-21 13:44:13 +01:00
Hiro Asari
8ce826cda0 Merge branch 'master' into hh-add-metadata-endpoint
Conflicts:
	Gemfile.lock
2014-01-20 22:30:35 -05:00
Sven Fuchs
0c6576fec1 Merge pull request #99 from travis-ci/ha-api-gh47-aggregate-cc-xml
Respond to /repos.xml with CC XML
2014-01-17 12:50:26 -08:00
Hiro Asari
a622de2a9f Merge branch 'master' into hh-add-metadata-endpoint
Update Gemfile.lock to point to the updated travis-core PR

Conflicts:
	Gemfile.lock
	lib/travis/api/app/endpoint/jobs.rb
	spec/integration/v2/jobs_spec.rb
2014-01-17 09:16:41 -05:00
Konstantin Haase
fc06e3bff9 Merge pull request #97 from travis-ci/core-gh1555-pretty-print-json
Pretty print JSON data
2013-12-06 05:27:55 -08:00
Piotr Sarnacki
e11dfa35cf Fix PATCH repos/:id/settings 2013-12-02 15:36:58 +01:00
Piotr Sarnacki
62a5e602c5 Implement simple repository settings API 2013-12-02 15:36:25 +01:00
Hiro Asari
ea05ef6845 Fix closing tag 2013-12-01 22:22:00 -05:00
Hiro Asari
1eb8ce5a1d Add missing closing </Project> tag 2013-12-01 22:01:12 -05:00
Hiro Asari
ac106488c7 Eschew questionable use of File.join
For constructing a URL, `File.join` is inappropriate.
2013-12-01 20:44:39 -05:00
Konstantin Haase
f2c6a67893 expose wanted github scopes to client 2013-12-01 19:37:16 +01:00
Mathias Meyer
95e8359e5e Pull custom font from Google with https. 2013-11-28 18:19:53 +01:00
Hiro Asari
1727b5328e Indent comment to match logic level 2013-11-19 01:21:14 -05:00
Hiro Asari
67decdfc6a Cast ActiveRecord::Relation into an Array 2013-11-19 01:19:21 -05:00
Hiro Asari
0fe9e6da90 Remove superfluous ivar 2013-11-18 18:21:32 -05:00
Hiro Asari
362b5d30bf Respond to /repos.xml with CC XML
See #47
2013-11-18 16:55:11 -05:00
Konstantin Haase
d462e88909 Merge pull request #98 from travis-ci/ha-fix-doc-endpoints
Fix auto-generated endpoints text
2013-11-15 08:40:49 -08:00
Hiro Asari
1a45e5dae1 Generate the string more cleanly 2013-11-15 11:33:30 -05:00
Hiro Asari
06ae9bd1fa Fix typo [skip ci] 2013-11-15 11:27:44 -05:00
Hiro Asari
f875a3f3d4 Fix auto-generated endpoints text
Before:
    /endpoints:prefi

After:
    /endpoints/:prefix
2013-11-15 11:05:26 -05:00
Hiro Asari
4556fdf8e1 Account for absence of pretty parameter 2013-11-15 09:43:07 -05:00
Hiro Asari
0e406b3ed1 Accept pretty parameter for pretty formatting
If the parameter is equal to `true` (in any case--`TRUE`, `True`) or
a positive integer, return pretty formatted JSON data.

No tests are necessary.
2013-11-15 09:19:25 -05:00
Hiro Asari
da62a6ce3c Pretty print JSON data
See travis-ci/travis-ci#1555.

JSON data are pretty-formatted for humans.
2013-11-14 21:29:33 -05:00
Piotr Sarnacki
d170b611b0 Connect logs to a different DB if config is present 2013-11-12 22:05:54 +01:00
Hiro Asari
fbf98f9ceb Tweak feed and entry's IDs 2013-11-11 15:43:47 -05:00
Hiro Asari
2645422fd3 Atom feed's date should conform to RFC 3339. 2013-11-11 15:32:41 -05:00
Hiro Asari
3b20120c72 Accept .atom extension
And return Atom feed for builds.
Specs look different, because it needs to explicitly handle the common
case where the client sends `Accept: */*`.
2013-11-11 15:21:14 -05:00
Hiro Asari
ea3a5a7a0d Encode commit message
So that HTML/XML tags in messages don't break the feed.
2013-11-11 14:14:56 -05:00
Hiro Asari
53d2e950b9 Set update element to RFC3339 format
This is required by the RFC.

http://tools.ietf.org/html/rfc4287#section-3.3
2013-11-11 13:56:10 -05:00
Hiro Asari
e945476c8d Prefer JSON to Atom feed
We should not break the current behavior when the client sends
`Accept: */*` HTTP header.
2013-11-11 11:42:48 -05:00
Hiro Asari
26bdd84ae6 Eradicate @builds
Unclear if ivar is beneficial here.
2013-11-11 11:39:06 -05:00
Hiro Asari
30b60283f8 Construct build result URL from parts
Currently, there is no easy way to grab this information from
the Build model.
So we need to construct it from various parts at our disposal.
2013-11-11 09:39:13 -05:00
Hiro Asari
148f2477e8 Use here-doc for Atom feed template
Rather than unnaturally re-reading __FILE__ and splitting,
use a here-doc to clarify the intent.
(Should also consider splitting it to a file.)
2013-11-11 09:03:23 -05:00
Hiro Asari
3fa96de682 WIP: Atom feed for /repos/:owner_name/:name/builds
See travis-ci/travis-core#82

TODO: Link to indivisual build.
TODO: Add specs.
TODO: Review `#apply?`
2013-11-11 09:03:23 -05:00
Piotr Sarnacki
82ceb4fd1f Require states_cache explicitly 2013-11-08 11:23:22 +01:00
Piotr Sarnacki
4c89e067ae Require models and amqp explicitly 2013-11-08 11:05:18 +01:00
Mathias Meyer
1462df6a7e Revert "Hide the /uptime endpoint in the docs."
This reverts commit 477f39a000.
2013-11-07 16:31:29 +01:00
Mathias Meyer
477f39a000 Hide the /uptime endpoint in the docs. 2013-11-07 15:53:59 +01:00
Mathias Meyer
65a806261c It's Travis CI. 2013-11-07 15:10:40 +01:00
Josh Kalderimis
f7450cdb6b removed the branches endpoint
we already have branch info accessible via the repos endpoints, having this at the root level doesn't make sense.
2013-11-06 01:40:42 +01:00
Josh Kalderimis
4deddc5843 add deprecation notice 2013-11-06 01:22:54 +01:00
Josh Kalderimis
92dc3f55ec add 'restart' to the build and job endpoints 2013-11-06 01:18:54 +01:00
Piotr Sarnacki
58f1284244 Merge pull request #85 from travis-ci/insufficient-oauth-redirect
Redirect to web client on insufficient oauth scopes
2013-11-05 05:31:25 -08:00
Josh Kalderimis
609a35ecc3 disabled for over a year, removed from api 2013-11-05 13:42:37 +01:00
Konstantin Haase
6f92f122b0 Merge pull request #90 from travis-ci/jk_remove_artifacts_endpoint
Remove deprecated artifacts endpoint
2013-11-05 04:23:04 -08:00
Konstantin Haase
419fe6fdf9 Merge pull request #88 from travis-ci/jk_remove_workers_endpoints
Remove old workers endpoints
2013-11-05 04:22:44 -08:00
Konstantin Haase
28c019c18d Merge pull request #89 from travis-ci/jk_remove_events_endpoints
Remove the events endpoint
2013-11-05 00:27:52 -08:00
Henrik Hodne
5f3e53da28 Update API docs to use new styles 2013-11-04 21:06:38 -06:00
Josh Kalderimis
26edaf644f remove deprecated artifacts endpoint 2013-11-05 01:05:21 +01:00
Josh Kalderimis
54060dbfc6 removed the events endpoint
it isn't used, and there are no tests, i think it's safe to remove
2013-11-05 00:18:14 +01:00
Josh Kalderimis
342df12b14 remove old workers endpoints 2013-11-04 19:24:17 +01:00
Konstantin Haase
44e1db3944 add API endpoints for listing and deleting caches 2013-11-04 10:23:22 +01:00
Piotr Sarnacki
87674f52bb Redirect to web client on insufficient oauth scopes 2013-10-29 14:27:21 +01:00
Josh Kalderimis
0c3b4d60eb Merge pull request #79 from travis-ci/hh-xml-responder-nil-last-build
Only allow XML response if repo has a build
2013-10-27 10:02:10 -07:00
Josh Kalderimis
542b1ffc80 Merge pull request #83 from travis-ci/hh-cancel-job-wrong-namespac
Move /jobs/:id/cancel to /jobs
2013-10-27 10:01:02 -07:00
Henrik Hodne
824f9cd21d Move /jobs/:id/cancel to /jobs 2013-10-27 01:06:26 -05:00
Konstantin Haase
02c10fe7cb Merge pull request #81 from travis-ci/hh-auth-race-condition
Handle race condition with creating users more nicely
2013-10-26 06:48:12 -07:00
Konstantin Haase
3c8721eac3 Merge pull request #82 from travis-ci/hh-handle-json-parsererrors
Handle JSON parsing errors
2013-10-26 06:47:52 -07:00
Henrik Hodne
dd5cf36eee Handle JSON parsing errors 2013-10-26 08:39:31 -05:00
Henrik Hodne
c64a006f1d Handle race condition with creating users more nicely 2013-10-26 08:33:57 -05:00
Henrik Hodne
65267795f1 Only allow image responses for repositories 2013-10-26 08:19:01 -05:00
Henrik Hodne
44f274d306 Only allow XML response if repo has a build 2013-10-26 08:14:40 -05:00
Henrik Hodne
8f4dd0d2df Respond with 422 if /auth/github does not get a token
Fix #77
2013-10-23 19:35:03 -05:00
Piotr Sarnacki
0cdfa8240c Add source to cancel_build/job 2013-10-16 17:39:31 +02:00
Konstantin Haase
096d08c102 add /repos/:owner_name, fixes travis-ci/travis-ci#1496 2013-10-15 12:24:07 +02:00
Josh Kalderimis
8ccf48fa2a remove the log PUT endpoint, no longer needed 2013-10-05 19:10:09 +02:00
Konstantin Haase
6f72b2cb6b find_branch(es) expects parameter to be called repository_id 2013-10-03 17:25:40 +02:00
Konstantin Haase
93277035cd add repo endpoints for fetching branches 2013-10-03 16:32:30 +02:00
Piotr Sarnacki
d7d2fd5149 Merge pull request #74 from halorgium/fix-error-response
Use valid JSON for error responses
2013-09-23 09:53:55 -07:00
Piotr Sarnacki
cbb99afe89 Check for development rather than production to make it work on staging 2013-09-20 14:09:23 +02:00
Piotr Sarnacki
0681e54cf1 Run CORS middleware in development 2013-09-20 12:47:14 +02:00
Piotr Sarnacki
a49265f872 Disable follower for now 2013-09-10 12:05:18 +02:00
Piotr Sarnacki
1a3ab7f2a7 Always use follower if it's available 2013-09-06 19:49:16 +02:00
Piotr Sarnacki
e587ef0b7f Add nginx config with CORS support 2013-09-05 22:48:42 +02:00
Piotr Sarnacki
fc13284591 Revert "We don't need Rack::Deflater, nginx is doing the job"
This reverts commit 59cd6bac8f.
2013-09-04 21:39:41 +02:00
Piotr Sarnacki
b484a19f27 Prefer follower also for /repos/id and repos list 2013-09-04 20:32:30 +02:00
Piotr Sarnacki
59cd6bac8f We don't need Rack::Deflater, nginx is doing the job 2013-09-04 20:31:36 +02:00
Piotr Sarnacki
2492d710e1 Use new follower API added to Travis::Model 2013-09-04 16:22:32 +02:00
Piotr Sarnacki
d133528893 Use follower for /builds and /jobs 2013-09-03 14:45:12 +02:00
Piotr Sarnacki
dae72e62a8 Use memcachier gem 2013-09-02 13:46:32 +02:00
Piotr Sarnacki
85275895e7 Require dalli before rack/cache 2013-09-02 13:43:14 +02:00
Piotr Sarnacki
d1a6ff7b49 Use MEMCACHIER_SERVERS 2013-09-02 13:41:13 +02:00
Piotr Sarnacki
d549ead325 Fix wrong memcache servers code 2013-09-02 13:23:50 +02:00
Piotr Sarnacki
94922cd625 Start new relic manually 2013-09-02 12:29:13 +02:00
Piotr Sarnacki
0c3e12dfa3 Revert "Disable new relic"
This reverts commit 6412a07ad1.
2013-09-02 11:54:00 +02:00
Piotr Sarnacki
97958a4ce4 Try nginx 2013-09-02 09:52:26 +02:00
Piotr Sarnacki
6412a07ad1 Disable new relic 2013-09-02 09:51:45 +02:00
Tim Carey-Smith
7e8e212321 Use valid JSON for error responses 2013-09-01 23:55:11 +12:00
Mathias Meyer
9d26844eaa Add tests for /uptime. 2013-08-26 17:29:10 +02:00
Mathias Meyer
618241a458 Add an uptime endpoint for Pingdom.
Sends a simple database query to see if we can still connect
to the database. Should help us detect issues like yesterday's
EC2 issues earlier.
2013-08-26 15:30:07 +02:00
Konstantin Haase
c7c33ed2aa also treat empty content type as no content type 2013-08-23 17:39:47 +02:00
Konstantin Haase
60d37634b2 handle missing content-type 2013-08-23 17:10:51 +02:00
Konstantin Haase
e1bcd8d2b1 use timer 2013-08-23 16:59:25 +02:00
Konstantin Haase
d7d6ffc4da meter content-type 2013-08-23 16:53:49 +02:00
Mathias Meyer
d141256671 Revert my puny changes for now.
Will be fixed in travis-web.
2013-08-22 15:21:09 +02:00
Mathias Meyer
8bde2ddb10 blank 2013-08-22 15:05:45 +02:00
Mathias Meyer
7fb90f3975 end end 2013-08-22 15:02:39 +02:00
Mathias Meyer
c711002577 Only return empty builds hash when there are no ids present. 2013-08-22 14:59:19 +02:00
Mathias Meyer
3a90f08d3b Disable the /builds endpoint for now. 2013-08-22 14:49:24 +02:00
Piotr Sarnacki
37ca20b61c Measure cancel request on the beginning of the request 2013-08-21 11:57:00 +02:00
Piotr Sarnacki
526129b5be Add more metriks (cancel build/job and restart build/job) 2013-08-21 11:38:29 +02:00
Piotr Sarnacki
4387867d46 Update encryption task
Don't encrypt Request#token and do encrytion in smaller batches. I also
added sleep(10).
2013-08-15 13:46:05 +02:00
Piotr Sarnacki
f6f8cd9bff Merge branch 'ps-cancel' 2013-08-14 11:04:14 +02:00
Piotr Sarnacki
f19de9d134 Implement jobs/:id/cancel and builds/:id/cancel endpoints 2013-08-08 14:25:20 +02:00
Henrik Hodne
a87b4238b4 Remove call to Travis::Features.start
This was deprecated in
travis-ci/travis-core@53ab3c39d8.
2013-08-05 15:13:28 -07:00
Piotr Sarnacki
e093fde18c Return error with application/json content type by default 2013-08-05 12:10:02 +02:00
Konstantin Haase
1c149bcdb4 use client_domain in config 2013-08-03 14:36:42 +02:00
Piotr Sarnacki
207a6e3e04 Explicitly use self when using info in Authorization 2013-07-27 01:42:14 +02:00
Piotr Sarnacki
c4ebb3d922 Merge branch 'rename-fixes'
Conflicts:
	Gemfile.lock
	lib/travis/api/app/endpoint.rb
2013-07-23 17:08:17 +02:00
Piotr Sarnacki
c194f25a24 Set json content type only when content type is not set 2013-07-16 19:56:53 +02:00
Piotr Sarnacki
8e1a855812 Don't set content type to JSON by default 2013-07-16 19:30:16 +02:00
Konstantin Haase
04ea79ceec fix time parsing 2013-07-11 18:31:29 +02:00
Konstantin Haase
40acdfba4f Revert "also support X-Request-Start"
This reverts commit 63b4ac3338.
2013-07-11 18:28:44 +02:00
Konstantin Haase
63b4ac3338 also support X-Request-Start 2013-07-11 18:22:52 +02:00
Konstantin Haase
03d124d1b7 metrics for request queue 2013-07-11 18:13:23 +02:00
Konstantin Haase
8707f3b357 set X-Middleware-Start for NewRelic 2013-07-11 17:49:21 +02:00
Konstantin Haase
2c361e4292 drop rack-timeout 2013-07-11 17:27:32 +02:00
Konstantin Haase
60af7546a2 add rack-timeout 2013-07-11 16:37:02 +02:00