mirror of
https://github.com/czhu12/canine.git
synced 2025-12-31 00:10:14 -06:00
clean code
This commit is contained in:
@@ -1,12 +1,9 @@
|
||||
class Clusters::CreateNamespace
|
||||
extend LightService::Action
|
||||
|
||||
expects :cluster, :user
|
||||
expects :kubectl
|
||||
|
||||
executed do |context|
|
||||
cluster = context.cluster
|
||||
runner = Cli::RunAndLog.new(cluster)
|
||||
kubectl = K8::Kubectl.new(K8::Connection.new(cluster, context.user), runner)
|
||||
kubectl.apply_yaml(K8::Namespace.new(Struct.new(:name).new(Clusters::Install::DEFAULT_NAMESPACE)).to_yaml)
|
||||
context.kubectl.apply_yaml(K8::Namespace.new(Struct.new(:name).new(Clusters::Install::DEFAULT_NAMESPACE)).to_yaml)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -3,7 +3,6 @@ class Clusters::Install
|
||||
extend LightService::Organizer
|
||||
|
||||
def self.call(cluster, user)
|
||||
cluster.installing!
|
||||
result = with(cluster:, user:).reduce(
|
||||
Clusters::IsReady,
|
||||
Clusters::CreateNamespace,
|
||||
|
||||
@@ -1,13 +1,12 @@
|
||||
class Clusters::InstallAcmeIssuer
|
||||
extend LightService::Action
|
||||
|
||||
expects :cluster, :user
|
||||
expects :cluster, :kubectl
|
||||
|
||||
executed do |context|
|
||||
cluster = context.cluster
|
||||
kubectl = context.kubectl
|
||||
cluster.info("Checking if acme issuer is already installed", color: :yellow)
|
||||
runner = Cli::RunAndLog.new(cluster)
|
||||
kubectl = K8::Kubectl.new(K8::Connection.new(cluster, context.user), runner)
|
||||
begin
|
||||
kubectl.("get clusterissuer letsencrypt -n #{Clusters::Install::DEFAULT_NAMESPACE}")
|
||||
cluster.success("Acme issuer is already installed")
|
||||
|
||||
@@ -1,12 +1,11 @@
|
||||
class Clusters::InstallMetricServer
|
||||
extend LightService::Action
|
||||
|
||||
expects :cluster, :user
|
||||
expects :cluster, :kubectl
|
||||
|
||||
executed do |context|
|
||||
cluster = context.cluster
|
||||
runner = Cli::RunAndLog.new(cluster)
|
||||
kubectl = K8::Kubectl.new(K8::Connection.new(cluster, context.user), runner)
|
||||
kubectl = context.kubectl
|
||||
cluster.info("Checking if metric server is already installed...", color: :yellow)
|
||||
|
||||
begin
|
||||
|
||||
@@ -1,12 +1,11 @@
|
||||
class Clusters::InstallNginxIngress
|
||||
extend LightService::Action
|
||||
|
||||
expects :cluster, :user
|
||||
expects :kubectl, :cluster
|
||||
|
||||
executed do |context|
|
||||
cluster = context.cluster
|
||||
runner = Cli::RunAndLog.new(cluster)
|
||||
kubectl = K8::Kubectl.new(K8::Connection.new(cluster, context.user), runner)
|
||||
kubectl = context.kubectl
|
||||
cluster.info("Checking if Nginx ingress controller is already installed...", color: :yellow)
|
||||
|
||||
begin
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
class Clusters::InstallTelepresence
|
||||
extend LightService::Action
|
||||
expects :cluster, :user
|
||||
expects :cluster, :kubectl
|
||||
|
||||
executed do |context|
|
||||
cluster = context.cluster
|
||||
runner = Cli::RunAndLog.new(cluster)
|
||||
kubectl = K8::Kubectl.new(K8::Connection.new(cluster, context.user), runner)
|
||||
kubectl = context.kubectl
|
||||
cluster.info("Checking if Telepresence is already installed...", color: :yellow)
|
||||
|
||||
begin
|
||||
|
||||
@@ -2,16 +2,20 @@ class Clusters::IsReady
|
||||
extend LightService::Action
|
||||
|
||||
expects :cluster, :user
|
||||
promises :kubectl
|
||||
|
||||
executed do |context|
|
||||
cluster = context.cluster
|
||||
client = K8::Client.new(K8::Connection.new(cluster, context.user))
|
||||
connection = K8::Connection.new(cluster, context.user)
|
||||
client = K8::Client.new(connection)
|
||||
runner = Cli::RunAndLog.new(cluster)
|
||||
context.kubectl = K8::Kubectl.new(connection, runner)
|
||||
if client.can_connect?
|
||||
cluster.installing!
|
||||
cluster.success("Cluster is ready")
|
||||
else
|
||||
cluster.error("Cluster is not ready, retrying in 60 seconds...")
|
||||
context.fail!("Cluster is not ready")
|
||||
context.fail_and_return!("Cluster is not ready")
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user