From 432a03fb02870d3e3b6f72cd5d50c7846b25588b Mon Sep 17 00:00:00 2001 From: Abhishek Kumar Date: Thu, 29 Sep 2022 11:10:30 +0530 Subject: [PATCH 1/2] api: fix event type and description for createTag (#6779) Fixes #6777 Signed-off-by: Abhishek Kumar Signed-off-by: Abhishek Kumar --- .../cloudstack/api/command/user/tag/CreateTagsCmd.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/api/src/main/java/org/apache/cloudstack/api/command/user/tag/CreateTagsCmd.java b/api/src/main/java/org/apache/cloudstack/api/command/user/tag/CreateTagsCmd.java index bc6817096b2..6d34444cb37 100644 --- a/api/src/main/java/org/apache/cloudstack/api/command/user/tag/CreateTagsCmd.java +++ b/api/src/main/java/org/apache/cloudstack/api/command/user/tag/CreateTagsCmd.java @@ -106,17 +106,17 @@ public class CreateTagsCmd extends BaseAsyncCmd { SuccessResponse response = new SuccessResponse(getCommandName()); setResponseObject(response); } else { - throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed to upload resource icon"); + throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed to create resource tag(s)"); } } @Override public String getEventType() { - return EventTypes.EVENT_RESOURCE_ICON_UPLOAD; + return EventTypes.EVENT_TAGS_CREATE; } @Override public String getEventDescription() { - return "Uploading resource icon"; + return "Creating resource tag(s)"; } } From 89d9a70dcebf2b1b94a56d5dcb9e1b43ed538c95 Mon Sep 17 00:00:00 2001 From: dahn Date: Fri, 30 Sep 2022 07:16:50 +0200 Subject: [PATCH 2/2] server: Allow template names upto 255 chars (#6768) * Allow template names upto 255 chars * Update error message * externalise name length in constant Fixes: #6766 --- .../main/java/com/cloud/template/VirtualMachineTemplate.java | 2 ++ .../main/java/com/cloud/template/TemplateManagerImpl.java | 5 +++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/api/src/main/java/com/cloud/template/VirtualMachineTemplate.java b/api/src/main/java/com/cloud/template/VirtualMachineTemplate.java index 95d1ebf0b87..9098f919ca4 100644 --- a/api/src/main/java/com/cloud/template/VirtualMachineTemplate.java +++ b/api/src/main/java/com/cloud/template/VirtualMachineTemplate.java @@ -30,6 +30,8 @@ import com.cloud.utils.fsm.StateMachine2; import com.cloud.utils.fsm.StateObject; public interface VirtualMachineTemplate extends ControlledEntity, Identity, InternalIdentity, StateObject { + int MAXIMUM_TEMPLATE_NAME_LENGTH = 255; + enum State { Active, Inactive, diff --git a/server/src/main/java/com/cloud/template/TemplateManagerImpl.java b/server/src/main/java/com/cloud/template/TemplateManagerImpl.java index c8b6cfdae40..232571015f3 100755 --- a/server/src/main/java/com/cloud/template/TemplateManagerImpl.java +++ b/server/src/main/java/com/cloud/template/TemplateManagerImpl.java @@ -1747,8 +1747,9 @@ public class TemplateManagerImpl extends ManagerBase implements TemplateManager, _accountMgr.checkAccess(caller, null, true, templateOwner); String name = cmd.getTemplateName(); - if ((name == null) || (name.length() > 32)) { - throw new InvalidParameterValueException("Template name cannot be null and should be less than 32 characters"); + if ((org.apache.commons.lang3.StringUtils.isBlank(name) + || (name.length() > VirtualMachineTemplate.MAXIMUM_TEMPLATE_NAME_LENGTH))) { + throw new InvalidParameterValueException(String.format("Template name cannot be null and cannot be more %s characters", VirtualMachineTemplate.MAXIMUM_TEMPLATE_NAME_LENGTH)); } if (cmd.getTemplateTag() != null) {