Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
142 commits
Select commit Hold shift + click to select a range
88c8b57
cks: initial functionality
shwstppr Nov 1, 2019
168721e
made script dynamic
shwstppr Nov 19, 2019
4fba0e8
fix for delete cluster API response parsing
shwstppr Nov 19, 2019
a11e523
kubernetes version - added semantic version field
shwstppr Nov 27, 2019
40954fd
ha, multi-master support
shwstppr Nov 27, 2019
25168c2
added master nodes count in API response
shwstppr Nov 27, 2019
2667387
[wip] refactoring
shwstppr Nov 27, 2019
fecada1
script usage, ouput fix
shwstppr Nov 28, 2019
6fe9723
upgrade cluster funtionality
shwstppr Nov 28, 2019
a40e08d
ui error fix
shwstppr Nov 28, 2019
8baf877
fixes, refactoring
shwstppr Nov 29, 2019
906d69e
fix for cluster restart issue
shwstppr Dec 2, 2019
7ce3104
fixed order of sql statements causing upgrade error
shwstppr Dec 2, 2019
b7d24ed
server: added method for retrieving available public IP
shwstppr Dec 5, 2019
b099b17
fixes
shwstppr Dec 5, 2019
051427d
increased cluster api server up timeout
shwstppr Dec 6, 2019
93a2198
moved binaries script to cloustack-common
shwstppr Dec 8, 2019
8806aa2
dropped consoleendpoint column from kubernetes_cluster
shwstppr Dec 8, 2019
16c3ce8
reafctorings, fixes
shwstppr Dec 8, 2019
1aa3274
added version name constant
shwstppr Dec 8, 2019
0e57ec3
fixed cluster access tab
shwstppr Dec 8, 2019
56e31d1
refactoring
shwstppr Dec 9, 2019
c738ca9
fixed upgrade icon
shwstppr Dec 9, 2019
76001c1
refactorings
shwstppr Dec 9, 2019
1e3e903
nodeRootDiskSize value check
shwstppr Dec 9, 2019
436ea03
fix for wrong parameter name for zoneid
shwstppr Dec 9, 2019
1a6feeb
added output path handling
shwstppr Dec 9, 2019
a8e3e21
script fixes
shwstppr Dec 9, 2019
ffaef96
remove acl for kubernetesversionid parameter
shwstppr Dec 9, 2019
45dd502
fix for iso ready check, increased timeouts
shwstppr Dec 13, 2019
b969d46
refactoring
shwstppr Dec 13, 2019
7e4228c
fixes
shwstppr Dec 16, 2019
96365ce
added check for iso state for upgrade
shwstppr Dec 17, 2019
232a1f7
added logs during upgrade
shwstppr Dec 17, 2019
9957d8f
[wip] code review refactorings
shwstppr Jan 2, 2020
0f4ea44
version related fixes
shwstppr Jan 5, 2020
3dca938
refactorings
shwstppr Jan 5, 2020
716ea3d
added smoke test for kubernetes version
shwstppr Jan 5, 2020
da8b221
made name optional param for addKubernetesSupportedVersion
shwstppr Jan 6, 2020
1853208
fixes
shwstppr Jan 8, 2020
0977fe6
wip unit test added
shwstppr Jan 8, 2020
f9a558a
fixes
shwstppr Jan 8, 2020
9602ddd
removed unused method
shwstppr Jan 8, 2020
9f16bec
add, delete version implements AdminCmd
shwstppr Jan 8, 2020
291e2b0
javadoc change
shwstppr Jan 8, 2020
8383439
fixed exception message
shwstppr Jan 8, 2020
f11ff1c
added check for CKS enabled
shwstppr Jan 8, 2020
7632e5f
added integration test for Kubernetes cluster
shwstppr Jan 8, 2020
d97abee
fixed node name case for kubectl
shwstppr Jan 8, 2020
6fcad49
fixed failing upgrade cluster test
shwstppr Jan 8, 2020
7accba3
logging refactoring
shwstppr Jan 8, 2020
1a2aa56
version comparison changes
shwstppr Jan 8, 2020
8bbac07
fixed upgrade negative test
shwstppr Jan 8, 2020
51a6aa7
include null domainid fix
shwstppr Jan 9, 2020
1a907cf
added javadoc
shwstppr Jan 9, 2020
ab427c1
added javadoc
shwstppr Jan 9, 2020
3e3840b
refactoring
shwstppr Jan 10, 2020
e7c453a
fixes for upgrade failure
shwstppr Jan 10, 2020
b9e8e39
cluster test improvement
shwstppr Jan 10, 2020
b920cf7
cluster start stop fixes
shwstppr Jan 12, 2020
1aa449c
scale cluster fixes
shwstppr Jan 12, 2020
b46dcc6
deploy test changes
shwstppr Jan 13, 2020
f8e326b
refactorings
shwstppr Jan 13, 2020
323b13d
mark failed destroy for GC
shwstppr Jan 14, 2020
a2b0a0e
refactorings
shwstppr Jan 14, 2020
e344a14
added centos install commands
shwstppr Jan 14, 2020
6948e15
scale cluster improvement
shwstppr Jan 14, 2020
24f0ba8
fixed delete condition check
shwstppr Jan 14, 2020
797ce7a
fixed PATH updation
shwstppr Jan 14, 2020
e6d1f1a
Merge branch 'master' into feature-cks
shwstppr Jan 14, 2020
fd7de01
refactored long method
shwstppr Jan 14, 2020
e1ef531
refactored long IpAddressManager method
shwstppr Jan 14, 2020
ad347c3
changed scaling timeout
shwstppr Jan 14, 2020
c1c2696
fixed license issue
shwstppr Jan 14, 2020
85e08ad
moved integration test to root test dir
shwstppr Jan 14, 2020
2ec7edd
fix for management server restart if plugin disabled
shwstppr Jan 15, 2020
165a27d
fixed MS restart and template, iso ready timeouts
shwstppr Jan 15, 2020
d4d7885
fail on exception
shwstppr Jan 15, 2020
8685251
fix for GC
shwstppr Jan 17, 2020
aed8bb0
fix for patch version upgrade
shwstppr Jan 17, 2020
deb5830
fix for version ISO missing check
shwstppr Jan 17, 2020
7621783
test setup, improvements
shwstppr Jan 17, 2020
587b582
kubernetes version iso will be system and alwys deleted
shwstppr Jan 17, 2020
a4f6445
replaced accessing api cmd field names with getters
shwstppr Jan 19, 2020
175358c
increased timeouts value
shwstppr Jan 19, 2020
004af01
changes for global setting timeout for cluster action
shwstppr Jan 21, 2020
741cf7a
fix for making version ISO public
shwstppr Jan 22, 2020
c138142
fix for transitioning state on attach iso fail
shwstppr Jan 22, 2020
b69e7c0
fix for expunge error for user
shwstppr Jan 22, 2020
094ef10
fix for scaling issues
shwstppr Jan 22, 2020
90d4125
changed kubeconfig file name
shwstppr Jan 23, 2020
852976f
added licenses in config files
shwstppr Jan 28, 2020
0a9be56
test changes
shwstppr Jan 29, 2020
446f214
made description required for cluster creation
shwstppr Jan 29, 2020
3d6b7f1
changes for destroying cluster vm
shwstppr Jan 29, 2020
583e46c
added null pointer check
shwstppr Jan 30, 2020
53ac5ec
admin should see full view
shwstppr Jan 30, 2020
23c2a81
refactorings
shwstppr Jan 30, 2020
895632b
changes for k8s version
shwstppr Jan 30, 2020
bed947b
Merge branch 'master' into feature-cks
shwstppr Jan 30, 2020
86d5363
fixed param description error
shwstppr Jan 30, 2020
10b6c34
changes for vm start failures
shwstppr Jan 31, 2020
f1d8e22
fix for create vm exception
shwstppr Jan 31, 2020
d670c55
changes for multiple hypervisor specific template global settings
shwstppr Feb 3, 2020
e6bb497
fix for cluster node VM name
shwstppr Feb 4, 2020
0f4e4b9
Merge branch 'master' into feature-cks
shwstppr Feb 5, 2020
d11e261
k8s config changes, iso eject
shwstppr Feb 5, 2020
b63f5f6
destroy improvement
shwstppr Feb 5, 2020
e0f9c20
upgrade script changes
shwstppr Feb 5, 2020
ba08fb8
changes for making mincpu and minram required for version
shwstppr Feb 12, 2020
1a759ab
hypervisor specific CKS template name
shwstppr Feb 12, 2020
b6e0ac9
added k8s cluster experimental features
shwstppr Feb 12, 2020
982eed2
Merge branch 'master' into feature-cks
shwstppr Feb 12, 2020
6d5aabc
Merge branch 'master' into feature-cks
shwstppr Feb 12, 2020
c32dcfa
master merge fix
shwstppr Feb 12, 2020
ba6c6f8
test changes for required params version API
shwstppr Feb 12, 2020
f8eb6fd
test fixes
shwstppr Feb 12, 2020
fd0cd9c
scale failure fix
shwstppr Feb 19, 2020
4ead5d0
cluster node duplicate name fix
shwstppr Feb 19, 2020
b7ead47
fix for supported service offerings for scale
shwstppr Feb 19, 2020
7a17108
vmware cluster node expunge fix
shwstppr Feb 19, 2020
2f92584
cluster node vm expunge fix
shwstppr Feb 19, 2020
81fbfc8
display access tab for more states
shwstppr Feb 20, 2020
4950b3b
hide node vm internal name for nod-admins
shwstppr Feb 20, 2020
c28fec3
download config action improvement
shwstppr Feb 20, 2020
d967a74
fix for project in k8s clusters
shwstppr Feb 20, 2020
54ec1cf
kube config fix
shwstppr Feb 22, 2020
00f4bf4
smoke test template format fix
shwstppr Feb 22, 2020
24728ff
Merge branch 'master' into feature-cks
shwstppr Feb 22, 2020
0c86833
fix missing firewall removal
shwstppr Feb 22, 2020
5c09ad1
fix upgrade version same semantic version in ui
shwstppr Feb 22, 2020
26d0a2f
fix test vmware template settings
shwstppr Feb 23, 2020
1bde9d6
eject iso from os conditionally
shwstppr Feb 23, 2020
a55c018
fix wrong check for smae semantic version filtering
shwstppr Feb 24, 2020
69a30d5
remove redundant fields in details tab
shwstppr Feb 24, 2020
0f05551
Merge branch 'master' into feature-cks
shwstppr Feb 26, 2020
a58b092
move default CKS network creation in java code
shwstppr Feb 26, 2020
f1830e0
enable egress policy
shwstppr Feb 26, 2020
a755b26
scaling improvements
shwstppr Feb 28, 2020
30e71ee
down scaling fix
shwstppr Feb 28, 2020
bf38e62
scale down
shwstppr Feb 28, 2020
3900385
Merge branch 'master' into feature-cks
shwstppr Mar 4, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 18 additions & 1 deletion api/src/main/java/org/apache/cloudstack/api/ApiConstants.java
Original file line number Diff line number Diff line change
Expand Up @@ -225,8 +225,8 @@ public class ApiConstants {
public static final String LOCK = "lock";
public static final String LUN = "lun";
public static final String LBID = "lbruleid";
public static final String MAX = "max";
public static final String MAC_ADDRESS = "macaddress";
public static final String MAX = "max";
public static final String MAX_SNAPS = "maxsnaps";
public static final String MAX_CPU_NUMBER = "maxcpunumber";
public static final String MAX_MEMORY = "maxmemory";
Expand Down Expand Up @@ -782,6 +782,23 @@ public class ApiConstants {
public static final String LAST_UPDATED = "lastupdated";
public static final String PERFORM_FRESH_CHECKS = "performfreshchecks";

public static final String CONSOLE_END_POINT = "consoleendpoint";
public static final String EXTERNAL_LOAD_BALANCER_IP_ADDRESS = "externalloadbalanceripaddress";
public static final String DOCKER_REGISTRY_USER_NAME = "dockerregistryusername";
public static final String DOCKER_REGISTRY_PASSWORD = "dockerregistrypassword";
public static final String DOCKER_REGISTRY_URL = "dockerregistryurl";
public static final String DOCKER_REGISTRY_EMAIL = "dockerregistryemail";
public static final String ISO_NAME = "isoname";
public static final String ISO_STATE = "isostate";
public static final String SEMANTIC_VERSION = "semanticversion";
public static final String KUBERNETES_VERSION_ID = "kubernetesversionid";
public static final String KUBERNETES_VERSION_NAME = "kubernetesversionname";
public static final String MASTER_NODES = "masternodes";
public static final String MIN_SEMANTIC_VERSION = "minimumsemanticversion";
public static final String MIN_KUBERNETES_VERSION_ID = "minimumkubernetesversionid";
public static final String NODE_ROOT_DISK_SIZE = "noderootdisksize";
public static final String SUPPORTS_HA = "supportsha";

public enum HostDetails {
all, capacity, events, stats, min;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,8 @@ public void execute() {
response.setAllowUserExpungeRecoverVM((Boolean)capabilities.get("allowUserExpungeRecoverVM"));
response.setAllowUserExpungeRecoverVolume((Boolean)capabilities.get("allowUserExpungeRecoverVolume"));
response.setAllowUserViewAllDomainAccounts((Boolean)capabilities.get("allowUserViewAllDomainAccounts"));
response.setKubernetesServiceEnabled((Boolean)capabilities.get("kubernetesServiceEnabled"));
response.setKubernetesClusterExperimentalFeaturesEnabled((Boolean)capabilities.get("kubernetesClusterExperimentalFeaturesEnabled"));
if (capabilities.containsKey("apiLimitInterval")) {
response.setApiLimitInterval((Integer)capabilities.get("apiLimitInterval"));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,10 @@ public Long getId() {
return id;
}

public void setId(Long id) {
this.id = id;
}

public Long getZoneId() {
return zoneId;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -127,10 +127,18 @@ public Boolean isBootable() {
return bootable;
}

public void setBootable(Boolean bootable) {
this.bootable = bootable;
}

public String getDisplayText() {
return displayText;
}

public void setDisplayText(String displayText) {
this.displayText = displayText;
}

public Boolean isFeatured() {
return featured;
}
Expand All @@ -139,6 +147,10 @@ public Boolean isPublic() {
return publicIso;
}

public void setPublic(Boolean publicIso) {
this.publicIso = publicIso;
}

public Boolean isExtractable() {
return extractable;
}
Expand All @@ -147,6 +159,10 @@ public String getIsoName() {
return isoName;
}

public void setIsoName(String isoName) {
this.isoName = isoName;
}

public Long getOsTypeId() {
return osTypeId;
}
Expand All @@ -155,22 +171,42 @@ public String getUrl() {
return url;
}

public void setUrl(String url) {
this.url = url;
}

public Long getZoneId() {
return zoneId;
}

public void setZoneId(Long zoneId) {
this.zoneId = zoneId;
}

public Long getDomainId() {
return domainId;
}

public void setDomainId(Long domainId) {
this.domainId = domainId;
}

public String getAccountName() {
return accountName;
}

public void setAccountName(String accountName) {
this.accountName = accountName;
}

public String getChecksum() {
return checksum;
}

public void setChecksum(String checksum) {
this.checksum = checksum;
}

public String getImageStoreUuid() {
return imageStoreUuid;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,14 @@ public class CapabilitiesResponse extends BaseResponse {
@Param(description = "true if users can see all accounts within the same domain, false otherwise")
private boolean allowUserViewAllDomainAccounts;

@SerializedName("kubernetesserviceenabled")
@Param(description = "true if Kubernetes Service plugin is enabled, false otherwise")
private boolean kubernetesServiceEnabled;

@SerializedName("kubernetesclusterexperimentalfeaturesenabled")
@Param(description = "true if experimental features for Kubernetes cluster such as Docker private registry are enabled, false otherwise")
private boolean kubernetesClusterExperimentalFeaturesEnabled;

public void setSecurityGroupsEnabled(boolean securityGroupsEnabled) {
this.securityGroupsEnabled = securityGroupsEnabled;
}
Expand Down Expand Up @@ -159,4 +167,12 @@ public void setAllowUserExpungeRecoverVolume(boolean allowUserExpungeRecoverVolu
public void setAllowUserViewAllDomainAccounts(boolean allowUserViewAllDomainAccounts) {
this.allowUserViewAllDomainAccounts = allowUserViewAllDomainAccounts;
}

public void setKubernetesServiceEnabled(boolean kubernetesServiceEnabled) {
this.kubernetesServiceEnabled = kubernetesServiceEnabled;
}

public void setKubernetesClusterExperimentalFeaturesEnabled(boolean kubernetesClusterExperimentalFeaturesEnabled) {
this.kubernetesClusterExperimentalFeaturesEnabled = kubernetesClusterExperimentalFeaturesEnabled;
}
}
5 changes: 5 additions & 0 deletions client/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -483,6 +483,11 @@
<artifactId>cloud-plugin-backup-dummy</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.cloudstack</groupId>
<artifactId>cloud-plugin-integrations-kubernetes-service</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
<build>
<plugins>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -175,6 +175,9 @@ IpAddress allocateIp(Account ipOwner, boolean isSystem, Account caller, long cal
PublicIp assignPublicIpAddressFromVlans(long dcId, Long podId, Account owner, VlanType type, List<Long> vlanDbIds, Long networkId, String requestedIp, boolean isSystem)
throws InsufficientAddressCapacityException;

PublicIp getAvailablePublicIpAddressFromVlans(long dcId, Long podId, Account owner, VlanType type, List<Long> vlanDbIds, Long networkId, String requestedIp, boolean isSystem)
throws InsufficientAddressCapacityException;

@DB
void allocateNicValues(NicProfile nic, DataCenter dc, VirtualMachineProfile vm, Network network, String requestedIpv4, String requestedIpv6)
throws InsufficientVirtualNetworkCapacityException, InsufficientAddressCapacityException;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -304,3 +304,74 @@ CREATE TABLE `cloud`.`router_health_check` (
UNIQUE `i_router_health_checks__router_id__check_name__check_type`(`router_id`, `check_name`, `check_type`),
INDEX `i_router_health_checks__router_id`(`router_id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

-- Kubernetes service
CREATE TABLE IF NOT EXISTS `cloud`.`kubernetes_supported_version` (
`id` bigint unsigned NOT NULL auto_increment,
`uuid` varchar(40) DEFAULT NULL,
`name` varchar(255) NOT NULL COMMENT 'the name of this Kubernetes version',
`semantic_version` varchar(32) NOT NULL COMMENT 'the semantic version for this Kubernetes version',
`iso_id` bigint unsigned NOT NULL COMMENT 'the ID of the binaries ISO for this Kubernetes version',
`zone_id` bigint unsigned DEFAULT NULL COMMENT 'the ID of the zone for which this Kubernetes version is made available',
`state` char(32) DEFAULT NULL COMMENT 'the enabled or disabled state for this Kubernetes version',
`min_cpu` int(10) unsigned NOT NULL COMMENT 'the minimum CPU needed by cluster nodes for using this Kubernetes version',
`min_ram_size` bigint(20) unsigned NOT NULL COMMENT 'the minimum RAM in MB needed by cluster nodes for this Kubernetes version',
`created` datetime NOT NULL COMMENT 'date created',
`removed` datetime COMMENT 'date removed or null, if still present',

PRIMARY KEY(`id`),
CONSTRAINT `fk_kubernetes_supported_version__iso_id` FOREIGN KEY `fk_kubernetes_supported_version__iso_id`(`iso_id`) REFERENCES `vm_template`(`id`) ON DELETE CASCADE,
CONSTRAINT `fk_kubernetes_supported_version__zone_id` FOREIGN KEY `fk_kubernetes_supported_version__zone_id`(`zone_id`) REFERENCES `data_center` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE IF NOT EXISTS `cloud`.`kubernetes_cluster` (
`id` bigint unsigned NOT NULL auto_increment,
`uuid` varchar(40) DEFAULT NULL,
`name` varchar(255) NOT NULL,
`description` varchar(4096) COMMENT 'display text for this Kubernetes cluster',
`zone_id` bigint unsigned NOT NULL COMMENT 'the ID of the zone in which this Kubernetes cluster is deployed',
`kubernetes_version_id` bigint unsigned NOT NULL COMMENT 'the ID of the Kubernetes version of this Kubernetes cluster',
`service_offering_id` bigint unsigned COMMENT 'service offering id for the cluster VM',
`template_id` bigint unsigned COMMENT 'the ID of the template used by this Kubernetes cluster',
`network_id` bigint unsigned COMMENT 'the ID of the network used by this Kubernetes cluster',
`master_node_count` bigint NOT NULL default '0' COMMENT 'the number of the master nodes deployed for this Kubernetes cluster',
`node_count` bigint NOT NULL default '0' COMMENT 'the number of the worker nodes deployed for this Kubernetes cluster',
`account_id` bigint unsigned NOT NULL COMMENT 'the ID of owner account of this Kubernetes cluster',
`domain_id` bigint unsigned NOT NULL COMMENT 'the ID of the domain of this cluster',
`state` char(32) NOT NULL COMMENT 'the current state of this Kubernetes cluster',
`key_pair` varchar(40),
`cores` bigint unsigned NOT NULL COMMENT 'total number of CPU cores used by this Kubernetes cluster',
`memory` bigint unsigned NOT NULL COMMENT 'total memory used by this Kubernetes cluster',
`node_root_disk_size` bigint(20) unsigned DEFAULT 0 COMMENT 'root disk size of root disk for each node',
`endpoint` varchar(255) COMMENT 'url endpoint of the Kubernetes cluster manager api access',
`created` datetime NOT NULL COMMENT 'date created',
`removed` datetime COMMENT 'date removed or null, if still present',
`gc` tinyint unsigned NOT NULL DEFAULT 1 COMMENT 'gc this Kubernetes cluster or not',

PRIMARY KEY(`id`),
CONSTRAINT `fk_cluster__zone_id` FOREIGN KEY `fk_cluster__zone_id`(`zone_id`) REFERENCES `data_center` (`id`) ON DELETE CASCADE,
CONSTRAINT `fk_cluster__kubernetes_version_id` FOREIGN KEY `fk_cluster__kubernetes_version_id`(`kubernetes_version_id`) REFERENCES `kubernetes_supported_version` (`id`) ON DELETE CASCADE,
CONSTRAINT `fk_cluster__service_offering_id` FOREIGN KEY `fk_cluster__service_offering_id`(`service_offering_id`) REFERENCES `service_offering`(`id`) ON DELETE CASCADE,
CONSTRAINT `fk_cluster__template_id` FOREIGN KEY `fk_cluster__template_id`(`template_id`) REFERENCES `vm_template`(`id`) ON DELETE CASCADE,
CONSTRAINT `fk_cluster__network_id` FOREIGN KEY `fk_cluster__network_id`(`network_id`) REFERENCES `networks`(`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE IF NOT EXISTS `cloud`.`kubernetes_cluster_vm_map` (
`id` bigint unsigned NOT NULL auto_increment,
`cluster_id` bigint unsigned NOT NULL COMMENT 'the ID of the Kubernetes cluster',
`vm_id` bigint unsigned NOT NULL COMMENT 'the ID of the VM',

PRIMARY KEY(`id`),
CONSTRAINT `fk_kubernetes_cluster_vm_map__cluster_id` FOREIGN KEY `fk_kubernetes_cluster_vm_map__cluster_id`(`cluster_id`) REFERENCES `kubernetes_cluster`(`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE IF NOT EXISTS `cloud`.`kubernetes_cluster_details` (
`id` bigint unsigned NOT NULL auto_increment,
`cluster_id` bigint unsigned NOT NULL COMMENT 'the ID of the Kubernetes cluster',
`name` varchar(255) NOT NULL,
`value` varchar(10240) NOT NULL,
`display` tinyint(1) NOT NULL DEFAULT '1' COMMENT 'True if the detail can be displayed to the end user else false',

PRIMARY KEY(`id`),
CONSTRAINT `fk_kubernetes_cluster_details__cluster_id` FOREIGN KEY `fk_kubernetes_cluster_details__cluster_id`(`cluster_id`) REFERENCES `kubernetes_cluster`(`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
135 changes: 135 additions & 0 deletions plugins/integrations/kubernetes-service/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">

<modelVersion>4.0.0</modelVersion>
<artifactId>cloud-plugin-integrations-kubernetes-service</artifactId>
<name>Apache CloudStack Plugin - Kubernetes Service</name>
<parent>
<groupId>org.apache.cloudstack</groupId>
<artifactId>cloudstack-plugins</artifactId>
<version>4.14.0.0-SNAPSHOT</version>
<relativePath>../../pom.xml</relativePath>
</parent>
<dependencies>
<dependency>
<groupId>org.apache.cloudstack</groupId>
<artifactId>cloud-core</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.cloudstack</groupId>
<artifactId>cloud-framework-db</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.cloudstack</groupId>
<artifactId>cloud-framework-ca</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.cloudstack</groupId>
<artifactId>cloud-framework-security</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.cloudstack</groupId>
<artifactId>cloud-engine-schema</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.cloudstack</groupId>
<artifactId>cloud-engine-api</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.cloudstack</groupId>
<artifactId>cloud-engine-components-api</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.cloudstack</groupId>
<artifactId>cloud-framework-managed-context</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>javax.persistence</artifactId>
<version>${cs.jpa.version}</version>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>${cs.gson.version}</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>${cs.guava.version}</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>${cs.log4j.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${org.springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>${org.springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${org.springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${org.springframework.version}</version>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>${cs.codec.version}</version>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-library</artifactId>
<version>${cs.hamcrest.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk15on</artifactId>
<version>${cs.bcprov.version}</version>
</dependency>
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>${cs.joda-time.version}</version>
</dependency>
</dependencies>
</project>
Loading