Rackspace and OpenStack.NET

Carolyn Van Slyck edited this page Feb 16, 2016 · 4 revisions

OpenStack.NET was originally developed in house at Rackspace and it shows... But soon that will change!

During the 1.x releases Rackspace solutions will be isolated and copied into a new Rackspace .NET SDK project. When that process is complete, OpenStack.NET v2.0 will be pure OpenStack and companies such as Rackspace and HP can build on top of that with their own package.

The goal is to make it easier to contribute to OpenStack.NET, without dealing with any company's specific concerns. This also lets each company add support for their non-OpenStack solutions without mucking up OpenStack.NET. A win-win!

The roadmap is outlined in the OpenStack.NET 1.x milestones and the Rackspace .NET SDK 0.x milestones.

What does this mean for me during the migration?

None of your existing code needs to change at all.

During the 1.x releases, Rackspace specific services will be marked with [Obsolete] giving you warning that once v2.0 hits, that service will move to the Rackspace package. At any time, you can update your code to reference the services in their new location or wait for v2.0 and migrate your code in one go.

Support for new Rackspace APIs (e.g. RackConnect) will be added to the Rackspace NuGet package. Just add a reference to it and start using the new services. Here's an example of what that would look like

using net.openstack.Core.Domain; // use the existing identity infrastructure
using Rackspace.RackConnect.v3.PublicIPs; // pull in new Rackspace goodies from the Rackspace package

var identity = new CloudIdenity { UserName = "{username}", ApiKey = "{api-key}" };
var publicIPService = new PublicIPService(identity);

What does this mean for me once it's complete?

The first release for v2.0 will see any Rackspace specific services removed from the OpenStack.NET package and moved to the Rackspace package. If you haven't already migrated your code to use the Rackspace package, namespaces and method signatures, this is when you have to do so in order to keep taking new versions of OpenStack.NET.

Do I have to migrate to v2.0?

Nope! If you are happy with the existing set of supported features, then feel free to stay on the 1.4.x release. Just keep in mind that no new development is going to be added to the 1.4 release.

Will OpenStack.NET continue to be actively developed?

YES! In fact, support for vanilla OpenStack should improve with this change. Everything you can do today with OpenStack.NET will continue to be supported and new APIs will be added once the split is complete.

In addition, our integration tests will be running on pure OpenStack, which should make it easier to catch problems due to differences between Rackspace and OpenStack before they are released.