Commit Graph

214 Commits

Author SHA1 Message Date
Piotr Sarnacki
696185e3cd Return repository_id for env vars 2014-07-16 18:14:52 +02:00
Piotr Sarnacki
cc291446f5 Return env var's value if it's public 2014-07-16 11:54:31 +02:00
Piotr Sarnacki
2e8fc35e13 Properly validate settings 2014-07-15 16:26:24 +02:00
Piotr Sarnacki
fa56e4cfa0 Update code and specs for newest travis-core changes 2014-07-15 16:25:55 +02:00
Hiro Asari
6d3a65b541 Merge branch 'master' into ps-env-vars-in-settings
Conflicts:
	Gemfile.lock
2014-06-18 08:38:49 -04:00
Hiro Asari
dae8652279 Merge branch 'master' into ha-feature-remove_log_endpoint 2014-06-17 10:40:30 -04:00
Hiro Asari
9265ac62c9 Merge branch 'master' into ha-feature-remove_log_endpoint
Conflicts:
	Gemfile.lock
	travis-api.gemspec
2014-06-17 09:05:05 -04:00
Konstantin Haase
143a9cd071 Revert "removed the branches endpoint"
This reverts commit f7450cdb6b.
2014-06-17 14:44:13 +02:00
Konstantin Haase
0145236b30 Merge pull request #123 from travis-ci/rkh-lint
add endpoint for .travis.yml linting
2014-06-17 14:15:02 +02:00
Konstantin Haase
10fe7e1c39 add endpoint for linting 2014-06-17 12:14:10 +02:00
Hiro Asari
8d4c4488b1 Merge pull request #94 from travis-ci/jk_remove_branches_endpoint
Remove the branches endpoint
2014-06-16 11:36:59 -04:00
Hiro Asari
dfffe8e405 Remove PATCH logs/:job_id endpoint
To eradicate unnecessary inconsistency.

Spec to test the existing `GET logs/:id` remains.
2014-06-12 07:20:47 -04:00
Hiro Asari
4a3807b21a Standardize error handling for RemoveLog service endpoints
Return status 409 for errors
2014-06-11 13:51:47 -04:00
Hiro Asari
1cf298464a Add RemoveLog service endpoint to jobs/:id/log
This replaces https://github.com/travis-ci/travis-api/pull/107.
2014-06-11 13:39:21 -04:00
Hiro Asari
5c079f8e66 Add specs for RemoveLog service
Status code is debatable; I opted for 422 when the job is still
running, and for 500 if unexpected error happened
2014-06-11 09:30:50 -04:00
Piotr Sarnacki
3ef8fab3c6 Add settings endpoint for env_vars 2014-05-23 13:42:22 +02:00
Piotr Sarnacki
d02648a542 Add build_id to requests payload 2014-05-06 16:04:10 +02:00
Mathias Meyer
34a7f817b3 Remove documentation, redirect /docs to new docs. 2014-05-05 15:06:06 +02:00
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
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
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
11e814055e Fix specs 2014-04-01 16:52:33 +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
8c82d9af89 Move API v2 payload definitions to travis-api from travis-core 2014-03-24 20:25:06 +01:00
Piotr Sarnacki
400b6ae6ee Add /requests/:id endpoint 2014-03-12 10:50:16 +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
Konstantin Haase
a7df899adc be more forgiving with scopes for /auth/github 2014-02-26 19:28:20 +01:00
Hiro Asari
b43568a0f9 Fix Annoation-related specs
Annotations are now blocked by features, so stub the service to
return true for the cases we expect to get data back from POST
requests
2014-01-29 14:30:23 -05: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
8e1b190725 Require status for updating Annotation and bump travis-core 2014-01-22 09:34:26 -05: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
d31a29e54d Fix grammar in spec description 2013-12-01 20:42:46 -05:00
Piotr Sarnacki
39260c3918 Fix specs after travis-core update 2013-11-28 18:08:39 +01:00
Hiro Asari
ff37525a5c Cast in matcher as well
To match the previous change with the responder.
2013-11-19 01:23:47 -05:00
Hiro Asari
0f0ee4778f Fix up matcher to account for change in data structure
Aggregate CC XML would have a different output
2013-11-18 16:55:23 -05:00
Hiro Asari
362b5d30bf Respond to /repos.xml with CC XML
See #47
2013-11-18 16:55:11 -05:00
Hiro Asari
85aebf684b Add specs for pretty print JSON
They only check that the response includes `\n`, which should not happen
otherwise.
2013-11-18 13:15:05 -05:00
Piotr Sarnacki
e61a723d06 Fix scoping spec
After bundle update 403 error was returned after unsuccessful scopes
check. This is actually a proper behaviour, so I'm changing test to
reflect this test.
2013-11-12 22:16:47 +01: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
8171d3915e Add integration specs for Atom feed
These rudimentary specs do not test the correctness of
the Atom feed format.
2013-11-11 11:40:37 -05:00
Piotr Sarnacki
1503b87555 Require travis/testing explicitly 2013-11-08 11:05:55 +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
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
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
Josh Kalderimis
26edaf644f remove deprecated artifacts endpoint 2013-11-05 01:05:21 +01:00
Josh Kalderimis
342df12b14 remove old workers endpoints 2013-11-04 19:24:17 +01:00
Piotr Sarnacki
87674f52bb Redirect to web client on insufficient oauth scopes 2013-10-29 14:27:21 +01: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
0681e54cf1 Run CORS middleware in development 2013-09-20 12:47:14 +02:00
Piotr Sarnacki
8d1a3b2bea Bump travis-core (repos?member=:member fix) 2013-09-12 13:52:32 +02:00
Piotr Sarnacki
e587ef0b7f Add nginx config with CORS support 2013-09-05 22:48:42 +02:00
Mathias Meyer
9d26844eaa Add tests for /uptime. 2013-08-26 17:29:10 +02:00
Piotr Sarnacki
f19de9d134 Implement jobs/:id/cancel and builds/:id/cancel endpoints 2013-08-08 14:25:20 +02:00
Piotr Sarnacki
383d233d9e Add missing spec for UserManager (when drop_token is true) 2013-08-02 13:18:54 +02:00
Henrik Hodne
be2c538d9e Rename metadata => annotations 2013-07-10 16:55:03 -07:00
Henrik Hodne
16a73d9e0b Add PUT /jobs/:id/metadata endpoint 2013-07-09 18:41:47 -07:00
Henrik Hodne
b103a7ccb1 Add GET /jobs/:job_id/metadata endpoint 2013-07-09 18:15:32 -07:00
Piotr Sarnacki
3508f25bdf Nullify logins and rename repos owner when updating/creating user 2013-07-10 01:38:10 +02:00
Piotr Sarnacki
b6a351c766 Convert params['ids'] to array
Services like find_builds can accept :ids as a param, but it needs to be
an array, string will be passed to find and converted into integer.
2013-07-09 15:18:31 +02:00
Josh Kalderimis
cf66b6bb6d raise_error(Error) is deprecated 2013-07-08 13:38:50 +02:00
Mathias Meyer
162bf4e3ef Merge branch 'master' into rkh-metrics 2013-06-18 09:51:13 +02:00
Piotr Sarnacki
29fb7292cb Fix tests 2013-06-13 15:54:19 +02:00
Mathias Meyer
49015050c1 Merge branch 'master' into rkh-metrics
Conflicts:
	Gemfile.lock
2013-06-10 08:23:42 +02:00
Henrik Hodne
5f1f189c74 Remove references to "result" in specs
This column has now been removed in favor of the state columns.
2013-05-23 15:48:41 +02:00
Mathias Meyer
c75f76aefb Remove spec for auto-using custom middlewares. 2013-05-18 11:19:15 +02:00
Mathias Meyer
0cd89de38a Merge branch 'master' into rkh-metrics
Conflicts:
	Gemfile.lock
2013-05-09 13:37:28 +02:00
Piotr Sarnacki
cdabec540d Fix scopes and access token specs 2013-05-08 14:11:03 +02:00
Piotr Sarnacki
3b299cfec7 Allow to pass required_params to token
required_params will be matched with actual params to check if the token
may be used for authorization. For example if { job_id: 44 } is passed
as a required param, the token will be rejected for GET /jobs/33
2013-05-08 14:11:03 +02:00
Piotr Sarnacki
56d61ed461 Allow to pass extra params for tokens 2013-05-08 14:11:02 +02:00
Piotr Sarnacki
ee64af14d5 Allow to specify more than one scope for an endpoint 2013-05-08 14:11:02 +02:00
Piotr Sarnacki
1340fdb316 Allow to pass additional responders to respond_with 2013-05-08 14:11:02 +02:00
Piotr Sarnacki
01356df26f Implement expiring access tokens 2013-05-08 14:11:02 +02:00
Konstantin Haase
0d2188b5b2 fix specs 2013-04-24 16:59:26 +02:00
Piotr Sarnacki
be22ff6eda Ensure that we properly handle 404 formats 2013-04-11 14:47:00 +02:00
Piotr Sarnacki
887c835bd4 Use client_domain instead of domain for url in CC.xml 2013-03-25 16:53:20 +01:00
Piotr Sarnacki
15dd13ba02 Merge branch 'pr/46' 2013-03-25 16:40:08 +01:00
Piotr Sarnacki
f3ceee9b28 Always set content_type in responder 2013-03-25 16:39:37 +01:00
Andre Arko
637af8aa44 oh and the spec cares too 2013-03-25 16:16:42 +01:00
Andre Arko
c57e9cbcc6 valid URLs in cc.xml Project webUrl 2013-03-25 16:09:37 +01:00
Andre Arko
6940532994 Ensure proper content type for cc.xml 2013-03-25 16:09:15 +01:00
Piotr Sarnacki
61142c7cf6 Return 404 unless we can find API builder for resource
In order to protect us from rendering a resource simply converted to
json, without processing it with API data class, this commit changes
JSON responder behavior to render 404 if we can't find associated data
class. The only exception to that rule is when resource is already a
Hash, meaning that it was processed before - we sometimes return for
example simple Hash responses like { result: true }.

The Hash exception could allow to accidentally pass resource.as_json to
responder, but in travis-ci/travis-support@124b8b6 I disabled default
as_json method on AR::Base classes, so the risk of such mistake is
lowered.
2013-03-24 19:49:28 +01:00
Konstantin Haase
92be2a3fcd fix test for new autosync 2013-03-20 19:53:38 +01:00
Piotr Sarnacki
705927ff74 Don't error out if xml is requested with something else than repo 2013-03-12 12:08:43 +01:00
Piotr Sarnacki
c0b9a468d6 Forgot to delete one of the tests 2013-03-11 23:58:58 +01:00
Piotr Sarnacki
54a6926aaf Properly handle non existent resources
This commit changes travis-api to always return 404 response if resource
is not available. Previously we were returning image/png with "unknown"
status instead if user used "*/*" Accept header, which was confusing.
2013-03-11 23:52:57 +01:00
Piotr Sarnacki
04bb751b02 When serving image, return proper Last-Modified header 2013-03-11 20:54:24 +01:00
Piotr Sarnacki
5345ef818e Use version from each of the accept headers, not only first one 2013-02-25 17:28:24 +01:00
Piotr Sarnacki
5f91706e64 Allow to pass version as Accept param 2013-02-25 17:28:24 +01:00
Piotr Sarnacki
36783e6359 Handle chunked=true param in Accept header 2013-02-25 17:28:24 +01:00
Piotr Sarnacki
65b1e6b988 Respond with 406 if we can't return requested formats 2013-02-25 17:27:56 +01:00
Piotr Sarnacki
212eb6d9d3 Allow passing more than one mime type in Accept 2013-02-25 17:27:56 +01:00
Piotr Sarnacki
1d7be066cb Make it easy to check if Accept::Entry accepts given mime type 2013-02-25 17:27:56 +01:00