diff --git a/docs/rfs/api-ref/ALL_META.TXT.json b/docs/rfs/api-ref/ALL_META.TXT.json new file mode 100644 index 000000000..8163c61e4 --- /dev/null +++ b/docs/rfs/api-ref/ALL_META.TXT.json @@ -0,0 +1,805 @@ +[ + { + "dockw":"API Reference" + }, + { + "uri":"aos_02_0000.html", + "node_id":"aos_02_0000.xml", + "product_code":"rfs", + "code":"1", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Before You Start", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Before You Start", + "githuburl":"" + }, + { + "uri":"aos_02_0001.html", + "node_id":"aos_02_0001.xml", + "product_code":"rfs", + "code":"2", + "des":"Resource Formation Service (RFS) provides the latest resource formation APIs.RFS is a new final-state resource formation engine for cloud services and fully supports Terr", + "doc_type":"api", + "kw":"Overview,Before You Start,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Overview", + "githuburl":"" + }, + { + "uri":"aos_02_0055.html", + "node_id":"aos_02_0055.xml", + "product_code":"rfs", + "code":"3", + "des":"AccountAn account is created upon successful registration. The account has full access permissions for all of its cloud services and resources. It can be used to reset us", + "doc_type":"api", + "kw":"Concepts,Before You Start,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Concepts", + "githuburl":"" + }, + { + "uri":"rfs_02_0000.html", + "node_id":"rfs_02_0000.xml", + "product_code":"rfs", + "code":"4", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Resource Formation Service", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Resource Formation Service", + "githuburl":"" + }, + { + "uri":"topic_300000000.html", + "node_id":"topic_300000000.xml", + "product_code":"rfs", + "code":"5", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Stacks", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Stacks", + "githuburl":"" + }, + { + "uri":"ListStackEvents.html", + "node_id":"liststackevents.xml", + "product_code":"rfs", + "code":"6", + "des":"ListStackEventsThis API lists all deployment events of a stack.If deployment_id is assigned, deployment_id is used as a query criterion and the stack events corresponding", + "doc_type":"api", + "kw":"Listing Events of a Stack,Stacks,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Listing Events of a Stack", + "githuburl":"" + }, + { + "uri":"GetStackMetadata.html", + "node_id":"getstackmetadata.xml", + "product_code":"rfs", + "code":"7", + "des":"GetStackMetadataThis API obtains the metadata of a stack, including the stack ID, stack name, stack description, creation time, update time, stack status, and agency. You", + "doc_type":"api", + "kw":"Obtaining Stack Metadata,Stacks,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Obtaining Stack Metadata", + "githuburl":"" + }, + { + "uri":"ListStacks.html", + "node_id":"liststacks.xml", + "product_code":"rfs", + "code":"8", + "des":"ListStacksThis API lists all stacks in current region.Stacks are sorted by creation time in descending order so that the stack created latest is displayed at the front.Pa", + "doc_type":"api", + "kw":"Listing Stacks,Stacks,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Listing Stacks", + "githuburl":"" + }, + { + "uri":"CreateStack.html", + "node_id":"createstack.xml", + "product_code":"rfs", + "code":"9", + "des":"CreateStack creates a stack.If template, vars, and other information are not included in the request, an empty stack will be created and stack_id will be returned.If temp", + "doc_type":"api", + "kw":"Creating a Stack,Stacks,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Creating a Stack", + "githuburl":"" + }, + { + "uri":"GetStackTemplate.html", + "node_id":"getstacktemplate.xml", + "product_code":"rfs", + "code":"10", + "des":"GetStackTemplateThis API obtains the template used for the current deployment if the stack is in the final state.Note: When a stack is in a non-final state (ending with I", + "doc_type":"api", + "kw":"Obtaining a Stack Template,Stacks,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Obtaining a Stack Template", + "githuburl":"" + }, + { + "uri":"ListStackResources.html", + "node_id":"liststackresources.xml", + "product_code":"rfs", + "code":"11", + "des":"ListStackResourcesThis API lists the information about all resources managed by a stack.When the stack is in a non-final state, only brief information about the resources", + "doc_type":"api", + "kw":"Listing Stack Resources,Stacks,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Listing Stack Resources", + "githuburl":"" + }, + { + "uri":"ListStackOutputs.html", + "node_id":"liststackoutputs.xml", + "product_code":"rfs", + "code":"12", + "des":"ListStackOutputsThis API lists all outputs of a stack.The stack output is the return information generated after the deployment of the output statement block defined in t", + "doc_type":"api", + "kw":"Listing Stack Outputs,Stacks,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Listing Stack Outputs", + "githuburl":"" + }, + { + "uri":"ContinueDeployStack.html", + "node_id":"continuedeploystack.xml", + "product_code":"rfs", + "code":"13", + "des":"ContinueDeployStackThis API continues to deploy an existing stack.If a stack is in the DEPLOYMENT_FAILED status, it can continue to be deployed, then 202 and the deployme", + "doc_type":"api", + "kw":"Continuing to Deploy a Stack,Stacks,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Continuing to Deploy a Stack", + "githuburl":"" + }, + { + "uri":"DeployStack.html", + "node_id":"deploystack.xml", + "product_code":"rfs", + "code":"14", + "des":"DeployStackThis API deploys a created stack.You can call this API to update the template and parameters and trigger a new deployment.This API triggers deployment directly", + "doc_type":"api", + "kw":"Deploying a Stack,Stacks,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Deploying a Stack", + "githuburl":"" + }, + { + "uri":"DeleteStack.html", + "node_id":"deletestack.xml", + "product_code":"rfs", + "code":"15", + "des":"DeleteStackThis API deletes a stack. **Exercise caution when performing this operation. Deleting a stack will delete all data related to the stack by default, such as exe", + "doc_type":"api", + "kw":"Deleting a Stack,Stacks,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Deleting a Stack", + "githuburl":"" + }, + { + "uri":"UpdateStack.html", + "node_id":"updatestack.xml", + "product_code":"rfs", + "code":"16", + "des":"This API updates the attributes of a stack based on the information provided by users. One or more of the following attributes can be updated: description, enable_deletio", + "doc_type":"api", + "kw":"Updating a Stack,Stacks,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Updating a Stack", + "githuburl":"" + }, + { + "uri":"DeleteStackEnhanced.html", + "node_id":"deletestackenhanced.xml", + "product_code":"rfs", + "code":"17", + "des":"This API deletes a stack with conditions. You can determine whether to retain resources. **Exercise caution when performing this operation. Deleting a stack will delete a", + "doc_type":"api", + "kw":"Deleting a Stack with Conditions,Stacks,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Deleting a Stack with Conditions", + "githuburl":"" + }, + { + "uri":"ContinueRollbackStack.html", + "node_id":"continuerollbackstack.xml", + "product_code":"rfs", + "code":"18", + "des":"ContinueRollbackStackThis API continues to roll back an existing stack.If auto-rollback is enabled for a stack, the stack automatically rolls back when its deployment fai", + "doc_type":"api", + "kw":"Continuing to Roll Back a Stack,Stacks,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Continuing to Roll Back a Stack", + "githuburl":"" + }, + { + "uri":"topic_300000001.html", + "node_id":"topic_300000001.xml", + "product_code":"rfs", + "code":"19", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Execution Plans", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Execution Plans", + "githuburl":"" + }, + { + "uri":"ListExecutionPlans.html", + "node_id":"listexecutionplans.xml", + "product_code":"rfs", + "code":"20", + "des":"ListExecutionPlansThis API lists all execution plans of a specified stack in the current region.By default, the execution plans are sorted by creation time in descending ", + "doc_type":"api", + "kw":"Listing Execution Plans,Execution Plans,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Listing Execution Plans", + "githuburl":"" + }, + { + "uri":"CreateExecutionPlan.html", + "node_id":"createexecutionplan.xml", + "product_code":"rfs", + "code":"21", + "des":"CreateExecutionPlanThis API creates an execution plan in a specified stack. An execution plan describes the differences between the resource status recorded in the curren", + "doc_type":"api", + "kw":"Creating an Execution Plan,Execution Plans,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Creating an Execution Plan", + "githuburl":"" + }, + { + "uri":"GetExecutionPlan.html", + "node_id":"getexecutionplan.xml", + "product_code":"rfs", + "code":"22", + "des":"GetExecutionPlanThis API obtains the details (items) of a specified execution plan. By calling this API, you can check the changes of resources in a stack once the specif", + "doc_type":"api", + "kw":"Obtaining Execution Plans,Execution Plans,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Obtaining Execution Plans", + "githuburl":"" + }, + { + "uri":"ApplyExecutionPlan.html", + "node_id":"applyexecutionplan.xml", + "product_code":"rfs", + "code":"23", + "des":"ApplyExecutionPlanThis API applies an execution plan.Once the execution request is received, the state of the execution plan changes to APPLY_IN_PROGRESS, and the request", + "doc_type":"api", + "kw":"Applying an Execution Plan,Execution Plans,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Applying an Execution Plan", + "githuburl":"" + }, + { + "uri":"DeleteExecutionPlan.html", + "node_id":"deleteexecutionplan.xml", + "product_code":"rfs", + "code":"24", + "des":"DeleteExecutionPlanThis API deletes an execution plan.If an execution plan is in a CREATION_IN_PROGRESS or APPLY_IN_PROGRESS state, the execution plan cannot be deleted a", + "doc_type":"api", + "kw":"Deleting an Execution Plan,Execution Plans,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Deleting an Execution Plan", + "githuburl":"" + }, + { + "uri":"GetExecutionPlanMetadata.html", + "node_id":"getexecutionplanmetadata.xml", + "product_code":"rfs", + "code":"25", + "des":"GetExecutionPlanMetadataThis API obtains the metadata of a specified execution plan, including the ID and name of the stack and the ID, name, description, creation time, ", + "doc_type":"api", + "kw":"Obtaining Execution Plan Metadata,Execution Plans,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Obtaining Execution Plan Metadata", + "githuburl":"" + }, + { + "uri":"topic_300000002.html", + "node_id":"topic_300000002.xml", + "product_code":"rfs", + "code":"26", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Template Analysis", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Template Analysis", + "githuburl":"" + }, + { + "uri":"ParseTemplateVariables.html", + "node_id":"parsetemplatevariables.xml", + "product_code":"rfs", + "code":"27", + "des":"ParseTemplateVariablesThis API parses variables in your input template and returns all variable blocks in the template.If variables are defined in the input template, 200", + "doc_type":"api", + "kw":"Parsing Template Variables,Template Analysis,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Parsing Template Variables", + "githuburl":"" + }, + { + "uri":"topic_300000003.html", + "node_id":"topic_300000003.xml", + "product_code":"rfs", + "code":"28", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Template Management", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Template Management", + "githuburl":"" + }, + { + "uri":"ListTemplates.html", + "node_id":"listtemplates.xml", + "product_code":"rfs", + "code":"29", + "des":"ListTemplatesThis API lists all your templates at the current region.By default, the templates are sorted by creation time. The template created latest is displayed on th", + "doc_type":"api", + "kw":"Listing Templates,Template Management,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Listing Templates", + "githuburl":"" + }, + { + "uri":"DeleteTemplate.html", + "node_id":"deletetemplate.xml", + "product_code":"rfs", + "code":"30", + "des":"DeleteTemplateThis API deletes a template and all its versions. **Exercise caution when performing this operation. Deleting a template will delete all its versions. **tem", + "doc_type":"api", + "kw":"Deleting a Template,Template Management,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Deleting a Template", + "githuburl":"" + }, + { + "uri":"UpdateTemplateMetadata.html", + "node_id":"updatetemplatemetadata.xml", + "product_code":"rfs", + "code":"31", + "des":"UpdateTemplateMetadataThis API updates template metadata.This API only updates template description.PATCH /v1/{project_id}/templates/{template_name}/metadataStatus code: ", + "doc_type":"api", + "kw":"Updating Template Metadata,Template Management,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Updating Template Metadata", + "githuburl":"" + }, + { + "uri":"ShowTemplateMetadata.html", + "node_id":"showtemplatemetadata.xml", + "product_code":"rfs", + "code":"32", + "des":"ShowTemplateMetadataThis API obtains the metadata of the current template.To obtain details, you can refer to ShowTemplateMetadataResponseBody. To view all versions of a ", + "doc_type":"api", + "kw":"Obtaining Template Metadata,Template Management,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Obtaining Template Metadata", + "githuburl":"" + }, + { + "uri":"ListTemplateVersions.html", + "node_id":"listtemplateversions.xml", + "product_code":"rfs", + "code":"33", + "des":"ListTemplateVersionsThis API lists all template versions in a template.By default, the template versions are sorted by creation time. The template created latest is displ", + "doc_type":"api", + "kw":"Listing Template Versions,Template Management,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Listing Template Versions", + "githuburl":"" + }, + { + "uri":"DeleteTemplateVersion.html", + "node_id":"deletetemplateversion.xml", + "product_code":"rfs", + "code":"34", + "des":"DeleteTemplateVersionThis API deletes a template version.template_id is the unique ID of the template. It is a UUID generated by RFS when a template is created. Template ", + "doc_type":"api", + "kw":"Deleting a Template Version,Template Management,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Deleting a Template Version", + "githuburl":"" + }, + { + "uri":"ShowTemplateVersionContent.html", + "node_id":"showtemplateversioncontent.xml", + "product_code":"rfs", + "code":"35", + "des":"ShowTemplateVersionContentThis API obtains the template version content.template_id is the unique ID of the template. It is a UUID generated by RFS when a template is cre", + "doc_type":"api", + "kw":"Obtaining Template Version Content,Template Management,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Obtaining Template Version Content", + "githuburl":"" + }, + { + "uri":"ShowTemplateVersionMetadata.html", + "node_id":"showtemplateversionmetadata.xml", + "product_code":"rfs", + "code":"36", + "des":"ShowTemplateVersionMetadataThis API displays the metadata of a template version.template_id is the unique ID of the template. It is a UUID generated by RFS when a templat", + "doc_type":"api", + "kw":"Obtaining Template Version Metadata,Template Management,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Obtaining Template Version Metadata", + "githuburl":"" + }, + { + "uri":"aos_02_0040.html", + "node_id":"aos_02_0040.xml", + "product_code":"rfs", + "code":"37", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Appendix", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Appendix", + "githuburl":"" + }, + { + "uri":"aos_02_0041.html", + "node_id":"aos_02_0041.xml", + "product_code":"rfs", + "code":"38", + "des":"Table 1 describes status codes.", + "doc_type":"api", + "kw":"Status Code,Appendix,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Status Code", + "githuburl":"" + }, + { + "uri":"ErrorCode.html", + "node_id":"errorcode.xml", + "product_code":"rfs", + "code":"39", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Error Codes,Appendix,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Error Codes", + "githuburl":"" + }, + { + "uri":"aos_02_0070.html", + "node_id":"aos_02_0070.xml", + "product_code":"rfs", + "code":"40", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Change History,API Reference", + "search_title":"", + "metedata":[ + { + "prodname":"rfs", + "documenttype":"api", + "opensource":"true", + "operation_id":"ListStackEvents;GetStackMetadata;ListStacks;CreateStack;GetStackTemplate;ListStackResources;ListStackOutputs;ContinueDeployStack;DeployStack;DeleteStack;UpdateStack;DeleteStackEnhanced;ContinueRollbackStack;ListExecutionPlans;CreateExecutionPlan;GetExecutionPlan;ApplyExecutionPlan;DeleteExecutionPlan;GetExecutionPlanMetadata;ParseTemplateVariables;ListTemplates;DeleteTemplate;UpdateTemplateMetadata;ShowTemplateMetadata;ListTemplateVersions;DeleteTemplateVersion;ShowTemplateVersionContent;ShowTemplateVersionMetadata" + } + ], + "title":"Change History", + "githuburl":"" + } +] \ No newline at end of file diff --git a/docs/rfs/api-ref/ApplyExecutionPlan.html b/docs/rfs/api-ref/ApplyExecutionPlan.html new file mode 100644 index 000000000..d6d1d6127 --- /dev/null +++ b/docs/rfs/api-ref/ApplyExecutionPlan.html @@ -0,0 +1,475 @@ + + +

Applying an Execution Plan

+

Function

ApplyExecutionPlan

+

This API applies an execution plan.

+ +

If you do not want to deploy a stack using an execution plan, you can call DeployStack for direct deployment.

+

Expiration of execution plans:

+
  1. If a stack has multiple execution plans, all the remaining plans will expire once any of them is applied (regardless of whether the execution is successful).
  2. If the specified execution plan has expired when you call ApplyExecutionPlan, 403 is returned. If a stack is in a non-final state (ending with IN_PROGRESS), its execution plans cannot be applied and 403 is returned. The non-final states may include:
+ +
+

URI

POST /v1/{project_id}/stacks/{stack_name}/execution-plans/{execution_plan_name}

+ +
+ + + + + + + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

A project ID is obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

stack_name

+

Yes

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+

execution_plan_name

+

Yes

+

String

+

An execution plan name is unique within its domain (domain_id), region, project (project_id), and stack (stack_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 2 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

A unique request ID is specified by a user to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + + + + + + +
Table 3 Request body parameters

Parameter

+

Mandatory

+

Type

+

Description

+

execution_plan_id

+

No

+

String

+

Unique execution plan ID.

+

A UUID is generated by RFS when an execution plan is created.

+

Execution plan names are unique at one specific time, so you can create an execution plan named HelloWorld and another execution plan with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the execution plan they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each execution plan has a unique ID that does not change with updates. If the execution_plan_id value differs from the current execution plan ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+

stack_id

+

No

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+
+
+
+

Response Parameters

Status code: 202

+ +
+ + + + + + + + + +
Table 4 Response body parameters

Parameter

+

Type

+

Description

+

deployment_id

+

String

+

Unique deployment ID. It is a UUID generated by RFS when deployment or rollback is triggered.

+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + + + + + +
Table 5 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + + + + + +
Table 6 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 409

+ +
+ + + + + + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + + + + + +
Table 10 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + + + + + +
Table 11 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+
+

Example Requests

+
+

Example Responses

Status code: 202

+

The request is accepted and processed asynchronously.

+
{
+  "deployment_id" : "07e21c3e-d33c-4513-9d0f-e9e673817772"
+}
+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

202

+

The request is accepted and processed asynchronously.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+
  1. The user does not have the permission to call this API.
  2. Invalid stack status.
  3. The execution plan has expired.
+

404

+
  1. The stack does not exist.
  2. The execution plan does not exist.
+

409

+

Execution requests conflict. Another request is being processed on the execution plan.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/CLASS.TXT.json b/docs/rfs/api-ref/CLASS.TXT.json new file mode 100644 index 000000000..3455efcd9 --- /dev/null +++ b/docs/rfs/api-ref/CLASS.TXT.json @@ -0,0 +1,362 @@ +[ + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"rfs", + "title":"Before You Start", + "uri":"aos_02_0000.html", + "doc_type":"api", + "p_code":"", + "code":"1" + }, + { + "desc":"Resource Formation Service (RFS) provides the latest resource formation APIs.RFS is a new final-state resource formation engine for cloud services and fully supports Terr", + "product_code":"rfs", + "title":"Overview", + "uri":"aos_02_0001.html", + "doc_type":"api", + "p_code":"1", + "code":"2" + }, + { + "desc":"AccountAn account is created upon successful registration. The account has full access permissions for all of its cloud services and resources. It can be used to reset us", + "product_code":"rfs", + "title":"Concepts", + "uri":"aos_02_0055.html", + "doc_type":"api", + "p_code":"1", + "code":"3" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"rfs", + "title":"Resource Formation Service", + "uri":"rfs_02_0000.html", + "doc_type":"api", + "p_code":"", + "code":"4" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"rfs", + "title":"Stacks", + "uri":"topic_300000000.html", + "doc_type":"api", + "p_code":"4", + "code":"5" + }, + { + "desc":"ListStackEventsThis API lists all deployment events of a stack.If deployment_id is assigned, deployment_id is used as a query criterion and the stack events corresponding", + "product_code":"rfs", + "title":"Listing Events of a Stack", + "uri":"ListStackEvents.html", + "doc_type":"api", + "p_code":"5", + "code":"6" + }, + { + "desc":"GetStackMetadataThis API obtains the metadata of a stack, including the stack ID, stack name, stack description, creation time, update time, stack status, and agency. You", + "product_code":"rfs", + "title":"Obtaining Stack Metadata", + "uri":"GetStackMetadata.html", + "doc_type":"api", + "p_code":"5", + "code":"7" + }, + { + "desc":"ListStacksThis API lists all stacks in current region.Stacks are sorted by creation time in descending order so that the stack created latest is displayed at the front.Pa", + "product_code":"rfs", + "title":"Listing Stacks", + "uri":"ListStacks.html", + "doc_type":"api", + "p_code":"5", + "code":"8" + }, + { + "desc":"CreateStack creates a stack.If template, vars, and other information are not included in the request, an empty stack will be created and stack_id will be returned.If temp", + "product_code":"rfs", + "title":"Creating a Stack", + "uri":"CreateStack.html", + "doc_type":"api", + "p_code":"5", + "code":"9" + }, + { + "desc":"GetStackTemplateThis API obtains the template used for the current deployment if the stack is in the final state.Note: When a stack is in a non-final state (ending with I", + "product_code":"rfs", + "title":"Obtaining a Stack Template", + "uri":"GetStackTemplate.html", + "doc_type":"api", + "p_code":"5", + "code":"10" + }, + { + "desc":"ListStackResourcesThis API lists the information about all resources managed by a stack.When the stack is in a non-final state, only brief information about the resources", + "product_code":"rfs", + "title":"Listing Stack Resources", + "uri":"ListStackResources.html", + "doc_type":"api", + "p_code":"5", + "code":"11" + }, + { + "desc":"ListStackOutputsThis API lists all outputs of a stack.The stack output is the return information generated after the deployment of the output statement block defined in t", + "product_code":"rfs", + "title":"Listing Stack Outputs", + "uri":"ListStackOutputs.html", + "doc_type":"api", + "p_code":"5", + "code":"12" + }, + { + "desc":"ContinueDeployStackThis API continues to deploy an existing stack.If a stack is in the DEPLOYMENT_FAILED status, it can continue to be deployed, then 202 and the deployme", + "product_code":"rfs", + "title":"Continuing to Deploy a Stack", + "uri":"ContinueDeployStack.html", + "doc_type":"api", + "p_code":"5", + "code":"13" + }, + { + "desc":"DeployStackThis API deploys a created stack.You can call this API to update the template and parameters and trigger a new deployment.This API triggers deployment directly", + "product_code":"rfs", + "title":"Deploying a Stack", + "uri":"DeployStack.html", + "doc_type":"api", + "p_code":"5", + "code":"14" + }, + { + "desc":"DeleteStackThis API deletes a stack. **Exercise caution when performing this operation. Deleting a stack will delete all data related to the stack by default, such as exe", + "product_code":"rfs", + "title":"Deleting a Stack", + "uri":"DeleteStack.html", + "doc_type":"api", + "p_code":"5", + "code":"15" + }, + { + "desc":"This API updates the attributes of a stack based on the information provided by users. One or more of the following attributes can be updated: description, enable_deletio", + "product_code":"rfs", + "title":"Updating a Stack", + "uri":"UpdateStack.html", + "doc_type":"api", + "p_code":"5", + "code":"16" + }, + { + "desc":"This API deletes a stack with conditions. You can determine whether to retain resources. **Exercise caution when performing this operation. Deleting a stack will delete a", + "product_code":"rfs", + "title":"Deleting a Stack with Conditions", + "uri":"DeleteStackEnhanced.html", + "doc_type":"api", + "p_code":"5", + "code":"17" + }, + { + "desc":"ContinueRollbackStackThis API continues to roll back an existing stack.If auto-rollback is enabled for a stack, the stack automatically rolls back when its deployment fai", + "product_code":"rfs", + "title":"Continuing to Roll Back a Stack", + "uri":"ContinueRollbackStack.html", + "doc_type":"api", + "p_code":"5", + "code":"18" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"rfs", + "title":"Execution Plans", + "uri":"topic_300000001.html", + "doc_type":"api", + "p_code":"4", + "code":"19" + }, + { + "desc":"ListExecutionPlansThis API lists all execution plans of a specified stack in the current region.By default, the execution plans are sorted by creation time in descending ", + "product_code":"rfs", + "title":"Listing Execution Plans", + "uri":"ListExecutionPlans.html", + "doc_type":"api", + "p_code":"19", + "code":"20" + }, + { + "desc":"CreateExecutionPlanThis API creates an execution plan in a specified stack. An execution plan describes the differences between the resource status recorded in the curren", + "product_code":"rfs", + "title":"Creating an Execution Plan", + "uri":"CreateExecutionPlan.html", + "doc_type":"api", + "p_code":"19", + "code":"21" + }, + { + "desc":"GetExecutionPlanThis API obtains the details (items) of a specified execution plan. By calling this API, you can check the changes of resources in a stack once the specif", + "product_code":"rfs", + "title":"Obtaining Execution Plans", + "uri":"GetExecutionPlan.html", + "doc_type":"api", + "p_code":"19", + "code":"22" + }, + { + "desc":"ApplyExecutionPlanThis API applies an execution plan.Once the execution request is received, the state of the execution plan changes to APPLY_IN_PROGRESS, and the request", + "product_code":"rfs", + "title":"Applying an Execution Plan", + "uri":"ApplyExecutionPlan.html", + "doc_type":"api", + "p_code":"19", + "code":"23" + }, + { + "desc":"DeleteExecutionPlanThis API deletes an execution plan.If an execution plan is in a CREATION_IN_PROGRESS or APPLY_IN_PROGRESS state, the execution plan cannot be deleted a", + "product_code":"rfs", + "title":"Deleting an Execution Plan", + "uri":"DeleteExecutionPlan.html", + "doc_type":"api", + "p_code":"19", + "code":"24" + }, + { + "desc":"GetExecutionPlanMetadataThis API obtains the metadata of a specified execution plan, including the ID and name of the stack and the ID, name, description, creation time, ", + "product_code":"rfs", + "title":"Obtaining Execution Plan Metadata", + "uri":"GetExecutionPlanMetadata.html", + "doc_type":"api", + "p_code":"19", + "code":"25" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"rfs", + "title":"Template Analysis", + "uri":"topic_300000002.html", + "doc_type":"api", + "p_code":"4", + "code":"26" + }, + { + "desc":"ParseTemplateVariablesThis API parses variables in your input template and returns all variable blocks in the template.If variables are defined in the input template, 200", + "product_code":"rfs", + "title":"Parsing Template Variables", + "uri":"ParseTemplateVariables.html", + "doc_type":"api", + "p_code":"26", + "code":"27" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"rfs", + "title":"Template Management", + "uri":"topic_300000003.html", + "doc_type":"api", + "p_code":"4", + "code":"28" + }, + { + "desc":"ListTemplatesThis API lists all your templates at the current region.By default, the templates are sorted by creation time. The template created latest is displayed on th", + "product_code":"rfs", + "title":"Listing Templates", + "uri":"ListTemplates.html", + "doc_type":"api", + "p_code":"28", + "code":"29" + }, + { + "desc":"DeleteTemplateThis API deletes a template and all its versions. **Exercise caution when performing this operation. Deleting a template will delete all its versions. **tem", + "product_code":"rfs", + "title":"Deleting a Template", + "uri":"DeleteTemplate.html", + "doc_type":"api", + "p_code":"28", + "code":"30" + }, + { + "desc":"UpdateTemplateMetadataThis API updates template metadata.This API only updates template description.PATCH /v1/{project_id}/templates/{template_name}/metadataStatus code: ", + "product_code":"rfs", + "title":"Updating Template Metadata", + "uri":"UpdateTemplateMetadata.html", + "doc_type":"api", + "p_code":"28", + "code":"31" + }, + { + "desc":"ShowTemplateMetadataThis API obtains the metadata of the current template.To obtain details, you can refer to ShowTemplateMetadataResponseBody. To view all versions of a ", + "product_code":"rfs", + "title":"Obtaining Template Metadata", + "uri":"ShowTemplateMetadata.html", + "doc_type":"api", + "p_code":"28", + "code":"32" + }, + { + "desc":"ListTemplateVersionsThis API lists all template versions in a template.By default, the template versions are sorted by creation time. The template created latest is displ", + "product_code":"rfs", + "title":"Listing Template Versions", + "uri":"ListTemplateVersions.html", + "doc_type":"api", + "p_code":"28", + "code":"33" + }, + { + "desc":"DeleteTemplateVersionThis API deletes a template version.template_id is the unique ID of the template. It is a UUID generated by RFS when a template is created. Template ", + "product_code":"rfs", + "title":"Deleting a Template Version", + "uri":"DeleteTemplateVersion.html", + "doc_type":"api", + "p_code":"28", + "code":"34" + }, + { + "desc":"ShowTemplateVersionContentThis API obtains the template version content.template_id is the unique ID of the template. It is a UUID generated by RFS when a template is cre", + "product_code":"rfs", + "title":"Obtaining Template Version Content", + "uri":"ShowTemplateVersionContent.html", + "doc_type":"api", + "p_code":"28", + "code":"35" + }, + { + "desc":"ShowTemplateVersionMetadataThis API displays the metadata of a template version.template_id is the unique ID of the template. It is a UUID generated by RFS when a templat", + "product_code":"rfs", + "title":"Obtaining Template Version Metadata", + "uri":"ShowTemplateVersionMetadata.html", + "doc_type":"api", + "p_code":"28", + "code":"36" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"rfs", + "title":"Appendix", + "uri":"aos_02_0040.html", + "doc_type":"api", + "p_code":"", + "code":"37" + }, + { + "desc":"Table 1 describes status codes.", + "product_code":"rfs", + "title":"Status Code", + "uri":"aos_02_0041.html", + "doc_type":"api", + "p_code":"37", + "code":"38" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"rfs", + "title":"Error Codes", + "uri":"ErrorCode.html", + "doc_type":"api", + "p_code":"37", + "code":"39" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"rfs", + "title":"Change History", + "uri":"aos_02_0070.html", + "doc_type":"api", + "p_code":"", + "code":"40" + } +] \ No newline at end of file diff --git a/docs/rfs/api-ref/ContinueDeployStack.html b/docs/rfs/api-ref/ContinueDeployStack.html new file mode 100644 index 000000000..a34b5cd90 --- /dev/null +++ b/docs/rfs/api-ref/ContinueDeployStack.html @@ -0,0 +1,445 @@ + + +

Continuing to Deploy a Stack

+

Function

ContinueDeployStack

+

This API continues to deploy an existing stack.

+ +
+

URI

POST /v1/{project_id}/stacks/{stack_name}/continuations

+ +
+ + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

A project ID is obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

stack_name

+

Yes

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 2 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

A unique request ID is specified by a user to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + +
Table 3 Request body parameters

Parameter

+

Mandatory

+

Type

+

Description

+

stack_id

+

No

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+
+
+
+

Response Parameters

Status code: 202

+ +
+ + + + + + + + + +
Table 4 Response body parameters

Parameter

+

Type

+

Description

+

deployment_id

+

String

+

Deployment ID.

+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + + + + + +
Table 5 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + + + + + +
Table 6 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 409

+ +
+ + + + + + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + + + + + +
Table 10 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + + + + + +
Table 11 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+
+

Example Requests

+
+

Example Responses

Status code: 202

+

The request is accepted and processed asynchronously.

+
{
+  "deployment_id" : "3fef5d3e-27b6-44e8-9769-1d7262bd9430"
+}
+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

202

+

The request is accepted and processed asynchronously.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+
  1. Invalid stack status, cannot continue to be deployed.
  2. The user does not have the permission to call this API.
+

404

+

The stack does not exist.

+

409

+

Request conflict. Another request is being processed on the current stack.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/ContinueRollbackStack.html b/docs/rfs/api-ref/ContinueRollbackStack.html new file mode 100644 index 000000000..9edd8ac9d --- /dev/null +++ b/docs/rfs/api-ref/ContinueRollbackStack.html @@ -0,0 +1,446 @@ + + +

Continuing to Roll Back a Stack

+

Function

ContinueRollbackStack

+

This API continues to roll back an existing stack.

+

If auto-rollback is enabled for a stack, the stack automatically rolls back when its deployment fails. However, the auto-rollback may fail. You can troubleshoot the issues based on the error message and then call ContinueRollbackStack to trigger the continuation of the rollback, which means retrying rollback.

+ +
+

URI

POST /v1/{project_id}/stacks/{stack_name}/rollbacks

+ +
+ + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

A project ID is obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

stack_name

+

Yes

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 2 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

A unique request ID is specified by a user to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + +
Table 3 Request body parameters

Parameter

+

Mandatory

+

Type

+

Description

+

stack_id

+

No

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+
+
+
+

Response Parameters

Status code: 202

+ +
+ + + + + + + + + +
Table 4 Response body parameters

Parameter

+

Type

+

Description

+

deployment_id

+

String

+

Unique ID of the deployment triggered by continuing rollback. The ID is generated by RFS and is usually a UUID.

+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + + + + + +
Table 5 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + + + + + +
Table 6 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 409

+ +
+ + + + + + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + + + + + +
Table 10 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + + + + + +
Table 11 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+
+

Example Requests

+
+

Example Responses

Status code: 202

+

The request is accepted. The stack continues to roll back.

+
{
+  "deployment_id" : "8592967b-18b0-421b-b6c1-079c9ded3931"
+}
+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

202

+

The request is accepted. The stack continues to roll back.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+
  1. Invalid stack status.
  2. The user does not have the permission to call this API.
+

404

+

The stack does not exist.

+

409

+

Request conflict. Another request is being processed on the current stack.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/CreateExecutionPlan.html b/docs/rfs/api-ref/CreateExecutionPlan.html new file mode 100644 index 000000000..633eff4c6 --- /dev/null +++ b/docs/rfs/api-ref/CreateExecutionPlan.html @@ -0,0 +1,613 @@ + + +

Creating an Execution Plan

+

Function

CreateExecutionPlan

+

This API creates an execution plan in a specified stack. An execution plan describes the differences between the resource status recorded in the current stack and the target resource status described in the template. For example, resource A will be generated according to the following configuration file, and resource B will change the following parameters from XXX to YYY.

+

After an execution plan is created by calling this API, you can query the execution plan status by calling GetExecutionPlanMetadata. Once the execution plan is in an AVAILABLE state, you can call GetExecutionPlan to obtain the execution result.

+

An execution plan does not support in-depth checks and verification, such as whether the user has the permission to generate or modify resources.

+

Note:

+ +
+

URI

POST /v1/{project_id}/stacks/{stack_name}/execution-plans

+ +
+ + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

A project ID is obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

stack_name

+

Yes

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 2 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

A unique request ID is specified by a user to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 3 Request body parameters

Parameter

+

Mandatory

+

Type

+

Description

+

stack_id

+

No

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+

template_body

+

No

+

String

+

HCL template. It describes the target status of a resource. RFS compares the differences between the statuses of this template and the current remote resources.

+

Either template_body or template_uri must be specified but they both cannot be specified together.

+

In the CreateStack API, template_body and template_uri are optional.

+

Note:

+
  • template_body cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the corresponding template_body in plaintext. If the information is sensitive, you are advised to use vars_structure to change the information to a variable and set the encryption field to enable encrypted transmission.
+

Minimum: 0

+

Maximum: 51200

+

template_uri

+

No

+

String

+

OBS address of an HCL template. The template describes the target status of a resource. RFS compares the differences between the statuses of this template and the current remote resources.

+

The OBS address allows mutual access to regions of the same type. Regions are classified into universal regions and dedicated regions. A universal region provides universal cloud services for common tenants. A dedicated region provides specific services for specific tenants.

+

The corresponding file must be a tf file or a zip package.

+

A pure .tf file must end with .tf or .tf.json and comply with the HCL syntax.

+

Currently, only the .zip package is supported. The file name extension must be .zip. The decompressed file cannot contain the .tfvars file and must be encoded in UTF8 format (the .tf.json file cannot contain the BOM header). The .zip package supports a maximum of 100 subfiles.

+

Either template_body or template_uri must be specified.

+

In the CreateStack API, template_body and template_uri are optional.

+

Note:

+
  • The template file corresponds to template_uri cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the content of the template file in plaintext. If the information is sensitive, you are advised to use vars_structure to change the information to a variable and set the encryption field to enable encrypted transmission.
  • If the template file corresponding to template_uri is of zip type, the length of the internal file or folder name must not exceed 255 bytes, the length of the deepest path must not exceed 2048 bytes, and the size of the zip package must not exceed 1MB.
+

Minimum: 0

+

Maximum: 2048

+

execution_plan_name

+

Yes

+

String

+

An execution plan name is unique within its domain (domain_id), region, project (project_id), and stack (stack_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+

description

+

No

+

String

+

Execution plan description. It is used to identify your own execution plans.

+

Minimum: 0

+

Maximum: 1024

+

vars_structure

+

No

+

Array of VarsStructure objects

+

HCL variable structure. Transferring variables is supported by the HCL template. The same template can use different variables for different purposes.

+
  • var_structure allows string variables.
  • RFS supports vars_structure, vars_body, and vars_uri. If they declare the same variable, error code 400 will be reported.
  • vars_structure only supports string variables. To use variables of other types, you need to convert them in HCL reference. Alternatively, you can use vars_uri and vars_body, which support various types and complex structures supported by HCL.
  • If vars_structure is too large, you can use vars_uri.
  • Note: vars_structure cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the corresponding vars in plaintext. If the information is sensitive, you are advised to set the encryption field.
+

Array Length: 0 - 100

+

vars_body

+

No

+

String

+

Content of the HCL variable file. Transferring variables is supported by the HCL template. The same template can use different variables for different purposes.

+
  • The vars_body uses the tfvars format of HCL. You can submit the content in the .tfvars file to the vars_body.
  • RFS supports vars_structure, vars_body, and vars_uri. If they declare the same variable, error code 400 will be reported.
  • If vars_body is too large, you can use vars_uri.
  • If the content in vars is simple strings, you can use var_structure.
  • vars_body cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the corresponding vars in plaintext. If the information is sensitive, you are advised to use vars_structure and set the encryption field for transmission.
+

Minimum: 0

+

Maximum: 51200

+

vars_uri

+

No

+

String

+

OBS address of the HCL variable file. Transferring variables is supported by the HCL template. The same template can use different variables for different purposes.

+

The OBS address allows mutual access to regions of the same type. Regions are classified into universal regions and dedicated regions. A universal region provides universal cloud services for common tenants. A dedicated region provides specific services for specific tenants.

+
  • RFS supports vars_structure, vars_body, and vars_uri. If they declare the same variable, error code 400 will be reported.
  • The content in vars_uri uses the tfvars format of HCL. You can save the content in .tfvars to a file, upload the file to OBS, and transfer the pre-signed URL of OBS to vars_uri.
  • vars_uri cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the corresponding vars in plaintext. If the information is sensitive, you are advised to use vars_structure and set the encryption field for transmission.
+

Minimum: 0

+

Maximum: 2048

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
Table 4 VarsStructure

Parameter

+

Mandatory

+

Type

+

Description

+

var_key

+

Yes

+

String

+

Variable name.

+

Minimum: 1

+

Maximum: 32

+

var_value

+

Yes

+

String

+

Variable value.

+

Variables must be in the form of a string. If a parameter is a number, it must also be in the form of a string, for example, '10'.

+

For different types or complex structures, you can use vars_uri or vars_body.

+

Minimum: 0

+

Maximum: 2048

+

encryption

+

No

+

EncryptionStructure object

+

If a transferred var_value has been encrypted, you can declare this variable to require RFS to decrypt the var_value before using it. Currently, only KMS encryption and decryption are supported.

+
+
+ +
+ + + + + + + + + + + +
Table 5 EncryptionStructure

Parameter

+

Mandatory

+

Type

+

Description

+

kms

+

Yes

+

KmsStructure object

+

If an assigned var_value is encrypted by KMS, related encryption information can be transferred. RFS will help you decrypt the var_value by KMS.

+

Note:

+
  • The agency you specify for RFS should have the operation permissions on the specified key ID.
  • KMS provides a quota for free trial every month. If the quota is exceeded, you will be billed for KMS. The fee is not billed by RFS.
  • KMS encryption only indicates that RFS uses ciphertext for storage and transmission. However, RFS still uses plaintext in stack-events. If you want RFS to use ciphertext in logs, you can declare sensitive in templates. For more information about sensitive, refer to https://learn.hashicorp.com/tutorials/terraform/sensitive-variables.
+
+
+ +
+ + + + + + + + + + + + + + + + +
Table 6 KmsStructure

Parameter

+

Mandatory

+

Type

+

Description

+

id

+

Yes

+

String

+

KMS key ID is used by RFS during decryption. Generally, the key ID is that used for encryption.

+

Minimum: 36

+

Maximum: 36

+

cipher_text

+

Yes

+

String

+

Ciphertext of data encryption key.

+

Minimum: 2

+

Maximum: 2048

+
+
+
+

Response Parameters

Status code: 202

+ +
+ + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

execution_plan_id

+

String

+

Unique execution plan ID.

+

A UUID is generated by RFS when an execution plan is created.

+

Execution plan names are unique at one specific time, so you can create an execution plan named HelloWorld and another execution plan with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the execution plan they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each execution plan has a unique ID that does not change with updates. If the execution_plan_id value differs from the current execution plan ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + + + + + +
Table 10 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 409

+ +
+ + + + + + + + + + + + + + + + + +
Table 11 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + + + + + +
Table 12 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + + + + + +
Table 13 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+
+

Example Requests

+
+

Example Responses

Status code: 202

+

The request is accepted and processed asynchronously.

+
{
+  "execution_plan_id" : "fb5e781e-a27d-46e2-9954-242753857a9f"
+}
+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

202

+

The request is accepted and processed asynchronously.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+
  1. The user does not have the permission to call this API.
  2. The maximum number of execution plans has been reached.
+

409

+

Creation requests conflict. An execution plan with the same name already exists.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/CreateStack.html b/docs/rfs/api-ref/CreateStack.html new file mode 100644 index 000000000..92a09de6e --- /dev/null +++ b/docs/rfs/api-ref/CreateStack.html @@ -0,0 +1,681 @@ + + +

Creating a Stack

+

Function

CreateStack creates a stack.

+ +
+

URI

POST /v1/{project_id}/stacks

+ +
+ + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

A project ID is obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 2 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

A unique request ID is specified by a user to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 3 Request body parameters

Parameter

+

Mandatory

+

Type

+

Description

+

stack_name

+

Yes

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+

agencies

+

No

+

Array of Agency objects

+

Agency information.

+

RFS uses an agency only in requests that involve resource operations, such as creating a stack (triggering deployment), creating an execution plan, deploying a stack, and deleting a stack. In addition, the agency applies only to resource operations performed by the provider bound to the agency. If the permissions provided by the agency are insufficient, operations on related resources may fail.

+

Array Length: 0 - 10

+

description

+

No

+

String

+

Description of a stack. It can be used by customers to identify their own stacks.

+

Minimum: 0

+

Maximum: 1024

+

enable_deletion_protection

+

No

+

Boolean

+

Deletion protection flag. If this variable is not assigned, the default value is false, indicating that deletion protection is disabled by default. (After deletion protection is enabled, stacks cannot be deleted.)

+

In the UpdateStack API, if this variable is not assigned in the RequestBody, the deletion protection attribute of the stack will not be updated.

+

enable_auto_rollback

+

No

+

Boolean

+

Auto-rollback flag. If this variable is not assigned, the default value is false, indicating that auto-rollback is disabled by default. (After auto-rollback is enabled, if the deployment fails, the stack is automatically rolled back and returns to the previous stable status.)

+

In the UpdateStack API, if this variable is not assigned in the RequestBody, the auto-rollback attribute of the stack will not be updated. This property is mutually exclusive with the import resources using templates feature, which does not allow the deployment of templates containing imported resources if the stack's auto-rollback is set to true.

+

template_body

+

No

+

String

+

HCL template. It describes the target status of a resource. RFS compares the differences between the statuses of this template and the current remote resources.

+

Either template_body or template_uri must be specified but they both cannot be specified together.

+

In the CreateStack API, template_body and template_uri are optional.

+

Note:

+
  • template_body cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the corresponding template_body in plaintext. If the information is sensitive, you are advised to use vars_structure to change the information to a variable and set the encryption field to enable encrypted transmission.
+

Minimum: 0

+

Maximum: 51200

+

template_uri

+

No

+

String

+

OBS address of an HCL template. The template describes the target status of a resource. RFS compares the differences between the statuses of this template and the current remote resources.

+

The OBS address allows mutual access to regions of the same type. Regions are classified into universal regions and dedicated regions. A universal region provides universal cloud services for common tenants. A dedicated region provides specific services for specific tenants.

+

The corresponding file must be a tf file or a zip package.

+

A pure .tf file must end with .tf or .tf.json and comply with the HCL syntax.

+

Currently, only the .zip package is supported. The file name extension must be .zip. The decompressed file cannot contain the .tfvars file and must be encoded in UTF8 format (the .tf.json file cannot contain the BOM header). The .zip package supports a maximum of 100 subfiles.

+

Either template_body or template_uri must be specified.

+

In the CreateStack API, template_body and template_uri are optional.

+

Note:

+
  • The template file corresponds to template_uri cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the content of the template file in plaintext. If the information is sensitive, you are advised to use vars_structure to change the information to a variable and set the encryption field to enable encrypted transmission.
  • If the template file corresponding to template_uri is of zip type, the length of the internal file or folder name must not exceed 255 bytes, the length of the deepest path must not exceed 2048 bytes, and the size of the zip package must not exceed 1MB.
+

Minimum: 0

+

Maximum: 2048

+

vars_body

+

No

+

String

+

Content of the HCL variable file. Transferring variables is supported by the HCL template. The same template can use different variables for different purposes.

+
  • The vars_body uses the tfvars format of HCL. You can submit the content in the .tfvars file to the vars_body.
  • RFS supports vars_structure, vars_body, and vars_uri. If they declare the same variable, error code 400 will be reported.
  • If vars_body is too large, you can use vars_uri.
  • If the content in vars is simple strings, you can use var_structure.
  • vars_body cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the corresponding vars in plaintext. If the information is sensitive, you are advised to use vars_structure and set the encryption field for transmission.
+

Minimum: 0

+

Maximum: 51200

+

vars_structure

+

No

+

Array of VarsStructure objects

+

HCL variable structure. Transferring variables is supported by the HCL template. The same template can use different variables for different purposes.

+
  • var_structure allows string variables.
  • RFS supports vars_structure, vars_body, and vars_uri. If they declare the same variable, error code 400 will be reported.
  • vars_structure only supports string variables. To use variables of other types, you need to convert them in HCL reference. Alternatively, you can use vars_uri and vars_body, which support various types and complex structures supported by HCL.
  • If vars_structure is too large, you can use vars_uri.
  • Note: vars_structure cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the corresponding vars in plaintext. If the information is sensitive, you are advised to set the encryption field.
+

Array Length: 0 - 100

+

vars_uri

+

No

+

String

+

OBS address of the HCL variable file. Transferring variables is supported by the HCL template. The same template can use different variables for different purposes.

+

The OBS address allows mutual access to regions of the same type. Regions are classified into universal regions and dedicated regions. A universal region provides universal cloud services for common tenants. A dedicated region provides specific services for specific tenants.

+
  • RFS supports vars_structure, vars_body, and vars_uri. If they declare the same variable, error code 400 will be reported.
  • The content in vars_uri uses the tfvars format of HCL. You can save the content in .tfvars to a file, upload the file to OBS, and transfer the pre-signed URL of OBS to vars_uri.
  • vars_uri cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the corresponding vars in plaintext. If the information is sensitive, you are advised to use vars_structure and set the encryption field for transmission.
+

Minimum: 0

+

Maximum: 2048

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
Table 4 Agency

Parameter

+

Mandatory

+

Type

+

Description

+

provider_name

+

Yes

+

String

+

Name of the provider used by a user. If the provider_name value given by the user is duplicate, 400 is returned.

+

Minimum: 1

+

Maximum: 128

+

agency_name

+

No

+

String

+

IAM agency used by the corresponding provider. RFS uses this agency to access and create resources of the provider. Either agency_name or agency_urn must be specified.

+

Minimum: 1

+

Maximum: 64

+

agency_urn

+

No

+

String

+

Agency URN When a user defines an agency, either agency_name or agency_urn must be specified. You are advised to set agency_urn when using the trust agency. agency_name can only receive common agency names. If agency_name is set to a trust agency name, template deployment will fail.

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
Table 5 VarsStructure

Parameter

+

Mandatory

+

Type

+

Description

+

var_key

+

Yes

+

String

+

Variable name.

+

Minimum: 1

+

Maximum: 32

+

var_value

+

Yes

+

String

+

Variable value.

+

Variables must be in the form of a string. If a parameter is a number, it must also be in the form of a string, for example, '10'.

+

For different types or complex structures, you can use vars_uri or vars_body.

+

Minimum: 0

+

Maximum: 2048

+

encryption

+

No

+

EncryptionStructure object

+

If a transferred var_value has been encrypted, you can declare this variable to require RFS to decrypt the var_value before using it. Currently, only KMS encryption and decryption are supported.

+
+
+ +
+ + + + + + + + + + + +
Table 6 EncryptionStructure

Parameter

+

Mandatory

+

Type

+

Description

+

kms

+

Yes

+

KmsStructure object

+

If an assigned var_value is encrypted by KMS, related encryption information can be transferred. RFS will help you decrypt the var_value by KMS.

+

Note:

+
  • The agency you specify for RFS should have the operation permissions on the specified key ID.
  • KMS provides a quota for free trial every month. If the quota is exceeded, you will be billed for KMS. The fee is not billed by RFS.
  • KMS encryption only indicates that RFS uses ciphertext for storage and transmission. However, RFS still uses plaintext in stack-events. If you want RFS to use ciphertext in logs, you can declare sensitive in templates. For more information about sensitive, refer to https://learn.hashicorp.com/tutorials/terraform/sensitive-variables.
+
+
+ +
+ + + + + + + + + + + + + + + + +
Table 7 KmsStructure

Parameter

+

Mandatory

+

Type

+

Description

+

id

+

Yes

+

String

+

KMS key ID is used by RFS during decryption. Generally, the key ID is that used for encryption.

+

Minimum: 36

+

Maximum: 36

+

cipher_text

+

Yes

+

String

+

Ciphertext of data encryption key.

+

Minimum: 2

+

Maximum: 2048

+
+
+
+

Response Parameters

Status code: 201

+ +
+ + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

stack_id

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+

deployment_id

+

String

+

Deployment ID.

+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + + + + + +
Table 10 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + + + + + +
Table 11 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 409

+ +
+ + + + + + + + + + + + + + + + + +
Table 12 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + + + + + +
Table 13 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + + + + + +
Table 14 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+
+

Example Requests

+
+

Example Responses

Status code: 201

+

Stack created.

+
{
+  "stack_id" : "ea6a4f0e-ee8a-494e-b12a-8be4a1e65af2"
+}
+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

201

+

Stack created.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+
  1. The user does not have the permission to call this API.
  2. Too many stacks.
+

409

+

Request conflict. Another stack with the same name already exists.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/DeleteExecutionPlan.html b/docs/rfs/api-ref/DeleteExecutionPlan.html new file mode 100644 index 000000000..ec464f218 --- /dev/null +++ b/docs/rfs/api-ref/DeleteExecutionPlan.html @@ -0,0 +1,361 @@ + + +

Deleting an Execution Plan

+

Function

DeleteExecutionPlan

+

This API deletes an execution plan.

+

If an execution plan is in a CREATION_IN_PROGRESS or APPLY_IN_PROGRESS state, the execution plan cannot be deleted and 403 is returned.

+
+

URI

DELETE /v1/{project_id}/stacks/{stack_name}/execution-plans/{execution_plan_name}

+ +
+ + + + + + + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

A project ID is obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

stack_name

+

Yes

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+

execution_plan_name

+

Yes

+

String

+

An execution plan name is unique within its domain (domain_id), region, project (project_id), and stack (stack_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + + + + + + +
Table 2 Query Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

stack_id

+

No

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+

execution_plan_id

+

No

+

String

+

Unique execution plan ID.

+

A UUID is generated by RFS when an execution plan is created.

+

Execution plan names are unique at one specific time, so you can create an execution plan named HelloWorld and another execution plan with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the execution plan they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each execution plan has a unique ID that does not change with updates. If the execution_plan_id value differs from the current execution plan ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 3 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

A unique request ID is specified by a user to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+
+

Response Parameters

Status code: 400

+ +
+ + + + + + + + + + + + + + + + + +
Table 4 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + + + + + +
Table 5 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + + + + + +
Table 6 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+
+

Example Requests

+
+

Example Responses

None

+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

204

+

Execution plan deleted.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+
  1. The user does not have the permission to call this API.
  2. The execution plan cannot be deleted due to its invalid status.
+

404

+
  1. The stack does not exist.
  2. The execution plan does not exist.
+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/DeleteStack.html b/docs/rfs/api-ref/DeleteStack.html new file mode 100644 index 000000000..30e6073fd --- /dev/null +++ b/docs/rfs/api-ref/DeleteStack.html @@ -0,0 +1,378 @@ + + +

Deleting a Stack

+

Function

DeleteStack

+

This API deletes a stack. **Exercise caution when performing this operation. Deleting a stack will delete all data related to the stack by default, such as execution plans, stack events, stack outputs, and resources. **

+ +
+

URI

DELETE /v1/{project_id}/stacks/{stack_name}

+ +
+ + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

A project ID is obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

stack_name

+

Yes

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + +
Table 2 Query Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

stack_id

+

No

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 3 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

A unique request ID is specified by a user to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+
+

Response Parameters

Status code: 400

+ +
+ + + + + + + + + + + + + + + + + +
Table 4 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + + + + + +
Table 5 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + + + + + +
Table 6 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+
+

Example Requests

+
+

Example Responses

None

+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

202

+

The request is accepted and processed asynchronously.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+
  1. Invalid stack status.
  2. The user does not have the permission to call this API.
+

404

+

The stack does not exist.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/DeleteStackEnhanced.html b/docs/rfs/api-ref/DeleteStackEnhanced.html new file mode 100644 index 000000000..c8484d686 --- /dev/null +++ b/docs/rfs/api-ref/DeleteStackEnhanced.html @@ -0,0 +1,394 @@ + + +

Deleting a Stack with Conditions

+

Function

This API deletes a stack with conditions. You can determine whether to retain resources. **Exercise caution when performing this operation. Deleting a stack will delete all data related to the stack by default, such as execution plans, stack events, stack outputs, and resources. ** **If you want to retain stack resources when deleting the stack, specify retain_all_resources in the request.

+ +
+

URI

POST /v1/{project_id}/stacks/{stack_name}/deletion

+ +
+ + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

A project ID is obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

stack_name

+

Yes

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 2 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

A unique request ID is specified by a user to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + + + + + + +
Table 3 Request body parameters

Parameter

+

Mandatory

+

Type

+

Description

+

stack_id

+

No

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+

retain_all_resources

+

No

+

Boolean

+

Indicates whether to retain resources when deleting a stack. If this variable is not assigned, the default value false is used, indicating that resources are not retained by default. (After a stack is deleted, resources in the stack are deleted.)

+
  • In the DeleteStackEnhanced API, if this variable is not assigned in the RequestBody, the resources in the stack are not retained during deletion. *
+
+
+
+

Response Parameters

Status code: 400

+ +
+ + + + + + + + + + + + + + + + + +
Table 4 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + + + + + +
Table 5 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + + + + + +
Table 6 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+
+

Example Requests

+
+

Example Responses

None

+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

202

+

The request is accepted and processed asynchronously.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+
  1. Invalid stack status.
  2. The user does not have the permission to call this API.
+

404

+

The stack does not exist.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/DeleteTemplate.html b/docs/rfs/api-ref/DeleteTemplate.html new file mode 100644 index 000000000..d3c2ca352 --- /dev/null +++ b/docs/rfs/api-ref/DeleteTemplate.html @@ -0,0 +1,318 @@ + + +

Deleting a Template

+

Function

DeleteTemplate

+

This API deletes a template and all its versions. **Exercise caution when performing this operation. Deleting a template will delete all its versions. **

+ +
+

URI

DELETE /v1/{project_id}/templates/{template_name}

+ +
+ + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

Project ID. It can be obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

template_name

+

Yes

+

String

+

Name of the template to be created.

+

Minimum: 1

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + +
Table 2 Query Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

template_id

+

No

+

String

+

ID of a template. If template_id exists, the template service checks whether template_id matches template_name. If not, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 3 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

Unique request ID. It is specified by a user and is used to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+
+

Response Parameters

Status code: 400

+ +
+ + + + + + + + + + + + + +
Table 4 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + +
Table 5 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + +
Table 6 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+
+

Example Requests

+
+

Example Responses

None

+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

204

+

Template deleted. No data returned.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+

The user does not have the permission to call this API.

+

404

+

The template does not exist.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/DeleteTemplateVersion.html b/docs/rfs/api-ref/DeleteTemplateVersion.html new file mode 100644 index 000000000..ea24e7498 --- /dev/null +++ b/docs/rfs/api-ref/DeleteTemplateVersion.html @@ -0,0 +1,330 @@ + + +

Deleting a Template Version

+

Function

DeleteTemplateVersion

+

This API deletes a template version.

+ +

Exercise caution when you perform this operation.

+
+

URI

DELETE /v1/{project_id}/templates/{template_name}/versions/{version_id}

+ +
+ + + + + + + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

Project ID. It can be obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

template_name

+

Yes

+

String

+

Name of the template to be created.

+

Minimum: 1

+

Maximum: 128

+

version_id

+

Yes

+

String

+

Template version ID. It starts with V (uppercase). The number of the ID is incremented by 1 each time a version is created.

+

Minimum: 2

+

Maximum: 11

+
+
+ +
+ + + + + + + + + + + +
Table 2 Query Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

template_id

+

No

+

String

+

ID of a template. If template_id exists, the template service checks whether template_id matches template_name. If not, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 3 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

Unique request ID. It is specified by a user and is used to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+
+

Response Parameters

Status code: 400

+ +
+ + + + + + + + + + + + + +
Table 4 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + +
Table 5 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + +
Table 6 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+
+

Example Requests

+
+

Example Responses

None

+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

204

+

Template version deleted. No data returned.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+

The user does not have the permission to call this API.

+

404

+

The template or template version does not exist.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/DeployStack.html b/docs/rfs/api-ref/DeployStack.html new file mode 100644 index 000000000..195f9856e --- /dev/null +++ b/docs/rfs/api-ref/DeployStack.html @@ -0,0 +1,624 @@ + + +

Deploying a Stack

+

Function

DeployStack

+

This API deploys a created stack.

+ +
+

URI

POST /v1/{project_id}/stacks/{stack_name}/deployments

+ +
+ + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

A project ID is obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

stack_name

+

Yes

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 2 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

A unique request ID is specified by a user to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 3 Request body parameters

Parameter

+

Mandatory

+

Type

+

Description

+

template_body

+

No

+

String

+

HCL template. It describes the target status of a resource. RFS compares the differences between the statuses of this template and the current remote resources.

+

Either template_body or template_uri must be specified but they both cannot be specified together.

+

In the CreateStack API, template_body and template_uri are optional.

+

Note:

+
  • template_body cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the corresponding template_body in plaintext. If the information is sensitive, you are advised to use vars_structure to change the information to a variable and set the encryption field to enable encrypted transmission.
+

Minimum: 0

+

Maximum: 51200

+

template_uri

+

No

+

String

+

OBS address of an HCL template. The template describes the target status of a resource. RFS compares the differences between the statuses of this template and the current remote resources.

+

The OBS address allows mutual access to regions of the same type. Regions are classified into universal regions and dedicated regions. A universal region provides universal cloud services for common tenants. A dedicated region provides specific services for specific tenants.

+

The corresponding file must be a tf file or a zip package.

+

A pure .tf file must end with .tf or .tf.json and comply with the HCL syntax.

+

Currently, only the .zip package is supported. The file name extension must be .zip. The decompressed file cannot contain the .tfvars file and must be encoded in UTF8 format (the .tf.json file cannot contain the BOM header). The .zip package supports a maximum of 100 subfiles.

+

Either template_body or template_uri must be specified.

+

In the CreateStack API, template_body and template_uri are optional.

+

Note:

+
  • The template file corresponds to template_uri cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the content of the template file in plaintext. If the information is sensitive, you are advised to use vars_structure to change the information to a variable and set the encryption field to enable encrypted transmission.
  • If the template file corresponding to template_uri is of zip type, the length of the internal file or folder name must not exceed 255 bytes, the length of the deepest path must not exceed 2048 bytes, and the size of the zip package must not exceed 1MB.
+

Minimum: 0

+

Maximum: 2048

+

vars_structure

+

No

+

Array of VarsStructure objects

+

HCL variable structure. Transferring variables is supported by the HCL template. The same template can use different variables for different purposes.

+
  • var_structure allows string variables.
  • RFS supports vars_structure, vars_body, and vars_uri. If they declare the same variable, error code 400 will be reported.
  • vars_structure only supports string variables. To use variables of other types, you need to convert them in HCL reference. Alternatively, you can use vars_uri and vars_body, which support various types and complex structures supported by HCL.
  • If vars_structure is too large, you can use vars_uri.
  • Note: vars_structure cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the corresponding vars in plaintext. If the information is sensitive, you are advised to set the encryption field.
+

Array Length: 0 - 100

+

vars_body

+

No

+

String

+

Content of the HCL variable file. Transferring variables is supported by the HCL template. The same template can use different variables for different purposes.

+
  • The vars_body uses the tfvars format of HCL. You can submit the content in the .tfvars file to the vars_body.
  • RFS supports vars_structure, vars_body, and vars_uri. If they declare the same variable, error code 400 will be reported.
  • If vars_body is too large, you can use vars_uri.
  • If the content in vars is simple strings, you can use var_structure.
  • vars_body cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the corresponding vars in plaintext. If the information is sensitive, you are advised to use vars_structure and set the encryption field for transmission.
+

Minimum: 0

+

Maximum: 51200

+

vars_uri

+

No

+

String

+

OBS address of the HCL variable file. Transferring variables is supported by the HCL template. The same template can use different variables for different purposes.

+

The OBS address allows mutual access to regions of the same type. Regions are classified into universal regions and dedicated regions. A universal region provides universal cloud services for common tenants. A dedicated region provides specific services for specific tenants.

+
  • RFS supports vars_structure, vars_body, and vars_uri. If they declare the same variable, error code 400 will be reported.
  • The content in vars_uri uses the tfvars format of HCL. You can save the content in .tfvars to a file, upload the file to OBS, and transfer the pre-signed URL of OBS to vars_uri.
  • vars_uri cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the corresponding vars in plaintext. If the information is sensitive, you are advised to use vars_structure and set the encryption field for transmission.
+

Minimum: 0

+

Maximum: 2048

+

stack_id

+

No

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
Table 4 VarsStructure

Parameter

+

Mandatory

+

Type

+

Description

+

var_key

+

Yes

+

String

+

Variable name.

+

Minimum: 1

+

Maximum: 32

+

var_value

+

Yes

+

String

+

Variable value.

+

Variables must be in the form of a string. If a parameter is a number, it must also be in the form of a string, for example, '10'.

+

For different types or complex structures, you can use vars_uri or vars_body.

+

Minimum: 0

+

Maximum: 2048

+

encryption

+

No

+

EncryptionStructure object

+

If a transferred var_value has been encrypted, you can declare this variable to require RFS to decrypt the var_value before using it. Currently, only KMS encryption and decryption are supported.

+
+
+ +
+ + + + + + + + + + + +
Table 5 EncryptionStructure

Parameter

+

Mandatory

+

Type

+

Description

+

kms

+

Yes

+

KmsStructure object

+

If an assigned var_value is encrypted by KMS, related encryption information can be transferred. RFS will help you decrypt the var_value by KMS.

+

Note:

+
  • The agency you specify for RFS should have the operation permissions on the specified key ID.
  • KMS provides a quota for free trial every month. If the quota is exceeded, you will be billed for KMS. The fee is not billed by RFS.
  • KMS encryption only indicates that RFS uses ciphertext for storage and transmission. However, RFS still uses plaintext in stack-events. If you want RFS to use ciphertext in logs, you can declare sensitive in templates. For more information about sensitive, refer to https://learn.hashicorp.com/tutorials/terraform/sensitive-variables.
+
+
+ +
+ + + + + + + + + + + + + + + + +
Table 6 KmsStructure

Parameter

+

Mandatory

+

Type

+

Description

+

id

+

Yes

+

String

+

KMS key ID is used by RFS during decryption. Generally, the key ID is that used for encryption.

+

Minimum: 36

+

Maximum: 36

+

cipher_text

+

Yes

+

String

+

Ciphertext of data encryption key.

+

Minimum: 2

+

Maximum: 2048

+
+
+
+

Response Parameters

Status code: 202

+ +
+ + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

deployment_id

+

String

+

Deployment ID.

+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + + + + + +
Table 10 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + + + + + +
Table 11 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 409

+ +
+ + + + + + + + + + + + + + + + + +
Table 12 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + + + + + +
Table 13 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + + + + + +
Table 14 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+
+

Example Requests

Transfer template and variable information using OBS signed URL.

+
POST https://{endpoint}/v1/ba2b9930c977f71edaeaa3a5e96a8ff1/stacks/my_hello_world_stack/deployments
+
+{
+  "template_uri" : "https://my_hello_world_bucket.{region}.otc.t-systems.com/my-hello-world-template.tf",
+  "vars_uri" : "https://my_hello_world_bucket.{region}.otc.t-systems.com/my-hello-world-vars.tfvars",
+  "stack_id" : "1b15e005-bdbb-4bd7-8f9a-a09b6774b4b3"
+}
+
+

Example Responses

Status code: 202

+

The request is accepted and processed asynchronously.

+
{
+  "deployment_id" : "3fef5d3e-27b6-44e8-9769-1d7262bd9430"
+}
+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

202

+

The request is accepted and processed asynchronously.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+
  1. Invalid stack status.
  2. The user does not have the permission to call this API.
+

404

+

The stack does not exist.

+

409

+

Request conflict. Another request is being processed on the current stack.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/ErrorCode.html b/docs/rfs/api-ref/ErrorCode.html new file mode 100644 index 000000000..4fae77efe --- /dev/null +++ b/docs/rfs/api-ref/ErrorCode.html @@ -0,0 +1,950 @@ + + +

Error Codes

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Error Codes

+

Error Message

+

Description

+

Solution

+

400

+

RF.10011001

+

Missing required parameter(s).

+

Missing required parameter(s).

+

Contact technical support.

+

400

+

RF.10011002

+

Unrecognized parameter(s).

+

Unrecognized parameter(s).

+

Contact technical support.

+

400

+

RF.10011003

+

Both template_uri and template_body are given, you should only give exactly one parameter from template_uri and template_body.

+

Both template_uri and template_body are given, you should only give exactly one parameter from template_uri and template_body.

+

Contact technical support.

+

400

+

RF.10011005

+

The length of parameter is longer than upper limit.

+

The length of parameter is longer than upper limit.

+

Contact technical support.

+

400

+

RF.10011006

+

The length of parameter is shorter than lower limit.

+

The length of parameter is shorter than lower limit.

+

Contact technical support.

+

400

+

RF.10011008

+

Parameter contains invalid letter. Should only contains English characters, number or hyphen.

+

Parameter contains invalid letter. Should only contains English characters, number or hyphen.

+

Contact technical support.

+

400

+

RF.10011009

+

Parameter contains invalid letter. It should start with lower case English characters or number, and only contain lower case English characters, number or hyphen.

+

Parameter contains invalid letter. It should start with lower case English characters or number, and only contain lower case English characters, number or hyphen.

+

Contact technical support.

+

400

+

RF.10011010

+

Parameter contains invalid letter. Should start with Chinese or English characters, and only contains Chinese characters, English characters, number, underscore or hyphen.

+

Parameter contains invalid letter. Should start with Chinese or English characters, and only contains Chinese characters, English characters, number, underscore or hyphen.

+

Contact technical support.

+

400

+

RF.10011013

+

The size of the file obtained from template_uri exceeds the upper limit.

+

The size of the file obtained from template_uri exceeds the upper limit.

+

Contact technical support.

+

400

+

RF.10011014

+

The size of the file obtained from vars_uri exceeds the upper limit.

+

The size of the file obtained from vars_uri exceeds the upper limit.

+

Contact technical support.

+

400

+

RF.10011015

+

Stack ID is not matched with current stack with stack name.

+

Stack ID is not matched with current stack with stack name.

+

Contact technical support.

+

400

+

RF.10011016

+

Project ID contains invalid letter. Project ID should only contains English characters, number, hyphen.

+

Project ID contains invalid letter. Project ID should only contains English characters, number, hyphen.

+

Contact technical support.

+

400

+

RF.10011018

+

Execution plan ID is not matched with current execution plan with execution plan name.

+

Execution plan ID is not matched with current execution plan with execution plan name.

+

Contact technical support.

+

400

+

RF.10011022

+

Invalid file extension. Template file should end with .tf, .tf.json, or .zip

+

Invalid file extension. Template file should end with .tf, .tf.json, or .zip

+

Contact technical support.

+

400

+

RF.10011025

+

Invalid file(s) found in zip. A zip file should not contain tfvars files.

+

Invalid file(s) found in zip. A zip file should not contain tfvars files.

+

Contact technical support.

+

400

+

RF.10011026

+

The size of unzipped files in zip file is bigger than upper limit.

+

The size of unzipped files in zip file is bigger than upper limit.

+

Contact technical support.

+

400

+

RF.10011027

+

Invalid enum value.

+

Invalid enum value.

+

Contact technical support.

+

400

+

RF.10011028

+

Composite Validation Error.

+

Composite Validation Error.

+

Contact technical support.

+

400

+

RF.10011029

+

Parameter contains invalid letter. Should only contains English characters or number.

+

Parameter contains invalid letter. Should only contains English characters or number.

+

Contact technical support.

+

400

+

RF.10011031

+

Parameter contains invalid letter. Should only contains English characters, number, hyphen or underscore.

+

Parameter contains invalid letter. Should only contains English characters, number, hyphen or underscore.

+

Contact technical support.

+

400

+

RF.10011032

+

Can not find request body.

+

Can not find request body.

+

Contact technical support.

+

400

+

RF.10011033

+

Request body format is invalid json.

+

Request body format is invalid json.

+

Contact technical support.

+

400

+

RF.10011034

+

Invalid vars URI. Vars URI should start with [http|https] and end with [.tfvars].

+

Invalid vars URI. Vars URI should start with [http|https] and end with [.tfvars].

+

Contact technical support.

+

400

+

RF.10011035

+

Invalid template URI. Template URI should start with [http|https] and end with [.tf|.tf.json|.zip].

+

Invalid template URI. Template URI should start with [http|https] and end with [.tf|.tf.json|.zip].

+

Contact technical support.

+

400

+

RF.10011036

+

The value of parameter is not a valid instance of integer.

+

The value of parameter is not a valid instance of integer.

+

Contact technical support.

+

400

+

RF.10011037

+

The field value cannot be empty.

+

The field value cannot be empty.

+

Contact technical support.

+

400

+

RF.10011038

+

Invalid parameter value type.

+

Invalid parameter value type.

+

Contact technical support.

+

400

+

RF.10011039

+

VarKey contains invalid letter. VarKey should Starts with an English letter and only contains English characters, number, hyphen or underscore.

+

VarKey contains invalid letter. VarKey should Starts with an English letter and only contains English characters, number, hyphen or underscore.

+

Contact technical support.

+

400

+

RF.10011041

+

The count of unzipped files in zip file is bigger than upper limit.

+

The count of unzipped files in zip file is bigger than upper limit.

+

Contact technical support.

+

400

+

RF.10011042

+

The size of template zip is bigger than upper limit.

+

The size of template zip is bigger than upper limit.

+

Contact technical support.

+

400

+

RF.10011046

+

Account parameter should not contain octothorpe (#).

+

Account parameter should not contain octothorpe (#).

+

Contact technical support.

+

400

+

RF.10011049

+

Invalid vars uri.

+

Invalid vars uri.

+

Contact technical support.

+

400

+

RF.10011050

+

Invalid vars uri content.

+

Invalid vars uri content.

+

Contact technical support.

+

400

+

RF.10011051

+

Invalid vars body.

+

Invalid vars body.

+

Contact technical support.

+

400

+

RF.10011052

+

Var value is empty.

+

Var value is empty.

+

Contact technical support.

+

400

+

RF.10011055

+

Invalid json array.

+

Invalid json array.

+

Contact technical support.

+

400

+

RF.10011056

+

Both template_uri and template_body are absence, you should give exactly one parameter from template_uri and template_body.

+

Both template_uri and template_body are absence, you should give exactly one parameter from template_uri and template_body.

+

Contact technical support.

+

400

+

RF.10011057

+

Project ID should only contains lower case hexadecimal characters.

+

Project ID should only contains lower case hexadecimal characters.

+

Contact technical support.

+

400

+

RF.10011065

+

Found duplicate values in attribute provider_name.

+

Found duplicate values in attribute provider_name.

+

Contact technical support.

+

400

+

RF.10011073

+

Invalid template body.

+

Invalid template body.

+

Contact technical support.

+

400

+

RF.10011074

+

Invalid template.

+

Invalid template.

+

Contact technical support.

+

400

+

RF.10011075

+

File type is not matched with file content.

+

File type is not matched with file content.

+

Contact technical support.

+

400

+

RF.10011083

+

Invalid zip from template uri: zip contains malformed file(s) that points to a path outside the root directory of the zip file

+

Invalid zip from template uri: zip contains malformed file(s) that points to a path outside the root directory of the zip file

+

Contact technical support.

+

400

+

RF.10011084

+

No parameters in the request need to be modified.

+

No parameters in the request need to be modified.

+

Contact technical support.

+

400

+

RF.10011085

+

The encoding format of template content is unsupported, it should be utf-8 encoded.

+

The encoding format of template content is unsupported, it should be utf-8 encoded.

+

Contact technical support.

+

400

+

RF.10011087

+

Unrecognized search option parameter.

+

Unrecognized search option parameter.

+

Contact technical support.

+

400

+

RF.10011088

+

No valid filter method found.

+

No valid filter method found.

+

Contact technical support.

+

400

+

RF.10011089

+

The filter value is invalid.

+

The filter value is invalid.

+

Contact technical support.

+

400

+

RF.10011093

+

Duplicate fields found.

+

Duplicate fields found.

+

Contact technical support.

+

400

+

RF.10011095

+

Missing required template parameter for price inquiry.

+

Missing required template parameter for price inquiry.

+

Contact technical support.

+

400

+

RF.10011096

+

Template parameter is invalid for price inquiry.

+

Template parameter is invalid for price inquiry.

+

Contact technical support.

+

400

+

RF.10011102

+

Malformed template zip file found. Failed to read zip file.

+

Malformed template zip file found. Failed to read zip file.

+

Contact technical support.

+

400

+

RF.10011120

+

The encoding format of json template content [utf-8 with BOM] is unsupported, it should be utf-8 encoded.

+

The encoding format of json template content [utf-8 with BOM] is unsupported, it should be utf-8 encoded.

+

Contact technical support.

+

400

+

RF.10011122

+

Agency is not supported in iam v5 scene, if you want to use agency, please use iam v3.

+

Agency is not supported in iam v5 scene, if you want to use agency, please use iam v3.

+

Contact technical support.

+

400

+

RF.10011123

+

Parameter contains invalid letter. Should start with English characters or number, and only contains English characters, number or hyphen.

+

Parameter contains invalid letter. Should start with English characters or number, and only contains English characters, number or hyphen.

+

Contact technical support.

+

400

+

RF.10011141

+

The length of vars_body exceeds the upper limit.

+

The length of vars_body exceeds the upper limit.

+

Contact technical support.

+

400

+

RF.10011151

+

The length of file path in template zip file exceeds the upper limit.

+

The length of file path in template zip file exceeds the upper limit.

+

Contact technical support.

+

400

+

RF.10011152

+

The length of file name in template zip file exceeds the upper limit.

+

The length of file name in template zip file exceeds the upper limit.

+

Contact technical support.

+

400

+

RF.10011155

+

The path of file in zip can not start with path separator(/)

+

The path of file in zip can not start with path separator(/)

+

Contact technical support.

+

400

+

RF.10011156

+

The value between path separator in zip can not be empty, single dot (.) or double dot (..).

+

The value between path separator in zip can not be empty, single dot (.) or double dot (..).

+

Contact technical support.

+

400

+

RF.10011157

+

No template file (file name ends with .tf or .tf.json) exists at root dir in zip. There should be at least one template file in root dir in zip.

+

No template file (file name ends with .tf or .tf.json) exists at root dir in zip. There should be at least one template file in root dir in zip.

+

Contact technical support.

+

400

+

RF.10011166

+

Parameter should only contain lower English characters, numbers or hyphens, start and end with lower English characters or numbers.

+

Parameter should only contain lower English characters, numbers or hyphens, start and end with lower English characters or numbers.

+

Contact technical support.

+

400

+

RF.10011167

+

Invalid function_graph_urn format.

+

Invalid function_graph_urn format.

+

Contact technical support.

+

401

+

RF.10012001

+

Authentication failed.

+

Authentication failed.

+

Contact technical support.

+

403

+

RF.10012507

+

Policy doesn't allow action to be performed.

+

Policy doesn't allow action to be performed.

+

Contact technical support.

+

403

+

RF.10012538

+

The total count of stacks has exceeded the maximum limit.

+

The total count of stacks has exceeded the maximum limit.

+

Contact technical support.

+

403

+

RF.10012540

+

Too many stacks are being created in parallel, please take a rest and try again later.

+

Too many stacks are being created in parallel, please take a rest and try again later.

+

Contact technical support.

+

403

+

RF.10012541

+

Too many execution plans are being created in parallel, please take a rest and try again later.

+

Too many execution plans are being created in parallel, please take a rest and try again later.

+

Contact technical support.

+

403

+

RF.10012542

+

Execution plan cannot be applied due to invalid stack status.

+

Execution plan cannot be applied due to invalid stack status.

+

Contact technical support.

+

403

+

RF.10012543

+

Execution plan cannot be applied due to invalid execution plan status.

+

Execution plan cannot be applied due to invalid execution plan status.

+

Contact technical support.

+

403

+

RF.10012544

+

Stack cannot be deleted due to invalid stack status.

+

Stack cannot be deleted due to invalid stack status.

+

Contact technical support.

+

403

+

RF.10012545

+

Execution plan cannot be applied because stack has been deployed since execution plan generated. Please regenerate the execution plan based on the latest stack.

+

Execution plan cannot be applied because stack has been deployed since execution plan generated. Please regenerate the execution plan based on the latest stack.

+

Contact technical support.

+

403

+

RF.10012546

+

Auto rollback of stack cannot be enabled due to invalid stack status.

+

Auto rollback of stack cannot be enabled due to invalid stack status.

+

Contact technical support.

+

403

+

RF.10012547

+

Invalid stack status. The stack cannot be continue-deployed.

+

Invalid stack status. The stack cannot be continue-deployed.

+

Contact technical support.

+

403

+

RF.10012549

+

Invalid stack status. The execution plan cannot be deleted.

+

Invalid stack status. The execution plan cannot be deleted.

+

Contact technical support.

+

404

+

RF.10013001

+

Stack is not exist.

+

Stack is not exist.

+

Contact technical support.

+

404

+

RF.10013002

+

Execution plan is not exist.

+

Execution plan is not exist.

+

Contact technical support.

+

404

+

RF.10013023

+

The stack template does not exist.

+

The stack template does not exist.

+

Contact technical support.

+

404

+

RF.10013029

+

Product does not exist for price inquiry.

+

Product does not exist for price inquiry.

+

Contact technical support.

+

409

+

RF.10013501

+

Conflict execution plan name. Execution plan with name already exist.

+

Conflict execution plan name. Execution plan with name already exist.

+

Contact technical support.

+

409

+

RF.10013502

+

Conflict stack name. Stack with name already exist.

+

Conflict stack name. Stack with name already exist.

+

Contact technical support.

+

409

+

RF.10013503

+

Stack operation requests conflicted. Another request is being processed. Please retry later.

+

Stack operation requests conflicted. Another request is being processed. Please retry later.

+

Contact technical support.

+

429

+

RF.10014001

+

Too many requests. Please try again in a few minutes.

+

Too many requests. Please try again in a few minutes.

+

Contact technical support.

+

500

+

RF.10010001

+

Internal Server Error.

+

Internal Server Error.

+

Contact technical support.

+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/GetExecutionPlan.html b/docs/rfs/api-ref/GetExecutionPlan.html new file mode 100644 index 000000000..8de152118 --- /dev/null +++ b/docs/rfs/api-ref/GetExecutionPlan.html @@ -0,0 +1,659 @@ + + +

Obtaining Execution Plans

+

Function

GetExecutionPlan

+

This API obtains the details (items) of a specified execution plan. By calling this API, you can check the changes of resources in a stack once the specified execution plan is applied.

+

If the execution plan is in a CREATION_IN_PROGRESS or CREATION_FAILED state, the list of execution plan items will not be returned.

+
+

URI

GET /v1/{project_id}/stacks/{stack_name}/execution-plans/{execution_plan_name}

+ +
+ + + + + + + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

A project ID is obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

stack_name

+

Yes

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+

execution_plan_name

+

Yes

+

String

+

An execution plan name is unique within its domain (domain_id), region, project (project_id), and stack (stack_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + + + + + + +
Table 2 Query Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

stack_id

+

No

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+

execution_plan_id

+

No

+

String

+

Unique execution plan ID.

+

A UUID is generated by RFS when an execution plan is created.

+

Execution plan names are unique at one specific time, so you can create an execution plan named HelloWorld and another execution plan with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the execution plan they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each execution plan has a unique ID that does not change with updates. If the execution_plan_id value differs from the current execution plan ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 3 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

A unique request ID is specified by a user to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+
+

Response Parameters

Status code: 200

+ +
+ + + + + + + + + +
Table 4 Response body parameters

Parameter

+

Type

+

Description

+

execution_plan_items

+

Array of ExecutionPlanItem objects

+

Item list of an execution plan.

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 5 ExecutionPlanItem

Parameter

+

Type

+

Description

+

resource_type

+

String

+

Resource type.

+

For example, in the following HCL template, the value of resource_type is opentelekomcloud_vpc_v1.

+
resource "opentelekomcloud_vpc_v1" "my_hello_world_vpc" {
+  name = "test_vpc"
+}
+

In a JSON template, the value of resource_type is opentelekomcloud_vpc_v1.

+
{
+  "resource": {
+    "opentelekomcloud_vpc_v1": {
+      "my_hello_world_vpc": {
+        "name": "test_vpc"
+      }
+    }
+  }
+}
+

resource_name

+

String

+

Resource name. The default value is the logical name of a resource.

+

For example, in the following HCL template, the value of resource_name is my_hello_world_vpc.

+
resource "opentelekomcloud_vpc_v1" "my_hello_world_vpc" {
+  name = "test_vpc"
+}
+

In a JSON template, the value of resource_name is my_hello_world_vpc.

+
{
+  "resource": {
+    "opentelekomcloud_vpc_v1": {
+      "my_hello_world_vpc": {
+        "name": "test_vpc"
+      }
+    }
+  }
+}
+

index

+

String

+

Resource index. If count or for_each is used in a template, index is returned. If index appears, resource_name and index can be used to identify a resource. If count is used in a template, index is a number starting from 0.

+

For example, in the following HCL template, opentelekomcloud_vpc_v1.my_hello_world_vpc[0] and opentelekomcloud_vpc_v1.my_hello_world_vpc[1] identify two resources.

+
resource "opentelekomcloud_vpc_v1" "my_hello_world_vpc" {
+  count = 2
+  name = "test_vpc"
+}
+

In a JSON template, opentelekomcloud_vpc_v1.my_hello_world_vpc[0] and opentelekomcloud_vpc_v1.my_hello_world_vpc[1] identify two resources.

+
{
+  "resource": {
+    "opentelekomcloud_vpc_v1": {
+      "my_hello_world_vpc": {
+        "name": "test_vpc",
+        "count": 2
+      }
+    }
+  }
+}
+

If for_each is used in a template, index is a user-defined string. For example, in the following HCL template, opentelekomcloud_vpc_v1.my_hello_world_vpc["vpc1"] and opentelekomcloud_vpc_v1.my_hello_world_vpc["vpc2"] identify two resources.

+
resource "opentelekomcloud_vpc_v1" "my_hello_world_vpc" {
+  for_each = {
+    "vpc1" = "test_vpc"
+    "vpc2" = "test_vpc"
+  }
+  name = each.value
+}
+

In a JSON template, opentelekomcloud_vpc_v1.my_hello_world_vpc["vpc1"] and opentelekomcloud_vpc_v1.my_hello_world_vpc["vpc2"] identify two resources.

+
{
+  "resource": {
+    "opentelekomcloud_vpc_v1": {
+      "my_hello_world_vpc": {
+        "for_each": {
+          "vpc1": "test_vpc",
+          "vpc2": "test_vpc"
+        }
+        "name": "${each.value}"
+      }
+    }
+  }
+}
+

action

+

String

+

Resource change types may include:

+
  • ADD: adds a resource.
  • ADD_THEN_DELETE: creates a resource and then deletes the old one. It is returned by resources those cannot be updated.
  • DELETE: deletes a resource.
  • DELETE_THEN_ADD: deletes the old resource and then creates a new one. It is returned by resources those cannot be updated.
  • UPDATE: updates a resource.
    • NO_OPERATION: only changes the dependencies of a resource. The resource itself is not changed.
    +
+

Enumeration values:

+
  • ADD
  • ADD_THEN_DELETE
  • DELETE
  • DELETE_THEN_ADD
  • UPDATE
  • NO_OPERATION
+

action_reason

+

String

+

Reason for triggering project changes, for example, a user updates a template or a resource is deleted remotely.

+

provider_name

+

String

+

Name of the provider to which the project belongs.

+

mode

+

String

+

Resource modes may include:

+
  • DATA: a type of resource that can run and obtain server data during template parsing. Operations on infrastructure components are not involved.
  • RESOURCE: important infrastructure objects defined by services and managed by templates. It can be physical resources or logical resources.
+

Enumeration values:

+
  • DATA
  • RESOURCE
+

drifted

+

Boolean

+

Whether the change of the current resource is caused by deviation.

+

Deviation, also called drift. After a resource is created by RFS but not modified by RFS, for example, modified manually or by SDK, the resource configuration will be inconsistent with that recorded by RFS. This inconsistency is called deviation.

+

After a resource deviation occurs:

+
  • If you attempt to create an execution plan, a message is displayed, indicating that a deviation occurs.
  • If you directly deploy an execution plan, the deviation may be overwritten. RFS only ensures that the resources are configured as written in the template.
+

The resource deviation types may include:

+
  • Modification of resource location attribute: mostly happens after a resource is deleted and then a new one is created. The new resource is not the same one before modification. In this case, RFS considers that the original resource has been deleted and attempts to create a new resource.
  • Modification of resource common attribute: RFS can still find the resource, but it will attempt to rectify the deviation during the next deployment to make the resource configuration be consistent with that written in the template.
+

Note: It is advised to use RFS to maintain and update resources created on RFS to ensure that resource configurations are consistent with those written in your templates. Avoid modifying resources manually except for emergencies.

+

imported

+

Boolean

+

Whether changes to the current resource are imported.

+

resource_id

+

String

+

Unique resource physical ID. It is generated by the resource provider, cloud service provider, or other service providers during resource deployment.

+

attributes

+

Array of ExecutionPlanDiffAttribute objects

+

Execution plan item attributes that are changed. If no attribute is changed, this value is an empty list.

+
+
+ +
+ + + + + + + + + + + + + + + + + +
Table 6 ExecutionPlanDiffAttribute

Parameter

+

Type

+

Description

+

name

+

String

+

Name of the to-be-modified parameter of the current resource.

+

previous_value

+

String

+

Original value of the modified parameter of the current resource.

+

During resource creation, previous_value is empty.

+

If a deviation occurs in a remote resource, the resource returns two ExecutionPlanItems, the drifted values of which are true and false, respectively.

+
  • The previous_value whose drifted is true indicates the original resource attribute and status in the stack.
  • The previous_value whose drifted is false indicates the resource attribute and status returned by the remote resource after the provider requests the remote resource.
+

If no deviation occurs in a remote resource, only one ExecutionPlanItem whose drifted is false is returned.

+
  • The previous_value whose drifted is false indicates the original resource attribute and status in the stack.
+

target_value

+

String

+

Target value of the modified parameter of the current resource.

+

During resource deletion, target_value is empty.

+

If a deviation occurs in a remote resource, the resource returns two ExecutionPlanItems, the drifted values of which are true and false, respectively.

+
  • The target_value whose drifted is true indicates the resource attribute and status returned by the remote resource after the provider requests the remote resource.
  • The target_value whose drifted is false indicates the resource attribute and status updated based on your template.
+

If no deviation occurs in a remote resource, only one ExecutionPlanItem whose drifted is false is returned.

+
  • The target_value whose drifted is false indicates the resource attribute and status updated based on your template.
+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + + + + + +
Table 10 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + + + + + +
Table 11 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + + + + + +
Table 12 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+
+

Example Requests

+
+

Example Responses

Status code: 200

+

Execution plan details obtained.

+
{
+  "execution_plan_items" : [{
+    "resource_type" : "opentelekomcloud_vpc_v1",
+    "resource_name" : "vpc",
+    "action" : "ADD",
+    "attributes" : [ {
+      "name" : "cidr",
+      "target_value" : "172.16.0.0/16"
+    }, {
+      "name" : "description"
+    }, {
+      "name" : "id",
+      "target_value" : "(will be generated after apply)"
+    }, {
+      "name" : "name",
+      "target_value" : "test_name"
+    }, {
+      "name" : "secondary_cidr"
+    }, {
+      "name" : "tags"
+    }],
+    "mode" : "RESOURCE",
+    "provider_name" : "opentelekomcloud/provider/opentelekomcloud"
+  } ]
+}
+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

200

+

Execution plan details obtained.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+

The user does not have the permission to call this API.

+

404

+
  1. The stack does not exist.
  2. The execution plan does not exist.
+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/GetExecutionPlanMetadata.html b/docs/rfs/api-ref/GetExecutionPlanMetadata.html new file mode 100644 index 000000000..9e060ed62 --- /dev/null +++ b/docs/rfs/api-ref/GetExecutionPlanMetadata.html @@ -0,0 +1,676 @@ + + +

Obtaining Execution Plan Metadata

+

Function

GetExecutionPlanMetadata

+

This API obtains the metadata of a specified execution plan, including the ID and name of the stack and the ID, name, description, creation time, execution time, and status of the execution plan.

+

You can obtain details by referring to GetExecutionPlanMetadataResponseBody.

+

To obtain the details of an execution plan, call GetExecutionPlan.

+
+

URI

GET /v1/{project_id}/stacks/{stack_name}/execution-plans/{execution_plan_name}/metadata

+ +
+ + + + + + + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

A project ID is obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

stack_name

+

Yes

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+

execution_plan_name

+

Yes

+

String

+

An execution plan name is unique within its domain (domain_id), region, project (project_id), and stack (stack_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + + + + + + +
Table 2 Query Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

stack_id

+

No

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+

execution_plan_id

+

No

+

String

+

Unique execution plan ID.

+

A UUID is generated by RFS when an execution plan is created.

+

Execution plan names are unique at one specific time, so you can create an execution plan named HelloWorld and another execution plan with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the execution plan they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each execution plan has a unique ID that does not change with updates. If the execution_plan_id value differs from the current execution plan ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 3 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

A unique request ID is specified by a user to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+
+

Response Parameters

Status code: 200

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 4 Response body parameters

Parameter

+

Type

+

Description

+

stack_id

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+

stack_name

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+

execution_plan_id

+

String

+

Unique execution plan ID.

+

A UUID is generated by RFS when an execution plan is created.

+

Execution plan names are unique at one specific time, so you can create an execution plan named HelloWorld and another execution plan with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the execution plan they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each execution plan has a unique ID that does not change with updates. If the execution_plan_id value differs from the current execution plan ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+

execution_plan_name

+

String

+

An execution plan name is unique within its domain (domain_id), region, project (project_id), and stack (stack_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+

description

+

String

+

Execution plan description. It is used to identify your own execution plans.

+

Minimum: 0

+

Maximum: 1024

+

vars_structure

+

Array of VarsStructure objects

+

HCL variable structure. Transferring variables is supported by the HCL template. The same template can use different variables for different purposes.

+
  • var_structure allows string variables.
  • RFS supports vars_structure, vars_body, and vars_uri. If they declare the same variable, error code 400 will be reported.
  • vars_structure only supports string variables. To use variables of other types, you need to convert them in HCL reference. Alternatively, you can use vars_uri and vars_body, which support various types and complex structures supported by HCL.
  • If vars_structure is too large, you can use vars_uri.
  • Note: vars_structure cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the corresponding vars in plaintext. If the information is sensitive, you are advised to set the encryption field.
+

Array Length: 0 - 100

+

vars_uri_content

+

String

+

File content corresponding to vars_uri.

+

vars_body

+

String

+

Content of the HCL variable file. Transferring variables is supported by the HCL template. The same template can use different variables for different purposes.

+
  • The vars_body uses the tfvars format of HCL. You can submit the content in the .tfvars file to the vars_body.
  • RFS supports vars_structure, vars_body, and vars_uri. If they declare the same variable, error code 400 will be reported.
  • If vars_body is too large, you can use vars_uri.
  • If the content in vars is simple strings, you can use var_structure.
  • vars_body cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the corresponding vars in plaintext. If the information is sensitive, you are advised to use vars_structure and set the encryption field for transmission.
+

Minimum: 0

+

Maximum: 51200

+

status

+

String

+

Status of an execution plan. * CREATION_IN_PROGRESS indicates that creation is in progress. * CREATION_FAILED indicates the creation failed. You can obtain the error information summary from status_message. * AVAILABLE indicates the creation completed. You can call ApplyExecutionPlan to apply the plan. * APPLY_IN_PROGRESS indicates the execution is in progress. You can call GetStackMetadata to query the stack status, or call ListStackEvents to obtain the stack events generated during the execution. * APPLIED indicates the plan has been applied.

+

Enumeration values:

+
  • CREATION_IN_PROGRESS
  • CREATION_FAILED
  • AVAILABLE
  • APPLY_IN_PROGRESS
  • APPLIED
+

status_message

+

String

+

If an execution plan is in a CREATION_FAILED status, a brief error information summary is displayed for debugging.

+

create_time

+

String

+

Creation time of an execution plan. The format complies with RFC 3339 (YYYY-MM-DDTHH:MM:SSZ), for example, 1970-01-01T00:00:00Z.

+

apply_time

+

String

+

Time of applying an execution plan. The format complies with RFC 3339 (YYYY-MM-DDTHH:MM:SSZ), for example, 1970-01-01T00:00:00Z.

+

summary

+

ExecutionPlanSummary object

+

Summary of the execution plan result may include:

+
  • Number of resources to be added.
  • Number of resources to be updated.
  • Number of resources to be deleted.
  • The summary is returned only when the execution plan is in the following states: AVAILABLE, APPLY_IN_PROGRESS or APPLIED.
  • The summary also includes resource changes brought by a drift. The resource status drift is caused by inconsistency between the resource status recorded in the stack and the remote resource status.
+
+
+ +
+ + + + + + + + + + + + + + + + + +
Table 5 VarsStructure

Parameter

+

Type

+

Description

+

var_key

+

String

+

Variable name.

+

Minimum: 1

+

Maximum: 32

+

var_value

+

String

+

Variable value.

+

Variables must be in the form of a string. If a parameter is a number, it must also be in the form of a string, for example, '10'.

+

For different types or complex structures, you can use vars_uri or vars_body.

+

Minimum: 0

+

Maximum: 2048

+

encryption

+

EncryptionStructure object

+

If a transferred var_value has been encrypted, you can declare this variable to require RFS to decrypt the var_value before using it. Currently, only KMS encryption and decryption are supported.

+
+
+ +
+ + + + + + + + + +
Table 6 EncryptionStructure

Parameter

+

Type

+

Description

+

kms

+

KmsStructure object

+

If an assigned var_value is encrypted by KMS, related encryption information can be transferred. RFS will help you decrypt the var_value by KMS.

+

Note:

+
  • The agency you specify for RFS should have the operation permissions on the specified key ID.
  • KMS provides a quota for free trial every month. If the quota is exceeded, you will be billed for KMS. The fee is not billed by RFS.
  • KMS encryption only indicates that RFS uses ciphertext for storage and transmission. However, RFS still uses plaintext in stack-events. If you want RFS to use ciphertext in logs, you can declare sensitive in templates. For more information about sensitive, refer to https://learn.hashicorp.com/tutorials/terraform/sensitive-variables.
+
+
+ +
+ + + + + + + + + + + + + +
Table 7 KmsStructure

Parameter

+

Type

+

Description

+

id

+

String

+

KMS key ID is used by RFS during decryption. Generally, the key ID is that used for encryption.

+

Minimum: 36

+

Maximum: 36

+

cipher_text

+

String

+

Ciphertext of data encryption key.

+

Minimum: 2

+

Maximum: 2048

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
Table 8 ExecutionPlanSummary

Parameter

+

Type

+

Description

+

resource_add

+

Integer

+

Number of new resources.

+

resource_update

+

Integer

+

Number of updated resources.

+

resource_delete

+

Integer

+

Number of deleted resources.

+

resource_import

+

Integer

+

Number of imported resources.

+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + + + + + +
Table 10 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + + + + + +
Table 11 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + + + + + +
Table 12 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + + + + + +
Table 13 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + + + + + +
Table 14 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+
+

Example Requests

+
+

Example Responses

Status code: 200

+

Execution plan metadata obtained.

+
{
+  "stack_id" : "f689e9fd-97e7-4185-bd8a-7d5f708d45d7",
+  "stack_name" : "my_hello_world_stack",
+  "execution_plan_id" : "ebc0979a-c617-4382-9147-57fc83a634aa",
+  "execution_plan_name" : "my_first_execution_plan",
+  "status" : "APPLIED",
+  "apply_time" : "2023-05-17T11:56:40Z",
+  "create_time" : "2023-05-16T03:37:24Z",
+  "summary" : {
+    "resource_add" : 2
+  }
+}
+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

200

+

Execution plan metadata obtained.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+

The user does not have the permission to call this API.

+

404

+
  1. The execution plan does not exist.
  2. The stack does not exist.
+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/GetStackMetadata.html b/docs/rfs/api-ref/GetStackMetadata.html new file mode 100644 index 000000000..928a1c978 --- /dev/null +++ b/docs/rfs/api-ref/GetStackMetadata.html @@ -0,0 +1,647 @@ + + +

Obtaining Stack Metadata

+

Function

GetStackMetadata

+

This API obtains the metadata of a stack, including the stack ID, stack name, stack description, creation time, update time, stack status, and agency. You can obtain details by referring to GetStackMetadataResponseBody.

+

If a stack is in a non-final state (The state ends with IN_PROGRESS. Details are shown in the following description.), its metadata is in a transition phase, which may be a state before or after deployment. The metadata of the stack is in a state after deployment only when the stack is in a final state (ending with COMPLETE or FAILED).

+

The non-final states may include:

+ +

The final states may include:

+ +
+

URI

GET /v1/{project_id}/stacks/{stack_name}/metadata

+ +
+ + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

A project ID is obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

stack_name

+

Yes

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + +
Table 2 Query Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

stack_id

+

No

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 3 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

A unique request ID is specified by a user to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+
+

Response Parameters

Status code: 200

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 4 Response body parameters

Parameter

+

Type

+

Description

+

stack_id

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+

stack_name

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+

description

+

String

+

Description of a stack. It can be used by customers to identify their own stacks.

+

Minimum: 0

+

Maximum: 1024

+

vars_structure

+

Array of VarsStructure objects

+

HCL variable structure. Transferring variables is supported by the HCL template. The same template can use different variables for different purposes.

+
  • var_structure allows string variables.
  • RFS supports vars_structure, vars_body, and vars_uri. If they declare the same variable, error code 400 will be reported.
  • vars_structure only supports string variables. To use variables of other types, you need to convert them in HCL reference. Alternatively, you can use vars_uri and vars_body, which support various types and complex structures supported by HCL.
  • If vars_structure is too large, you can use vars_uri.
  • Note: vars_structure cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the corresponding vars in plaintext. If the information is sensitive, you are advised to set the encryption field.
+

Array Length: 0 - 100

+

vars_body

+

String

+

Content of the HCL variable file. Transferring variables is supported by the HCL template. The same template can use different variables for different purposes.

+
  • The vars_body uses the tfvars format of HCL. You can submit the content in the .tfvars file to the vars_body.
  • RFS supports vars_structure, vars_body, and vars_uri. If they declare the same variable, error code 400 will be reported.
  • If vars_body is too large, you can use vars_uri.
  • If the content in vars is simple strings, you can use var_structure.
  • vars_body cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the corresponding vars in plaintext. If the information is sensitive, you are advised to use vars_structure and set the encryption field for transmission.
+

Minimum: 0

+

Maximum: 51200

+

enable_deletion_protection

+

Boolean

+

Deletion protection flag. If this variable is not assigned, the default value is false, indicating that deletion protection is disabled by default. (After deletion protection is enabled, stacks cannot be deleted.)

+

In the UpdateStack API, if this variable is not assigned in the RequestBody, the deletion protection attribute of the stack will not be updated.

+

enable_auto_rollback

+

Boolean

+

Auto-rollback flag. If this variable is not assigned, the default value is false, indicating that auto-rollback is disabled by default. (After auto-rollback is enabled, if the deployment fails, the stack is automatically rolled back and returns to the previous stable status.)

+

In the UpdateStack API, if this variable is not assigned in the RequestBody, the auto-rollback attribute of the stack will not be updated. This property is mutually exclusive with the import resources using templates feature, which does not allow the deployment of templates containing imported resources if the stack's auto-rollback is set to true.

+

status

+

String

+

Status of a stack. * CREATION_COMPLETE indicates an empty stack has been created and no deployment is performed. * DEPLOYMENT_IN_PROGRESS indicates the stack deployment is in progress. * DEPLOYMENT_FAILED indicates the deployment fails. You can obtain the error information summary from status_message. To obtain event details, you can call ListStackEvents. * DEPLOYMENT_COMPLETE indicates the deployment completed. * ROLLBACK_IN_PROGRESS indicates the deployment failed and the rollback is in progress. * ROLLBACK_FAILED indicates the rollback failed. You can obtain the error information summary from status_message. To obtain event details, you can call ListStackEvents. * ROLLBACK_COMPLETE indicates the rollback completed. * DELETION_IN_PROGRESS indicates the deletion is in progress. * DELETION_FAILED indicates the deletion failed. You can obtain the error information summary from status_message. To obtain event details, you can call ListStackEvents.

+

Enumeration values:

+
  • CREATION_COMPLETE
  • DEPLOYMENT_IN_PROGRESS
  • DEPLOYMENT_FAILED
  • DEPLOYMENT_COMPLETE
  • ROLLBACK_IN_PROGRESS
  • ROLLBACK_FAILED
  • ROLLBACK_COMPLETE
  • DELETION_IN_PROGRESS
  • DELETION_FAILED
+

agencies

+

Array of Agency objects

+

Agency information.

+

RFS uses an agency only in requests that involve resource operations, such as creating a stack (triggering deployment), creating an execution plan, deploying a stack, and deleting a stack. In addition, the agency applies only to resource operations performed by the provider bound to the agency. If the permissions provided by the agency are insufficient, operations on related resources may fail.

+

Array Length: 0 - 10

+

status_message

+

String

+

If a stack is in a failure state (ending with FAILED), a brief error information summary is displayed for debugging.

+

vars_uri_content

+

String

+

File content corresponding to vars_uri.

+

create_time

+

String

+

Creation time of a stack. The format complies with RFC 3339 (YYYY-MM-DDTHH:MM:SSZ), for example, 1970-01-01T00:00:00Z.

+

update_time

+

String

+

Update time of a stack (applied to the metadata update and deployment). The format complies with RFC 3339 (YYYY-MM-DDTHH:MM:SSZ), for example, 1970-01-01T00:00:00Z.

+
+
+ +
+ + + + + + + + + + + + + + + + + +
Table 5 VarsStructure

Parameter

+

Type

+

Description

+

var_key

+

String

+

Variable name.

+

Minimum: 1

+

Maximum: 32

+

var_value

+

String

+

Variable value.

+

Variables must be in the form of a string. If a parameter is a number, it must also be in the form of a string, for example, '10'.

+

For different types or complex structures, you can use vars_uri or vars_body.

+

Minimum: 0

+

Maximum: 2048

+

encryption

+

EncryptionStructure object

+

If a transferred var_value has been encrypted, you can declare this variable to require RFS to decrypt the var_value before using it. Currently, only KMS encryption and decryption are supported.

+
+
+ +
+ + + + + + + + + +
Table 6 EncryptionStructure

Parameter

+

Type

+

Description

+

kms

+

KmsStructure object

+

If an assigned var_value is encrypted by KMS, related encryption information can be transferred. RFS will help you decrypt the var_value by KMS.

+

Note:

+
  • The agency you specify for RFS should have the operation permissions on the specified key ID.
  • KMS provides a quota for free trial every month. If the quota is exceeded, you will be billed for KMS. The fee is not billed by RFS.
  • KMS encryption only indicates that RFS uses ciphertext for storage and transmission. However, RFS still uses plaintext in stack-events. If you want RFS to use ciphertext in logs, you can declare sensitive in templates. For more information about sensitive, refer to https://learn.hashicorp.com/tutorials/terraform/sensitive-variables.
+
+
+ +
+ + + + + + + + + + + + + +
Table 7 KmsStructure

Parameter

+

Type

+

Description

+

id

+

String

+

KMS key ID is used by RFS during decryption. Generally, the key ID is that used for encryption.

+

Minimum: 36

+

Maximum: 36

+

cipher_text

+

String

+

Ciphertext of data encryption key.

+

Minimum: 2

+

Maximum: 2048

+
+
+ +
+ + + + + + + + + + + + + + + + + +
Table 8 Agency

Parameter

+

Type

+

Description

+

provider_name

+

String

+

Name of the provider used by a user. If the provider_name value given by the user is duplicate, 400 is returned.

+

Minimum: 1

+

Maximum: 128

+

agency_name

+

String

+

IAM agency used by the corresponding provider. RFS uses this agency to access and create resources of the provider. Either agency_name or agency_urn must be specified.

+

Minimum: 1

+

Maximum: 64

+

agency_urn

+

String

+

Agency URN When a user defines an agency, either agency_name or agency_urn must be specified. You are advised to set agency_urn when using the trust agency. agency_name can only receive common agency names. If agency_name is set to a trust agency name, template deployment will fail.

+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + + + + + +
Table 10 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + + + + + +
Table 11 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + + + + + +
Table 12 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + + + + + +
Table 13 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + + + + + +
Table 14 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+
+

Example Requests

+
+

Example Responses

Status code: 200

+

Stack metadata obtained.

+
{
+  "stack_id" : "f689e9fd-97e7-4185-bd8a-7d5f708d45d7",
+  "stack_name" : "my_hello_world_stack",
+  "description" : "my hello world stack",
+  "enable_deletion_protection" : false,
+  "enable_auto_rollback" : false,
+  "status" : "DEPLOYMENT_COMPLETE",
+  "agencies" : [ {
+    "agency_name" : "rf_admin_trust",
+    "provider_name" : "opentelekomcloud"
+  } ],
+  "create_time" : "2023-03-16T03:28:20Z",
+  "update_time" : "2023-05-24T08:56:10Z"
+}
+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

200

+

Stack metadata obtained.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+

The user does not have the permission to call this API.

+

404

+

The stack does not exist.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/GetStackTemplate.html b/docs/rfs/api-ref/GetStackTemplate.html new file mode 100644 index 000000000..01e06c41b --- /dev/null +++ b/docs/rfs/api-ref/GetStackTemplate.html @@ -0,0 +1,401 @@ + + +

Obtaining a Stack Template

+

Function

GetStackTemplate

+

This API obtains the template used for the current deployment if the stack is in the final state.

+

Note: When a stack is in a non-final state (ending with IN_PROGRESS), the stack is in the transition phase. This API obtains the template used for the last deployment of the stack. Only when the stack is in the final state (ending with COMPLETE or FAILED), this API obtains the template used for the current deployment. CREATION_COMPLETE is an exception because there is no template yet and 404 is returned, indicating that the template does not exist.

+

The non-final states may include:

+ +

The final states may include:

+ +

If the template is successfully obtained, the template download link (OBS presigned URL, valid for 5 minutes) is returned in temporary redirection mode. Most clients automatically redirect and download the template. If automatic redirection is not performed, refer to the HTTP redirection rule and manually download the template.

+
+

URI

GET /v1/{project_id}/stacks/{stack_name}/templates

+ +
+ + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

A project ID is obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

stack_name

+

Yes

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + +
Table 2 Query Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

stack_id

+

No

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 3 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

A unique request ID is specified by a user to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+
+

Response Parameters

Status code: 307

+ +
+ + + + + + + + + +
Table 4 Response header parameters

Parameter

+

Type

+

Description

+

Location

+

String

+

HTTP redirect header. The client can use this header to redirect to a template download link (OBS presigned URL, valid for 5 minutes).

+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + + + + + +
Table 5 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + + + + + +
Table 6 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + + + + + +
Table 10 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+
+

Example Requests

+
+

Example Responses

None

+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

307

+

Stack template obtained. Temporary redirect.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+

The user does not have the permission to call this API.

+

404

+

The stack or template does not exist.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/ListExecutionPlans.html b/docs/rfs/api-ref/ListExecutionPlans.html new file mode 100644 index 000000000..86818d0f9 --- /dev/null +++ b/docs/rfs/api-ref/ListExecutionPlans.html @@ -0,0 +1,520 @@ + + +

Listing Execution Plans

+

Function

ListExecutionPlans

+

This API lists all execution plans of a specified stack in the current region.

+ +
+

URI

GET /v1/{project_id}/stacks/{stack_name}/execution-plans

+ +
+ + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

A project ID is obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

stack_name

+

Yes

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + +
Table 2 Query Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

stack_id

+

No

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 3 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

A unique request ID is specified by a user to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+
+

Response Parameters

Status code: 200

+ +
+ + + + + + + + + +
Table 4 Response body parameters

Parameter

+

Type

+

Description

+

execution_plans

+

Array of ExecutionPlan objects

+

Execution plan list, sorted by creation time in descending order. The one created latest is displayed on the top.

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 5 ExecutionPlan

Parameter

+

Type

+

Description

+

stack_name

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+

stack_id

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+

execution_plan_id

+

String

+

Unique execution plan ID.

+

A UUID is generated by RFS when an execution plan is created.

+

Execution plan names are unique at one specific time, so you can create an execution plan named HelloWorld and another execution plan with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the execution plan they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each execution plan has a unique ID that does not change with updates. If the execution_plan_id value differs from the current execution plan ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+

execution_plan_name

+

String

+

An execution plan name is unique within its domain (domain_id), region, project (project_id), and stack (stack_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+

description

+

String

+

Execution plan description. It is used to identify your own execution plans.

+

Minimum: 0

+

Maximum: 1024

+

status

+

String

+

Status of an execution plan. * CREATION_IN_PROGRESS indicates that creation is in progress. * CREATION_FAILED indicates the creation failed. You can obtain the error information summary from status_message. * AVAILABLE indicates the creation completed. You can call ApplyExecutionPlan to apply the plan. * APPLY_IN_PROGRESS indicates the execution is in progress. You can call GetStackMetadata to query the stack status, or call ListStackEvents to obtain the stack events generated during the execution. * APPLIED indicates the plan has been applied.

+

Enumeration values:

+
  • CREATION_IN_PROGRESS
  • CREATION_FAILED
  • AVAILABLE
  • APPLY_IN_PROGRESS
  • APPLIED
+

status_message

+

String

+

If an execution plan is in a CREATION_FAILED status, a brief error information summary is displayed for debugging.

+

create_time

+

String

+

Creation time of an execution plan. The format complies with the RFC 3339 format (YYYY-MM-DDTHH:MM:SSZ), for example, 1970-01-01T00:00:00Z.

+

apply_time

+

String

+

Time when an execution plan was applied. The format complies with the RFC 3339 format (YYYY-MM-DDTHH:MM:SSZ), for example, 1970-01-01T00:00:00Z.

+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + + + + + +
Table 6 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + + + + + +
Table 10 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + + + + + +
Table 11 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+
+

Example Requests

+
+

Example Responses

Status code: 200

+

Execution plans listed.

+
{
+  "execution_plans" : [ {
+    "stack_name" : "my_hello_world_stack",
+    "stack_id" : "f689e9fd-97e7-4185-bd8a-7d5f708d45d7",
+    "execution_plan_id" : "b3e7e15f-f96b-4190-94f4-bb8120f8c4dc",
+    "execution_plan_name" : "my_third_execution_plan",
+    "description" : "my third execution plan",
+    "status" : "AVAILABLE",
+    "create_time" : "2023-05-15T15:39:25Z"
+  }, {
+    "stack_name" : "my_hello_world_stack",
+    "stack_id" : "f689e9fd-97e7-4185-bd8a-7d5f708d45d7",
+    "execution_plan_id" : "3ca87537-8d5c-4c9d-9292-d19068aaacbb",
+    "execution_plan_name" : "my_second_execution_plan",
+    "description" : "my second execution plan",
+    "status" : "APPLIED",
+    "create_time" : "2023-05-15T15:32:45Z"
+  }, {
+    "stack_name" : "my_hello_world_stack",
+    "stack_id" : "f689e9fd-97e7-4185-bd8a-7d5f708d45d7",
+    "execution_plan_id" : "8c1fb31d-9eec-4ce3-a4e6-fd07059cec83",
+    "execution_plan_name" : "my_first_execution_plan",
+    "description" : "my first execution plan",
+    "status" : "CREATION_FAILED",
+    "status_message" : "Failed to init workflow due to bad template. Error: Invalid variable name A name must start with a letter or underscore and may contain only letters, digits, underscores, and dashes.",
+    "create_time" : "2023-05-15T12:23:38Z"
+  } ]
+}
+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

200

+

Execution plans listed.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+

The user does not have the permission to call this API.

+

404

+

The stack does not exist.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/ListStackEvents.html b/docs/rfs/api-ref/ListStackEvents.html new file mode 100644 index 000000000..f71628b28 --- /dev/null +++ b/docs/rfs/api-ref/ListStackEvents.html @@ -0,0 +1,609 @@ + + +

Listing Events of a Stack

+

Function

ListStackEvents

+

This API lists all deployment events of a stack.

+ +
+

URI

GET /v1/{project_id}/stacks/{stack_name}/events

+ +
+ + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

A project ID is obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

stack_name

+

Yes

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 2 Query Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

stack_id

+

No

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+

deployment_id

+

No

+

String

+

Unique deployment ID. It is a UUID generated by RFS when deployment or rollback is triggered.

+

Minimum: 36

+

Maximum: 36

+

filter

+

No

+

String

+

Filter criteria.

+
  • The AND operator is defined using a comma (,).
  • The OR operator is defined using a vertical bar (|). The OR operator has a higher priority than the AND operator.
  • Parentheses are not supported.
  • Only equal signs (==) are supported as the filter operator.
  • Filter parameter names and values can contain only letters, digits, and underscores (_). Semicolons (;) are not allowed in filter criteria. If semicolons are used, the filter criteria will be ignored.
  • A filter parameter can be related to only one AND condition. Multiple OR conditions in an AND condition can be related to only one filter parameter.
+

Minimum: 0

+

Maximum: 512

+

field

+

No

+

String

+

Specified attribute name.

+
  • The attribute name can contain only letters, digits, and underscores (_).
  • Multiple attribute names are separated by commas (,).
+

Minimum: 0

+

Maximum: 128

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 3 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

A unique request ID is specified by a user to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+
+

Response Parameters

Status code: 200

+ +
+ + + + + + + + + +
Table 4 Response body parameters

Parameter

+

Type

+

Description

+

stack_events

+

Array of StackEvent objects

+

List of stack events.

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 5 StackEvent

Parameter

+

Type

+

Description

+

resource_type

+

String

+

Resource type.

+

For example, in the following HCL template, the value of resource_type is opentelekomcloud_vpc_v1.

+
resource "opentelekomcloud_vpc_v1" "my_hello_world_vpc" {
+  name = "test_vpc"
+}
+

In a JSON template, the value of resource_type is opentelekomcloud_vpc_v1.

+
{
+  "resource": {
+    "opentelekomcloud_vpc_v1": {
+      "my_hello_world_vpc": {
+        "name": "test_vpc"
+      }
+    }
+  }
+}
+

resource_name

+

String

+

Resource name. The default value is the logical name of a resource.

+

For example, in the following HCL template, the value of resource_name is my_hello_world_vpc.

+
resource "opentelekomcloud_vpc_v1" "my_hello_world_vpc" {
+  name = "test_vpc"
+}
+

In a JSON template, the value of resource_name is my_hello_world_vpc.

+
{
+  "resource": {
+    "opentelekomcloud_vpc_v1": {
+      "my_hello_world_vpc": {
+        "name": "test_vpc"
+      }
+    }
+  }
+}
+

resource_id_key

+

String

+

Name of resource ID. If a resource is not created, resource_id_key is not returned. The ID is defined by a provider. Different providers may comply with different naming rules. For details about the naming rules, contact provider developers or read provider's documentation.

+

resource_id_value

+

String

+

Resource ID value. If a resource is not created, resource_id_value is not returned.

+

resource_key

+

String

+

Resource key. If count or for_each is used in a template, resource_key will be returned.

+

If count is used in a template, resource_key is a number starting from 0.

+

For example, in the following HCL template, if the count is 2, two resources will be generated and the value of resource_key is 0 and 1.

+
resource "opentelekomcloud_vpc_v1" "my_hello_world_vpc" {
+  count = 2
+  name = "test_vpc"
+}
+

In a JSON template, the value of resource_key is 0 and 1.

+
{
+  "resource": {
+    "opentelekomcloud_vpc_v1": {
+      "my_hello_world_vpc": {
+        "name": "test_vpc",
+        "count": 2
+      }
+    }
+  }
+}
+

If for_each is used in a template, resource_key is a user-defined string. In the following HCL template, the value of resource_key is vpc1 and vpc2.

+
resource "opentelekomcloud_vpc_v1" "my_hello_world_vpc" {
+  for_each = {
+    "vpc1" = "test_vpc"
+    "vpc2" = "test_vpc"
+  }
+  name = each.value
+}
+

In the following JSON template, the value of resource_key is vpc1 and vpc2.

+
{
+  "resource": {
+    "opentelekomcloud_vpc_v1": {
+      "my_hello_world_vpc": {
+        "for_each": {
+          "vpc1": "test_vpc",
+          "vpc2": "test_vpc"
+        }
+        "name": "${each.value}"
+      }
+    }
+  }
+}
+

time

+

String

+

Occurrence time of an event. The format complies with RFC 3339 (YYYY-MM-DDTHH:MM:SSZ), for example, 1970-01-01T00:00:00Z.

+

event_type

+

String

+

Event types may include:

+
  • LOG: records status information, such as the current status and target status.
  • ERROR: records failure information.
  • DRIFT: records resource deviation information.
    • SUMMARY: records summary of resource change results.
    • CREATION_IN_PROGRESS: The event is being created.
    • CREATION_FAILED: Failed to create the event.
    • CREATION_COMPLETE: Event created.
    • DELETION_IN_PROGRESS: The event is being deleted.
    • DELETION_FAILED: Delete event failed.
    • DELETION_COMPLETE: Event deleted.
    • UPDATE_IN_PROGRESS: The event is being updated. The update is not a replacement. In the case of a replacement update, a replacement event is created and then the old event is deleted.
    • UPDATE_FAILED: Update event failed. The update is not a replacement. In the case of a replacement update, a replacement event is created and then the old event is deleted.
    • UPDATE_COMPLETE: Event updated. The update is not a replacement. In the case of a replacement update, a replacement event is created and then the old event is deleted.
    +
+

Enumeration values:

+
  • LOG
  • ERROR
  • DRIFT
  • SUMMARY
  • CREATION_IN_PROGRESS
  • CREATION_FAILED
  • CREATION_COMPLETE
  • DELETION_IN_PROGRESS
  • DELETION_FAILED
  • DELETION_COMPLETE
  • UPDATE_IN_PROGRESS
  • UPDATE_FAILED
  • UPDATE_COMPLETE
+

event_message

+

String

+

Details about a stack event.

+

elapsed_seconds

+

Integer

+

Event execution duration (Unit: seconds)

+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + + + + + +
Table 6 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + + + + + +
Table 10 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + + + + + +
Table 11 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+
+

Example Requests

+
+

Example Responses

Status code: 200

+

Stack events listed.

+
{
+  "stack_events" : [ {
+    "event_message" : "Apply required resource success. ",
+    "event_type" : "LOG",
+    "time" : "2023-05-17T11:56:47Z"
+  }, {
+    "event_message" : "Apply complete! Resources: 1 added, 0 changed, 0 destroyed.",
+    "event_type" : "SUMMARY",
+    "time" : "2023-05-17T11:56:45Z"
+  }, {
+    "resource_type" : "opentelekomcloud_vpc_v1",
+    "resource_name" : "vpc",
+    "elapsed_seconds" : 8,
+    "event_message" : "opentelekomcloud_vpc_v1.vpc: Creation complete after 8s [id=38d617da-9b7f-4550-9ff7-d0e271dd4735]",
+    "event_type" : "CREATION_COMPLETE",
+    "resource_id_key" : "id",
+    "resource_id_value" : "38d617da-9b7f-4550-9ff7-d0e271dd4735",
+    "time" : "2023-05-17T11:56:40Z"
+  }, {
+    "resource_type" : "opentelekomcloud_vpc_v1",
+    "resource_name" : "vpc",
+    "event_message" : "opentelekomcloud_vpc_v1.vpc: Creating...",
+    "event_type" : "CREATION_IN_PROGRESS",
+    "time" : "2023-05-17T11:56:32Z"
+  }, {
+    "event_message" : "Creating required resource now",
+    "event_type" : "LOG",
+    "time" : "2023-05-17T11:56:31Z"
+  } ]
+}
+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

200

+

Stack events listed.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+

The user does not have the permission to call this API.

+

404

+

The stack or the specified deployment does not exist.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/ListStackOutputs.html b/docs/rfs/api-ref/ListStackOutputs.html new file mode 100644 index 000000000..f9c667c32 --- /dev/null +++ b/docs/rfs/api-ref/ListStackOutputs.html @@ -0,0 +1,477 @@ + + +

Listing Stack Outputs

+

Function

ListStackOutputs

+

This API lists all outputs of a stack.

+

The stack output is the return information generated after the deployment of the output statement block defined in the template is complete. After the deployment is complete, you can call this API to obtain the specific output information.

+

If the stack is in a non-final state (ending with IN_PROGRESS), this API returns empty value. The non-final states may include:

+ +

Output is defined in the HCL syntax. The returned information is similar to the return value programmatically. For details, refer to the HCL documentation.

+
+

URI

GET /v1/{project_id}/stacks/{stack_name}/outputs

+ +
+ + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

A project ID is obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

stack_name

+

Yes

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + +
Table 2 Query Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

stack_id

+

No

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 3 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

A unique request ID is specified by a user to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+
+

Response Parameters

Status code: 200

+ +
+ + + + + + + + + +
Table 4 Response body parameters

Parameter

+

Type

+

Description

+

outputs

+

Array of StackOutput objects

+

Stack output list.

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
Table 5 StackOutput

Parameter

+

Type

+

Description

+

name

+

String

+

Name of a stack output, defined in a template.

+

For example, in the following HCL template, the value of name is vpc_id.

+
output "vpc_id" {
+  value = opentelekomcloud_vpc_v1.my_hello_world_vpc.id
+}
+

In a JSON template, the value of name is vpc_id.

+
{
+  "output": {
+    "vpc_id": [
+      {
+        "value": "${opentelekomcloud_vpc_v1.my_hello_world_vpc.id}"
+      }
+    ]
+  }
+}
+

description

+

String

+

Description of a stack output, defined in a template.

+

type

+

String

+

Output type of a stack.

+

value

+

String

+

Output value of a stack.

+

sensitive

+

Boolean

+

Whether a stack output is sensitive. This is defined in a template.

+

If an output is defined as sensitive in a template, the actual value and type of the output will not be returned in the reponse body.

+

Instead, it will be returned.

+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + + + + + +
Table 6 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + + + + + +
Table 10 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + + + + + +
Table 11 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+
+

Example Requests

+
+

Example Responses

Status code: 200

+

The stack outputs listed.

+
{
+  "outputs" : [ {
+    "name" : "my_first_vpc",
+    "sensitive" : true,
+    "type" : "<sensitive>",
+    "value" : "<sensitive>",
+    "description" : "type and value is invisible when sensitive is true."
+  }, {
+    "name" : "my_second_vpc",
+    "type" : "string",
+    "value" : "\"opentelekomcloud_vpc_v1.my_second_vpc\"",
+    "description" : "type and value is real when sensitive not set or is false."
+  } ]
+}
+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

200

+

The stack outputs listed.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+

The user does not have the permission to call this API.

+

404

+

The stack does not exist.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/ListStackResources.html b/docs/rfs/api-ref/ListStackResources.html new file mode 100644 index 000000000..6b0fac66f --- /dev/null +++ b/docs/rfs/api-ref/ListStackResources.html @@ -0,0 +1,593 @@ + + +

Listing Stack Resources

+

Function

ListStackResources

+

This API lists the information about all resources managed by a stack.

+

When the stack is in a non-final state, only brief information about the resources in the stack is output, including logical_resource_name, logical_resource_type, physical_resource_id, physical_resource_name, and status. When the stack is in the final status, additional detailed information is output. For example, the resource_attributes.

+

The non-final states may include:

+ +
+

URI

GET /v1/{project_id}/stacks/{stack_name}/resources

+ +
+ + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

A project ID is obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

stack_name

+

Yes

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + +
Table 2 Query Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

stack_id

+

No

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 3 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

A unique request ID is specified by a user to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+
+

Response Parameters

Status code: 200

+ +
+ + + + + + + + + +
Table 4 Response body parameters

Parameter

+

Type

+

Description

+

stack_resources

+

Array of StackResource objects

+

List of resources managed by a stack.

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 5 StackResource

Parameter

+

Type

+

Description

+

physical_resource_id

+

String

+

Physical ID of a resource, generated by the resource provider, cloud service provider, or other service providers during resource deployment.

+

physical_resource_name

+

String

+

Physical name of the resource, defined by the resource provider, cloud service provider, or other service providers during resource deployment.

+

logical_resource_name

+

String

+

Logical name of the resource, defined in a template.

+

Logical variables are only used as identifiers of the resource in the template.

+

For example, in the following HCL template, the value of logical_resource_name is my_hello_world_vpc.

+
resource "opentelekomcloud_vpc_v1" "my_hello_world_vpc" {
+  name = "test_vpc"
+}
+

In a JSON template, the value of logical_resource_name is my_hello_world_vpc.

+
{
+  "resource": {
+    "opentelekomcloud_vpc_v1": {
+      "my_hello_world_vpc": {
+        "name": "test_vpc"
+      }
+    }
+  }
+}
+

logical_resource_type

+

String

+

Resource type.

+

Logical variables are only used as identifiers of the resource in the template.

+

For example, in the following HCL template, the value of logical_resource_type is opentelekomcloud_vpc_v1.

+
resource "opentelekomcloud_vpc_v1" "my_hello_world_vpc" {
+  name = "test_vpc"
+}
+

In a JSON template, the value of logical_resource_type is opentelekomcloud_vpc_v1.

+
{
+  "resource": {
+    "opentelekomcloud_vpc_v1": {
+      "my_hello_world_vpc": {
+        "name": "test_vpc"
+      }
+    }
+  }
+}
+

index_key

+

String

+

Resource index. If count or for_each is used in a template, index_key is returned. If index_key appears, logical_resource_name + index_key can be used as an identifier of the resource.

+

If count is used in a template, index_key is a number starting from 0.

+

For example, in the following HCL template, you can use opentelekomcloud_vpc_v1.my_hello_world_vpc[0] and opentelekomcloud_vpc_v1.my_hello_world_vpc[1] to identify two resources.

+
resource "opentelekomcloud_vpc_v1" "my_hello_world_vpc" {
+  count = 2
+  name = "test_vpc"
+}
+

In a JSON template, you can use opentelekomcloud_vpc_v1.my_hello_world_vpc[0] and opentelekomcloud_vpc_v1.my_hello_world_vpc[1] to identify two resources.

+
{
+  "resource": {
+    "opentelekomcloud_vpc_v1": {
+      "my_hello_world_vpc": {
+        "name": "test_vpc",
+        "count": 2
+      }
+    }
+  }
+}
+

If for_each is used in a template, index_key is a user-defined string. For example, in the following HCL template, opentelekomcloud_vpc_v1.my_hello_world_vpc["vpc1"] and opentelekomcloud_vpc_v1.my_hello_world_vpc["vpc2"] identify two resources.

+
resource "opentelekomcloud_vpc_v1" "my_hello_world_vpc" {
+  for_each = {
+    "vpc1" = "test_vpc"
+    "vpc2" = "test_vpc"
+  }
+  name = each.value
+}
+

In a JSON template, opentelekomcloud_vpc_v1.my_hello_world_vpc["vpc1"] and opentelekomcloud_vpc_v1.my_hello_world_vpc["vpc2"] identify two resources.

+
{
+  "resource": {
+    "opentelekomcloud_vpc_v1": {
+      "my_hello_world_vpc": {
+        "for_each": {
+          "vpc1": "test_vpc",
+          "vpc2": "test_vpc"
+        }
+        "name": "${each.value}"
+      }
+    }
+  }
+}
+

resource_status

+

String

+

Status of the resource.

+
  • CREATION_IN_PROGRESS: The resource is being created.
  • CREATION_FAILED: Create resource failed.
  • CREATION_COMPLETE: Resource created.
  • DELETION_IN_PROGRESS: The resource is being deleted.
  • DELETION_FAILED: Delete resource failed.
  • DELETION_COMPLETE: Resource deleted.
  • UPDATE_IN_PROGRESS: The resource is being updated. The update is not a replacement. In the case of a replacement update, a replacement resource is created and then the old resource is deleted.
  • UPDATE_FAILED: Update resource failed. The update is not a replacement. In the case of a replacement update, a replacement resource is created and then the old resource is deleted.
  • UPDATE_COMPLETE: Resource updated. The update is not a replacement. In the case of a replacement update, a replacement resource is created and then the old resource is deleted.
+

Enumeration values:

+
  • CREATION_IN_PROGRESS
  • CREATION_FAILED
  • CREATION_COMPLETE
  • DELETION_IN_PROGRESS
  • DELETION_FAILED
  • DELETION_COMPLETE
  • UPDATE_IN_PROGRESS
  • UPDATE_FAILED
  • UPDATE_COMPLETE
+

status_message

+

String

+

If the resource is in a failure state (ending with FAILED), a summary of the error information is displayed for debugging.

+

resource_attributes

+

Array of ResourceAttribute objects

+

Resource attribute list.

+
+
+ +
+ + + + + + + + + + + + + +
Table 6 ResourceAttribute

Parameter

+

Type

+

Description

+

key

+

String

+

Resource attribute key.

+

value

+

String

+

Resource attribute value.

+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + + + + + +
Table 10 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + + + + + +
Table 11 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + + + + + +
Table 12 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+
+

Example Requests

+
+

Example Responses

Status code: 200

+

Stack resources listed.

+
{
+  "stack_resources" : [ {
+    "logical_resource_name" : "vpc",
+    "logical_resource_type" : "opentelekomcloud_vpc_v1",
+    "physical_resource_id" : "38d617da-9b7f-4550-9ff7-d0e271dd4735",
+    "physical_resource_name" : "my_vpc",
+    "resource_attributes" : [ {
+      "key" : "cidr",
+      "value" : "172.16.0.0/16"
+    }, {
+      "key" : "description",
+      "value" : ""
+    }, {
+      "key" : "id",
+      "value" : "38d617da-9b7f-4550-9ff7-d0e271dd4735"
+    }, {
+      "key" : "name",
+      "value" : "test_name"
+    }, {
+      "key" : "secondary_cidr",
+      "value" : "null"
+    }, {
+      "key" : "tags",
+      "value" : "null"
+    }],
+    "resource_status" : "CREATION_COMPLETE"
+  } ]
+}
+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

200

+

Stack resources listed.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+

The user does not have the permission to call this API.

+

404

+

The stack does not exist.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/ListStacks.html b/docs/rfs/api-ref/ListStacks.html new file mode 100644 index 000000000..d542c17af --- /dev/null +++ b/docs/rfs/api-ref/ListStacks.html @@ -0,0 +1,406 @@ + + +

Listing Stacks

+

Function

ListStacks

+

This API lists all stacks in current region.

+ +

ListStacks returns only the summary information, ListStacksResponseBody returns details, and GetStackMetadata returns detailed metadata of stacks.

+
+

URI

GET /v1/{project_id}/stacks

+ +
+ + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

A project ID is obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 2 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

A unique request ID is specified by a user to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+
+

Response Parameters

Status code: 200

+ +
+ + + + + + + + + +
Table 3 Response body parameters

Parameter

+

Type

+

Description

+

stacks

+

Array of Stack objects

+

Stack list. Stacks are sorted by creation time in descending order. The one created latest is displayed on the top.

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 4 Stack

Parameter

+

Type

+

Description

+

stack_name

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+

description

+

String

+

Description of a stack. It can be used by customers to identify their own stacks.

+

Minimum: 0

+

Maximum: 1024

+

stack_id

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+

status

+

String

+

Status of a stack. * CREATION_COMPLETE indicates an empty stack has been created and no deployment is performed. * DEPLOYMENT_IN_PROGRESS indicates the stack deployment is in progress. * DEPLOYMENT_FAILED indicates the deployment fails. You can obtain the error information summary from status_message. To obtain event details, you can call ListStackEvents. * DEPLOYMENT_COMPLETE indicates the deployment completed. * ROLLBACK_IN_PROGRESS indicates the deployment failed and the rollback is in progress. * ROLLBACK_FAILED indicates the rollback failed. You can obtain the error information summary from status_message. To obtain event details, you can call ListStackEvents. * ROLLBACK_COMPLETE indicates the rollback completed. * DELETION_IN_PROGRESS indicates the deletion is in progress. * DELETION_FAILED indicates the deletion failed. You can obtain the error information summary from status_message. To obtain event details, you can call ListStackEvents.

+

Enumeration values:

+
  • CREATION_COMPLETE
  • DEPLOYMENT_IN_PROGRESS
  • DEPLOYMENT_FAILED
  • DEPLOYMENT_COMPLETE
  • ROLLBACK_IN_PROGRESS
  • ROLLBACK_FAILED
  • ROLLBACK_COMPLETE
  • DELETION_IN_PROGRESS
  • DELETION_FAILED
+

create_time

+

String

+

Creation time of a stack. The format complies with the RFC 3339 format (YYYY-MM-DDTHH:MM:SSZ), for example, 1970-01-01T00:00:00Z.

+

update_time

+

String

+

Update time of a stack (applied to the metadata update and deployment scenarios). The format complies with the RFC 3339 format (YYYY-MM-DDTHH:MM:SSZ), for example, 1970-01-01T00:00:00Z.

+

status_message

+

String

+

If a stack is in a failure state (ending with FAILED), a brief error information summary is displayed for debugging.

+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + + + + + +
Table 5 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + + + + + +
Table 6 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+
+

Example Requests

List stacks.

+
GET https://{endpoint}/v1/ba2b9930c977f71edaeaa3a5e96a8ff1/stacks
+
+

Example Responses

Status code: 200

+

Stacks listed.

+
{
+  "stacks" : [ {
+    "stack_name" : "my_second_stack",
+    "description" : "my second stack",
+    "stack_id" : "4d4f4ece-b291-4c71-8083-bec9b8a44de0",
+    "status" : "DEPLOYMENT_COMPLETE",
+    "create_time" : "2023-05-17T07:34:22Z",
+    "update_time" : "2023-05-17T07:34:44Z"
+  }, {
+    "stack_name" : "my_first_stack",
+    "description" : "my second stack",
+    "stack_id" : "e830c288-ee34-48c0-ba6b-a0e6f6b48d3e",
+    "status" : "CREATION_COMPLETE",
+    "create_time" : "2023-05-17T07:34:06Z",
+    "update_time" : "2023-05-17T07:34:28Z"
+  } ]
+}
+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

200

+

Stacks listed.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+

The user does not have the permission to call this API.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/ListTemplateVersions.html b/docs/rfs/api-ref/ListTemplateVersions.html new file mode 100644 index 000000000..148d09826 --- /dev/null +++ b/docs/rfs/api-ref/ListTemplateVersions.html @@ -0,0 +1,411 @@ + + +

Listing Template Versions

+

Function

ListTemplateVersions

+

This API lists all template versions in a template.

+ +

ListTemplateVersions returns only summaries of template versions. For details, refer to ListTemplateVersionsResponseBody. To obtain the template version, call ShowTemplateVersionContent.

+
+

URI

GET /v1/{project_id}/templates/{template_name}/versions

+ +
+ + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

Project ID. It can be obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

template_name

+

Yes

+

String

+

Name of the template to be created.

+

Minimum: 1

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + +
Table 2 Query Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

template_id

+

No

+

String

+

ID of a template. If template_id exists, the template service checks whether template_id matches template_name. If not, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 3 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

Unique request ID. It is specified by a user and is used to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+
+

Response Parameters

Status code: 200

+ +
+ + + + + + + + + +
Table 4 Response body parameters

Parameter

+

Type

+

Description

+

versions

+

Array of TemplateVersion objects

+

Template version list.

+

Array Length: 0 - 100

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
Table 5 TemplateVersion

Parameter

+

Type

+

Description

+

template_id

+

String

+

Unique template ID. It is randomly generated by the template service.

+

Minimum: 36

+

Maximum: 36

+

template_name

+

String

+

Name of the template to be created.

+

Minimum: 1

+

Maximum: 128

+

version_description

+

String

+

Description of a template version. It can be used by users to identify their own template versions.

+

Minimum: 0

+

Maximum: 1024

+

create_time

+

String

+

Creation time of a template version. The format complies with RFC3339 (YYYY-MM-DDTHH:MM:SSZ), for example, 1970-01-01T00:00:00Z.

+

version_id

+

String

+

Template version ID.

+

Minimum: 2

+

Maximum: 11

+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + +
Table 6 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + +
Table 10 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + +
Table 11 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+
+

Example Requests

+
+

Example Responses

Status code: 200

+

Template versions listed.

+
{
+  "versions" : [ {
+    "template_id" : "69f8d5ea-eaa4-4a3b-a96d-bae9230e97c8",
+    "template_name" : "my_first_template",
+    "version_description" : "Second version of the current template",
+    "create_time" : "2023-05-09T08:01:24Z",
+    "version_id" : "V2"
+  }, {
+    "template_id" : "69f8d5ea-eaa4-4a3b-a96d-bae9230e97c8",
+    "template_name" : "my_first_template",
+    "version_description" : "First version of the current template",
+    "create_time" : "2023-05-09T08:01:23Z",
+    "version_id" : "V1"
+  } ]
+}
+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

200

+

Template versions listed.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+

The user does not have the permission to call this API.

+

404

+

The template does not exist.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/ListTemplates.html b/docs/rfs/api-ref/ListTemplates.html new file mode 100644 index 000000000..f24f5747d --- /dev/null +++ b/docs/rfs/api-ref/ListTemplates.html @@ -0,0 +1,362 @@ + + +

Listing Templates

+

Function

ListTemplates

+

This API lists all your templates at the current region.

+ +

ListTemplates returns only summaries of templates. You can obtain details about the summaries by referring to ListTemplatesResponseBody. For details about a particular template, call ShowTemplateMetadata.

+
+

URI

GET /v1/{project_id}/templates

+ +
+ + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

Project ID. It can be obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 2 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

Unique request ID. It is specified by a user and is used to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+
+

Response Parameters

Status code: 200

+ +
+ + + + + + + + + +
Table 3 Response body parameters

Parameter

+

Type

+

Description

+

templates

+

Array of Template objects

+

Template list.

+

Array Length: 0 - 100

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 4 Template

Parameter

+

Type

+

Description

+

template_id

+

String

+

Unique template ID. It is randomly generated by the template service.

+

Minimum: 36

+

Maximum: 36

+

template_name

+

String

+

Name of the template to be created.

+

Minimum: 1

+

Maximum: 128

+

template_description

+

String

+

Template description. It can be used by users to identify their own templates.

+

Minimum: 0

+

Maximum: 1024

+

create_time

+

String

+

Creation time of a template. The format complies with RFC 3339 (YYYY-MM-DDTHH:MM:SSZ), for example, 1970-01-01T00:00:00Z.

+

update_time

+

String

+

Update time of a template. The format complies with RFC 3339 (YYYY-MM-DDTHH:MM:SSZ), for example, 1970-01-01T00:00:00Z.

+

latest_version_id

+

String

+

ID of the latest template version.

+

Minimum: 2

+

Maximum: 11

+

latest_version_description

+

String

+

Description of the latest template version.

+

Minimum: 0

+

Maximum: 1024

+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + +
Table 5 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + +
Table 6 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+
+

Example Requests

List all your templates at the current region.

+
GET https://{endpoint}/v1/c364070ab35041ddae68cf8b4839b60f/templates
+
+

Example Responses

Status code: 200

+

Templates listed.

+
{
+  "templates" : [ {
+    "template_id" : "69f8d5ea-eaa4-4a3b-a96d-bae9230e97c8",
+    "template_name" : "my_first_template",
+    "template_description" : "Template description",
+    "create_time" : "2023-05-09T08:00:00Z",
+    "update_time" : "2023-05-09T09:00:00Z",
+    "latest_version_description" : "Latest version description",
+    "latest_version_id" : "V10"
+  }, {
+    "template_id" : "69f8d5ea-eaa4-4a3b-a96d-bae9230e97c9",
+    "template_name" : "my_second_template",
+    "template_description" : "Description",
+    "create_time" : "2023-05-09T09:00:00Z",
+    "update_time" : "2023-05-09T10:00:00Z",
+    "latest_version_description" : "Latest version description",
+    "latest_version_id" : "V10"
+  } ]
+}
+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

200

+

Templates listed.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+

The user does not have the permission to call this API.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/PARAMETERS.txt b/docs/rfs/api-ref/PARAMETERS.txt new file mode 100644 index 000000000..6da8d5f07 --- /dev/null +++ b/docs/rfs/api-ref/PARAMETERS.txt @@ -0,0 +1,3 @@ +version="" +language="en-us" +type="" \ No newline at end of file diff --git a/docs/rfs/api-ref/ParseTemplateVariables.html b/docs/rfs/api-ref/ParseTemplateVariables.html new file mode 100644 index 000000000..9750ae1c7 --- /dev/null +++ b/docs/rfs/api-ref/ParseTemplateVariables.html @@ -0,0 +1,667 @@ + + +

Parsing Template Variables

+

Function

ParseTemplateVariables

+

This API parses variables in your input template and returns all variable blocks in the template.

+ +
+

URI

POST /v1/{project_id}/template-analyses/variables

+ +
+ + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

A project ID is obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 2 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

A unique request ID is specified by a user to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + + + + + + +
Table 3 Request body parameters

Parameter

+

Mandatory

+

Type

+

Description

+

template_body

+

No

+

String

+

HCL template. It describes the target status of a resource. RFS compares the differences between the statuses of this template and the current remote resources.

+

Either template_body or template_uri must be specified but they both cannot be specified together.

+

In the CreateStack API, template_body and template_uri are optional.

+

Note:

+
  • template_body cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the corresponding template_body in plaintext. If the information is sensitive, you are advised to use vars_structure to change the information to a variable and set the encryption field to enable encrypted transmission.
+

Minimum: 0

+

Maximum: 51200

+

template_uri

+

No

+

String

+

OBS address of an HCL template. The template describes the target status of a resource. RFS compares the differences between the statuses of this template and the current remote resources.

+

The OBS address allows mutual access to regions of the same type. Regions are classified into universal regions and dedicated regions. A universal region provides universal cloud services for common tenants. A dedicated region provides specific services for specific tenants.

+

The corresponding file must be a tf file or a zip package.

+

A pure .tf file must end with .tf or .tf.json and comply with the HCL syntax.

+

Currently, only the .zip package is supported. The file name extension must be .zip. The decompressed file cannot contain the .tfvars file and must be encoded in UTF8 format (the .tf.json file cannot contain the BOM header). The .zip package supports a maximum of 100 subfiles.

+

Either template_body or template_uri must be specified.

+

In the CreateStack API, template_body and template_uri are optional.

+

Note:

+
  • The template file corresponds to template_uri cannot contain any sensitive information. RFS directly uses, logs, displays, and stores the content of the template file in plaintext. If the information is sensitive, you are advised to use vars_structure to change the information to a variable and set the encryption field to enable encrypted transmission.
  • If the template file corresponding to template_uri is of zip type, the length of the internal file or folder name must not exceed 255 bytes, the length of the deepest path must not exceed 2048 bytes, and the size of the zip package must not exceed 1MB.
+

Minimum: 0

+

Maximum: 2048

+
+
+
+

Response Parameters

Status code: 200

+ +
+ + + + + + + + + +
Table 4 Response body parameters

Parameter

+

Type

+

Description

+

variables

+

Array of VariableResponse objects

+

Variables parsed from a template.

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 5 VariableResponse

Parameter

+

Type

+

Description

+

name

+

String

+

Variable name.

+

For example, in the following HCL template, the value of name is my_hello_world_variable.

+
variable "my_hello_world_variable" {
+  type = string
+  description = "this is a variable"
+  default = "hello world"
+  sensitive = false
+  nullable = false
+  validation {
+    condition     = length(var.my_hello_world_variable) > 0 && substr(var.my_hello_world_variable, 0, 5) == "hello"
+    error_message = "my_hello_world_variable should start with 'hello'."
+  }
+}
+

In a JSON template, the value of name is my_hello_world_variable.

+
{
+  "variable": {
+    "my_hello_world_variable": [
+      {
+        "default": "hello world",
+        "description": "this is a variable",
+        "nullable": false,
+        "sensitive": false,
+        "type": "string",
+        "validation": [
+          {
+            "condition": "${length(var.my_hello_world_variable) > 0 && substr(var.my_hello_world_variable, 0, 5) == \"hello\"}",
+            "error_message": "my_hello_world_variable should start with 'hello'."
+          }
+        ]
+      }
+    ]
+  }
+}
+

type

+

String

+

Variable type.

+

For example, in the following HCL template, the value of type is string.

+
variable "my_hello_world_variable" {
+  type = string
+  description = "this is a variable"
+  default = "hello world"
+  sensitive = false
+  nullable = false
+  validation {
+    condition     = length(var.my_hello_world_variable) > 0 && substr(var.my_hello_world_variable, 0, 5) == "hello"
+    error_message = "my_hello_world_variable should start with 'hello'."
+  }
+}
+

In a JSON template, the value of type is string.

+
{
+  "variable": {
+    "my_hello_world_variable": [
+      {
+        "default": "hello world",
+        "description": "this is a variable",
+        "nullable": false,
+        "sensitive": false,
+        "type": "string",
+        "validation": [
+          {
+            "condition": "${length(var.my_hello_world_variable) > 0 && substr(var.my_hello_world_variable, 0, 5) == \"hello\"}",
+            "error_message": "my_hello_world_variable should start with 'hello'."
+          }
+        ]
+      }
+    ]
+  }
+}
+

description

+

String

+

Variable description.

+

For example, in the following HCL template, the value of description is this is a variable.

+
variable "my_hello_world_variable" {
+  type = string
+  description = "this is a variable"
+  default = "hello world"
+  sensitive = false
+  nullable = false
+  validation {
+    condition     = length(var.my_hello_world_variable) > 0 && substr(var.my_hello_world_variable, 0, 5) == "hello"
+    error_message = "my_hello_world_variable should start with 'hello'."
+  }
+}
+

In a JSON template, the value of description is this is a variable.

+
{
+  "variable": {
+    "my_hello_world_variable": [
+      {
+        "default": "hello world",
+        "description": "this is a variable",
+        "nullable": false,
+        "sensitive": false,
+        "type": "string",
+        "validation": [
+          {
+            "condition": "${length(var.my_hello_world_variable) > 0 && substr(var.my_hello_world_variable, 0, 5) == \"hello\"}",
+            "error_message": "my_hello_world_variable should start with 'hello'."
+          }
+        ]
+      }
+    ]
+  }
+}
+

default

+

Object

+

Default variable value. The type of the return value is the same as that defined in the type field.

+

For example, for a variable whose type is string, the type of the return value is string; for a variable whose type is number, the type of the return value is number.

+

For example, in the following HCL template, the value of default is hello world.

+
variable "my_hello_world_variable" {
+  type = string
+  description = "this is a variable"
+  default = "hello world"
+  sensitive = false
+  nullable = false
+  validation {
+    condition     = length(var.my_hello_world_variable) > 0 && substr(var.my_hello_world_variable, 0, 5) == "hello"
+    error_message = "my_hello_world_variable should start with 'hello'."
+  }
+}
+

In a JSON template, the value of default is hello world.

+
{
+  "variable": {
+    "my_hello_world_variable": [
+      {
+        "default": "hello world",
+        "description": "this is a variable",
+        "nullable": false,
+        "sensitive": false,
+        "type": "string",
+        "validation": [
+          {
+            "condition": "${length(var.my_hello_world_variable) > 0 && substr(var.my_hello_world_variable, 0, 5) == \"hello\"}",
+            "error_message": "my_hello_world_variable should start with 'hello'."
+          }
+        ]
+      }
+    ]
+  }
+}
+

sensitive

+

Boolean

+

Whether the variable is sensitive.

+

If sensitive is not defined in the variable, false is returned by default.

+

For example, in the following HCL template, the value of sensitive is false.

+
variable "my_hello_world_variable" {
+  type = string
+  description = "this is a variable"
+  default = "hello world"
+  sensitive = false
+  nullable = false
+  validation {
+    condition     = length(var.my_hello_world_variable) > 0 && substr(var.my_hello_world_variable, 0, 5) == "hello"
+    error_message = "my_hello_world_variable should start with 'hello'."
+  }
+}
+

In a JSON template, the value of sensitive is false.

+
{
+  "variable": {
+    "my_hello_world_variable": [
+      {
+        "default": "hello world",
+        "description": "this is a variable",
+        "nullable": false,
+        "sensitive": false,
+        "type": "string",
+        "validation": [
+          {
+            "condition": "${length(var.my_hello_world_variable) > 0 && substr(var.my_hello_world_variable, 0, 5) == \"hello\"}",
+            "error_message": "my_hello_world_variable should start with 'hello'."
+          }
+        ]
+      }
+    ]
+  }
+}
+

nullable

+

Boolean

+

Whether the variable can be set to null.

+

If nullable is not defined in the variable, true is returned by default.

+

For example, in the following HCL template, the value of nullable is false.

+
variable "my_hello_world_variable" {
+  type = string
+  description = "this is a variable"
+  default = "hello world"
+  sensitive = false
+  nullable = false
+  validation {
+    condition     = length(var.my_hello_world_variable) > 0 && substr(var.my_hello_world_variable, 0, 5) == "hello"
+    error_message = "my_hello_world_variable should start with 'hello'."
+  }
+}
+

In a JSON template, the value of nullable is false.

+
{
+  "variable": {
+    "my_hello_world_variable": [
+      {
+        "default": "hello world",
+        "description": "this is a variable",
+        "nullable": false,
+        "sensitive": false,
+        "type": "string",
+        "validation": [
+          {
+            "condition": "${length(var.my_hello_world_variable) > 0 && substr(var.my_hello_world_variable, 0, 5) == \"hello\"}",
+            "error_message": "my_hello_world_variable should start with 'hello'."
+          }
+        ]
+      }
+    ]
+  }
+}
+

validations

+

Array of VariableValidationResponse objects

+

Variable verification module.

+
+
+ +
+ + + + + + + + + + + + + +
Table 6 VariableValidationResponse

Parameter

+

Type

+

Description

+

condition

+

String

+

Variable expression.

+

error_message

+

String

+

Error message generated upon verification failure.

+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + + + + + +
Table 10 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + + + + + +
Table 11 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+
+

Example Requests

+
+

Example Responses

Status code: 200

+

Variables parsed.

+
{
+  "variables" : [ {
+    "default" : "my_default_vpc",
+    "name" : "name",
+    "nullable" : true,
+    "sensitive" : true,
+    "type" : "string",
+    "validations" : [ {
+      "condition" : "${length(var.id) > 2 && substr(var.id, 0, 2) == \"my\"}",
+      "error_message" : "The id value must be a valid id, starting with my."
+    } ]
+  } ]
+}
+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

200

+

Variables parsed.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+

The user does not have the permission to call this API.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/ShowTemplateMetadata.html b/docs/rfs/api-ref/ShowTemplateMetadata.html new file mode 100644 index 000000000..6ed95429e --- /dev/null +++ b/docs/rfs/api-ref/ShowTemplateMetadata.html @@ -0,0 +1,381 @@ + + +

Obtaining Template Metadata

+

Function

ShowTemplateMetadata

+

This API obtains the metadata of the current template.

+

To obtain details, you can refer to ShowTemplateMetadataResponseBody. To view all versions of a template, call ListTemplateVersions.

+ +
+

URI

GET /v1/{project_id}/templates/{template_name}/metadata

+ +
+ + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

Project ID. It can be obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

template_name

+

Yes

+

String

+

Name of the template to be created.

+

Minimum: 1

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + +
Table 2 Query Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

template_id

+

No

+

String

+

ID of a template. If template_id exists, the template service checks whether template_id matches template_name. If not, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 3 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

Unique request ID. It is specified by a user and is used to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+
+

Response Parameters

Status code: 200

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
Table 4 Response body parameters

Parameter

+

Type

+

Description

+

template_id

+

String

+

Unique template ID. It is randomly generated by the template service.

+

Minimum: 36

+

Maximum: 36

+

template_name

+

String

+

Name of the template to be created.

+

Minimum: 1

+

Maximum: 128

+

template_description

+

String

+

Template description. It can be used by users to identify their own templates.

+

Minimum: 0

+

Maximum: 1024

+

create_time

+

String

+

Creation time of a template. The format complies with RFC 3339 (YYYY-MM-DDTHH:MM:SSZ), for example, 1970-01-01T00:00:00Z.

+

update_time

+

String

+

Update time of a template. The format complies with RFC 3339 (YYYY-MM-DDTHH:MM:SSZ), for example, 1970-01-01T00:00:00Z.

+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + +
Table 5 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + +
Table 6 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + +
Table 10 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+
+

Example Requests

+
+

Example Responses

Status code: 200

+

Template metadata obtained.

+
{
+  "template_id" : "69f8d5ea-eaa4-4a3b-a96d-bae9230e97c8",
+  "template_name" : "my_first_template",
+  "template_description" : "Template description",
+  "create_time" : "2023-05-09T08:00:00Z",
+  "update_time" : "2023-05-09T09:00:00Z"
+}
+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

200

+

Template metadata obtained.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+

The user does not have the permission to call this API.

+

404

+

The template does not exist.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/ShowTemplateVersionContent.html b/docs/rfs/api-ref/ShowTemplateVersionContent.html new file mode 100644 index 000000000..3b1bd37f3 --- /dev/null +++ b/docs/rfs/api-ref/ShowTemplateVersionContent.html @@ -0,0 +1,355 @@ + + +

Obtaining Template Version Content

+

Function

ShowTemplateVersionContent

+

This API obtains the template version content.

+ +

ShowTemplateVersionContent returns only the template version content. To obtain the metadata of a template version, call ShowTemplateVersionMetadata.

+
+

URI

GET /v1/{project_id}/templates/{template_name}/versions/{version_id}

+ +
+ + + + + + + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

Project ID. It can be obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

template_name

+

Yes

+

String

+

Name of the template to be created.

+

Minimum: 1

+

Maximum: 128

+

version_id

+

Yes

+

String

+

Template version ID. It starts with V (uppercase). The number of the ID is incremented by 1 each time a version is created.

+

Minimum: 2

+

Maximum: 11

+
+
+ +
+ + + + + + + + + + + +
Table 2 Query Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

template_id

+

No

+

String

+

ID of a template. If template_id exists, the template service checks whether template_id matches template_name. If not, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 3 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

Unique request ID. It is specified by a user and is used to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+
+

Response Parameters

Status code: 307

+ +
+ + + + + + + + + +
Table 4 Response header parameters

Parameter

+

Type

+

Description

+

Location

+

String

+

HTTP redirection header. The client can use this header to redirect to a new address. The content is a template download link, which is a pre-signed OBS URL valid for 10 minutes.

+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + +
Table 5 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + +
Table 6 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + +
Table 10 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+
+

Example Requests

+
+

Example Responses

None

+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

200

+

Empty response body.

+

307

+

Template version content requested. The request is redirected to the download link.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+

The user does not have the permission to call this API.

+

404

+

The template or template version does not exist.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/ShowTemplateVersionMetadata.html b/docs/rfs/api-ref/ShowTemplateVersionMetadata.html new file mode 100644 index 000000000..e300f9ab5 --- /dev/null +++ b/docs/rfs/api-ref/ShowTemplateVersionMetadata.html @@ -0,0 +1,384 @@ + + +

Obtaining Template Version Metadata

+

Function

ShowTemplateVersionMetadata

+

This API displays the metadata of a template version.

+ +

ShowTemplateVersionMetadata returns only the template version metadata. For details about the summary, refer to ShowTemplateVersionMetadataResponseBody. For details about template version, call ShowTemplateVersionContent.

+
+

URI

GET /v1/{project_id}/templates/{template_name}/versions/{version_id}/metadata

+ +
+ + + + + + + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

Project ID. It can be obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

template_name

+

Yes

+

String

+

Name of the template to be created.

+

Minimum: 1

+

Maximum: 128

+

version_id

+

Yes

+

String

+

Template version ID. It starts with V (uppercase). The number of the ID is incremented by 1 each time a version is created.

+

Minimum: 2

+

Maximum: 11

+
+
+ +
+ + + + + + + + + + + +
Table 2 Query Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

template_id

+

No

+

String

+

ID of a template. If template_id exists, the template service checks whether template_id matches template_name. If not, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 3 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

Unique request ID. It is specified by a user and is used to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+
+

Response Parameters

Status code: 200

+ +
+ + + + + + + + + + + + + + + + + + + + + +
Table 4 Response body parameters

Parameter

+

Type

+

Description

+

template_id

+

String

+

Unique template ID. It is randomly generated by the template service.

+

Minimum: 36

+

Maximum: 36

+

template_name

+

String

+

Name of the template to be created.

+

Minimum: 1

+

Maximum: 128

+

version_description

+

String

+

Description of a template version. It can be used by users to identify their own template versions.

+

Minimum: 0

+

Maximum: 1024

+

create_time

+

String

+

Creation time of a template version. The format complies with RFC3339 (YYYY-MM-DDTHH:MM:SSZ), for example, 1970-01-01T00:00:00Z.

+
+
+

Status code: 400

+ +
+ + + + + + + + + + + + + +
Table 5 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + +
Table 6 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + +
Table 10 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+
+

Example Requests

+
+

Example Responses

Status code: 200

+

Template version metadata obtained.

+
{
+  "template_id" : "1b15e005-bdbb-4bd7-8f9a-a09b6774b4b3",
+  "template_name" : "my_template",
+  "version_description" : "version description",
+  "create_time" : "2023-05-09T08:00:00Z"
+}
+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

200

+

Template version metadata obtained.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+

The user does not have the permission to call this API.

+

404

+

The template or template version does not exist.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/UpdateStack.html b/docs/rfs/api-ref/UpdateStack.html new file mode 100644 index 000000000..46df00ac2 --- /dev/null +++ b/docs/rfs/api-ref/UpdateStack.html @@ -0,0 +1,528 @@ + + +

Updating a Stack

+

Function

This API updates the attributes of a stack based on the information provided by users. One or more of the following attributes can be updated: description, enable_deletion_protection, enable_auto_rollback, and agencies.

+

This API updates only the fields contained in the information assigned by the user.

+

Note: All attributes are overwritten once updated. New parameters will overwrite original attributes of a stack.

+

For example, if you want to add agencies, call GetStackMetadata to obtain the original agencies, integrate the information of old and new agencies, and then call UpdateStack.

+ +
+

URI

PATCH /v1/{project_id}/stacks/{stack_name}

+ +
+ + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

A project ID is obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

stack_name

+

Yes

+

String

+

A stack name is unique within its domain (domain_id), region, and project (project_id). It is case-sensitive and starts with a letter. Only letters, digits, underscores (_), and hyphens (-) are allowed.

+

Minimum: 1

+

Maximum: 128

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 2 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

A unique request ID is specified by a user to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 3 Request body parameters

Parameter

+

Mandatory

+

Type

+

Description

+

description

+

No

+

String

+

Description of a stack. It can be used by customers to identify their own stacks.

+

Minimum: 0

+

Maximum: 1024

+

stack_id

+

No

+

String

+

Unique stack ID.

+

It is a UUID generated by RFS when a stack is created.

+

Stack names are unique at one specific time, so you can create a stack named HelloWorld and another stack with the same name after deleting the first one.

+

For parallel development, team members may want to ensure that they are operating the stack they created, not one with the same name created by other members after deleting the previous one.

+

To avoid this mismatch, check the ID, since RFS ensures each stack has a unique ID that does not change with updates. If the stack_id value differs from the current stack ID, 400 is returned.

+

Minimum: 36

+

Maximum: 36

+

enable_deletion_protection

+

No

+

Boolean

+

Deletion protection flag. If this variable is not assigned, the default value is false, indicating that deletion protection is disabled by default. (After deletion protection is enabled, stacks cannot be deleted.)

+

In the UpdateStack API, if this variable is not assigned in the RequestBody, the deletion protection attribute of the stack will not be updated.

+

enable_auto_rollback

+

No

+

Boolean

+

Auto-rollback flag. If this variable is not assigned, the default value is false, indicating that auto-rollback is disabled by default. (After auto-rollback is enabled, if the deployment fails, the stack is automatically rolled back and returns to the previous stable status.)

+

In the UpdateStack API, if this variable is not assigned in the RequestBody, the auto-rollback attribute of the stack will not be updated. This property is mutually exclusive with the import resources using templates feature, which does not allow the deployment of templates containing imported resources if the stack's auto-rollback is set to true.

+

agencies

+

No

+

Array of Agency objects

+

Agency information.

+

RFS uses an agency only in requests that involve resource operations, such as creating a stack (triggering deployment), creating an execution plan, deploying a stack, and deleting a stack. In addition, the agency applies only to resource operations performed by the provider bound to the agency. If the permissions provided by the agency are insufficient, operations on related resources may fail.

+

Array Length: 0 - 10

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
Table 4 Agency

Parameter

+

Mandatory

+

Type

+

Description

+

provider_name

+

Yes

+

String

+

Name of the provider used by a user. If the provider_name value given by the user is duplicate, 400 is returned.

+

Minimum: 1

+

Maximum: 128

+

agency_name

+

No

+

String

+

IAM agency used by the corresponding provider. RFS uses this agency to access and create resources of the provider. Either agency_name or agency_urn must be specified.

+

Minimum: 1

+

Maximum: 64

+

agency_urn

+

No

+

String

+

Agency URN When a user defines an agency, either agency_name or agency_urn must be specified. You are advised to set agency_urn when using the trust agency. agency_name can only receive common agency names. If agency_name is set to a trust agency name, template deployment will fail.

+
+
+
+

Response Parameters

Status code: 400

+ +
+ + + + + + + + + + + + + + + + + +
Table 5 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + + + + + +
Table 6 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 409

+ +
+ + + + + + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + + + + + +
Table 10 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + + + + + +
Table 11 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Response code.

+

Minimum: 11

+

Maximum: 11

+

error_msg

+

String

+

Response message.

+

encoded_authorization_message

+

String

+

The message contains information about unauthorized requests.

+
+
+
+

Example Requests

+
+

Example Responses

None

+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

204

+

Updated.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+
  1. Invalid stack status.
  2. The user does not have the permission to call this API.
+

404

+

The stack does not exist.

+

409

+

Request conflict. Another request is being processed on the current stack.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/UpdateTemplateMetadata.html b/docs/rfs/api-ref/UpdateTemplateMetadata.html new file mode 100644 index 000000000..3674b67b1 --- /dev/null +++ b/docs/rfs/api-ref/UpdateTemplateMetadata.html @@ -0,0 +1,333 @@ + + +

Updating Template Metadata

+

Function

UpdateTemplateMetadata

+

This API updates template metadata.

+ +
+

URI

PATCH /v1/{project_id}/templates/{template_name}/metadata

+ +
+ + + + + + + + + + + + + + + + +
Table 1 Path Parameters

Parameter

+

Mandatory

+

Type

+

Description

+

project_id

+

Yes

+

String

+

Project ID. It can be obtained by calling an API or from the console.

+

Minimum: 3

+

Maximum: 64

+

template_name

+

Yes

+

String

+

Name of the template to be created.

+

Minimum: 1

+

Maximum: 128

+
+
+
+

Request Parameters

+
+ + + + + + + + + + + +
Table 2 Request header parameters

Parameter

+

Mandatory

+

Type

+

Description

+

Client-Request-Id

+

Yes

+

String

+

Unique request ID. It is specified by a user and is used to locate a request. UUID is recommended.

+

Minimum: 36

+

Maximum: 128

+
+
+ +
+ + + + + + + + + + + + + + + + +
Table 3 Request body parameters

Parameter

+

Mandatory

+

Type

+

Description

+

template_id

+

No

+

String

+

Unique template ID. It is randomly generated by the template service.

+

Minimum: 36

+

Maximum: 36

+

template_description

+

No

+

String

+

Template description. It can be used by users to identify their own templates.

+

Minimum: 0

+

Maximum: 1024

+
+
+
+

Response Parameters

Status code: 400

+ +
+ + + + + + + + + + + + + +
Table 4 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 401

+ +
+ + + + + + + + + + + + + +
Table 5 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 403

+ +
+ + + + + + + + + + + + + +
Table 6 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 404

+ +
+ + + + + + + + + + + + + +
Table 7 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 429

+ +
+ + + + + + + + + + + + + +
Table 8 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+

Status code: 500

+ +
+ + + + + + + + + + + + + +
Table 9 Response body parameters

Parameter

+

Type

+

Description

+

error_code

+

String

+

Error code.

+

error_msg

+

String

+

Error message.

+
+
+
+

Example Requests

Update template metadata.

+
PATCH https://{endpoint}/v1/c364070ab35041ddae68cf8b4839b60f/templates/my_template/metadata
+
+{
+  "template_id" : "1b15e005-bdbb-4bd7-8f9a-a09b6774b4b3",
+  "template_description" : "my template description"
+}
+
+

Example Responses

None

+
+

Status Codes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

Status Code

+

Description

+

204

+

Template metadata updated. No data returned.

+

400

+

Invalid request.

+

401

+

Authentication failed.

+

403

+

The user does not have the permission to call this API.

+

404

+

The template does not exist.

+

429

+

Too frequent requests.

+

500

+

Internal server error.

+
+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/aos_02_0000.html b/docs/rfs/api-ref/aos_02_0000.html new file mode 100644 index 000000000..aa4e2fafc --- /dev/null +++ b/docs/rfs/api-ref/aos_02_0000.html @@ -0,0 +1,13 @@ + + +

Before You Start

+
+
+ +
+ diff --git a/docs/rfs/api-ref/aos_02_0001.html b/docs/rfs/api-ref/aos_02_0001.html new file mode 100644 index 000000000..72edb44f2 --- /dev/null +++ b/docs/rfs/api-ref/aos_02_0001.html @@ -0,0 +1,15 @@ + + +

Overview

+

Resource Formation Service (RFS) provides the latest resource formation APIs.

+

RFS is a new final-state resource formation engine for cloud services and fully supports Terraform (HCL and Provider), which is a de facto standard. It is an upgrade of the Application Orchestration Service (AOS) in terms of the ecosystem, experience, and features. Based on HCL syntax template, RFS automatically builds cloud service resources in batches to help you create, manage, and upgrade cloud service resources in an efficient, secure, and consistent manner, improving resource management efficiency and reducing security risks caused by resource management changes.

+

+

This document describes how to use APIs to perform operations on RFS, such as template creation, deletion, and query.

+

Before calling RFS APIs, ensure that you are familiar with RFS concepts. For details, see Service Overview.

+
+
+ +
+ diff --git a/docs/rfs/api-ref/aos_02_0040.html b/docs/rfs/api-ref/aos_02_0040.html new file mode 100644 index 000000000..6d25eca82 --- /dev/null +++ b/docs/rfs/api-ref/aos_02_0040.html @@ -0,0 +1,13 @@ + + +

Appendix

+
+
+ +
+ diff --git a/docs/rfs/api-ref/aos_02_0041.html b/docs/rfs/api-ref/aos_02_0041.html new file mode 100644 index 000000000..9b83259ad --- /dev/null +++ b/docs/rfs/api-ref/aos_02_0041.html @@ -0,0 +1,322 @@ + + +

Status Code

+

Table 1 describes status codes.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 1 Status codes

Status Code

+

Code

+

Description

+

100

+

Continue

+

The client should continue with its request.

+

This interim response is used to inform the client that some requests have been received and have not been rejected by the server.

+

101

+

Switching Protocols

+

The protocol should be switched. The protocol can only be switched to a newer protocol.

+

For example, the current HTTP protocol is switched to a later version.

+

201

+

Created

+

The request for creating resources has been fulfilled.

+

202

+

Accepted

+

The request has been accepted, but the processing has not been completed.

+

203

+

Non-Authoritative Information

+

Non-authoritative information. The request is successful.

+

204

+

NoContent

+

The request has been fulfilled, but the HTTP response does not contain a response body.

+

The status code is returned in response to an HTTP OPTIONS request.

+

205

+

Reset Content

+

The server has fulfilled the request, but the requester is required to reset the content.

+

206

+

Partial Content

+

The server has successfully processed the partial GET request.

+

300

+

Multiple Choices

+

There are multiple options for the location of the requested resource. The response contains a list of resource characteristics and addresses from which a user terminal (such as a browser) can choose the most appropriate one.

+

301

+

Moved Permanently

+

The requested resource has been assigned with a new permanent URI. This new URI is contained in the response.

+

302

+

Found

+

The requested resource resides temporarily under a different URI.

+

303

+

See Other

+

The response to the request can be found under a different URI,

+

and should be retrieved using a GET or POST method.

+

304

+

Not Modified

+

The requested resource has not been modified. When the server returns this status code, it does not return any resources.

+

305

+

Use Proxy

+

The requested resource must be accessed through a proxy.

+

306

+

Unused

+

This HTTP status code is no longer used.

+

400

+

BadRequest

+

The request is invalid.

+

The client should not repeat the request without modifications.

+

401

+

Unauthorized

+

This status code is returned after the client provides the authentication information, indicating that the authentication information is incorrect or invalid.

+

402

+

Payment Required

+

This status code is reserved for future use.

+

403

+

Forbidden

+

Access denied.

+

The server understands the request, but refuses to fulfill it. The client should not repeat the request without modifications.

+

404

+

NotFound

+

The requested resource cannot be found.

+

The client should not repeat the request without modifications.

+

405

+

MethodNotAllowed

+

The method specified in the request is not supported by the requested resource.

+

The client should not repeat the request without modifications.

+

406

+

Not Acceptable

+

The server cannot fulfill the request based on the content characteristics of the request.

+

407

+

Proxy Authentication Required

+

This status code is similar to 401, but indicates that the client must authenticate itself with the proxy first.

+

408

+

Request Time-out

+

The client does not send a request within the time that the server was prepared to wait.

+

The client may repeat the request without modifications later.

+

409

+

Conflict

+

The request cannot be processed due to a conflict.

+

This status code indicates that the resource that the client attempts to create already exits, or the request fails to be processed because of the update of the conflict request.

+

410

+

Gone

+

The requested resource cannot be found.

+

The status code indicates that the requested resource has been deleted permanently.

+

411

+

Length Required

+

The server refuses to process the request without a defined Content-Length.

+

412

+

Precondition Failed

+

The server does not meet one of the preconditions that the requester puts on the request.

+

413

+

Request Entity Too Large

+

The server refuses to process a request because the request entity is too large. The server may disable the connection to prevent the client from sending requests consecutively. If the server cannot process the request temporarily, the response will contain a Retry-After field.

+

414

+

Request-URI Too Large

+

The Request-URI is too long for the server to process.

+

415

+

Unsupported Media Type

+

The server cannot process the media format in the request.

+

416

+

Requested range not satisfiable

+

The requested range is invalid.

+

417

+

Expectation Failed

+

The server fails to meet the requirements of the Expect request-header field.

+

422

+

UnprocessableEntity

+

The request is well-formed but is unable to be processed due to semantic errors.

+

429

+

TooManyRequests

+

The client sends excessive requests to the server within a given time (exceeding the limit on the access frequency of the client), or the server receives excessive requests within a given time (beyond its processing capability). In this case, the client should repeat requests after the time specified in the Retry-After header of the response expires.

+

500

+

InternalServerError

+

The server is able to receive the request but unable to understand the request.

+

501

+

Not Implemented

+

The server does not support the function required to fulfill the request.

+

502

+

Bad Gateway

+

The server acting as a gateway or proxy receives an invalid response from a remote server.

+

503

+

ServiceUnavailable

+

The requested service is invalid.

+

The client should not repeat the request without modifications.

+

504

+

ServerTimeout

+

The request cannot be fulfilled within a given time. This status code is returned to the client only when the Timeout parameter is specified in the request.

+

505

+

HTTP Version not supported

+

The server does not support the HTTP protocol version used in the request.

+
+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/aos_02_0055.html b/docs/rfs/api-ref/aos_02_0055.html new file mode 100644 index 000000000..a967827b5 --- /dev/null +++ b/docs/rfs/api-ref/aos_02_0055.html @@ -0,0 +1,19 @@ + + +

Concepts

+
+
+
+ +
+ diff --git a/docs/rfs/api-ref/aos_02_0070.html b/docs/rfs/api-ref/aos_02_0070.html new file mode 100644 index 000000000..1ede687ce --- /dev/null +++ b/docs/rfs/api-ref/aos_02_0070.html @@ -0,0 +1,20 @@ + + +

Change History

+
+
+ + + + + + + +

Date

+

Change History

+

2024-07-30

+

First release

+
+
+
+ diff --git a/docs/rfs/api-ref/en-us_image_0000001893402017.png b/docs/rfs/api-ref/en-us_image_0000001893402017.png new file mode 100644 index 000000000..d4a37a976 Binary files /dev/null and b/docs/rfs/api-ref/en-us_image_0000001893402017.png differ diff --git a/docs/rfs/api-ref/en-us_image_0000001893402049.png b/docs/rfs/api-ref/en-us_image_0000001893402049.png new file mode 100644 index 000000000..4a421d8a1 Binary files /dev/null and b/docs/rfs/api-ref/en-us_image_0000001893402049.png differ diff --git a/docs/rfs/api-ref/public_sys-resources/caution_3.0-en-us.png b/docs/rfs/api-ref/public_sys-resources/caution_3.0-en-us.png new file mode 100644 index 000000000..60f607621 Binary files /dev/null and b/docs/rfs/api-ref/public_sys-resources/caution_3.0-en-us.png differ diff --git a/docs/rfs/api-ref/public_sys-resources/danger_3.0-en-us.png b/docs/rfs/api-ref/public_sys-resources/danger_3.0-en-us.png new file mode 100644 index 000000000..47a9c7235 Binary files /dev/null and b/docs/rfs/api-ref/public_sys-resources/danger_3.0-en-us.png differ diff --git a/docs/rfs/api-ref/public_sys-resources/delta.gif b/docs/rfs/api-ref/public_sys-resources/delta.gif new file mode 100644 index 000000000..0d1b1f674 Binary files /dev/null and b/docs/rfs/api-ref/public_sys-resources/delta.gif differ diff --git a/docs/rfs/api-ref/public_sys-resources/deltaend.gif b/docs/rfs/api-ref/public_sys-resources/deltaend.gif new file mode 100644 index 000000000..cc7da0fc8 Binary files /dev/null and b/docs/rfs/api-ref/public_sys-resources/deltaend.gif differ diff --git a/docs/rfs/api-ref/public_sys-resources/icon-arrowdn.gif b/docs/rfs/api-ref/public_sys-resources/icon-arrowdn.gif new file mode 100644 index 000000000..379428032 Binary files /dev/null and b/docs/rfs/api-ref/public_sys-resources/icon-arrowdn.gif differ diff --git a/docs/rfs/api-ref/public_sys-resources/icon-arrowrt.gif b/docs/rfs/api-ref/public_sys-resources/icon-arrowrt.gif new file mode 100644 index 000000000..6aaaa11c2 Binary files /dev/null and b/docs/rfs/api-ref/public_sys-resources/icon-arrowrt.gif differ diff --git a/docs/rfs/api-ref/public_sys-resources/icon-caution.gif b/docs/rfs/api-ref/public_sys-resources/icon-caution.gif new file mode 100644 index 000000000..079c79b26 Binary files /dev/null and b/docs/rfs/api-ref/public_sys-resources/icon-caution.gif differ diff --git a/docs/rfs/api-ref/public_sys-resources/icon-danger.gif b/docs/rfs/api-ref/public_sys-resources/icon-danger.gif new file mode 100644 index 000000000..079c79b26 Binary files /dev/null and b/docs/rfs/api-ref/public_sys-resources/icon-danger.gif differ diff --git a/docs/rfs/api-ref/public_sys-resources/icon-huawei.gif b/docs/rfs/api-ref/public_sys-resources/icon-huawei.gif new file mode 100644 index 000000000..a31d60f89 Binary files /dev/null and b/docs/rfs/api-ref/public_sys-resources/icon-huawei.gif differ diff --git a/docs/rfs/api-ref/public_sys-resources/icon-note.gif b/docs/rfs/api-ref/public_sys-resources/icon-note.gif new file mode 100644 index 000000000..31be2b039 Binary files /dev/null and b/docs/rfs/api-ref/public_sys-resources/icon-note.gif differ diff --git a/docs/rfs/api-ref/public_sys-resources/icon-notice.gif b/docs/rfs/api-ref/public_sys-resources/icon-notice.gif new file mode 100644 index 000000000..409070650 Binary files /dev/null and b/docs/rfs/api-ref/public_sys-resources/icon-notice.gif differ diff --git a/docs/rfs/api-ref/public_sys-resources/icon-tip.gif b/docs/rfs/api-ref/public_sys-resources/icon-tip.gif new file mode 100644 index 000000000..c47bae05c Binary files /dev/null and b/docs/rfs/api-ref/public_sys-resources/icon-tip.gif differ diff --git a/docs/rfs/api-ref/public_sys-resources/icon-warning.gif b/docs/rfs/api-ref/public_sys-resources/icon-warning.gif new file mode 100644 index 000000000..079c79b26 Binary files /dev/null and b/docs/rfs/api-ref/public_sys-resources/icon-warning.gif differ diff --git a/docs/rfs/api-ref/public_sys-resources/note_3.0-en-us.png b/docs/rfs/api-ref/public_sys-resources/note_3.0-en-us.png new file mode 100644 index 000000000..57a0e1f53 Binary files /dev/null and b/docs/rfs/api-ref/public_sys-resources/note_3.0-en-us.png differ diff --git a/docs/rfs/api-ref/public_sys-resources/notice_3.0-en-us.png b/docs/rfs/api-ref/public_sys-resources/notice_3.0-en-us.png new file mode 100644 index 000000000..fa4b64990 Binary files /dev/null and b/docs/rfs/api-ref/public_sys-resources/notice_3.0-en-us.png differ diff --git a/docs/rfs/api-ref/public_sys-resources/warning_3.0-en-us.png b/docs/rfs/api-ref/public_sys-resources/warning_3.0-en-us.png new file mode 100644 index 000000000..def5c3565 Binary files /dev/null and b/docs/rfs/api-ref/public_sys-resources/warning_3.0-en-us.png differ diff --git a/docs/rfs/api-ref/rfs_02_0000.html b/docs/rfs/api-ref/rfs_02_0000.html new file mode 100644 index 000000000..cf4f4684e --- /dev/null +++ b/docs/rfs/api-ref/rfs_02_0000.html @@ -0,0 +1,64 @@ + + +

Resource Formation Service

+

Status Code

After sending a request, you will receive a response, including a status code, response header, and response body.

+

A status code is a group of digits, ranging from 1xx to 5xx. It indicates the status of a request. For more information, see Status Code.

+

For example, if status code 201 is returned for calling the API used to obtain a user token, the request is successful.

+
+

Response Header

Similar to a request, a response also has a header, for example, Content-Type.

+

Figure 1 shows the response header fields for the API used to obtain a user token. The x-subject-token header field is the desired user token. This token can then be used to authenticate the calling of other APIs.

+
Figure 1 Header fields of the response to the request for obtaining a user token
+
+

(Optional) Response Body

The body of a response is often returned in structured format as specified in the Content-Type header field. The response body transfers content except the response header.

+
+

The following is part of the response body for the API used to obtain a user token.

+
 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
{
+    "token": {
+        "expires_at": "2019-02-13T06:52:13.855000Z",
+        "methods": [
+            "password"
+        ],
+        "catalog": [
+            {
+                "endpoints": [
+                    {
+                        "region_id": "az-01",
+......
+
+
+

If an error occurs during API calling, an error code and a message will be displayed. The following shows an error response body.

+
1
+2
+3
+4
{
+    "error_msg": "The format of message is error",
+    "error_code": "AS.0001"
+}
+
+
+

In the response body, error_code is an error code, and error_msg provides information about the error.

+
+
+ +
+ diff --git a/docs/rfs/api-ref/topic_300000000.html b/docs/rfs/api-ref/topic_300000000.html new file mode 100644 index 000000000..094d5f167 --- /dev/null +++ b/docs/rfs/api-ref/topic_300000000.html @@ -0,0 +1,40 @@ + + +

Stacks

+

+
+
+ + + +
+ diff --git a/docs/rfs/api-ref/topic_300000001.html b/docs/rfs/api-ref/topic_300000001.html new file mode 100644 index 000000000..3a34bd8ff --- /dev/null +++ b/docs/rfs/api-ref/topic_300000001.html @@ -0,0 +1,26 @@ + + +

Execution Plans

+

+
+
+ + + +
+ diff --git a/docs/rfs/api-ref/topic_300000002.html b/docs/rfs/api-ref/topic_300000002.html new file mode 100644 index 000000000..999b2f0d9 --- /dev/null +++ b/docs/rfs/api-ref/topic_300000002.html @@ -0,0 +1,16 @@ + + +

Template Analysis

+

+
+
+ + + +
+ diff --git a/docs/rfs/api-ref/topic_300000003.html b/docs/rfs/api-ref/topic_300000003.html new file mode 100644 index 000000000..ccd20ade1 --- /dev/null +++ b/docs/rfs/api-ref/topic_300000003.html @@ -0,0 +1,30 @@ + + +

Template Management

+

+
+
+ + + +
+