Commit Graph

665 Commits

Author SHA1 Message Date
Simone Gotti
996e2a54ab
Merge pull request #206 from sgotti/github_use_provided_api_url
github: use the provided api url
2020-02-11 15:59:02 +01:00
Simone Gotti
59463944db github: use the provided api url
we were always setting the public github url in the github client instead of the
provided api url.
2020-02-11 09:10:09 +01:00
Simone Gotti
3b09cfd6a6
Merge pull request #203 from 6543-forks/vendor-gitea-sdk
vendor: update gitea sdk
2020-02-06 22:31:59 +01:00
6543
f92619d423
vendor: update gitea sdk 2020-02-06 18:56:46 +01:00
Simone Gotti
0b25a3841a
Merge pull request #202 from sgotti/makefile_remove_test_target
makefile: remove test target
2020-01-29 09:19:48 +01:00
Simone Gotti
ec53a63053
Merge pull request #198 from camandel/cmd_disable_vars_pr
cmd: project option to disable passing variables to PR from forked repo
2020-01-28 15:08:58 +01:00
Simone Gotti
c775918747 makefile: remove test target
There's no test script. Full tests can be easily executed inside a local
running agola instance using an agola "direct run".
Single package tests can be executed using a manual go test invocation based on
the kind of package we want to test (since some of them require a running etcd,
a running docker, a running k8s cluster, a gitea binary etc...)
2020-01-28 14:59:22 +01:00
Carlo Mandelli
182eb14b20 cmd: project option to disable passing variables to PR from forked repo 2020-01-28 09:02:37 +01:00
Simone Gotti
c6d7936cc8
Merge pull request #201 from sgotti/doc_add_supported_go_versions_policy
doc: document supported go versions.
2020-01-27 10:14:30 +01:00
Simone Gotti
15bd82b143 doc: document supported go versions.
We usually test and support the latest two major versions of Go like in the [Go
release policy](https://golang.org/doc/devel/release.html#policy).
2020-01-24 13:54:47 +01:00
Simone Gotti
ef8235d78d
Merge pull request #195 from MitaliBo/master
Update github.com/opencontainers/runc
2020-01-20 11:58:08 +01:00
Simone Gotti
114b5cb8d8
Merge pull request #196 from camandel/cmd_fix_token_help
cmd: fix token create help message
2020-01-17 09:20:12 +01:00
Simone Gotti
abb44b483b
Merge pull request #197 from camandel/tests_unique_name_cs3
tests: add unique name for logs of the third ConfigStore instance
2020-01-17 09:19:40 +01:00
Carlo Mandelli
d049782e29 tests: add unique name for logs of the third ConfigStore instance 2020-01-16 13:54:13 +01:00
Carlo Mandelli
806c516ac7 cmd: fix token create help message 2020-01-16 11:30:37 +01:00
MitaliBo
5fa977d05a
Update go.mod 2020-01-15 11:57:45 -08:00
Simone Gotti
fd9a69bbb2
Merge pull request #194 from sgotti/tests_improve_services_logging
tests: improve services logging
2020-01-15 15:01:19 +01:00
Simone Gotti
2de91549a3 tests: improve services logging
During tests provide a zaptest Logger so all services output will be redirected
to golang testing logger.

When multiple services of the same type are provided add a unique name field to
distinguish them.
2020-01-15 12:30:34 +01:00
Simone Gotti
180d8dd819
Merge pull request #193 from sgotti/executor_docker_toolbox_volume
docker: create a toolbox volume for every pod
2020-01-13 09:57:55 +01:00
Simone Gotti
ecf355721f docker: create a toolbox volume for every pod
Instead of doing the current hack of copying the agola toolbox inside the host
tmp dir (always done but only needed when running the executor inside a docker
container) that has different issues (like tmp file removal done by
tmpwatch/systemd-tmpfiles), use a solution similar to the k8s driver: for every
pod create a volume containing the agola-toolbox and remove it at pod removal.

We could also use a single "global" volume but we should handle cases like
volume removal (i.e. a docker volume prune command). So for now just create a
dedicated per pod volume.
2020-01-10 12:25:12 +01:00
Simone Gotti
a438a065a1
Merge pull request #189 from sgotti/datamanager_dont_wait_etcd_down
datamanager tests: don't wait for etcd down
2019-12-02 15:06:16 +01:00
Simone Gotti
b8d12d7962
Merge pull request #188 from camandel/add_taskid_run_list
cmd: add TaskID to run list output
2019-12-02 13:41:06 +01:00
Simone Gotti
eafa4d1381 datamanager tests: don't wait for etcd down
It is causing some timeout errors since there can be another instance from
another test run in parallel started on the same port.
2019-12-02 13:32:57 +01:00
Carlo Mandelli
8bbdc0a36e cmd: add TaskID to run list output 2019-12-02 08:51:11 +01:00
Simone Gotti
2232e2895e
Merge pull request #185 from camandel/add_run_list_info
cmd: add details to run list
2019-11-29 16:21:45 +01:00
Carlo Mandelli
a15a769610 cmd: add details to run list 2019-11-29 14:52:04 +01:00
Simone Gotti
05984f0f62
Merge pull request #187 from camandel/cli_log_management
cmd: add log get and delete subcommands
2019-11-29 10:41:31 +01:00
Carlo Mandelli
8aade1859b cmd: add log get and delete subcommands 2019-11-28 13:39:00 +01:00
Simone Gotti
cc70a55a59
Merge pull request #186 from camandel/fix_tests_api_delete
gateway: fix api used by GetRunTask
2019-11-27 08:52:37 +01:00
Carlo Mandelli
4464c9a6f2 gateway: fix api used by GetRunTask 2019-11-25 14:42:34 +01:00
Simone Gotti
c55f1f2e16
Merge pull request #184 from camandel/fix_change_visibility
cmd: fix project visibility switch
2019-11-21 15:22:05 +01:00
Carlo Mandelli
42e302df50 cmd: fix project visibility switch 2019-11-21 14:44:50 +01:00
Simone Gotti
074f346c78
Merge pull request #182 from sgotti/release_v0.4.0
Release v0.4.0
2019-11-19 10:40:30 +01:00
Simone Gotti
e077ac8ba9 Release v0.4.0 2019-11-19 09:52:33 +01:00
Simone Gotti
f5998a78d4
Merge pull request #157 from camandel/api_delete_logs
gateway/runservice: add api to delete step logs
2019-11-18 13:58:25 +01:00
Carlo Mandelli
3e47bc601a gateway/runservice: add api to delete step logs 2019-11-18 10:34:56 +01:00
Simone Gotti
3ff18510a6
Merge pull request #181 from sgotti/runservice_logshandler_improve_errors_02
runservice: improve errors in logsHandler
2019-11-15 16:46:40 +01:00
Simone Gotti
7e8f7155d7 runservice: improve errors in logsHandler
return errNotExist in readTaskLogs when the run,task or step doesn't exist.
2019-11-15 15:50:58 +01:00
Simone Gotti
5fe3ceb60c
Merge pull request #180 from sgotti/api_write_flush_logs_headers
*: write and flush header on log handlers
2019-11-15 10:18:28 +01:00
Simone Gotti
f7d0950ca1 *: write and flush header on log handlers
Explicitly write and flush the headers in the various services LogHandlers.

Currently the 200 response and the other headers will be automatically written
by the golang http implementation only when we send something in the body. But if
there's nothing to send (no logs yet written) the client will never receive the
headers and cannot know if the request was successful.
2019-11-14 10:52:45 +01:00
Simone Gotti
32a08ec5c8
Merge pull request #179 from sgotti/runservice_logshandler_improve_errors
runservice: improve errors in logsHandler
2019-11-14 09:56:24 +01:00
Simone Gotti
eeacc296d0
Merge pull request #177 from sgotti/runservice_use_trylock_on_fetching
runservice: use etcd mutex TryLock on fetching
2019-11-13 18:02:34 +01:00
Simone Gotti
66e182a55d runservice: improve errors in logsHandler
* return errNotExist in readTaskLogs when the executor task doesn't exist: so
the client will receive a 404 instead of a 500 (since a generic error will be
mapped to a 500).
* Wrap the errNotExist returned by readTaskLogs with a new ErrNotExits reporting
"log doesn't exist"
2019-11-13 15:50:20 +01:00
Simone Gotti
07cde065c8 runservice: use etcd mutex TryLock on fetching
When fetching avoid concurrent fetches from multiple runservices using an etcd
mutex TryLock.
2019-11-13 11:53:54 +01:00
Simone Gotti
9fd4b662a8
Merge pull request #175 from camandel/api_logarchived
gateway: add api to get log status
2019-11-13 11:45:31 +01:00
Simone Gotti
4497e196ba
Merge pull request #176 from sgotti/use_etcd_mutex_trylock
*: use etcd mutex TryLock
2019-11-13 11:32:29 +01:00
Carlo Mandelli
8ed813e722 gateway: add api to get log status 2019-11-13 10:01:51 +01:00
Simone Gotti
5ab9f7c970 *: use etcd mutex TryLock
etcd PR 11104 (https://github.com/etcd-io/etcd/pull/11104) implemented mutex
TryLock. Since it's only available in etcd master just copy relevant code and
add a TODO to remove it when updating the etcd client to a version implementing
TryLock.

Use TryLock everywhere where it'll be useful.
2019-11-12 22:27:17 +01:00
Simone Gotti
24a9563872
Merge pull request #167 from sgotti/datamanager_writedatasnapshot_skip_already_checkpointed_wals
datamanager: skip already applied wals in writeDataSnapshot
2019-11-12 14:57:42 +01:00
Simone Gotti
2076b171eb
Merge pull request #172 from sgotti/readdb_improve_handleevents_goroutines_exit
readdb: improve HandleEvents goroutine exiting
2019-11-12 14:57:22 +01:00