Skip to content

Commit b62472d

Browse files
committed
fix k8s iso response
Signed-off-by: Abhishek Kumar <[email protected]>
1 parent f940220 commit b62472d

File tree

2 files changed

+22
-1
lines changed

2 files changed

+22
-1
lines changed

plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/version/KubernetesVersionManagerImpl.java

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222

2323
import javax.inject.Inject;
2424

25-
import com.cloud.cpu.CPU;
2625
import org.apache.cloudstack.api.ApiCommandResourceType;
2726
import org.apache.cloudstack.api.ApiConstants;
2827
import org.apache.cloudstack.api.command.admin.kubernetes.version.AddKubernetesSupportedVersionCmd;
@@ -38,6 +37,7 @@
3837

3938
import com.cloud.api.query.dao.TemplateJoinDao;
4039
import com.cloud.api.query.vo.TemplateJoinVO;
40+
import com.cloud.cpu.CPU;
4141
import com.cloud.dc.DataCenter;
4242
import com.cloud.dc.DataCenterVO;
4343
import com.cloud.dc.dao.DataCenterDao;
@@ -58,6 +58,7 @@
5858
import com.cloud.utils.component.ComponentContext;
5959
import com.cloud.utils.component.ManagerBase;
6060
import com.cloud.utils.db.Filter;
61+
import com.cloud.utils.db.JoinBuilder;
6162
import com.cloud.utils.db.SearchBuilder;
6263
import com.cloud.utils.db.SearchCriteria;
6364
import com.cloud.utils.exception.CloudRuntimeException;
@@ -268,6 +269,7 @@ public ListResponse<KubernetesSupportedVersionResponse> listKubernetesSupportedV
268269
final Long zoneId = cmd.getZoneId();
269270
String minimumSemanticVersion = cmd.getMinimumSemanticVersion();
270271
final Long minimumKubernetesVersionId = cmd.getMinimumKubernetesVersionId();
272+
final String arch = cmd.getArch();
271273
if (StringUtils.isNotEmpty(minimumSemanticVersion) && minimumKubernetesVersionId != null) {
272274
throw new CloudRuntimeException(String.format("Both parameters %s and %s can not be passed together", ApiConstants.MIN_SEMANTIC_VERSION, ApiConstants.MIN_KUBERNETES_VERSION_ID));
273275
}
@@ -282,6 +284,13 @@ public ListResponse<KubernetesSupportedVersionResponse> listKubernetesSupportedV
282284
SearchBuilder<KubernetesSupportedVersionVO> sb = kubernetesSupportedVersionDao.createSearchBuilder();
283285
sb.and("id", sb.entity().getId(), SearchCriteria.Op.EQ);
284286
sb.and("keyword", sb.entity().getName(), SearchCriteria.Op.LIKE);
287+
if (StringUtils.isNotBlank(arch)) {
288+
SearchBuilder<VMTemplateVO> isoSearch = templateDao.createSearchBuilder();
289+
isoSearch.and("arch", isoSearch.entity().getArch(), SearchCriteria.Op.EQ);
290+
sb.join("isoSearch", isoSearch, isoSearch.entity().getId(), sb.entity().getIsoId(), JoinBuilder.JoinType.INNER);
291+
isoSearch.done();
292+
}
293+
sb.done();
285294
SearchCriteria<KubernetesSupportedVersionVO> sc = sb.create();
286295
String keyword = cmd.getKeyword();
287296
if (versionId != null) {
@@ -296,6 +305,9 @@ public ListResponse<KubernetesSupportedVersionResponse> listKubernetesSupportedV
296305
if(keyword != null){
297306
sc.setParameters("keyword", "%" + keyword + "%");
298307
}
308+
if (StringUtils.isNotBlank(arch)) {
309+
sc.setJoinParameters("isoSearch", "arch", arch);
310+
}
299311
Pair<List<KubernetesSupportedVersionVO>, Integer> versionsAndCount =
300312
kubernetesSupportedVersionDao.searchAndCount(sc, searchFilter);
301313
List<KubernetesSupportedVersionVO> versions =

plugins/integrations/kubernetes-service/src/main/java/org/apache/cloudstack/api/command/user/kubernetes/version/ListKubernetesSupportedVersionsCmd.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,11 @@ public class ListKubernetesSupportedVersionsCmd extends BaseListCmd {
6666
description = "the ID of the minimum Kubernetes supported version")
6767
private Long minimumKubernetesVersionId;
6868

69+
@Parameter(name = ApiConstants.ARCH, type = CommandType.STRING,
70+
description = "the CPU arch of the binaries ISO. Valid options are: x86_64, aarch64",
71+
since = "4.20")
72+
private String arch;
73+
6974
/////////////////////////////////////////////////////
7075
/////////////////// Accessors ///////////////////////
7176
/////////////////////////////////////////////////////
@@ -85,6 +90,10 @@ public String getMinimumSemanticVersion() {
8590
return minimumSemanticVersion;
8691
}
8792

93+
public String getArch() {
94+
return arch;
95+
}
96+
8897
public Long getMinimumKubernetesVersionId() {
8998
return minimumKubernetesVersionId;
9099
}

0 commit comments

Comments
 (0)