Simone Gotti
4fb250a668
configstore api: improve response handling
...
* Always return a json message also on error. For internal errors return a
generic "internal server error" message to not leak the real internal error to
clients
* Return 201 Created on resource creation
* Return 204 No Content on resource deletion and other action with no json
output
2019-04-08 12:29:25 +02:00
Simone Gotti
04f3905ea1
client: fix content type header case
2019-04-08 12:28:15 +02:00
Simone Gotti
03b5a53510
gateway/command: use ErrBadRequest when needed
2019-04-08 12:08:31 +02:00
Simone Gotti
56d903d4db
gateway api: improve response handling
...
* Always return a json message also on error. For internal errors return a
generic "internal server error" message to not leak the real internal error to
clients
* Return 201 Created on resource creation
* Return 204 No Content on resource deletion and other action with no json
output
2019-04-08 11:35:45 +02:00
Simone Gotti
763d77d899
gateway: rename projectid to projectref
2019-04-08 09:04:55 +02:00
Simone Gotti
f3781c9087
*: fix rest methods
...
* use POST instead of PUT for resource creation
* use PUT instead of POST for resource special actions
2019-04-08 08:54:45 +02:00
Simone Gotti
595590e611
api: use httpError helper everywhere
2019-04-05 16:33:00 +02:00
Simone Gotti
fe5bc2fa31
gw repos: use config provided gitServerURL
2019-04-05 16:23:54 +02:00
Simone Gotti
ac28731d11
gateway: only admin or the same logged user can create an user token
2019-04-05 15:56:06 +02:00
Simone Gotti
200aef20b9
configstore: create token only if it doesn't exists
2019-04-05 15:06:26 +02:00
Simone Gotti
c4310be7de
Implement user token delete
2019-04-05 15:01:57 +02:00
Simone Gotti
3a41e66f5b
cmd: implement variable delete
2019-04-05 11:11:27 +02:00
Simone Gotti
2e335effe9
cmd: implement secret delete
2019-04-05 11:00:45 +02:00
Simone Gotti
42becb0505
update secret create
2019-04-05 10:32:32 +02:00
Simone Gotti
25eb200625
gw api: fix matching secret logic
2019-04-05 10:26:35 +02:00
Simone Gotti
7be0ae205f
update .agola/config.yml
2019-04-03 18:05:34 +02:00
Simone Gotti
58a77ad221
gateway: handle skipped webhook
2019-04-03 17:05:50 +02:00
Simone Gotti
84879bf591
gateway: limit requests to a predefined max size
2019-04-03 16:59:17 +02:00
Simone Gotti
0a32b78359
gitsources: implement gitlab hooks
...
* Generalize to use repopath instead of (owner, reponame)
2019-04-03 15:01:21 +02:00
Simone Gotti
4cf72748b4
gitsources: update api
...
* Generalize to use repopath instead of (owner, reponame)
2019-04-03 15:01:21 +02:00
Simone Gotti
a2cd92c70b
webhook: use provided userID
2019-04-03 15:11:50 +02:00
Simone Gotti
2548598bb8
localrun: use userid and pass it to webhook
2019-04-03 14:59:24 +02:00
Simone Gotti
2d68be8a30
gw api: fix project and remotesource to return the right response
2019-04-03 15:08:33 +02:00
Simone Gotti
bb21520133
gw api client: add GetCurrentUser
2019-04-03 15:06:02 +02:00
Simone Gotti
9d559d49d7
webhook: correctly handle git host and port
...
* split host and port from the git url
* also set the port in the generated ssh config
2019-04-03 12:27:09 +02:00
Simone Gotti
3d39553189
project create: user project path
...
Use project path for project creation and get the project clone url directly
from the remote source
2019-04-03 11:07:54 +02:00
Simone Gotti
6736f5aebc
gw api: require at least one group on runs query api
2019-04-03 08:52:29 +02:00
Simone Gotti
e2bc2043d0
update Dockerfile
...
add default config for local testing
2019-04-03 08:52:00 +02:00
Simone Gotti
7bf2c106e4
serve: set default value for --config to ./config.yml
2019-04-03 08:53:16 +02:00
Simone Gotti
f0e7ce4a96
cmd: implement project/projectgroup variable create
2019-04-02 11:07:39 +02:00
Simone Gotti
99a6c12f98
project delete: use project ref
2019-04-02 11:06:45 +02:00
Simone Gotti
ed502276ba
update configstore for previous wal changes
2019-04-03 18:11:31 +02:00
Simone Gotti
fc891409ca
update wal and readdb
2019-04-01 12:54:43 +02:00
Simone Gotti
eb8cd9cc52
gateway: add user registration
...
Adds two handler:
* Authorize handler used to ask remote source authorization
* Register handler used to do user and related linked account creation
2019-03-29 17:53:15 +01:00
Simone Gotti
704da47afc
configstore: createuser also create linked account when requested
...
Useful to future user registration to create user and linked account in a unique
atomic call.
2019-03-29 17:50:51 +01:00
Simone Gotti
3e3a7a0ea5
gateway: move user la and login validation to command layer
2019-03-29 14:33:41 +01:00
Simone Gotti
75b5b65da3
runservice: check that readdb is initialized
2019-03-29 12:20:54 +01:00
Simone Gotti
e46766829c
runservice: rework store and readdb logic
...
* Remove all the small index files on the lts
* Keep on s3 only a full index of all runs containing the runid, grouppath and phase
million of runs can take only some hundred of megabytes
* Periodically create a new dump of the index
2019-03-29 12:15:48 +01:00
Simone Gotti
3c5eb71ba8
runservice: make and check that group paths are absolute
2019-03-29 12:09:32 +01:00
Simone Gotti
48ab496beb
*: add api to query last run per group
2019-03-29 12:00:18 +01:00
Simone Gotti
21447fc59d
etcd: allow specifying a revision for a get
2019-03-29 11:37:22 +01:00
Simone Gotti
1e41e3ad33
gateway/api: report if the run can be restarted
2019-03-29 09:22:34 +01:00
Simone Gotti
c9089c3ccc
runservice: allow restart run only if possible
2019-03-29 09:09:57 +01:00
Simone Gotti
1657a35a6f
runservice: refactor fetch phase check
...
Use dedicated functions
2019-03-29 09:00:19 +01:00
Simone Gotti
7fa14c1b7a
util/path: add PathList function
2019-03-28 16:02:11 +01:00
Simone Gotti
3e9fcf9d7b
wal: add function to return current changes revision
2019-03-28 16:01:33 +01:00
Simone Gotti
975bc810b3
wal: return error when changes isn't initialized
2019-03-28 16:01:08 +01:00
Simone Gotti
65c425b22b
wal: report when wal is ready
...
in this way the wal instance will be used only after it's ready (initialized
etcd when needed)
2019-03-28 15:46:24 +01:00
Simone Gotti
d13fe43e19
wal: fix file close
...
don't defer in a loop
2019-03-28 15:44:14 +01:00
Simone Gotti
805099b693
wal: don't use path.Base to get changegroup value
...
If a changegroup contains a slash then it'll be cut the the last string after
the slash
2019-03-28 15:42:45 +01:00