New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature request: Support for traffic manager / Load balancer #183

Closed
dhilton opened this Issue Aug 4, 2015 · 13 comments

Comments

Projects
None yet
5 participants
@dhilton

dhilton commented Aug 4, 2015

We have a use case where we'd like to use Terraform to create traffic managers / load balancers in Azure. To support this we need this client library to support it, so terraform can then support it via the stable library that it currently depends on.

I've seen mention in some of the other issues of a auto API code generation, does that mean that you wouldn't accept a PR to add this?

@ahmetb

This comment has been minimized.

Contributor

ahmetb commented Aug 4, 2015

@dhilton I believe if the API is under the Resource Manager APIs, we will have code generation for that coming up soon. Therefore it's unlikely we'll merge (although you can always do external packages or maybe we can merge into a dev branch). If it's part of Service Management APIs, we can still accept a PR.

@dhilton

This comment has been minimized.

dhilton commented Aug 5, 2015

It is - any idea on when that code generation will merge into master? Because that solves a couple of other issues I have or rather enables them to be solved rather quickly.

@ahmetb

This comment has been minimized.

Contributor

ahmetb commented Aug 5, 2015

cc: @brendandixon to give an update.

@brendandixon

This comment has been minimized.

Contributor

brendandixon commented Aug 5, 2015

We hope to have an early alpha sometime in the next three weeks. However, what will be included is still being worked out. Our code generation process is still underdevelopment.

@dhilton

This comment has been minimized.

dhilton commented Aug 5, 2015

Ah cool - thanks for the update, if there is anything I can do to help please just point at a repo/branch here. Good luck with the coding.

@brendandixon

This comment has been minimized.

Contributor

brendandixon commented Aug 5, 2015

Thanks. We'll likely post a blog somewhere (possibly at https://ahmetalpbalkan.com) once it's available. Stay tuned!

@proffalken

This comment has been minimized.

proffalken commented Aug 6, 2015

We're also very interested in this.

We're in the process of moving some of our Terraform code from AWS to Azure and load-balancing/traffic managers are definitely something that we need! :)

@dhilton

This comment has been minimized.

dhilton commented Aug 6, 2015

Waves @proffalken we should swap notes some time, our code is here: https://github.com/alphagov/tsuru-terraform

@brendandixon

This comment has been minimized.

Contributor

brendandixon commented Aug 25, 2015

@dhilton We've released the initial set of ARM Go packages. They are generated from Swagger definitions found here: https://github.com/Azure/azure-rest-api-specs. We do not yet have a Swagger definition file for the DNS REST API (see https://msdn.microsoft.com/en-us/library/azure/mt163862.aspx), but you can use ARM templates through the arm/resources package. I would go that route for now.

@dhilton

This comment has been minimized.

dhilton commented Aug 30, 2015

OK cool - what's the versioning approach with that repo? I.e. If it's used as a dependency, is it likely to add any breaking changes or will it simply be a matter of adding extra API's to the client library? Is this the new preferred client lib to Azure?

@ahmetb

This comment has been minimized.

Contributor

ahmetb commented Sep 2, 2015

@dhilton right now none of the packages have a backwards compatibility or versioning story. If you take a look at the repo it consists of several totally independent packages storage, arm and management (asm). Among those, storage and management have been fairly stable in the past 3-4 months and they had an almost complete rewrite recently so I don't expect those to break.

On the other hand, arm package is likely to break based on user comments we're currently collecting. That package is auto-generated and is in an alpha state; whereas you can call others beta or above.

As you can imagine, when you have 3 separate packages, versioning/tagging is a bit tricky as each have their own release cycles. But we'll be introducing versioning through tags soon.

Bottomline is, if you are relying on current snapshot of the repo, please use godep/gb etc. to vendor this snapshot (commit) of the repo (meaning, have a local copy of this repo in your project). Soon when we start using tags (will probably release a 2.0), you can vendor the tags directly and read the changelogs (also we'll start doing this) to see if you actually need to update the vendored version. Does that answer your question?

@brendandixon

This comment has been minimized.

Contributor

brendandixon commented Nov 18, 2015

@dhilton This is addressed in the v0.2.0-beta version of the ARM packages. Let us know if there remain issues!

@garimakhulbe

This comment has been minimized.

Contributor

garimakhulbe commented Aug 11, 2016

Old issue. This is added in Azure Go SDK. Closing this.

https://github.com/Azure/azure-sdk-for-go/tree/master/arm/trafficmanager

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment