Commit Graph

37 Commits

Author SHA1 Message Date
Tom Whiston
8aeaf7507c Adds check for tmp dir and create if missing
also test for function
2018-02-15 21:29:16 +01:00
Matej Kramny
56f22f9673
gofmt 2017-08-19 09:45:01 +01:00
Viktor Anderling
8bc1b7f2d2 Allow concurrency for tasks that does not collide
Two different concurrency modes are implemented, and is enabled by
setting "concurrency_mode" in the config file to either "project" or "node".

When "project" concurrency is enabled, tasks will run in parallel if and
only if they do not share the same project id, with no regard to the
nodes/hosts that are affected.

When "node" concurrency is enabled, a task will run in parallel if and
only if the hosts affected by tasks already running does not intersect
with the hosts that would be affected by the task in question.

If "concurrency_mode" is not specified, no task will start before the
previous one has finished.

The collision check is based on the output from the "--list-hosts"
argument to ansible, which uses the hosts specified in the inventory.
Thus, if two different hostnames are used that points to the same node,
such as "127.0.0.1" and "localhost", there will be no collision and two
tasks may connect to the same node concurrently. If this behaviour is
not desired, one should make sure to not include aliases for their hosts
in their inventories when enabling concurrency mode.

To restrict the amount of parallel tasks that runs at the same time, one
can add the "max_parallel_tasks" to the config file. This defaults to a
humble 10 if not specified.
2017-05-29 17:27:56 +02:00
Anton Markelov
bff8297145 add option for per-project telegram alert to different chats 2017-05-03 14:27:58 +10:00
Matej Kramny
5bcb34ef62 improvements for #287 2017-04-18 15:36:09 +01:00
Matej Kramny
96140045ae improve codebase after #275 2017-04-18 15:21:20 +01:00
Matej Kramny
4b6a518b73 fixes resulting from master merge 2017-04-18 14:58:48 +01:00
Matej Kramny
db4948cb89 Merge branch 'master' into develop
# Conflicts:
#	Dockerfile
#	api/login.go
#	api/projects/environment.go
#	api/projects/project.go
#	api/projects/templates.go
#	api/tasks/runner.go
#	api/users.go
#	db/versionHistory.go
#	util/bindata.go
2017-04-18 14:48:31 +01:00
Matej Kramny
9d65c7e81a Merge pull request #304 from z010107/master
Add JSON validation in environment model
2017-04-18 14:36:21 +01:00
Anton Markelov
90d7708647 add basic telegram alerting 2017-03-22 17:22:09 +10:00
Anton Markelov
5f956c6013 add more verbosity about tasks to the Events description 2017-03-21 12:40:00 +10:00
Andrey Krasilnikov
3a60b4c166 Add extra validation for environment JSON 2017-03-18 12:57:41 +03:00
Anton Markelov
8ada2d0b95 Merge branch 'master' into email-alerts 2017-03-10 16:28:52 +10:00
Anton Markelov
0993a002ea add alert setting for project 2017-03-10 16:25:42 +10:00
Anton Markelov
4bbedac795 add alert setting for user and (WIP) project 2017-03-10 10:12:55 +10:00
Matej Kramny
6c633fdbf2 Merge branch 'master' into develop
# Conflicts:
#	api/auth.go
#	cli/main.go
#	db/Event.go
2017-03-06 11:34:10 -08:00
Douglas Temple
09dfe7463e Added SSH certificate support 2017-02-23 11:21:18 +00:00
Matej Kramny
2a2b7e8aed merge models -> db 2017-02-22 21:12:16 -08:00
Anton Markelov
31599e01de [WIP] add alerts for failed deploy 2017-02-22 19:06:03 +10:00
Anton Markelov
4cf992c3e9 Add task template name to log too 2017-02-11 21:44:15 +10:00
Pavel Kiselev
69d1c4c9b7
Copy-paste fixes 2017-02-08 19:36:44 +07:00
Pavel Kiselev
b7b8db7cfd
It's method, not a function 2017-02-08 19:29:59 +07:00
Pavel Kiselev
beb029dc3d
Use temp path for update repository function 2017-02-08 19:28:07 +07:00
Pavel Kiselev
e0897e87c8
Pass OS environment variables to Ansible 2017-02-08 19:26:15 +07:00
Matej Kramny
f27445e0ae Merge pull request #157 from tokuhirom/galaxy
Added Ansible Galaxy support. Close #150
2016-12-21 17:58:00 +09:00
Matej Kramny
c3fa2b5018 improve runner code 2016-11-21 17:07:00 -08:00
Matej Kramny
8ff4edb4b3 Merge remote-tracking branch 'refs/remotes/knsr/repo-tags'
Conflicts:
	api/tasks/runner.go
2016-11-21 17:01:57 -08:00
KNSR
b24683a6df correct import 2016-10-14 11:30:39 +02:00
KNSR
d40f1d7f09 add support for git repo tags or branches 2016-10-14 10:57:49 +02:00
Alexander
578d36f2ee add missing space
add missing space
2016-08-27 16:41:41 +08:00
Alexander
c818d8bdf2 Update runner.go
add --recursive to support download playbooks which uses git submodule
2016-08-25 21:24:45 +08:00
Matej Kramny
47b1fcebf9 Merge pull request #156 from tokuhirom/dry_run
Added dry_run button. close #152
2016-07-21 15:26:18 +01:00
Tokuhiro Matsuno
b671531733 Added Ansible Galaxy support. Close #150 2016-06-30 11:34:35 -04:00
Tokuhiro Matsuno
129af0fa17 Added dry_run button. close #152 2016-06-30 10:57:45 -04:00
Tokuhiro Matsuno
df9ef6e3d1 Show repository url in log 2016-06-30 22:22:14 +09:00
Matej Kramny
f16b3a57e8 Fix SQL bugs
- Fixes #117
- Fixes #116
2016-06-02 19:26:51 +01:00
Matej Kramny
c58d9ac34f refactoring 2016-05-24 10:55:48 +01:00