From 18354defc7c3692e3aa1a60728e0a8e22b78e0c5 Mon Sep 17 00:00:00 2001 From: Karan Thukral Date: Wed, 29 Jan 2020 11:25:31 -0500 Subject: [PATCH 1/2] Remove cloudsql hardcoded resource --- CHANGELOG.md | 1 + lib/krane/deploy_task.rb | 1 - lib/krane/kubernetes_resource/cloudsql.rb | 44 --------------------- test/unit/krane/kubernetes_resource_test.rb | 8 ---- 4 files changed, 1 insertion(+), 53 deletions(-) delete mode 100644 lib/krane/kubernetes_resource/cloudsql.rb diff --git a/CHANGELOG.md b/CHANGELOG.md index 31d1a8510..131bfd5c4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ *Other* - Reduces the number of container logs printed for failures from 250 to 25 to reduce noise. [#676](https://github.com/Shopify/krane/pull/676) +- Remove hardcoded clousql class. []() ## 1.1.1 diff --git a/lib/krane/deploy_task.rb b/lib/krane/deploy_task.rb index 34e248e65..b9f6dc39b 100644 --- a/lib/krane/deploy_task.rb +++ b/lib/krane/deploy_task.rb @@ -10,7 +10,6 @@ require 'krane/kubernetes_resource' %w( custom_resource - cloudsql config_map deployment ingress diff --git a/lib/krane/kubernetes_resource/cloudsql.rb b/lib/krane/kubernetes_resource/cloudsql.rb deleted file mode 100644 index 5eff76138..000000000 --- a/lib/krane/kubernetes_resource/cloudsql.rb +++ /dev/null @@ -1,44 +0,0 @@ -# frozen_string_literal: true -module Krane - class Cloudsql < KubernetesResource - TIMEOUT = 10.minutes - SYNC_DEPENDENCIES = %w(Deployment Service) - - def sync(cache) - super - @proxy_deployment = cache.get_instance(Deployment.kind, "cloudsql-#{cloudsql_resource_uuid}") - @proxy_service = cache.get_instance(Service.kind, "cloudsql-#{@name}") - end - - def status - deploy_succeeded? ? "Provisioned" : "Unknown" - end - - def deploy_succeeded? - proxy_deployment_ready? && proxy_service_ready? - end - - def deploy_failed? - false - end - - private - - def proxy_deployment_ready? - return false unless (status = @proxy_deployment["status"]) - # all cloudsql-proxy pods are running - status.fetch("availableReplicas", -1) == status.fetch("replicas", 0) - end - - def proxy_service_ready? - return false unless @proxy_service.present? - # the service has an assigned cluster IP and is therefore functioning - @proxy_service.dig("spec", "clusterIP").present? - end - - def cloudsql_resource_uuid - return unless @instance_data - @instance_data.dig("metadata", "uid") - end - end -end diff --git a/test/unit/krane/kubernetes_resource_test.rb b/test/unit/krane/kubernetes_resource_test.rb index f5153ff03..c39349fd8 100644 --- a/test/unit/krane/kubernetes_resource_test.rb +++ b/test/unit/krane/kubernetes_resource_test.rb @@ -454,14 +454,6 @@ def test_lowercase_custom_resource_kind_does_not_raise end def test_build_handles_hardcoded_and_core_and_dynamic_objects - # Hardcoded CRs - cloudsql_crd = Krane::KubernetesResource.build(namespace: "test", context: "test", - logger: @logger, statsd_tags: [], definition: build_crd(name: "cloudsql")) - cloudsql_cr = Krane::KubernetesResource.build(namespace: "test", context: "test", - logger: @logger, statsd_tags: [], crd: cloudsql_crd, - definition: { "kind" => "Cloudsql", "metadata" => { "name" => "test" } }) - assert_equal(cloudsql_cr.class, Krane::Cloudsql) - # Dynamic with no rollout config no_config_crd = Krane::KubernetesResource.build(namespace: "test", context: "test", logger: @logger, statsd_tags: [], definition: build_crd(name: "noconfig")) From bfdb441b302ef64a001880d0bb488facef3e8f85 Mon Sep 17 00:00:00 2001 From: Karan Thukral Date: Wed, 29 Jan 2020 11:28:28 -0500 Subject: [PATCH 2/2] Add link to PR for changelog --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 131bfd5c4..c13becb2f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,7 +7,7 @@ *Other* - Reduces the number of container logs printed for failures from 250 to 25 to reduce noise. [#676](https://github.com/Shopify/krane/pull/676) -- Remove hardcoded clousql class. []() +- Remove hardcoded cloudsql class. [#680](https://github.com/Shopify/krane/pull/680) ## 1.1.1