takeltau 0.43.19 → 0.43.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/takeltau/default.yml +1 -0
- data/lib/takeltau/ship/cli.rb +6 -0
- data/lib/takeltau/ship/container/lib.rb +1 -1
- data/lib/takeltau/ship/container/login.rb +1 -1
- data/lib/takeltau/ship/container/podman.rb +1 -1
- data/lib/takeltau/ship/info/lib.rb +8 -0
- data/lib/takeltau/ship/project/cli.rb +16 -3
- data/lib/takeltau/ship/project/logs.rb +27 -0
- data/lib/takeltau/ship/project/start.rb +1 -5
- data/lib/takeltau/version +1 -1
- data/lib/takeltau.rb +1 -0
- metadata +2 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 832353b2ae214df0ae1a9e9ecfe3ea6a7f1f7999dbddf3733f07603833942551
|
4
|
+
data.tar.gz: b3ecded0a2496dca08ad07c8ca0966400a3fdbf004b69030ee5473cda1992072
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8919bbdb435d07d30fd983876e2b64aa86917c4ca02a27a8dd0a7d74a7430e1afcfe1f4aece360e91bf380dc6d974954240125071cda021e6e83afe7cfed529a
|
7
|
+
data.tar.gz: b24bcc03bdd925973d9f6f77de6e0d02f50e25f1e9706e8e5b826737c212ae57609dad2e7768a48e4d18032f1b719da907821863e5867eacfb4a785543165358
|
data/lib/takeltau/default.yml
CHANGED
@@ -64,6 +64,7 @@ cmd_ship_docker_check: 'docker --version'
|
|
64
64
|
cmd_ship_project_start_docker_run_nonprivileged: '%{ship_docker} run --rm --interactive %{image} %{command}'
|
65
65
|
cmd_ship_project_start_docker_run_privileged: '%{ship_docker} run --privileged --rm --detach --name %{ship_hostname} --hostname %{ship_hostname} %{ship_env} %{ports} --volume ./%{ship_data_dir}:/home/podman/takelship %{image} %{command}'
|
66
66
|
cmd_ship_project_start_docker_stop: '%{ship_docker} stop %{ship_hostname}'
|
67
|
+
cmd_ship_project_follow_logs: 'pod --workdir /home/podman/takelship/compose/projects/%{project} podman-compose logs --follow'
|
67
68
|
docker_container_check_matrjoschka: 'true'
|
68
69
|
docker_debug: 'ansible/roles/takel_takelage/files/takelscripts'
|
69
70
|
docker_entrypoint_extra: ''
|
data/lib/takeltau/ship/cli.rb
CHANGED
@@ -38,6 +38,12 @@ module Takeltau
|
|
38
38
|
Takeltau::ShipContainer.new.list
|
39
39
|
end
|
40
40
|
|
41
|
+
desc 'logs [PROJECT]', 'Alias for tau ship project logs'
|
42
|
+
# ship logs: {Takeltau::ShipProject#logs}
|
43
|
+
def logs(project = 'default')
|
44
|
+
Takeltau::ShipProject.new.logs(project)
|
45
|
+
end
|
46
|
+
|
41
47
|
desc 'ls', 'Alias for tau ship container list'
|
42
48
|
# ship list: {Takeltau::ShipContainer#list}
|
43
49
|
def ls
|
@@ -40,7 +40,7 @@ module ShipContainerLib
|
|
40
40
|
# rubocop:enable Metrics/AbcSize
|
41
41
|
|
42
42
|
# Run a docker command in a takelship container
|
43
|
-
def
|
43
|
+
def _ship_container_lib_docker_exec(command, tty = '--tty')
|
44
44
|
cmd_docker_run_command = format(
|
45
45
|
config.active['cmd_ship_container_docker'],
|
46
46
|
ship_docker: config.active['cmd_ship_docker'],
|
@@ -7,6 +7,6 @@ module ShipContainerLogin
|
|
7
7
|
return false unless ship_container_check_existing
|
8
8
|
|
9
9
|
command_after_login = config.active['cmd_ship_container_login']
|
10
|
-
|
10
|
+
_ship_container_lib_docker_exec command_after_login, '--tty'
|
11
11
|
end
|
12
12
|
end
|
@@ -33,6 +33,14 @@ module ShipInfoLib
|
|
33
33
|
_parse_yaml _ship_container_lib_docker_nonprivileged(command) || {}
|
34
34
|
end
|
35
35
|
|
36
|
+
def _ship_info_lib_get_project(project, takelship)
|
37
|
+
return '' unless takelship.key? 'default_project'
|
38
|
+
|
39
|
+
project = config.active['ship_default_project'] if project == 'default'
|
40
|
+
project = takelship['default_project'] if project == 'default'
|
41
|
+
project
|
42
|
+
end
|
43
|
+
|
36
44
|
def _ship_info_lib_valid_project?(takelship, project)
|
37
45
|
valid_project = false
|
38
46
|
takelship_projects = takelship['projects']
|
@@ -13,6 +13,7 @@ module Takeltau
|
|
13
13
|
include ShipContainerStop
|
14
14
|
include ShipInfoLib
|
15
15
|
include ShipProjectList
|
16
|
+
include ShipProjectLogs
|
16
17
|
include ShipProjectStart
|
17
18
|
|
18
19
|
#
|
@@ -20,19 +21,31 @@ module Takeltau
|
|
20
21
|
#
|
21
22
|
desc 'list', 'List projects'
|
22
23
|
long_desc <<-LONGDESC.gsub("\n", "\x5")
|
23
|
-
|
24
|
+
List projects
|
24
25
|
LONGDESC
|
25
26
|
# List projects.
|
26
27
|
def list
|
27
28
|
ship_project_list
|
28
29
|
end
|
29
30
|
|
31
|
+
#
|
32
|
+
# ship container logs
|
33
|
+
#
|
34
|
+
desc 'logs [PROJECT]', 'Follow logs of project [PROJECT]'
|
35
|
+
long_desc <<-LONGDESC.gsub("\n", "\x5")
|
36
|
+
Follow logs of project [PROJECT]
|
37
|
+
LONGDESC
|
38
|
+
# logs projects.
|
39
|
+
def logs(project = 'default')
|
40
|
+
ship_project_logs project
|
41
|
+
end
|
42
|
+
|
30
43
|
#
|
31
44
|
# ship container start
|
32
45
|
#
|
33
46
|
desc 'start [PROJECT]', 'Start project [PROJECT] in a takelship container'
|
34
47
|
long_desc <<-LONGDESC.gsub("\n", "\x5")
|
35
|
-
|
48
|
+
Start project [PROJECT] in a takelship container
|
36
49
|
LONGDESC
|
37
50
|
# Run command in docker container.
|
38
51
|
def start(project = 'default')
|
@@ -44,7 +57,7 @@ module Takeltau
|
|
44
57
|
#
|
45
58
|
desc 'stop', 'Stop a takelship container'
|
46
59
|
long_desc <<-LONGDESC.gsub("\n", "\x5")
|
47
|
-
|
60
|
+
Stop a takelship container
|
48
61
|
LONGDESC
|
49
62
|
# Stop a takelship container.
|
50
63
|
def stop
|
@@ -0,0 +1,27 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# tau ship project logs
|
4
|
+
module ShipProjectLogs
|
5
|
+
# Start a takelship
|
6
|
+
def ship_project_logs(project)
|
7
|
+
return unless ship_container_check_existing
|
8
|
+
|
9
|
+
takelship = _ship_info_lib_get_takelshipinfo
|
10
|
+
project = _ship_info_lib_get_project(project, takelship)
|
11
|
+
|
12
|
+
return false unless _ship_info_lib_valid_project? takelship, project
|
13
|
+
|
14
|
+
log.debug "Following logs of takelship project \"#{project}\""
|
15
|
+
_ship_project_logs_follow_logs project
|
16
|
+
end
|
17
|
+
|
18
|
+
private
|
19
|
+
|
20
|
+
def _ship_project_logs_follow_logs(project)
|
21
|
+
cmd_follow_logs = format(
|
22
|
+
config.active['cmd_ship_project_follow_logs'],
|
23
|
+
project: project
|
24
|
+
)
|
25
|
+
_ship_container_lib_docker_exec cmd_follow_logs
|
26
|
+
end
|
27
|
+
end
|
@@ -9,11 +9,7 @@ module ShipProjectStart
|
|
9
9
|
return false if ship_container_check_existing
|
10
10
|
|
11
11
|
takelship = _ship_info_lib_get_takelshipinfo
|
12
|
-
|
13
|
-
return false unless takelship.key? 'default_project'
|
14
|
-
|
15
|
-
project = config.active['ship_default_project'] if project == 'default'
|
16
|
-
project = takelship['default_project'] if project == 'default'
|
12
|
+
project = _ship_info_lib_get_project(project, takelship)
|
17
13
|
|
18
14
|
return false unless _ship_info_lib_valid_project? takelship, project
|
19
15
|
|
data/lib/takeltau/version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.43.
|
1
|
+
0.43.21
|
data/lib/takeltau.rb
CHANGED
@@ -97,6 +97,7 @@ require_relative 'takeltau/ship/container/update'
|
|
97
97
|
require_relative 'takeltau/ship/container/cli'
|
98
98
|
require_relative 'takeltau/ship/info/cli'
|
99
99
|
require_relative 'takeltau/ship/project/list'
|
100
|
+
require_relative 'takeltau/ship/project/logs'
|
100
101
|
require_relative 'takeltau/ship/project/start'
|
101
102
|
require_relative 'takeltau/ship/project/cli'
|
102
103
|
require_relative 'takeltau/ship/cli'
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: takeltau
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.43.
|
4
|
+
version: 0.43.21
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Takelwerk
|
@@ -300,6 +300,7 @@ files:
|
|
300
300
|
- lib/takeltau/ship/info/lib.rb
|
301
301
|
- lib/takeltau/ship/project/cli.rb
|
302
302
|
- lib/takeltau/ship/project/list.rb
|
303
|
+
- lib/takeltau/ship/project/logs.rb
|
303
304
|
- lib/takeltau/ship/project/start.rb
|
304
305
|
- lib/takeltau/version
|
305
306
|
homepage: https://github.com/takelwerk/takelage-cli
|