Class: Cyclid::API::Plugins::Builder

Inherits:
Base
  • Object
show all
Defined in:
app/cyclid/plugins/builder.rb

Overview

Base class for Builders

Direct Known Subclasses

Docker, Google

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Base

author, config?, config_schema, default_config, get_config, homepage, license, metadata, register_plugin, set_config, update_config, version

Constructor Details

#initialize(*args) ⇒ Builder

Create a build host, probably on a remote system, and return information about it in a BuildHost object that encapsulates the information about it.



55
56
# File 'app/cyclid/plugins/builder.rb', line 55

def initialize(*args)
end

Class Method Details

.human_nameObject

Return the ‘human’ name for the plugin type



59
60
61
# File 'app/cyclid/plugins/builder.rb', line 59

def self.human_name
  'builder'
end

Instance Method Details

#get(*args) ⇒ Object

Get or create a build host that can be used by a job. Args will be things like the OS & version required, taken from the ‘environment’ section of the job definition.

The Builder can call out to external service E.g. AWS, DO, RAX etc. or return an existing instance from a pool



69
70
# File 'app/cyclid/plugins/builder.rb', line 69

def get(*args)
end

#release(_transport, _buildhost) ⇒ Object

Shut down/release/destroy (if appropriate) the build host



73
74
# File 'app/cyclid/plugins/builder.rb', line 73

def release(_transport, _buildhost)
end