Module: Dapp::Kube::Dapp::Command::Common
- Included in:
- Dapp
- Defined in:
- lib/dapp/kube/dapp/command/common.rb
Instance Method Summary collapse
- #kube_chart_path(*path) ⇒ Object
- #kube_chart_secret_dir_name ⇒ Object
- #kube_chart_secret_path(*path) ⇒ Object
- #kube_check_helm! ⇒ Object
- #kube_namespace ⇒ Object
- #kube_release_name ⇒ Object
- #kube_secret_file_validate!(file_path) ⇒ Object
- #kube_tmp_chart_path(*path) ⇒ Object
- #kubernetes ⇒ Object
- #secret ⇒ Object
- #secret_key_not_found_in ⇒ Object
- #secret_key_should_exist! ⇒ Object
- #with_kube_tmp_chart_dir ⇒ Object
Instance Method Details
#kube_chart_path(*path) ⇒ Object
54 55 56 |
# File 'lib/dapp/kube/dapp/command/common.rb', line 54 def kube_chart_path(*path) self.path('.helm', *path). end |
#kube_chart_secret_dir_name ⇒ Object
50 51 52 |
# File 'lib/dapp/kube/dapp/command/common.rb', line 50 def kube_chart_secret_dir_name 'secret' end |
#kube_chart_secret_path(*path) ⇒ Object
46 47 48 |
# File 'lib/dapp/kube/dapp/command/common.rb', line 46 def kube_chart_secret_path(*path) kube_chart_path(kube_chart_secret_dir_name, *path). end |
#kube_check_helm! ⇒ Object
6 7 8 |
# File 'lib/dapp/kube/dapp/command/common.rb', line 6 def kube_check_helm! raise Error::Command, code: :helm_not_found if shellout('which helm').exitstatus == 1 end |
#kube_namespace ⇒ Object
14 15 16 |
# File 'lib/dapp/kube/dapp/command/common.rb', line 14 def kube_namespace kubernetes.namespace end |
#kube_release_name ⇒ Object
10 11 12 |
# File 'lib/dapp/kube/dapp/command/common.rb', line 10 def kube_release_name "#{name}-#{kube_namespace}".slugify end |
#kube_secret_file_validate!(file_path) ⇒ Object
34 35 36 37 |
# File 'lib/dapp/kube/dapp/command/common.rb', line 34 def kube_secret_file_validate!(file_path) raise Error::Command, code: :secret_file_not_found, data: { path: File.(file_path) } unless File.exist?(file_path) raise Error::Command, code: :secret_file_empty, data: { path: File.(file_path) } if File.read(file_path).strip.empty? end |
#kube_tmp_chart_path(*path) ⇒ Object
64 65 66 67 |
# File 'lib/dapp/kube/dapp/command/common.rb', line 64 def kube_tmp_chart_path(*path) @kube_tmp_path ||= Dir.mktmpdir('dapp-helm-chart-', tmp_base_dir) make_path(@kube_tmp_path, *path)..tap { |p| p.parent.mkpath } end |
#kubernetes ⇒ Object
94 95 96 97 98 99 |
# File 'lib/dapp/kube/dapp/command/common.rb', line 94 def kubernetes @kubernetes ||= begin namespace = [:namespace].nil? ? nil : [:namespace].tr('_', '-') Kubernetes::Client.new(namespace: namespace) end end |
#secret ⇒ Object
69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 |
# File 'lib/dapp/kube/dapp/command/common.rb', line 69 def secret @secret ||= begin unless (secret_key = ENV['DAPP_SECRET_KEY']) secret_key_not_found_in << '`DAPP_SECRET_KEY`' if dappfile_exists? file_path = path('.dapp_secret_key') if file_path.file? secret_key = path('.dapp_secret_key').read.chomp else secret_key_not_found_in << "`#{file_path}`" end else log_warning(desc: { code: :secret_key_dappfile_not_found }) end end Secret.new(secret_key) if secret_key end end |
#secret_key_not_found_in ⇒ Object
90 91 92 |
# File 'lib/dapp/kube/dapp/command/common.rb', line 90 def secret_key_not_found_in @secret_key_not_found_in ||= [] end |
#secret_key_should_exist! ⇒ Object
39 40 41 42 43 44 |
# File 'lib/dapp/kube/dapp/command/common.rb', line 39 def secret_key_should_exist! raise(Error::Command, code: :secret_key_not_found, data: {not_found_in: secret_key_not_found_in.join(', ')} ) if secret.nil? end |
#with_kube_tmp_chart_dir ⇒ Object
58 59 60 61 62 |
# File 'lib/dapp/kube/dapp/command/common.rb', line 58 def with_kube_tmp_chart_dir yield if block_given? ensure FileUtils.rm_rf(kube_tmp_chart_path) end |