takelage 0.13.3 → 0.14.0
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/takelage.rb +37 -14
- data/lib/takelage/bit/check/cli.rb +1 -1
- data/lib/takelage/bit/check/{module.rb → workspace.rb} +2 -2
- data/lib/takelage/bit/clipboard/cli.rb +9 -3
- data/lib/takelage/bit/clipboard/copy.rb +140 -0
- data/lib/takelage/bit/clipboard/lib.rb +153 -0
- data/lib/takelage/bit/clipboard/paste.rb +58 -0
- data/lib/takelage/bit/clipboard/pull.rb +38 -0
- data/lib/takelage/bit/clipboard/push.rb +37 -0
- data/lib/takelage/bit/scope/add.rb +55 -0
- data/lib/takelage/bit/scope/cli.rb +7 -3
- data/lib/takelage/bit/scope/inbit.rb +13 -0
- data/lib/takelage/bit/scope/list.rb +41 -0
- data/lib/takelage/bit/scope/new.rb +44 -0
- data/lib/takelage/default.yml +4 -3
- data/lib/takelage/docker/check/cli.rb +1 -1
- data/lib/takelage/docker/check/{module.rb → running.rb} +2 -2
- data/lib/takelage/docker/container/check/cli.rb +4 -2
- data/lib/takelage/docker/container/check/existing.rb +31 -0
- data/lib/takelage/docker/container/check/network.rb +31 -0
- data/lib/takelage/docker/container/check/orphaned.rb +31 -0
- data/lib/takelage/docker/container/cli.rb +35 -34
- data/lib/takelage/docker/container/command.rb +33 -0
- data/lib/takelage/docker/container/daemon.rb +13 -0
- data/lib/takelage/docker/container/lib.rb +149 -0
- data/lib/takelage/docker/container/login.rb +46 -0
- data/lib/takelage/docker/container/nuke.rb +39 -0
- data/lib/takelage/docker/container/purge.rb +30 -0
- data/lib/takelage/docker/image/check/cli.rb +4 -4
- data/lib/takelage/docker/image/check/{module.rb → outdated.rb} +4 -5
- data/lib/takelage/docker/image/cli.rb +4 -4
- data/lib/takelage/docker/image/tag/check/cli.rb +4 -3
- data/lib/takelage/docker/image/tag/check/{module.rb → local.rb} +2 -34
- data/lib/takelage/docker/image/tag/check/remote.rb +38 -0
- data/lib/takelage/docker/image/tag/latest/cli.rb +5 -3
- data/lib/takelage/docker/image/tag/latest/local.rb +20 -0
- data/lib/takelage/docker/image/tag/latest/{module.rb → remote.rb} +2 -18
- data/lib/takelage/docker/image/tag/list/cli.rb +3 -2
- data/lib/takelage/docker/image/tag/list/local.rb +19 -0
- data/lib/takelage/docker/image/tag/list/{module.rb → remote.rb} +2 -17
- data/lib/takelage/docker/image/{module.rb → update.rb} +2 -2
- data/lib/takelage/docker/socket/cli.rb +6 -2
- data/lib/takelage/docker/socket/host.rb +25 -0
- data/lib/takelage/docker/socket/lib.rb +88 -0
- data/lib/takelage/docker/socket/scheme.rb +46 -0
- data/lib/takelage/docker/socket/start.rb +34 -0
- data/lib/takelage/docker/socket/stop.rb +55 -0
- data/lib/takelage/git/check/clean.rb +46 -0
- data/lib/takelage/git/check/cli.rb +3 -1
- data/lib/takelage/git/check/master.rb +26 -0
- data/lib/takelage/git/check/workspace.rb +33 -0
- data/lib/takelage/self/cli.rb +1 -1
- data/lib/takelage/self/{module.rb → list.rb} +2 -2
- data/lib/takelage/version +1 -1
- metadata +38 -15
- data/lib/takelage/bit/clipboard/module.rb +0 -401
- data/lib/takelage/bit/scope/module.rb +0 -122
- data/lib/takelage/docker/container/check/module.rb +0 -81
- data/lib/takelage/docker/container/module.rb +0 -295
- data/lib/takelage/docker/socket/module.rb +0 -227
- data/lib/takelage/git/check/module.rb +0 -93
@@ -0,0 +1,38 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# takelage bit clipboard pull
|
4
|
+
module BitClipboardPull
|
5
|
+
# Backend method for bit pull.
|
6
|
+
def bit_clipboard_pull
|
7
|
+
log.debug 'Running bit pull'
|
8
|
+
|
9
|
+
return false unless _bit_clipboard_lib_prepare_workspace
|
10
|
+
|
11
|
+
_bit_clipboard_pull_import_all
|
12
|
+
_bit_clipboard_pull_checkout_all
|
13
|
+
_bit_clipboard_lib_handle_bitignore
|
14
|
+
_bit_clipbpard_lib_remove_bit_artifacts
|
15
|
+
_bit_clipboard_lib_sync_workspace
|
16
|
+
|
17
|
+
log.info 'Pulled bit components'
|
18
|
+
true
|
19
|
+
end
|
20
|
+
|
21
|
+
private
|
22
|
+
|
23
|
+
# bit import components into workspace
|
24
|
+
def _bit_clipboard_pull_import_all
|
25
|
+
cmd_bit_import_all =
|
26
|
+
config.active['cmd_bit_clipboard_pull_bit_import_all']
|
27
|
+
|
28
|
+
run cmd_bit_import_all
|
29
|
+
end
|
30
|
+
|
31
|
+
# checkout components and merge them
|
32
|
+
def _bit_clipboard_pull_checkout_all
|
33
|
+
cmd_bit_checkout_all =
|
34
|
+
config.active['cmd_bit_clipboard_pull_bit_checkout_all']
|
35
|
+
|
36
|
+
run cmd_bit_checkout_all
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# takelage bit clipboard push
|
4
|
+
module BitClipboardPush
|
5
|
+
# Backend method for bit push
|
6
|
+
def bit_clipboard_push
|
7
|
+
log.debug 'Running bit push'
|
8
|
+
|
9
|
+
return false unless _bit_clipboard_lib_prepare_workspace
|
10
|
+
|
11
|
+
_bit_clipboard_push_tag_all
|
12
|
+
_bit_clipboard_push_export_all
|
13
|
+
_bit_clipbpard_lib_remove_bit_artifacts
|
14
|
+
_bit_clipboard_lib_sync_workspace
|
15
|
+
|
16
|
+
log.info 'Pushed bit components'
|
17
|
+
true
|
18
|
+
end
|
19
|
+
|
20
|
+
private
|
21
|
+
|
22
|
+
# bit tag all components
|
23
|
+
def _bit_clipboard_push_tag_all
|
24
|
+
cmd_bit_tag_all =
|
25
|
+
config.active['cmd_bit_clipboard_push_bit_tag_all']
|
26
|
+
|
27
|
+
run cmd_bit_tag_all
|
28
|
+
end
|
29
|
+
|
30
|
+
# bit export components
|
31
|
+
def _bit_clipboard_push_export_all
|
32
|
+
cmd_bit_export_all =
|
33
|
+
config.active['cmd_bit_clipboard_push_bit_export_all']
|
34
|
+
|
35
|
+
run cmd_bit_export_all
|
36
|
+
end
|
37
|
+
end
|
@@ -0,0 +1,55 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# takelage bit scope add
|
4
|
+
module BitScopeAdd
|
5
|
+
# Backend method for bit scope add.
|
6
|
+
def bit_scope_add(scope)
|
7
|
+
log.debug "Adding bit remote scope \"#{scope}\" to local workspace"
|
8
|
+
|
9
|
+
return false unless configured? %w[bit_ssh bit_remote]
|
10
|
+
|
11
|
+
return false unless _bit_scope_add_workspace_ready?
|
12
|
+
|
13
|
+
return false unless _bit_scope_add_scope_exists? scope
|
14
|
+
|
15
|
+
run _bit_scope_add_cmd scope
|
16
|
+
|
17
|
+
log.info "Added bit remote scope \"#{scope}\" to local bit workspace"
|
18
|
+
end
|
19
|
+
|
20
|
+
private
|
21
|
+
|
22
|
+
# Check if workspace ready for bit scope add.
|
23
|
+
def _bit_scope_add_workspace_ready?
|
24
|
+
unless bit_check_workspace
|
25
|
+
log.error 'No bit workspace'
|
26
|
+
return false
|
27
|
+
end
|
28
|
+
|
29
|
+
return true unless git_check_workspace
|
30
|
+
|
31
|
+
return true if git_check_master
|
32
|
+
|
33
|
+
log.error 'Not on git master branch'
|
34
|
+
false
|
35
|
+
end
|
36
|
+
|
37
|
+
# Check if bit remote scope exists.
|
38
|
+
def _bit_scope_add_scope_exists?(scope)
|
39
|
+
return true if bit_scope_list.include? scope
|
40
|
+
|
41
|
+
log.error "The bit remote bit scope \"#{scope}\" doesn't exist"
|
42
|
+
false
|
43
|
+
end
|
44
|
+
|
45
|
+
# Prepare bit add scope command.
|
46
|
+
def _bit_scope_add_cmd(scope)
|
47
|
+
remote = config.active['bit_remote']
|
48
|
+
|
49
|
+
format(
|
50
|
+
config.active['cmd_bit_scope_add_scope'],
|
51
|
+
remote: remote,
|
52
|
+
scope: scope
|
53
|
+
)
|
54
|
+
end
|
55
|
+
end
|
@@ -6,9 +6,13 @@ module Takelage
|
|
6
6
|
include LoggingModule
|
7
7
|
include SystemModule
|
8
8
|
include ConfigModule
|
9
|
-
include
|
10
|
-
include
|
11
|
-
include
|
9
|
+
include GitCheckMaster
|
10
|
+
include GitCheckWorkspace
|
11
|
+
include BitCheckWorkspace
|
12
|
+
include BitScopeAdd
|
13
|
+
include BitScopeInbit
|
14
|
+
include BitScopeList
|
15
|
+
include BitScopeNew
|
12
16
|
|
13
17
|
#
|
14
18
|
# bit scope add
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# takelage bit scope inbit
|
4
|
+
module BitScopeInbit
|
5
|
+
# Backend method for bit scope inbit.
|
6
|
+
def bit_scope_inbit
|
7
|
+
log.debug 'Logging in to bit remote server'
|
8
|
+
|
9
|
+
return false unless configured? %w[bit_ssh]
|
10
|
+
|
11
|
+
run_and_exit config.active['bit_ssh']
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# takelage bit scope list
|
4
|
+
module BitScopeList
|
5
|
+
# Backend method for bit scope list.
|
6
|
+
# @return [String] list of bit scopes
|
7
|
+
def bit_scope_list
|
8
|
+
log.debug 'Listing bit remote scopes'
|
9
|
+
|
10
|
+
return false unless configured? %w[bit_ssh bit_remote]
|
11
|
+
|
12
|
+
# get ssh command from active config
|
13
|
+
cmd_bit_ssh =
|
14
|
+
config.active['bit_ssh']
|
15
|
+
|
16
|
+
root = config.active['bit_root']
|
17
|
+
|
18
|
+
cmd_bit_scope_list = _bit_scope_list_cmd root
|
19
|
+
|
20
|
+
# run ssh command with scope list command
|
21
|
+
scope_list = run "#{cmd_bit_ssh} '#{cmd_bit_scope_list}'"
|
22
|
+
|
23
|
+
# remove bit remote root directory from results
|
24
|
+
scope_list.gsub!(%r{#{root}/*}, '')
|
25
|
+
|
26
|
+
# remove /scope.json from results
|
27
|
+
scope_list.gsub!(%r{/scope.json}, '')
|
28
|
+
|
29
|
+
scope_list
|
30
|
+
end
|
31
|
+
|
32
|
+
private
|
33
|
+
|
34
|
+
# Prepare bit scope list command.
|
35
|
+
def _bit_scope_list_cmd(root)
|
36
|
+
format(
|
37
|
+
config.active['cmd_bit_scope_list_find_scopes'],
|
38
|
+
root: root
|
39
|
+
)
|
40
|
+
end
|
41
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# takelage bit scope new
|
4
|
+
module BitScopeNew
|
5
|
+
# Backend method for bit scope new.
|
6
|
+
# @return [Int] status of new command
|
7
|
+
def bit_scope_new(scope)
|
8
|
+
log.debug "Creating new bit remote scope \"#{scope}\""
|
9
|
+
|
10
|
+
return false unless configured? %w[bit_ssh bit_remote]
|
11
|
+
|
12
|
+
return false if _bit_scope_new_scope_exists? scope
|
13
|
+
|
14
|
+
cmd_bit_ssh = config.active['bit_ssh']
|
15
|
+
|
16
|
+
cmd_bit_scope_new = _bit_scope_new_cmd scope
|
17
|
+
|
18
|
+
run "#{cmd_bit_ssh} '#{cmd_bit_scope_new}'"
|
19
|
+
|
20
|
+
log.info "Created new bit remote scope \"#{scope}\""
|
21
|
+
end
|
22
|
+
|
23
|
+
private
|
24
|
+
|
25
|
+
# Check if bit scope already exists.
|
26
|
+
def _bit_scope_new_scope_exists?(scope)
|
27
|
+
scope_list = bit_scope_list
|
28
|
+
return false unless scope_list.include? scope
|
29
|
+
|
30
|
+
log.error "The remote bit scope \"#{scope}\" already exists"
|
31
|
+
false
|
32
|
+
end
|
33
|
+
|
34
|
+
# Prepare bit scope new command.
|
35
|
+
def _bit_scope_new_cmd(scope)
|
36
|
+
root = config.active['bit_root']
|
37
|
+
|
38
|
+
format(
|
39
|
+
config.active['cmd_bit_scope_new_bit_init'],
|
40
|
+
scope: scope,
|
41
|
+
root: root
|
42
|
+
)
|
43
|
+
end
|
44
|
+
end
|
data/lib/takelage/default.yml
CHANGED
@@ -20,6 +20,7 @@ cmd_bit_clipboard_pull_bit_import_all: 'bit import --ignore-package-json --ignor
|
|
20
20
|
cmd_bit_clipboard_pull_bit_checkout_all: 'bit checkout --ignore-dist --skip-update --all latest'
|
21
21
|
cmd_bit_clipboard_push_bit_tag_all: 'bit tag --skip-update --skip-tests --all'
|
22
22
|
cmd_bit_clipboard_push_bit_export_all: 'bit export --skip-update --all'
|
23
|
+
cmd_bit_scope_add_scope: 'bit remote add %{remote}/%{scope}'
|
23
24
|
cmd_bit_scope_list_find_scopes: 'find -L %{root} -name scope.json'
|
24
25
|
cmd_bit_scope_new_bit_init: 'mkdir -p %{root}/%{scope} && cd %{root}/%{scope} && bit init --bare'
|
25
26
|
cmd_bit_scope_remove_scope: 'rm --force --recursive %{root}/%{scope}'
|
@@ -39,12 +40,12 @@ cmd_docker_image_tag_check_local_docker_images: 'docker images --quiet %{image}'
|
|
39
40
|
cmd_docker_image_tag_list_local_docker_images: 'docker images %{docker_user}\/%{docker_repo} --format "{{.Tag}}"'
|
40
41
|
cmd_docker_image_update_docker_pull_latest: 'docker pull %{docker_user}/%{docker_repo}:%{tag_latest_remote}'
|
41
42
|
cmd_docker_image_update_docker_remove_dangling: 'docker image prune --force'
|
42
|
-
cmd_docker_socket_stop_docker_socket_ps: 'sudo ps a -o pid,command'
|
43
|
-
cmd_docker_socket_stop_docker_socket_kill: 'sudo kill -SIGTERM %{pid}'
|
44
|
-
cmd_docker_socket_get_start: 'sudo socat TCP-LISTEN:%{port},bind=%{host},reuseaddr,fork UNIX-CLIENT:%{path}'
|
45
43
|
cmd_docker_socket_config_agent_socket_path: 'gpgconf --list-dirs agent-socket'
|
46
44
|
cmd_docker_socket_config_agent_ssh_socket_path: 'gpgconf --list-dirs agent-ssh-socket'
|
45
|
+
cmd_docker_socket_get_start: 'sudo socat TCP-LISTEN:%{port},bind=%{host},reuseaddr,fork UNIX-CLIENT:%{path}'
|
47
46
|
cmd_docker_socket_start_sudo_true: 'sudo true'
|
47
|
+
cmd_docker_socket_stop_docker_socket_ps: 'sudo ps a -o pid,command'
|
48
|
+
cmd_docker_socket_stop_docker_socket_kill: 'sudo kill -SIGTERM %{pid}'
|
48
49
|
cmd_git_check_clean_git_unstaged: 'git diff --exit-code'
|
49
50
|
cmd_git_check_clean_git_uncommitted: 'git diff --cached --exit-code'
|
50
51
|
cmd_git_check_clean_git_status: 'git status --porcelain'
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
# takelage docker check
|
4
|
-
module
|
3
|
+
# takelage docker check running
|
4
|
+
module DockerCheckRunning
|
5
5
|
# Backend method for docker check running.
|
6
6
|
# @return [Boolean] is the docker daemon running?
|
7
7
|
def docker_check_running
|
@@ -6,8 +6,10 @@ module Takelage
|
|
6
6
|
include LoggingModule
|
7
7
|
include SystemModule
|
8
8
|
include ConfigModule
|
9
|
-
include
|
10
|
-
include
|
9
|
+
include DockerCheckRunning
|
10
|
+
include DockerContainerCheckExisting
|
11
|
+
include DockerContainerCheckNetwork
|
12
|
+
include DockerContainerCheckOrphaned
|
11
13
|
|
12
14
|
#
|
13
15
|
# docker container check existing
|
@@ -0,0 +1,31 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# takelage docker container check existing
|
4
|
+
module DockerContainerCheckExisting
|
5
|
+
# Backend method for docker container check existing.
|
6
|
+
# @return [Boolean] is container existing?
|
7
|
+
def docker_container_check_existing(container)
|
8
|
+
log.debug "Checking if container \"#{container}\" is existing"
|
9
|
+
|
10
|
+
return false unless docker_check_running
|
11
|
+
|
12
|
+
stdout_str = run _docker_container_cmd_check_existing container
|
13
|
+
|
14
|
+
if stdout_str.to_s.strip.empty?
|
15
|
+
log.debug "Container \"#{container}\" is not existing"
|
16
|
+
return false
|
17
|
+
end
|
18
|
+
|
19
|
+
log.debug "Container \"#{container}\" is existing"
|
20
|
+
true
|
21
|
+
end
|
22
|
+
|
23
|
+
private
|
24
|
+
|
25
|
+
def _docker_container_cmd_check_existing(container)
|
26
|
+
format(
|
27
|
+
config.active['cmd_docker_container_check_existing_docker_ps'],
|
28
|
+
container: container
|
29
|
+
)
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# takelage docker container check network
|
4
|
+
module DockerContainerCheckNetwork
|
5
|
+
# Backend method for docker container check network.
|
6
|
+
# @return [Boolean] is network existing?
|
7
|
+
def docker_container_check_network(network)
|
8
|
+
log.debug "Checking if network \"#{network}\" is existing"
|
9
|
+
|
10
|
+
return false unless docker_check_running
|
11
|
+
|
12
|
+
stdout_str = run _docker_container_cmd_check_network network
|
13
|
+
|
14
|
+
if stdout_str.to_s.strip.empty?
|
15
|
+
log.debug "Network \"#{network}\" is not existing"
|
16
|
+
return false
|
17
|
+
end
|
18
|
+
|
19
|
+
log.debug "Network \"#{network}\" is existing"
|
20
|
+
true
|
21
|
+
end
|
22
|
+
|
23
|
+
private
|
24
|
+
|
25
|
+
def _docker_container_cmd_check_network(network)
|
26
|
+
format(
|
27
|
+
config.active['cmd_docker_container_check_network_docker_network'],
|
28
|
+
network: network
|
29
|
+
)
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# takelage docker container check orphaned
|
4
|
+
module DockerContainerCheckOrphaned
|
5
|
+
# Backend method for docker container check orphaned.
|
6
|
+
# @return [Boolean] is container orphaned?
|
7
|
+
def docker_container_check_orphaned(container)
|
8
|
+
log.debug "Check if container \"#{container}\" is orphaned"
|
9
|
+
|
10
|
+
return false unless docker_check_running
|
11
|
+
|
12
|
+
stdout_str = run _docker_container_cmd_check_orphaned container
|
13
|
+
|
14
|
+
if stdout_str.include? '/loginpoint.py'
|
15
|
+
log.debug "Container \"#{container}\" isn't orphaned"
|
16
|
+
return false
|
17
|
+
end
|
18
|
+
|
19
|
+
log.debug "Container \"#{container}\" is orphaned"
|
20
|
+
true
|
21
|
+
end
|
22
|
+
|
23
|
+
private
|
24
|
+
|
25
|
+
def _docker_container_cmd_check_orphaned(container)
|
26
|
+
format(
|
27
|
+
config.active['cmd_docker_container_check_orphaned_docker_exec'],
|
28
|
+
container: container
|
29
|
+
)
|
30
|
+
end
|
31
|
+
end
|
@@ -6,14 +6,24 @@ module Takelage
|
|
6
6
|
include LoggingModule
|
7
7
|
include SystemModule
|
8
8
|
include ConfigModule
|
9
|
-
include
|
10
|
-
include
|
11
|
-
include
|
12
|
-
include
|
13
|
-
include
|
14
|
-
include
|
15
|
-
include
|
16
|
-
include
|
9
|
+
include DockerCheckRunning
|
10
|
+
include DockerContainerCheckExisting
|
11
|
+
include DockerContainerCheckNetwork
|
12
|
+
include DockerContainerCheckOrphaned
|
13
|
+
include DockerContainerLib
|
14
|
+
include DockerContainerCommand
|
15
|
+
include DockerContainerDaemon
|
16
|
+
include DockerContainerLogin
|
17
|
+
include DockerContainerNuke
|
18
|
+
include DockerContainerPurge
|
19
|
+
include DockerImageTagLatestLocal
|
20
|
+
include DockerImageTagListLocal
|
21
|
+
include DockerImageTagCheckLocal
|
22
|
+
include DockerImageCheckOutdated
|
23
|
+
include DockerSocketLib
|
24
|
+
include DockerSocketHost
|
25
|
+
include DockerSocketScheme
|
26
|
+
include DockerSocketStart
|
17
27
|
|
18
28
|
# Initialize docker container
|
19
29
|
# rubocop:disable Metrics/MethodLength
|
@@ -23,34 +33,25 @@ module Takelage
|
|
23
33
|
super args, local_options, configuration
|
24
34
|
|
25
35
|
@docker_debug = config.active['docker_debug']
|
26
|
-
|
27
36
|
@docker_user = config.active['docker_user']
|
28
37
|
@docker_repo = config.active['docker_repo']
|
29
|
-
@docker_registry = config.active['docker_registry']
|
30
38
|
@docker_tag = config.active['docker_tag']
|
31
|
-
|
39
|
+
@docker_registry = config.active['docker_registry']
|
32
40
|
@dockersock = '/var/run/docker.sock'
|
33
|
-
|
34
41
|
@dockerrun_options = config.active['docker_run_options']
|
35
|
-
|
36
42
|
@entrypoint_extra = config.active['docker_entrypoint_extra']
|
37
43
|
@entrypoint_options = config.active['docker_entrypoint_options']
|
38
|
-
|
39
44
|
@gpg_agent_port = config.active['docker_socket_gpg_agent_port']
|
40
45
|
@gpg_ssh_agent_port = config.active['docker_socket_gpg_ssh_agent_port']
|
41
|
-
|
42
|
-
@
|
43
|
-
@
|
46
|
+
@socket_host = docker_socket_host
|
47
|
+
@sockets = docker_socket_scheme
|
48
|
+
@username = ENV['USER'] || 'noname'
|
44
49
|
@uid = Etc.getpwnam(@username).uid
|
45
|
-
|
50
|
+
@gid = Etc.getpwnam(@username).gid
|
46
51
|
@homedir = ENV['HOME'] || '/tmp'
|
47
52
|
@workdir = Dir.getwd
|
48
53
|
@hostname = "#{@docker_repo}_#{File.basename(@workdir)}"
|
49
|
-
|
50
54
|
@timezone = 'Europe/Berlin'
|
51
|
-
|
52
|
-
@socket_host = docker_socket_host
|
53
|
-
@sockets = docker_socket_scheme
|
54
55
|
end
|
55
56
|
# rubocop:enable Metrics/AbcSize
|
56
57
|
# rubocop:enable Metrics/MethodLength
|
@@ -58,6 +59,18 @@ module Takelage
|
|
58
59
|
desc 'check [COMMAND]', 'Check docker container'
|
59
60
|
subcommand 'check', DockerContainerCheck
|
60
61
|
|
62
|
+
#
|
63
|
+
# docker container command
|
64
|
+
#
|
65
|
+
desc 'command [CMD]', 'Run [CMD] in a docker container'
|
66
|
+
long_desc <<-LONGDESC.gsub("\n", "\x5")
|
67
|
+
Run command in docker container
|
68
|
+
LONGDESC
|
69
|
+
# Run command in docker container.
|
70
|
+
def command(command)
|
71
|
+
docker_container_command(command)
|
72
|
+
end
|
73
|
+
|
61
74
|
#
|
62
75
|
# docker container daemon
|
63
76
|
#
|
@@ -110,17 +123,5 @@ module Takelage
|
|
110
123
|
def purge
|
111
124
|
docker_container_purge
|
112
125
|
end
|
113
|
-
|
114
|
-
#
|
115
|
-
# docker container run
|
116
|
-
#
|
117
|
-
desc 'command [CMD]', 'Run [CMD] in a docker container'
|
118
|
-
long_desc <<-LONGDESC.gsub("\n", "\x5")
|
119
|
-
Run command in docker container
|
120
|
-
LONGDESC
|
121
|
-
# Run command in docker container.
|
122
|
-
def command(command)
|
123
|
-
docker_container_command(command)
|
124
|
-
end
|
125
126
|
end
|
126
127
|
end
|