# Microsoft Azure SDK for Go [![GoDoc](https://godoc.org/github.com/Azure/azure-sdk-for-go?status.svg)](https://godoc.org/github.com/Azure/azure-sdk-for-go) [![Build Status](https://travis-ci.org/Azure/azure-sdk-for-go.svg?branch=master)](https://travis-ci.org/Azure/azure-sdk-for-go) [![Go Report Card](https://goreportcard.com/badge/github.com/Azure/azure-sdk-for-go)](https://goreportcard.com/report/github.com/Azure/azure-sdk-for-go) This is Microsoft Azure's core repository for hosting Go packages which offer a more convenient way of targeting Azure REST endpoints. Here, you'll find a mix of code generated by [Autorest](https://github.com/Azure/autorest) and hand maintained packages. > **NOTE:** This repository is under heavy ongoing development and should be considered a preview. Vendoring your dependencies is always a good idea, but it is doubly important if you're consuming this library. # Installation - If you don't already have it, install [the Go Programming Language](https://golang.org/dl/). - Go get the SDK: ``` $ go get -u github.com/Azure/azure-sdk-for-go ``` > **IMPORTANT:** We highly suggest vendoring Azure SDK for Go as a dependency. For vendoring dependencies, Azure SDK for Go uses [glide](https://github.com/Masterminds/glide). # Versioning ## SDK Versions The tags in this repository are based on, but do not conform to [SemVer.org's recommendations](http://semver.org/). For now, the "-beta" tag is an indicator that we are still in preview and still are planning on releasing some breaking changes. ## Azure Versions Azure services _mostly_ do not use SemVer based versions. Rather, they use profiles identified by dates. One will often see this casually referred to as an "APIVersion". At the moment, our SDK only supports the most recent profiles. In order to lock to an API version, one must also lock to an SDK version. However, as discussed in [#517](https://github.com/Azure/azure-sdk-for-go/issues/517), our objective is to reorganize and publish independent packages for each profile. In that way, we'll be able to have parallel support in a single SDK version for all APIVersions supported by Azure. # Documentation - Azure SDK for Go Documentation is available at [GoDoc.org](http://godoc.org/github.com/Azure/azure-sdk-for-go/). - Azure REST APIs used by packages in this repository are documented at [Microsoft Docs, Azure REST](https://docs.microsoft.com/en-us/rest/api/). - Azure Services are discussed in detail at [Microsoft Docs, Azure Services](https://docs.microsoft.com/en-us/azure/#pivot=services). # Code samples - [Getting Started with Azure Blob Service in Go](https://github.com/Azure-Samples/storage-blob-go-getting-started) # License This project is published under [Apache 2.0 License](LICENSE). # Contribute If you would like to become an active contributor to this project please follow the instructions provided in [Microsoft Azure Projects Contribution Guidelines](http://azure.github.io/guidelines/). This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.