takelage 0.17.0 → 0.19.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d7143b5ce147127b3a0cf4ebf69dcb673e0e031fd163c3992fa602a5d03293b3
4
- data.tar.gz: 545368ec9301049e782727636a3fd281c332d190990337b989ea652a1b8e58ec
3
+ metadata.gz: 58c7e30c19e8a11de8ad95a88ed10b273a0266205de6eef10601331b5f6f2e99
4
+ data.tar.gz: 3b45502b409d12f35aabbbb0cae6cdbd33ff108f245fa9a01c1c6c5acd3e04cd
5
5
  SHA512:
6
- metadata.gz: eaad0481173e35a0146e02c69929938331d23527e1c1fb809d8df214b51f8d319e272d7ae2efda2017bd113e4bc6b15ea73b89aac48523b04fc8456e2ef25634
7
- data.tar.gz: d35e4e3fa76dd58740f719e5ac7aad48ae27d1094becfbffefffdc6188fa1ab141c0d5a0392e3a58dcafa190d5e65063e1d160756a9f696e2cd8b70bb2065bd8
6
+ metadata.gz: 7c23d454347c4983a240601f744198709cb7368edaa5baccddcc0f483ef1cd9aef1f9e04f338420764f5337fba84b181cfb95cccc222e6190fa50ae87789e7a4
7
+ data.tar.gz: 4a44ee37503a14484500b84bedf50597e966d084f9925886ba3af8eb0577c4d1313f939f54fb07feb89468e604c696fb65a0ea534f2d35e9f05aff82f867ffcd
@@ -28,7 +28,7 @@ cmd_docker_check_running_docker_info: 'docker info'
28
28
  cmd_docker_container_check_existing_docker_ps: 'docker ps --filter name=^%{container}$ --quiet'
29
29
  cmd_docker_container_check_network_docker_network: 'docker network ls --quiet --filter name=^%{network}$'
30
30
  cmd_docker_container_check_orphaned_docker_exec: 'docker exec --interactive %{container} ps a'
31
- cmd_docker_container_create: 'docker run --detach --env TAKELAGE_PROJECT_BASE_DIR=%{workdir} --env TZ=%{timezone} --hostname %{container} --name %{container} --network %{container} --privileged --rm --shm-size %{shmsize} --tty --volume %{dockersock}:/var/run/docker.sock --volume %{homedir}:/hostdir --volume %{workdir}:/project %{volume_dev} --workdir /project %{addhost} %{dockerrun_options} %{image} %{entrypoint} --gid %{gid} --home %{homedir} --uid %{uid} --username %{username} --gpg_agent_port %{gpg_agent_port} --gpg_ssh_agent_port %{gpg_ssh_agent_port} --extra=%{extra} %{entrypoint_options}'
31
+ cmd_docker_container_create: 'docker run --detach --env TAKELAGE_PROJECT_BASE_DIR=%{workdir} --env TZ=%{timezone} --hostname %{container} --name %{container} --network %{container} --privileged --rm --shm-size %{shmsize} --tty --volume %{dockersock}:/var/run/docker.sock --volume %{homedir}:/hostdir --volume %{workdir}:/project %{volume_dev} --workdir /project %{addhost} %{docker_run_options} %{image} %{entrypoint} --gid %{gid} --home %{homedir} --uid %{uid} --username %{username} --gpg_agent_port %{gpg_agent_port} --gpg_ssh_agent_port %{gpg_ssh_agent_port} --extra=%{extra} %{entrypoint_options}'
32
32
  cmd_docker_container_create_network: 'docker network create %{network}'
33
33
  cmd_docker_container_enter_container: 'docker exec --interactive --tty %{container} %{loginpoint} --username %{username}'
34
34
  cmd_docker_container_get_container_name: 'docker ps --filter id=%{container} --format "{{.Names}}"'
@@ -46,6 +46,18 @@ module Takelage
46
46
  desc 'check [COMMAND]', 'Check docker container'
47
47
  subcommand 'check', DockerContainerCheck
48
48
 
49
+ #
50
+ # docker container clean
51
+ #
52
+ desc 'clean', 'Remove all docker containers'
53
+ long_desc <<-LONGDESC.gsub("\n", "\x5")
54
+ Remove all docker containers
55
+ LONGDESC
56
+ # Remove all docker containers.
57
+ def clean
58
+ docker_container_clean
59
+ end
60
+
49
61
  #
50
62
  # docker container command
51
63
  #
@@ -87,18 +99,6 @@ module Takelage
87
99
  docker_container_login
88
100
  end
89
101
 
90
- #
91
- # docker container clean
92
- #
93
- desc 'clean', 'Remove all docker containers'
94
- long_desc <<-LONGDESC.gsub("\n", "\x5")
95
- Remove all docker containers
96
- LONGDESC
97
- # Remove all docker containers.
98
- def clean
99
- docker_container_clean
100
- end
101
-
102
102
  #
103
103
  # docker container prune
104
104
  #
@@ -2,6 +2,7 @@
2
2
 
3
3
  # takelage docker container lib
4
4
  # rubocop:disable Metrics/ModuleLength
5
+ # rubocop:disable Style/IfUnlessModifier
5
6
  module DockerContainerLib
6
7
  private
7
8
 
@@ -55,6 +56,8 @@ module DockerContainerLib
55
56
  def _docker_container_lib_create_container(container)
56
57
  log.debug "Creating container \"#{container}\""
57
58
 
59
+ return false if _docker_container_lib_check_matrjoschka
60
+
58
61
  image = "#{@docker_user}/#{@docker_repo}:#{@docker_tag}"
59
62
 
60
63
  return false unless _docker_container_lib_image_available? image
@@ -77,7 +80,7 @@ module DockerContainerLib
77
80
  config.active['cmd_docker_container_create'],
78
81
  addhost: addhost,
79
82
  container: container,
80
- dockerrun_options: config.active['docker_run_options'],
83
+ docker_run_options: config.active['docker_run_options'],
81
84
  dockersock: '/var/run/docker.sock',
82
85
  entrypoint: entrypoint,
83
86
  entrypoint_options: config.active['docker_entrypoint_options'],
@@ -100,6 +103,14 @@ module DockerContainerLib
100
103
  # rubocop:enable Metrics/AbcSize
101
104
  # rubocop:enable Metrics/MethodLength
102
105
 
106
+ # Check if we are already inside a takelage container
107
+ def _docker_container_lib_check_matrjoschka
108
+ return false unless ENV['HOSTNAME'].start_with? @docker_repo
109
+
110
+ log.error 'You cannot log in to takelage from within takelage'
111
+ false
112
+ end
113
+
103
114
  # Check if docker image is available
104
115
  def _docker_container_lib_image_available?(image)
105
116
  return true if docker_image_tag_list_local.include? @docker_tag
@@ -151,4 +162,5 @@ module DockerContainerLib
151
162
  run cmd_docker_stop
152
163
  end
153
164
  end
165
+ # rubocop:enable Style/IfUnlessModifier
154
166
  # rubocop:enable Metrics/ModuleLength
@@ -1 +1 @@
1
- 0.17.0
1
+ 0.19.1
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: takelage
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.17.0
4
+ version: 0.19.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Geospin