Commit Graph

576 Commits

Author SHA1 Message Date
Simone Gotti
2d6fd96da0
Merge pull request #120 from camandel/clone_options
config: add clone options
2019-09-25 10:59:25 +02:00
Carlo Mandelli
cd8175c156 add clone options 2019-09-25 09:29:39 +02:00
Simone Gotti
0172a0aa7f
Merge pull request #119 from sgotti/gateway_api_getsecrets_implement_removeoverridden
gateway: api implement get secrets removeoverridden
2019-09-20 18:46:45 +02:00
Simone Gotti
f5c0e91f39 gateway: api implement get secrets removeoverridden
Implement missing removeoverridden option for get secrets.
2019-09-20 15:39:21 +02:00
Simone Gotti
c3ca892f00
Merge pull request #90 from camandel/ci_skip
skip run with special commit
2019-09-20 14:33:27 +02:00
Carlo Mandelli
436aa8f1de skip run with special commit 2019-09-18 11:53:22 +02:00
Simone Gotti
eddb62b6e2
Merge pull request #117 from sgotti/executor_add_missing_mutex_unlock
executor: add missing mutex unlock
2019-09-18 11:14:26 +02:00
Simone Gotti
714da3ffe3 executor: add missing mutex unlock
Add missing mutex unlock that will cause deadlocks.
2019-09-18 09:49:38 +02:00
Simone Gotti
9f1a3e405d
Merge pull request #116 from sgotti/gateway_api_run_return_more_step_data
gateway: run api return more step data
2019-09-17 22:59:36 +02:00
Simone Gotti
9cfb21d365 gateway: run api return more step data
For every step return the step type.

For a run step also return the shell and exit status.
2019-09-17 17:43:48 +02:00
Simone Gotti
99d137d9eb
Merge pull request #115 from sgotti/runservice_save_run_exitstatus
runservice: save step exitstatus in run.
2019-09-17 16:47:51 +02:00
Simone Gotti
39829f1ec4 runservice: save step exitstatus in run.
For every step save also the command exit status.
2019-09-17 14:35:37 +02:00
Simone Gotti
25c5002782
Merge pull request #113 from sgotti/runservice_dont_save_executor_data_etcd
runservice: don't save executor task data in etcd
2019-09-17 14:35:01 +02:00
Simone Gotti
12b02143b2 runservice: don't save executor task data in etcd
Reorganize ExecutorTask to better distinguish between the task Spec and
the Status.

Split the task Spec in a sub part called ExecutorTaskSpecData that contains
tasks data that don't have to be saved in etcd because it contains data that can
be very big and can be generated starting from the run and the runconfig.
2019-09-17 12:03:43 +02:00
Simone Gotti
947be9a742
Merge pull request #109 from sgotti/runservice_workspace_cleanup
runservice: add run workspace cleaner
2019-09-17 11:04:51 +02:00
Simone Gotti
7d375e4c4e runservice: add run workspace cleaner
Removes old workspace files (defaults to 7 days)
2019-09-17 09:40:23 +02:00
Simone Gotti
ab06a2283c
Merge pull request #112 from sgotti/executor_set_user_every_step
executor: set the container exec user in every step
2019-09-17 09:40:00 +02:00
Simone Gotti
6ee76274d7 executor: set the container exec user in every step 2019-09-12 10:55:07 +02:00
Simone Gotti
bbd287845f
Merge pull request #111 from sgotti/runconfig_set_default_shell
runconfig: set task default shell
2019-09-12 10:53:08 +02:00
Simone Gotti
51e9a32db7 runconfig: set task default shell
Currently, if no shell is defined in the task and in the step, the executor will
use an hardcoded default shell.

This will cause changed run behavior if we add an option to globally set the
agola default shell.

To avoid this set the task shell to the default shell inside the runconfig if
it's empty so future executions will always use this value.
2019-09-11 18:51:18 +02:00
Simone Gotti
512fdb361a
Merge pull request #110 from sgotti/runservice_remove_run_step_user
runservice: remove run step user
2019-09-11 16:24:59 +02:00
Simone Gotti
6d7410cfce runservice: remove run step user
Defining an option to override the user for a run step is too much fine grained
and, for consistency, will require to do the same also for the other steps
(clone, *workspace etc...).

Remove it since it's probably enough to define it at the task level.
2019-09-11 15:02:08 +02:00
Simone Gotti
d8212eddb0
Merge pull request #105 from sgotti/update_go_1.13
*: update to go 1.13
2019-09-10 22:58:25 +02:00
Simone Gotti
6dd9a12e87 *: update to go 1.13
* agola run: Remove go 1.11 and use go 1.12 and go 1.13 with debian buster image.

* Dockerfile: Use go 1.13 debian buster image.
2019-09-10 14:08:55 +02:00
Simone Gotti
33c860e78c
Merge pull request #103 from sgotti/gitserver_dont_write_on_error
gitserver: don't return http response/error when calling external git process
2019-09-09 16:43:40 +02:00
Simone Gotti
30192d5f0f
Merge pull request #102 from sgotti/fix_path_list_ending_slash
util: Fix PathList output when path ends with slashes
2019-09-09 16:12:08 +02:00
Simone Gotti
0e61aa4e39 gitserver: don't return http response/error when calling external git process
On a git process error don't write the error message to the response body since
it'll break the git protocol and don't try to write the status header (since it's not
possible as it was automatically written by the go http server before writing
the body).
2019-09-09 15:46:32 +02:00
Simone Gotti
9f580863da util: Fix PathList output when path ends with slashes
Fix PathList when a path ends with one or more slashes and add related tests.
2019-09-09 14:49:00 +02:00
Simone Gotti
6ca985c641
Merge pull request #100 from sgotti/update_dep_agola-web_v0.2.0
agola run: update to agola-web v0.2.0
2019-09-06 10:32:40 +02:00
Simone Gotti
ed071efbda agola run: update to agola-web v0.2.0 2019-09-06 09:48:45 +02:00
Simone Gotti
0f78c81400
Merge pull request #99 from sgotti/types_global_when
types: use a global When type
2019-09-05 11:19:26 +02:00
Simone Gotti
70eeddb719 types: use a global When type
Currently we are using different `When` types for every service and convert
between them. This is a good approach if we want to keep isolated all the
services (like if we were using different repos for every service instead of the
current monorepo).

But currently, since When is identical between all the services, simplify this by
using a common When type.
2019-09-05 09:37:27 +02:00
Simone Gotti
60df886ad9
Merge pull request #95 from sgotti/update_dep_agola-web_v0.1.2
agola run: update to agola-web v0.1.2
2019-09-03 15:33:40 +02:00
Simone Gotti
4e8399391e
Merge pull request #96 from sgotti/readme_update_screenshots
README.md: update screenshots
2019-09-03 15:14:49 +02:00
Simone Gotti
b3cac61703 README.md: update screenshots 2019-09-03 15:12:49 +02:00
Simone Gotti
e5e7c63cda agola run: update to agola-web v0.1.2 2019-09-03 12:47:01 +02:00
Simone Gotti
0dbca095d1
Merge pull request #94 from sgotti/agolarun_test_build_images
agola run: build images and push them when on a v.* tag
2019-09-03 11:21:50 +02:00
Simone Gotti
6dc7307dfd agola run: build images and push them when on a v.* tag 2019-09-02 10:28:23 +02:00
Simone Gotti
c54d2de4d1
Merge pull request #93 from sgotti/runservice_fix_gettaskstorun
runservice: fix get tasks to run
2019-08-30 16:38:47 +02:00
Simone Gotti
bfc42ef60e runservice: fix get tasks to run
Currently `advanceRunTasks` isn't deterministic and doesn't calculate the final
state in one call. So could happen that `getTasksToRun` will select a task to be
executed since its parent are finished (marked as skipped in advanceRunTasks)
but the task isn't marked to be skipped (because advanceRunTasks has calculated
this task before its parents).

Currently fix this doing the same task selection logic done in `advanceRunTasks`
and add a TODO to make `advanceRunTasks` be deterministic by processing tasks by
their level (from level 0).
2019-08-30 15:59:25 +02:00
Simone Gotti
9ac03ec235
Merge pull request #92 from sgotti/tests_wait_function
tests: add wait function in place of sleep
2019-08-30 14:51:12 +02:00
Simone Gotti
6d1f159500 tests: add wait function in place of sleep
Add a function to wait for a specific condition instead of sleeping for a fixed
number of seconds.
2019-08-30 12:50:49 +02:00
Simone Gotti
409033c9a8
Merge pull request #91 from sgotti/cmd_fix_variable_create_update
cmd: fix variable create/update
2019-08-29 18:06:28 +02:00
Simone Gotti
53dad95cd0 cmd: fix variable create/update
In c1ff28ef9f we exported various types. Unfortunately the types used by cmd
variable create/update are the wrong types and marshalling fails. Fix it using
the right type. In future this internal types should be exported.
2019-08-29 16:38:19 +02:00
Simone Gotti
afcd05244f
Merge pull request #89 from camandel/update_doc_devel
update example in devel doc
2019-08-20 09:55:37 +02:00
Carlo Mandelli
985c17f66b update example in devel doc 2019-08-19 10:16:54 +02:00
Simone Gotti
8a05513db6
Merge pull request #88 from sgotti/fix_check_task_and_parent_common_deps
config: fix check on task and parents with common deps
2019-08-12 23:34:37 +02:00
Simone Gotti
79c74e9423 config: fix check on task and parents with common deps 2019-08-12 23:11:19 +02:00
Simone Gotti
b113018283
Merge pull request #86 from sgotti/user_direct_run_variables
userdirectrun: add options to define variables
2019-08-07 11:22:12 +02:00
Simone Gotti
488007fcf3
Merge pull request #85 from sgotti/update_dockerfile
Dockerfile: update to debian buster
2019-08-07 11:21:21 +02:00