2016-12-08 11:36:26 -05:00
|
|
|
# Base class for deployment services
|
|
|
|
#
|
|
|
|
# These services integrate with a deployment solution like Kubernetes/OpenShift,
|
|
|
|
# Mesosphere, etc, to provide additional features to environments.
|
|
|
|
class DeploymentService < Service
|
|
|
|
default_value_for :category, 'deployment'
|
|
|
|
|
2016-12-27 07:44:24 -05:00
|
|
|
def self.supported_events
|
|
|
|
%w()
|
2016-12-08 11:36:26 -05:00
|
|
|
end
|
2016-12-16 07:24:03 -05:00
|
|
|
|
|
|
|
def predefined_variables
|
|
|
|
[]
|
|
|
|
end
|
2016-11-22 14:55:56 -05:00
|
|
|
|
|
|
|
# Environments may have a number of terminals. Should return an array of
|
|
|
|
# hashes describing them, e.g.:
|
|
|
|
#
|
|
|
|
# [{
|
|
|
|
# :selectors => {"a" => "b", "foo" => "bar"},
|
|
|
|
# :url => "wss://external.example.com/exec",
|
|
|
|
# :headers => {"Authorization" => "Token xxx"},
|
|
|
|
# :subprotocols => ["foo"],
|
|
|
|
# :ca_pem => "----BEGIN CERTIFICATE...", # optional
|
|
|
|
# :created_at => Time.now.utc
|
|
|
|
# }]
|
|
|
|
#
|
|
|
|
# Selectors should be a set of values that uniquely identify a particular
|
|
|
|
# terminal
|
|
|
|
def terminals(environment)
|
|
|
|
raise NotImplementedError
|
|
|
|
end
|
2016-12-08 11:36:26 -05:00
|
|
|
end
|