Sha256: d1d91804c5ec128b59b7486c2d47b158728791fb39770f85c60cbf4a9d960c5f

Contents?: true

Size: 930 Bytes

Versions: 40

Compression:

Stored size: 930 Bytes

Contents

module Brightbox
  command [:cloudips] do |cmd|

    cmd.desc I18n.t("cloudips.map.desc")
    cmd.arg_name "cloudip-id..."
    cmd.command [:unmap] do |c|

      c.action do |global_options, _options, args|

        if args.empty?
          raise "You must specify the Cloud IPs you want to unmap"
        end

        ips = CloudIP.find_or_call(args) do |id|
          raise "Couldn't find Cloud IP #{id}"
        end

        ips.each do |ip|
          if ip.mapped?
            info "Unmapping Cloud IP #{ip}"
            ip.unmap
            ip.reload
          else
            warn "Cloud IP #{ip} already unmapped"
          end
        end

        # Wait up to 3 seconds for unmapping to complete
        3.times do
          break unless ips.find { |ip| ip.mapped? }
          sleep 1
          ips.each { |ip| ip.reload if ip.mapped? }
        end

        render_table(ips, global_options)
      end
    end
  end
end

Version data entries

40 entries across 40 versions & 1 rubygems

Version Path
brightbox-cli-3.3.0 lib/brightbox-cli/commands/cloudips/unmap.rb
brightbox-cli-3.2.0 lib/brightbox-cli/commands/cloudips/unmap.rb
brightbox-cli-3.1.0 lib/brightbox-cli/commands/cloudips/unmap.rb
brightbox-cli-3.0.1 lib/brightbox-cli/commands/cloudips/unmap.rb
brightbox-cli-3.0.0 lib/brightbox-cli/commands/cloudips/unmap.rb
brightbox-cli-2.12.0 lib/brightbox-cli/commands/cloudips/unmap.rb
brightbox-cli-2.11.2 lib/brightbox-cli/commands/cloudips/unmap.rb
brightbox-cli-2.11.1 lib/brightbox-cli/commands/cloudips/unmap.rb
brightbox-cli-2.11.0 lib/brightbox-cli/commands/cloudips/unmap.rb
brightbox-cli-2.10.0 lib/brightbox-cli/commands/cloudips/unmap.rb
brightbox-cli-2.9.3 lib/brightbox-cli/commands/cloudips/unmap.rb
brightbox-cli-2.9.2 lib/brightbox-cli/commands/cloudips/unmap.rb
brightbox-cli-2.9.1 lib/brightbox-cli/commands/cloudips/unmap.rb
brightbox-cli-2.9.0 lib/brightbox-cli/commands/cloudips/unmap.rb
brightbox-cli-2.8.2 lib/brightbox-cli/commands/cloudips/unmap.rb
brightbox-cli-2.8.1 lib/brightbox-cli/commands/cloudips/unmap.rb
brightbox-cli-2.8.0 lib/brightbox-cli/commands/cloudips/unmap.rb
brightbox-cli-2.7.1 lib/brightbox-cli/commands/cloudips/unmap.rb
brightbox-cli-2.7.0 lib/brightbox-cli/commands/cloudips/unmap.rb
brightbox-cli-2.6.0 lib/brightbox-cli/commands/cloudips/unmap.rb