fanatic / go-infoblox

Golang Infoblox WAPI Library (Deprecated)
16 stars 26 forks source link

Upgrading WAPI version to 1.7 #33

Closed Defilan closed 6 years ago

Defilan commented 6 years ago

Hello,

This is a pretty simple change. This changes the WAPI version from 1.4.1 to 2.2, which is the most recent version Infoblox supports now. Please let me know if there are any questions! Thanks :)

fanatic commented 6 years ago

Thanks for the change! I think the most important part is making sure the 2.2 WAPI api supports the same options and endpoints as 1.4.1. Have you gone through that exercise? We don't have integration tests because access to Infoblox appliances is hard to come by.

Defilan commented 6 years ago

Hey @fanatic , I appreciate the quick feedback! So I know that Infoblox has stated in their documentation that they retain backwards compatiblity for major version releases (https://www.infoblox.com/wp-content/uploads/infoblox-deployment-infoblox-rest-api.pdf) The Infoblox WAPI has a versioning scheme that is independent of the NIOS versioning scheme. A current WAPI version is backward compatible with WAPI releases that have the same major WAPI version or with designated earlier major versions.

So, this being said, I have moved this back down to 1.7 for now. Please let me know what you think. I know there are some bugs with the host API call in 1.4.1.

fanatic commented 6 years ago

As far as I'm aware, using the older version number in the URL path keeps API compatibility no matter how new the NIOS version. But if I'm running an older NIOS (which my company is), it won't recognize the newer WAPI version in the path.

I believe leaving the WAPI version as 1.4.1 allows this library to be forward compatible with all newer NIOS releases, but at the cost of not supporting the newest API endpoints and resources.

You mentioned a bug in the host API call in 1.4.1 - can you give me more detail? Maybe we can workaround it.

I'm afraid that simply changing the version in client.go will make this library unusable for a lot of people on older Infoblox appliances.

Defilan commented 6 years ago

Ok, I totally see your point. I am going to do some more testing, but will probably keep the fork at a higher version for now. I'll submit a bug with the issue I'm seeing with 1.4.1. Thanks so much @fanatic for the time and for the great code too. This is a huge help for some projects we've been working on :)