2 * Copyright © 2016-2018 European Support Limited
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 package org.openecomp.sdc.common.errors;
19 import lombok.AllArgsConstructor;
24 public enum Messages {
25 CANT_LOAD_HEALING_CLASS("Can't load healing class %s."),
27 VERSION_UPGRADE("Item %s is of old version. A check out was made in order to get new " +
30 PACKAGE_PROCESS_ERROR("Could not process package '%s'"),
31 PACKAGE_INVALID_EXTENSION("Invalid package '%s' extension. Expecting %s."),
32 PACKAGE_EMPTY_ERROR("The given package is empty '%s'"),
33 PACKAGE_PROCESS_INTERNAL_PACKAGE_ERROR("Could not process internal package '%s'"),
34 PACKAGE_INVALID_ERROR("Invalid package content '%s'"),
35 PACKAGE_MISSING_INTERNAL_PACKAGE("Missing expected internal package"),
36 INVALID_ZIP_FILE("Invalid zip file"),
37 INVALID_CSAR_FILE("Invalid csar file"),
38 CSAR_FILE_NOT_FOUND("Each CSAR file must contain %s file."),
39 CSAR_DIRECTORIES_NOT_ALLOWED("Directory : %s , is not allowed."),
40 CSAR_FILES_NOT_ALLOWED("File : %s , are not allowed."),
41 MANIFEST_INVALID_LINE("Manifest contains invalid line: %s: %s"),
42 MANIFEST_START_METADATA("Manifest must starts with 'metadata:'"),
43 MANIFEST_NO_METADATA("Manifest must contain metadata"),
44 MANIFEST_NO_SOURCES("Manifest must contain Source"),
45 MANIFEST_METADATA_MISSING_ENTRY("Manifest metadata missing entry %s"),
46 MANIFEST_INVALID_NAME("Manifest file %s and TOSCA definitions file %s must have the same name"),
47 MANIFEST_INVALID_EXT("Manifest file must have extension \".mf\" "),
48 MANIFEST_METADATA_INVALID_ENTRY("Manifest metadata should only have pnf or vnf entries"),
49 MANIFEST_METADATA_INVALID_ENTRY1("Invalid Manifest metadata entry: '%s'."),
50 MANIFEST_METADATA_DUPLICATED_ENTRY("Duplicated Manifest metadata entry: '%s'."),
51 MANIFEST_METADATA_UNEXPECTED_ENTRY_TYPE(
52 "Manifest metadata should have either pnf or vnf entries, not both together"),
53 MANIFEST_INVALID_PNF_METADATA("%s TOSCA.meta file is applicable for VF only"),
54 MANIFEST_INVALID_NON_MANO_KEY("Invalid non mano key '%s'"),
55 MANIFEST_EMPTY_NON_MANO_KEY("Expecting a 'Source' entry for the non mano key '%s'"),
56 MANIFEST_EMPTY_NON_MANO_SOURCE("Empty non mano source"),
57 MANIFEST_EXPECTED_HASH_ENTRY("Expected Hash entry"),
58 MANIFEST_EXPECTED_HASH_VALUE("Expected Hash entry value"),
59 MANIFEST_EXPECTED_SOURCE_PATH("Expected Source entry path"),
60 MANIFEST_EXPECTED_ALGORITHM_VALUE("Expected Algorithm entry value"),
61 MANIFEST_EXPECTED_ALGORITHM_BEFORE_HASH("Expected 'Algorithm' entry before 'Hash' entry"),
62 MANIFEST_EXPECTED_SIGNATURE_VALUE("Expected 'Signature' entry value"),
63 MANIFEST_EXPECTED_CERTIFICATE_VALUE("Expected 'Certificate' entry value"),
64 MANIFEST_EXPECTED_SIGNATURE_BEFORE_CERTIFICATE("Expected 'Signature' entry before 'Certificate' entry"),
65 MANIFEST_DUPLICATED_CMS_SIGNATURE("Duplicated CMS signature"),
66 MANIFEST_SIGNATURE_DUPLICATED("Duplicated manifest signature"),
67 MANIFEST_SIGNATURE_LAST_ENTRY("The manifest signature must be the last entry of the manifest."),
68 MANIFEST_METADATA_DOES_NOT_MATCH_LIMIT("Manifest metadata must only have the required number [%s] of "
70 MANIFEST_EMPTY("The manifest is empty"),
71 MANIFEST_ERROR_WITH_LINE("%s;%nAt line %s: '%s'."),
72 MANIFEST_PARSER_INTERNAL("Invalid manifest file"),
73 MANIFEST_UNEXPECTED_ERROR("An unexpected error occurred while validating manifest '%s': %s"),
74 METADATA_PARSER_INTERNAL("Invalid Metadata file"),
75 METADATA_MISSING_OPTIONAL_FOLDERS("Missing folder %s in package"),
76 METADATA_UNSUPPORTED_ENTRY("Following entry not supported in TOSCA.meta %s"),
77 METADATA_INVALID_VERSION("Invalid entry %s value %s"),
78 METADATA_INVALID_VALUE("Invalid value %s in TOSCA.meta file"),
79 METADATA_MISSING_ENTRY("TOSCA.meta file in TOSCA-metadata directory missing entry %s"),
80 METADATA_NO_ENTRY_DEFINITIONS("TOSCA.meta must contain Entry Definitions"),
81 METADATA_INVALID_ENTRY_DEFINITIONS("TOSCA.meta must contain key:value entries"),
83 EMPTY_SW_INFORMATION_NON_MANO_ERROR(
84 "Non-mano Software Information artifact was declared in the manifest, but not provided"),
85 UNIQUE_SW_INFORMATION_NON_MANO_ERROR("Only one software information non-mano artifact is allowed. "
87 INVALID_SW_INFORMATION_NON_MANO_ERROR("Invalid software information non-mano artifact: '%s'"),
88 INCORRECT_SW_INFORMATION_NON_MANO_ERROR(
89 "Incorrect software information non-mano artifact. The software version information is missing "
90 + "or it has one or more incorrect software version entries: '%s'"),
91 FAILED_TO_VALIDATE_METADATA("Failed to validate metadata file"),
92 ARTIFACT_INVALID_SIGNATURE("Invalid signature '%s' provided for artifact '%s'"),
93 ARTIFACT_SIGNATURE_VALIDATION_ERROR(
94 "Could not validate signature '%s' provided for artifact '%s' with certificate '%s': %s"),
95 FAILED_TO_TRANSLATE_ZIP_FILE("Failed to translate zip file"),
96 ZIP_NOT_EXIST("Zip file doesn't exist"),
98 PERMISSIONS_ERROR("Permissions Error. The user does not have permission to perform this action."),
99 PERMISSIONS_OWNER_ERROR("Permissions Error. Only one owner is allowed."),
101 ENTITY_NOT_FOUND("Incorrect item/version details provided."),
102 SUB_ENTITY_NOT_FOUND("Incorrect sub entity details provided."),
103 FAILED_TO_SYNC("Non existing version cannot be synced."),
104 FAILED_TO_PUBLISH_OUT_OF_SYNC("Publish is not allowed since the version status is Out of sync"),
106 DELETE_VSP_ERROR("VSP has been certified and cannot be deleted."),
107 DELETE_VLM_ERROR("VLM has been certified and cannot be deleted."),
109 ZIP_SHOULD_NOT_CONTAIN_FOLDERS("Zip file should not contain folders"),
110 VES_ZIP_SHOULD_CONTAIN_YML_ONLY(
111 "Wrong VES EVENT Artifact was uploaded - all files contained in Artifact must be YAML files" +
112 " (using .yaml/.yml extensions)"),
113 MANIFEST_NOT_EXIST("Manifest doesn't exist"),
114 MANIFEST_NOT_FOUND("Manifest file %s referenced in TOSCA.meta does not exist"),
115 FILE_TYPE_NOT_LEGAL("File type not legal as data for other file"),
116 MODULE_IN_MANIFEST_NO_YAML("Module '%s', has no yaml file reference"),
117 NO_MODULES_IN_MANIFEST("At least one Base/Module must be defined \n"),
118 MODULE_IN_MANIFEST_VOL_ENV_NO_VOL("Module '%s', has volume Env. reference with no Volume " +
120 ILLEGAL_MANIFEST("Illegal Manifest"),
121 NO_FILE_WAS_UPLOADED_OR_FILE_NOT_EXIST("no %s file was uploaded or file doesn't exist"),
122 MAPPING_OBJECTS_FAILURE("Failed to map object %s to %s. Exception message: %s"),
123 MORE_THEN_ONE_VOL_FOR_HEAT("heat contains more then one vol. selecting only first vol"),
124 FILE_LOAD_CONTENT_ERROR("Failed to load file '%s' content"),
125 CREATE_MANIFEST_FROM_ZIP("cannot create manifest from the attached zip file"),
126 CANDIDATE_PROCESS_FAILED("Candidate zip file process failed"),
127 FOUND_UNASSIGNED_FILES("cannot process zip since it has unassigned files"),
128 GENERATED_ARTIFACT_IN_USE("Artifact with file name %s is generated by SDC. "
129 + "Please remove this artifact from manifest and zip files"),
131 /* Monitor uploads related errors*/
132 ILLEGAL_MONITORING_ARTIFACT_TYPE("Illegal monitoring artifact type for component id %s, vsp id " +
135 MISSING_FILE_IN_ZIP("Missing file in zip"),
136 MISSING_FILE_IN_MANIFEST("Missing file in manifest"),
137 MISSING_FILE_NAME_IN_MANIFEST("Missing file name in manifest"),
138 MISSING_NESTED_FILE("Missing nested file - %s"),
139 MISSING_ARTIFACT("Missing artifact - %s"),
140 MISSING_MANIFEST_SOURCE("%s artifact %s referenced in manifest file does not exist"),
141 MISSING_MANIFEST_REFERENCE("'%s' artifact is not being referenced in manifest file"),
142 MISSING_METADATA_FILES("%s file referenced in TOSCA.meta does not exist"),
143 WRONG_HEAT_FILE_EXTENSION("Wrong HEAT file extension - %s"),
144 WRONG_ENV_FILE_EXTENSION("Wrong ENV file extension - %s"),
145 INVALID_MANIFEST_FILE("invalid manifest file"),
146 INVALID_FILE_TYPE("Missing or Unknown file type in Manifest"),
147 ENV_NOT_ASSOCIATED_TO_HEAT("ENV file must be associated to a HEAT file"),
148 CSAR_MANIFEST_FILE_NOT_EXIST("CSAR manifest file does not exist"),
149 CSAR_FAILED_TO_READ("CSAR file is not readable"),
150 TOSCA_PARSING_FAILURE("Invalid tosca file. Error code : %s, Error message : %s/"),
152 /*definition errors*/
153 MISSING_DEFINITION_FILE("Definition file %s referenced in TOSCA.meta does not exist"),
154 MISSING_IMPORT_FILE("Package must contain the referenced import file '%s'"),
155 MISSING_MAIN_DEFINITION_FILE("Package must contain the given main definition file '%s'"),
156 INVALID_IMPORT_STATEMENT("Definition file '%s' contains an invalid import statement: '%s'"),
157 INVALID_YAML_EXTENSION("Expecting yaml or yml extension for file: %s"),
160 INVALID_YAML_FORMAT("Invalid YAML format: %s"),
161 INVALID_YAML_FORMAT_1("Invalid YAML format in file '%s'. Format error:%n%s"),
162 INVALID_YAML_FORMAT_REASON("Invalid YAML format Problem - [%s]"),
163 EMPTY_YAML_FILE("empty yaml"),
164 EMPTY_YAML_FILE_1("The yaml file '%s' is empty"),
165 GENERAL_YAML_PARSER_ERROR("general parser error"),
166 GENERAL_HEAT_PARSER_ERROR("general parser error"),
167 INVALID_HEAT_FORMAT_REASON("Invalid HEAT format problem - [%s]"),
168 MISSING_RESOURCE_IN_DEPENDS_ON("a Missing resource in depend On, Missing Resource ID [%s]"),
169 REFERENCED_PARAMETER_NOT_FOUND("Referenced parameter - %s - not found, used in resource [%s]"),
170 GET_ATTR_NOT_FOUND("get_attr attribute not found, Attribute name [%s], Resource ID [%s]"),
171 MISSING_PARAMETER_IN_NESTED(
172 "Referenced parameter not found in nested file - %s, parameter name [%s], Resource ID [%s]"),
173 NESTED_LOOP("Nested files loop - %s"),
174 MORE_THAN_ONE_BIND_FROM_NOVA_TO_PORT("Resource Port %s exceed allowed relations from NovaServer"),
175 SERVER_NOT_DEFINED_FROM_NOVA("Missing server group definition - %s, %s"),
176 WRONG_POLICY_IN_SERVER_GROUP("Wrong policy in server group - %s"),
177 MISSING_IMAGE_AND_FLAVOR("Missing both Image and Flavor in NOVA Server, Resource ID [%s]"),
178 ENV_INCLUDES_PARAMETER_NOT_IN_HEAT("Env file %s includes a parameter not in HEAT - %s"),
179 PARAMETER_ENV_VALUE_NOT_ALIGN_WITH_TYPE("Parameter env value %s not align with type"),
180 PARAMETER_DEFAULT_VALUE_NOT_ALIGN_WITH_TYPE(
181 "Parameter - %s default value not align with type %s"),
182 INVALID_RESOURCE_TYPE("A resource has an invalid or unsupported type - %s, Resource ID [%s]"),
183 ARTIFACT_FILE_NOT_REFERENCED("Artifact file is not referenced."),
184 RESOURCE_NOT_IN_USE("%s not in use, Resource Id [%s]"),
185 PORT_NO_BIND_TO_ANY_NOVA_SERVER("Port not bind to any NOVA Server, Resource Id [%s]"),
186 INVALID_GET_RESOURCE_SYNTAX(
187 "invalid get_resource syntax is in use - %s , get_resource"
188 + " function should get the resource id of the referenced resource"),
189 INVALID_RESOURCE_GROUP_TYPE(
190 "OS::Heat::ResourceGroup resource with resource_def which is not pointing to "
191 + "nested heat file is not supported, Resource ID [%s], resource_def type [%s]"),
192 WRONG_VALUE_TYPE_ASSIGNED_NESTED_INPUT(
193 "Wrong value type assigned to a nested input parameter, nested resource [%s],"
194 + " property name [%s], nested file [%s]"),
195 NOVA_NAME_IMAGE_FLAVOR_NOT_CONSISTENT(
196 "Nova Server naming convention in image, flavor and name properties is not "
197 + "consistent, Resource ID [%s]"),
198 RESOURCE_GROUP_INVALID_INDEX_VAR(
199 "Wrong value assigned to a ResourceGroup index_var property (functions are not allowed"
200 + " but only strings), Resource ID [%s]"),
201 CONTRAIL_2_IN_USE("Contrail 2.x deprecated resource is in use, Resource ID [%s]"),
204 REFERENCED_RESOURCE_NOT_FOUND("Referenced resource - %s not found"),
205 MISSING_GET_PARAM("Missing get_param in %s, Resource Id [%s]"),
207 /*OPENECOMP Guide lines*/
208 MISSING_NOVA_SERVER_METADATA("Missing Nova Server Metadata property, Resource ID [%s]"),
209 MISSING_NOVA_SERVER_VNF_ID("Missing VNF_ID in Metadata property, Resource ID [%s]"),
210 MISSING_NOVA_SERVER_VF_MODULE_ID("Missing VF_MODULE_ID in Metadata property, Resource id [%s]"),
211 NETWORK_PARAM_NOT_ALIGNED_WITH_GUIDE_LINE(
212 "Network Parameter Name not aligned with Guidelines, Parameter Name [%s] Resource ID [%s]"),
213 MISSIN_BASE_HEAT_FILE(
214 "Missing Base HEAT. Pay attention that without Base HEAT, there will be no shared resources"),
215 MULTI_BASE_HEAT_FILE("Multi Base HEAT. Expected only one. Files %s."),
216 RESOURCE_NOT_DEFINED_IN_OUTPUT(
217 "Resource is not defined as output and thus cannot be Shared, Resource ID [%s]"),
218 RESOURCE_CONNECTED_TO_TWO_EXTERNAL_NETWORKS_WITH_SAME_ROLE(
219 "A resource is connected twice to the same network role, Network Role [%s],"
220 + " Resource ID [%s]"),
221 VOLUME_HEAT_NOT_EXPOSED("Volume is not defined as output and thus cannot be attached %s"),
222 FORBIDDEN_RESOURCE_IN_USE("%s is in use, Resource ID [%s]"),
223 PARAMETER_NAME_NOT_ALIGNED_WITH_GUIDELINES(
224 "%s '%s' Parameter Name not aligned with Guidelines, Parameter Name [%s], Resource ID [%s]."
225 + " As a result, VF/VFC Profile may miss this information"),
226 /* Contrail validator messages*/
227 MERGE_OF_CONTRAIL2_AND_CONTRAIL3_RESOURCES(
228 "HEAT Package includes both Contrail 2 and Contrail 3 resources. "
229 + "Contrail 2 resources can be found in %s. Contrail 3 resources can be found in %s"),
230 CONTRAIL_VM_TYPE_NAME_NOT_ALIGNED_WITH_NAMING_CONVENSION(
231 "Service Template naming convention in Image and Flavor "
232 + "properties is not consistent in Resource, Resource ID %s"),
235 FAILED_TO_MARK_NOTIFICATION_AS_READ("Failed to mark notifications as read"),
236 FAILED_TO_UPDATE_LAST_SEEN_NOTIFICATION("Failed to update last seen notification for user %s"),
237 FAILED_TO_VERIFY_SIGNATURE("Could not verify signature of signed package.");
239 private String errorMessage;
242 * Formats the message with the given parameters.
244 * @param params The message string parameters to apply
245 * @return The formatted message.
247 public String formatMessage(final Object... params) {
248 return String.format(errorMessage, params);