There’s a new SDK for Azure that lets you develop apps for Azure in Go. The SDK has support for connecting to data sources including Cosmos DB and Azure Storage, deploying Azure resources programmatically, and authenticating users.
If your initial response is that Go and Azure is an odd coupling, the thinking from the developers in the Azure team at Microsoft is that:
Go increases both developer and software efficiency through clear syntax, modern standard libraries, native compilation, and reliable concurrency primitives.
Several cloud management projects already use the SDK to integrate with Azure, including Kubernetes, Terraform, and the Open Service Broker for Azure. This is an open source, Open Service Broker-compatible API server that provisions managed services in the Microsoft Azure public cloud.
Documentation and tutorials for the SDK have been added to the Azure Go Dev Center, and the full API documentation for the SDK is available on GoDoc.
The developers say the first interesting use of Azure SDK for Go is for interacting with the Azure Blob Storage object storage service. There’s a sample showing how to upload, download, and list block blobs in a container in Azure Blob storage.
You can also use the SDK to connect to Azure database services including Cosmos DB, Azure DB for PostgreSQL,and Azure Database for MySQL. Samples are provided showing how to connect, and Transact-SQL or SQL statements to query and modify data are also demonstrated.
Other options include the ability to authenticate your users and other services using Azure Active Directory identities and Key Vault secrets; and to provision and manage Azure resources like Virtual Machines, Virtual Networks, Storage Accounts, as well as databases like Cosmos DB and PostgreSQL.
One of the most interesting aspects of the SDK is that it also has support for data analysis using Azure Cognitive services. Cognitive services are a set of APIs, SDKs and services that expand on Microsoft’s portfolio of machine learning APIs and that let you add features such as emotion and video detection; facial, speech and vision recognition; and speech and language understanding – into your Azure applications.
Cheer up and start developing. Remember, its GIGO.