module CfScript

Constants

VERSION

Attributes

cf_call_count[RW]
cf_call_stack[RW]
configuration[RW]
definitions[RW]

Public Instance Methods

cf(options = {}, &block) click to toggle source
# File lib/cf_script.rb, line 59
def cf(options = {}, &block)
  @cf_call_count ||= 0
  @cf_call_stack ||= []

  if @cf_call_count == 0
    info :cf, CfScript::Command::Runner.cf_id
  end

  @cf_call_count += 1
  @cf_call_stack.push CfScript::Scope::Script.new(options)
  @cf_call_stack.last.run(&block)
rescue StandardError => e
  print_error(e)
ensure
  @cf_call_stack.last.finalize if @cf_call_stack.last
  @cf_call_stack.pop
end
config() click to toggle source
# File lib/cf_script.rb, line 27
def config
  @configuration ||= Config.new
end
configure() { |config| ... } click to toggle source
# File lib/cf_script.rb, line 31
def configure
  block_given? ? yield(config) : config
end
define(app_name, &block) click to toggle source
# File lib/cf_script.rb, line 47
def define(app_name, &block)
  @definitions ||= {}
  @definitions[app_name] = AppSpec.new(name: app_name).tap do |spec|
    spec.instance_exec(&block)
  end
end
manifest(path = nil) click to toggle source
# File lib/cf_script.rb, line 43
def manifest(path = nil)
  @manifest ||= CfScript::Manifest.new(path)
end
print_error(e) click to toggle source
spec_for(app_name) click to toggle source
# File lib/cf_script.rb, line 54
def spec_for(app_name)
  @definitions ||= {}
  @definitions[app_name]
end
stack_level() click to toggle source
# File lib/cf_script.rb, line 77
def stack_level
  @cf_call_stack.length - 1
end
stderr() click to toggle source
# File lib/cf_script.rb, line 39
def stderr
  config.io.stderr
end
stdout() click to toggle source
# File lib/cf_script.rb, line 35
def stdout
  config.io.stdout
end