Sha256: c5cc0f3feaac09d2640c2aabb5b8ba7cbca7d9c2a23377295eada7566ed643da

Contents?: true

Size: 1.03 KB

Versions: 14

Compression:

Stored size: 1.03 KB

Contents

class Terraspace::CLI
  class Cloud < Terraspace::Command
    Syncer = Terraspace::Terraform::Cloud::Syncer
    Workspace = Terraspace::Terraform::Cloud::Workspace

    yes_option = Proc.new {
      option :yes, aliases: :y, type: :boolean, desc: "bypass are you sure prompt"
    }

    desc "list", "List workspaces"
    long_desc Help.text("cloud:list")
    yes_option.call
    def list
      Workspace.new(options).list
    end

    desc "destroy STACK", "Destroy workspace by specifying the stack"
    long_desc Help.text("cloud:destroy")
    yes_option.call
    def destroy(mod)
      Workspace.new(options.merge(mod: mod)).destroy
    end

    desc "sync [STACK]", "Sync all or multiple workspaces."
    long_desc Help.text("cloud:sync")
    yes_option.call
    def sync(*stacks)
      Terraspace::CLI::Build::Placeholder.new(options).build
      Syncer.new(options.merge(stacks: stacks, override_auto_sync: true)).run
    end

    desc "runs SUBCOMMAND", "runs subcommands"
    long_desc Help.text(:runs)
    subcommand "runs", Runs
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
terraspace-0.5.12 lib/terraspace/cli/cloud.rb
terraspace-0.5.11 lib/terraspace/cli/cloud.rb
terraspace-0.5.10 lib/terraspace/cli/cloud.rb
terraspace-0.5.9 lib/terraspace/cli/cloud.rb
terraspace-0.5.8 lib/terraspace/cli/cloud.rb
terraspace-0.5.7 lib/terraspace/cli/cloud.rb
terraspace-0.5.6 lib/terraspace/cli/cloud.rb
terraspace-0.5.5 lib/terraspace/cli/cloud.rb
terraspace-0.5.4 lib/terraspace/cli/cloud.rb
terraspace-0.5.3 lib/terraspace/cli/cloud.rb
terraspace-0.5.2 lib/terraspace/cli/cloud.rb
terraspace-0.5.1 lib/terraspace/cli/cloud.rb
terraspace-0.5.0 lib/terraspace/cli/cloud.rb
terraspace-0.4.4 lib/terraspace/cli/cloud.rb