About the author
These are notes that I've written when I was working on building a Hashicorp Packer Builder plugin in Go.The issue with the development of this Packer Builder plugin is that some of the Tencent documentation are outdated, and the Chinese/Mandarin documentation are more updated than the English ones.The following lists the issues encountered when developing the plugin.Invalid SSL certificateEncountering the errorx509: certificate is valid for *.ap-singapore.tencentcloudapi.com, not cvm.tencentcloudapi.comwhen making a call to https://cvm.tencentcloudapi.com/...Missing required parameterWrong domain nameaccount.api.qcloud.com vs cvm.tencentcloudapi.comConnecting to the nearest datacenter
When connecting to the general URL: cvm.tencentcloudapi.com, the CVM API would connect to the nearest data center. So, for example, if you’re using cvm.tencentcloudapi.com, and you’re located in Singapore, you get redirected to cvm.ap-singapore.tencentcloudapi.com.And, if you’re located in Silicon Valley, you get redirected to cvm.na-siliconvalley.tencentcloudapi.com.While this speeds up performance, it gives the issue listed in the Invalid SSL certificate above. The alternative is to connect to a regional-specific data center each time, or alter the plugin to read and connect to a specific domain specified in the configuration. See also the issue: “Information available only in Chinese” below.No information availableWhen attempting to create a keypair, the following issues were encountered:
When attempting to bind a keypair to a cloud machine, the following issues were encountered:
Information available only in Chinesehttps://intl.cloud.tencent.com/document/product/409/16763This says that the service address suffix (or domain) supports redirecting to the nearest geographical domain.Confusing responseWhen you provide too much data, the response from Tencent can be misleading.For example, when you provide two PrivateIpAddresses instead of one as documented here: https://intl.cloud.tencent.com/document/api/213/9451#virtualprivatecloud, the error message received reads:"Message": "The value `1` specified in the parameter `InstanceCount` is not valid."User References:
Development References:
How to free more space on your home drive by redirecting the location for SDKs in RAD Studio
Learn the command line used to compile System.pas in Delphi
A method to design records so that they're allocated on a specific byte boundary, such as 16 bytes, 512 bytes, 4096 bytes, etc.
Learn why the map is cool in Go!