diff --git a/DockerInterfacesLibrary/package/Classes/DockerApplication.yaml b/DockerInterfacesLibrary/package/Classes/DockerApplication.yaml index 82e6fc2..7516e24 100644 --- a/DockerInterfacesLibrary/package/Classes/DockerApplication.yaml +++ b/DockerInterfacesLibrary/package/Classes/DockerApplication.yaml @@ -61,7 +61,6 @@ Methods: destroy: Body: - - $.host.deploy() - If: $.getAttr(container, null) != null Then: - $container: $.getContainer() diff --git a/DockerStandaloneHost/package/Classes/DockerStandaloneHost.yaml b/DockerStandaloneHost/package/Classes/DockerStandaloneHost.yaml index 46454de..58ed9d6 100644 --- a/DockerStandaloneHost/package/Classes/DockerStandaloneHost.yaml +++ b/DockerStandaloneHost/package/Classes/DockerStandaloneHost.yaml @@ -273,7 +273,7 @@ Methods: - name: Contract: $.string().notNull() Body: - - If: $name in $.containers + - If: $name in $.containers and $.instance.isDeployed() Then: - $._environment.reporter.report($this, 'Deleting container {0}'.format($name)) - $._removeApplicationEndpoints($name) diff --git a/Kubernetes/KubernetesCluster/package/Classes/KubernetesCluster.yaml b/Kubernetes/KubernetesCluster/package/Classes/KubernetesCluster.yaml index 779d1be..6213e2f 100644 --- a/Kubernetes/KubernetesCluster/package/Classes/KubernetesCluster.yaml +++ b/Kubernetes/KubernetesCluster/package/Classes/KubernetesCluster.yaml @@ -63,12 +63,15 @@ Properties: Default: [] Usage: Out - Methods: initialize: Body: - $._environment: $.find(std:Environment).require() + isAvailable: + Body: + - Return: $.masterNode.isAvailable() + deploy: Body: diff --git a/Kubernetes/KubernetesCluster/package/Classes/KubernetesMasterNode.yaml b/Kubernetes/KubernetesCluster/package/Classes/KubernetesMasterNode.yaml index 1d711bb..4692af3 100644 --- a/Kubernetes/KubernetesCluster/package/Classes/KubernetesMasterNode.yaml +++ b/Kubernetes/KubernetesCluster/package/Classes/KubernetesMasterNode.yaml @@ -70,3 +70,7 @@ Methods: - $ip: coalesce($.instance.floatingIpAddress, $.getIp()) - $._environment.reporter.report($this, $msg.format($ip)) + isAvailable: + Body: + Return: $.instance.isDeployed() + diff --git a/Kubernetes/KubernetesPod/package/Classes/KubernetesPod.yaml b/Kubernetes/KubernetesPod/package/Classes/KubernetesPod.yaml index 8850c97..7959226 100644 --- a/Kubernetes/KubernetesPod/package/Classes/KubernetesPod.yaml +++ b/Kubernetes/KubernetesPod/package/Classes/KubernetesPod.yaml @@ -215,12 +215,14 @@ Methods: - name: Contract: $.string().notNull() Body: - - $._loadCurrentPodDefinition() - - $._deleteContainer($name) - - $.kubernetesCluster.deleteServices( - applicationName => $name, - podId => $._getPodName()) - - $.deploy() + - If: $.kubernetesCluster.isAvailable() + Then: + - $._loadCurrentPodDefinition() + - $._deleteContainer($name) + - $.kubernetesCluster.deleteServices( + applicationName => $name, + podId => $._getPodName()) + - $.deploy() _generateVolumeName: