Class: PicsolveDockerBuilder::Composer::Requirements::Base
- Inherits:
-
Object
- Object
- PicsolveDockerBuilder::Composer::Requirements::Base
show all
- Includes:
- Base
- Defined in:
- lib/picsolve_docker_builder/composer/requirements/base.rb
Overview
Base class for requirements
Instance Attribute Summary collapse
Instance Method Summary
collapse
Methods included from Base
#base_dir, #config_file, #config_path, #config_paths, #create_logger, #default_config, #log, #read_config, #validate_config
Constructor Details
#initialize(name, config, context) ⇒ Base
Returns a new instance of Base.
10
11
12
13
14
|
# File 'lib/picsolve_docker_builder/composer/requirements/base.rb', line 10
def initialize(name, config, context)
@name = name
@config = config
@context = context
end
|
Instance Attribute Details
#config ⇒ Object
Returns the value of attribute config.
9
10
11
|
# File 'lib/picsolve_docker_builder/composer/requirements/base.rb', line 9
def config
@config
end
|
#name ⇒ Object
Returns the value of attribute name.
9
10
11
|
# File 'lib/picsolve_docker_builder/composer/requirements/base.rb', line 9
def name
@name
end
|
Instance Method Details
#container ⇒ Object
32
33
34
|
# File 'lib/picsolve_docker_builder/composer/requirements/base.rb', line 32
def container
@context.container
end
|
#create_secret(name, obj) ⇒ Object
44
45
46
47
48
49
50
51
52
53
54
55
|
# File 'lib/picsolve_docker_builder/composer/requirements/base.rb', line 44
def create_secret(name, obj)
secret = Kubeclient::Secret.new
secret.metadata = {
name: name,
namespace: namespace
}
secret.data = {}
obj.each do |key, value|
secret.data[key.to_sym] = Base64.encode64(value).delete("\n")
end
kubernetes.client.create_secret secret
end
|
#delete_secret(name) ⇒ Object
40
41
42
|
# File 'lib/picsolve_docker_builder/composer/requirements/base.rb', line 40
def delete_secret(name)
kubernetes.client.delete_secret name, namespace
end
|
#environment(_kubernetes) ⇒ Object
16
17
18
|
# File 'lib/picsolve_docker_builder/composer/requirements/base.rb', line 16
def environment(_kubernetes)
[]
end
|
#gen_password(length = 16) ⇒ Object
36
37
38
|
# File 'lib/picsolve_docker_builder/composer/requirements/base.rb', line 36
def gen_password(length = 16)
SecureRandom.urlsafe_base64(length)
end
|
#get_secret(name) ⇒ Object
57
58
59
60
61
62
63
64
|
# File 'lib/picsolve_docker_builder/composer/requirements/base.rb', line 57
def get_secret(name)
obj = kubernetes.client.get_secret(name, namespace)
hash = {}
obj.data.to_hash.each do |key, value|
hash[key.to_s] = Base64.decode64(value)
end
hash
end
|
#kubernetes ⇒ Object
24
25
26
|
# File 'lib/picsolve_docker_builder/composer/requirements/base.rb', line 24
def kubernetes
@context.kubernetes
end
|
#namespace ⇒ Object
28
29
30
|
# File 'lib/picsolve_docker_builder/composer/requirements/base.rb', line 28
def namespace
@context.namespace
end
|
#stage ⇒ Object
20
21
22
|
# File 'lib/picsolve_docker_builder/composer/requirements/base.rb', line 20
def stage
@context.kubernetes.stage
end
|