uffizzi-cli 2.4.8 → 2.4.9
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:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 744480393ee81d335802bcb1008333c1e6c9b6f9870d7710dfff294698a1eb7a
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: cf43c7519e0621f9be3fbb18d9fd89fd0cf2a6ea0dc56d0b41662428e6d4b46c
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: ef39ee4ce26c553068d279f3960ba924b7458fbf439a4ffd0abbed363fa359cbf9707df59e8ee439ff06f091894836f67d7bcdb8f2c78879caa7b52120e2dfb2
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 6c0471f16b076c5c8dedd2b714416c6514e03f9ee96b6d6aead5d5fca19556ac6f09e73b44a050ef07f7cdcfd3a72d9bb2b14902eda9931b5251830389aacc57
         
     | 
    
        data/lib/uffizzi/cli/install.rb
    CHANGED
    
    | 
         @@ -72,7 +72,7 @@ module Uffizzi 
     | 
|
| 
       72 
72 
     | 
    
         
             
                end
         
     | 
| 
       73 
73 
     | 
    
         | 
| 
       74 
74 
     | 
    
         
             
                def wait_ip
         
     | 
| 
       75 
     | 
    
         
            -
                  spinner = TTY::Spinner.new('[:spinner] Waiting IP  
     | 
| 
      
 75 
     | 
    
         
            +
                  spinner = TTY::Spinner.new('[:spinner] Waiting on IP address...', format: :dots)
         
     | 
| 
       76 
76 
     | 
    
         
             
                  spinner.auto_spin
         
     | 
| 
       77 
77 
     | 
    
         | 
| 
       78 
78 
     | 
    
         
             
                  ip = nil
         
     | 
| 
         @@ -82,7 +82,7 @@ module Uffizzi 
     | 
|
| 
       82 
82 
     | 
    
         
             
                    ip = InstallService.get_controller_ip(namespace)
         
     | 
| 
       83 
83 
     | 
    
         
             
                    break if ip.present?
         
     | 
| 
       84 
84 
     | 
    
         | 
| 
       85 
     | 
    
         
            -
                    if try ==  
     | 
| 
      
 85 
     | 
    
         
            +
                    if try == 90
         
     | 
| 
       86 
86 
     | 
    
         
             
                      spinner.error
         
     | 
| 
       87 
87 
     | 
    
         | 
| 
       88 
88 
     | 
    
         
             
                      return 'unknown'
         
     | 
| 
         @@ -97,29 +97,6 @@ module Uffizzi 
     | 
|
| 
       97 
97 
     | 
    
         
             
                  ip
         
     | 
| 
       98 
98 
     | 
    
         
             
                end
         
     | 
| 
       99 
99 
     | 
    
         | 
| 
       100 
     | 
    
         
            -
                def wait_certificate_request_ready(uri)
         
     | 
| 
       101 
     | 
    
         
            -
                  spinner = TTY::Spinner.new('[:spinner] Waiting create certificate for controller host...', format: :dots)
         
     | 
| 
       102 
     | 
    
         
            -
                  spinner.auto_spin
         
     | 
| 
       103 
     | 
    
         
            -
             
     | 
| 
       104 
     | 
    
         
            -
                  try = 0
         
     | 
| 
       105 
     | 
    
         
            -
             
     | 
| 
       106 
     | 
    
         
            -
                  loop do
         
     | 
| 
       107 
     | 
    
         
            -
                    requests = InstallService.get_certificate_request(namespace, uri)
         
     | 
| 
       108 
     | 
    
         
            -
                    break if requests.all? { |r| r['status'].downcase == 'true' }
         
     | 
| 
       109 
     | 
    
         
            -
             
     | 
| 
       110 
     | 
    
         
            -
                    if try == 60
         
     | 
| 
       111 
     | 
    
         
            -
                      spinner.error
         
     | 
| 
       112 
     | 
    
         
            -
             
     | 
| 
       113 
     | 
    
         
            -
                      return Uffizzi.ui.say('Stop waiting creation certificate')
         
     | 
| 
       114 
     | 
    
         
            -
                    end
         
     | 
| 
       115 
     | 
    
         
            -
             
     | 
| 
       116 
     | 
    
         
            -
                    try += 1
         
     | 
| 
       117 
     | 
    
         
            -
                    sleep(2)
         
     | 
| 
       118 
     | 
    
         
            -
                  end
         
     | 
| 
       119 
     | 
    
         
            -
             
     | 
| 
       120 
     | 
    
         
            -
                  spinner.success
         
     | 
| 
       121 
     | 
    
         
            -
                end
         
     | 
| 
       122 
     | 
    
         
            -
             
     | 
| 
       123 
100 
     | 
    
         
             
                def build_helm_values(params)
         
     | 
| 
       124 
101 
     | 
    
         
             
                  {
         
     | 
| 
       125 
102 
     | 
    
         
             
                    global: {
         
     | 
| 
         @@ -220,7 +197,6 @@ module Uffizzi 
     | 
|
| 
       220 
197 
     | 
    
         | 
| 
       221 
198 
     | 
    
         
             
                def say_success(uri)
         
     | 
| 
       222 
199 
     | 
    
         
             
                  ip_address = wait_ip
         
     | 
| 
       223 
     | 
    
         
            -
                  wait_certificate_request_ready(uri)
         
     | 
| 
       224 
200 
     | 
    
         | 
| 
       225 
201 
     | 
    
         
             
                  msg = 'Your Uffizzi controller is ready. To configure DNS,'\
         
     | 
| 
       226 
202 
     | 
    
         
             
                        " create a record for the hostname '*.#{uri.host}' pointing to '#{ip_address}'"
         
     | 
| 
         @@ -12,7 +12,7 @@ module Uffizzi 
     | 
|
| 
       12 
12 
     | 
    
         
             
                default_task :controller
         
     | 
| 
       13 
13 
     | 
    
         | 
| 
       14 
14 
     | 
    
         
             
                desc 'controller [HOSTNAME]', 'Install uffizzi controller to cluster'
         
     | 
| 
       15 
     | 
    
         
            -
                method_option :namespace, type: :string
         
     | 
| 
      
 15 
     | 
    
         
            +
                method_option :namespace, type: :string, aliases: '-n'
         
     | 
| 
       16 
16 
     | 
    
         
             
                method_option :context, type: :string
         
     | 
| 
       17 
17 
     | 
    
         
             
                def controller
         
     | 
| 
       18 
18 
     | 
    
         
             
                  Uffizzi::AuthHelper.check_login
         
     | 
| 
         @@ -86,7 +86,7 @@ module Uffizzi 
     | 
|
| 
       86 
86 
     | 
    
         
             
                end
         
     | 
| 
       87 
87 
     | 
    
         | 
| 
       88 
88 
     | 
    
         
             
                def namespace
         
     | 
| 
       89 
     | 
    
         
            -
                  options[:namespace] || InstallService 
     | 
| 
      
 89 
     | 
    
         
            +
                  options[:namespace] || InstallService.current_namespace
         
     | 
| 
       90 
90 
     | 
    
         
             
                end
         
     | 
| 
       91 
91 
     | 
    
         | 
| 
       92 
92 
     | 
    
         
             
                def server
         
     | 
| 
         @@ -98,17 +98,6 @@ class InstallService 
     | 
|
| 
       98 
98 
     | 
    
         
             
                  load_balancers.map { |i| i['ip'] }[0]
         
     | 
| 
       99 
99 
     | 
    
         
             
                end
         
     | 
| 
       100 
100 
     | 
    
         | 
| 
       101 
     | 
    
         
            -
                def get_certificate_request(namespace, uri)
         
     | 
| 
       102 
     | 
    
         
            -
                  cmd = "kubectl get certificaterequests -n #{namespace} -o json"
         
     | 
| 
       103 
     | 
    
         
            -
                  res = execute_command(cmd, say: false)
         
     | 
| 
       104 
     | 
    
         
            -
                  certificate_request = JSON.parse(res)['items'].detect { |i| i['metadata']['name'].include?(uri.host) }
         
     | 
| 
       105 
     | 
    
         
            -
             
     | 
| 
       106 
     | 
    
         
            -
                  return [] if certificate_request.nil?
         
     | 
| 
       107 
     | 
    
         
            -
             
     | 
| 
       108 
     | 
    
         
            -
                  conditions = certificate_request.dig('status', 'conditions') || []
         
     | 
| 
       109 
     | 
    
         
            -
                  conditions.map { |c| c.slice('type', 'status') }
         
     | 
| 
       110 
     | 
    
         
            -
                end
         
     | 
| 
       111 
     | 
    
         
            -
             
     | 
| 
       112 
101 
     | 
    
         
             
                def build_controller_host(host)
         
     | 
| 
       113 
102 
     | 
    
         
             
                  [DEFAULT_CONTROLLER_DOMAIN_PREFIX, host].join('.')
         
     | 
| 
       114 
103 
     | 
    
         
             
                end
         
     | 
| 
         @@ -130,6 +119,14 @@ class InstallService 
     | 
|
| 
       130 
119 
     | 
    
         
             
                  File.dirname(Uffizzi::ConfigFile.config_path)
         
     | 
| 
       131 
120 
     | 
    
         
             
                end
         
     | 
| 
       132 
121 
     | 
    
         | 
| 
      
 122 
     | 
    
         
            +
                def current_namespace
         
     | 
| 
      
 123 
     | 
    
         
            +
                  path = KubeconfigService.default_path
         
     | 
| 
      
 124 
     | 
    
         
            +
                  kubeconfig = KubeconfigService.read_kubeconfig(path)
         
     | 
| 
      
 125 
     | 
    
         
            +
                  return if kubeconfig.nil?
         
     | 
| 
      
 126 
     | 
    
         
            +
             
     | 
| 
      
 127 
     | 
    
         
            +
                  KubeconfigService.get_current_namespace(kubeconfig) || DEFAULT_NAMESPACE
         
     | 
| 
      
 128 
     | 
    
         
            +
                end
         
     | 
| 
      
 129 
     | 
    
         
            +
             
     | 
| 
       133 
130 
     | 
    
         
             
                private
         
     | 
| 
       134 
131 
     | 
    
         | 
| 
       135 
132 
     | 
    
         
             
                def execute_command(command, say: true, skip_error: false)
         
     | 
| 
         @@ -50,6 +50,12 @@ class KubeconfigService 
     | 
|
| 
       50 
50 
     | 
    
         
             
                    .dig('context', 'cluster')
         
     | 
| 
       51 
51 
     | 
    
         
             
                end
         
     | 
| 
       52 
52 
     | 
    
         | 
| 
      
 53 
     | 
    
         
            +
                def get_current_namespace(kubeconfig)
         
     | 
| 
      
 54 
     | 
    
         
            +
                  get_cluster_contexts(kubeconfig)
         
     | 
| 
      
 55 
     | 
    
         
            +
                    .detect { |c| c['name'] == get_current_context(kubeconfig) }
         
     | 
| 
      
 56 
     | 
    
         
            +
                    .dig('context', 'namespace')
         
     | 
| 
      
 57 
     | 
    
         
            +
                end
         
     | 
| 
      
 58 
     | 
    
         
            +
             
     | 
| 
       53 
59 
     | 
    
         
             
                def get_cluster_contexts(kubeconfig)
         
     | 
| 
       54 
60 
     | 
    
         
             
                  kubeconfig.fetch('contexts', [])
         
     | 
| 
       55 
61 
     | 
    
         
             
                end
         
     | 
    
        data/lib/uffizzi/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: uffizzi-cli
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 2.4. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 2.4.9
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Josh Thurman
         
     | 
| 
         @@ -9,7 +9,7 @@ authors: 
     | 
|
| 
       9 
9 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       10 
10 
     | 
    
         
             
            bindir: exe
         
     | 
| 
       11 
11 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       12 
     | 
    
         
            -
            date: 2024- 
     | 
| 
      
 12 
     | 
    
         
            +
            date: 2024-04-02 00:00:00.000000000 Z
         
     | 
| 
       13 
13 
     | 
    
         
             
            dependencies:
         
     | 
| 
       14 
14 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       15 
15 
     | 
    
         
             
              name: activesupport
         
     |