I am working on scoping the tasks required for the technical pieces of Golang adoption in OpenStack. This work has been informed somewhat by flaper87's reference doc proposal[0] for new language additions and is (mostly) compatible with it, pending that proposal's final approval by the TC.
As a first step, I proposed a Common Testing Interface (CTI) document[1] for Go. There is, of course, much more than this, including a number of significant decisions that still need to be made. At this point I want to focus on identifying those decisions and other tasks rather than solving them immediately. Some of the previous work done around using Golang in OpenStack has been collected in an Etherpad[2] and summarized into major categories. I am confident that I have not found everything that has been done and would appreciate pointers to whatever resources you may have. Here are some highlights of areas that still require discussion and decisions: Common Libraries flaper87's reference doc touches on project requirements for new languages and Oslo-compatible implementations. At the time of this writing this is not yet finalized, with some discussion around how much to require, and if the first project to utilize a new language should shoulder all of the burden of also implementing those libraries. Dependency Management There are a number of tools available for Golang to manage dependencies. A number have been evaluated already with a couple of strong contenders identified. Once a tool is selected, process needs to be set up to track dependencies and versions tested. Release Deliverables OpenStack still officially considers the tarballs generated during the release rpocess to be our official deliverable. Many downstream consumers, however, bypass those and go directly to the tagged releases in the Git repos. The Golang community has no real culture of using tarballs at all, given the 'go get' functionality bult in to the tooling directly for checking out remote repos. One obvious shortcoming in just defining the release to be Git repo tags is our use of generated files. If you have an interest in seeing Golang support implemented for OpenStack, please jump in here and help us nail down how to accomplish that "right". dt [0] https://review.openstack.org/#/c/398875/ [1] https://review.openstack.org/410355 [2] https://etherpad.openstack.org/p/golang-infra-work-plan -- Dean Troyer dtro...@gmail.com __________________________________________________________________________ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev