All,
During this GSoC coding period, in the scope of my GSoC project [1] I used the
brooklyn-cloudfodunfry [2] github repository
to propose a solution to this Brooklyn Jira issue [3]. This repository was
created for the the Google Summer of Code project,
all the code has been developed by the student, Jose Carrasco (github handle
@kiuby88) under the supervision of the GSoC
proposal mentor, Andrea Turli (github handle @andreaturli) and the rest of the
Brooklyn community.
DEVELOPMENT PROCESS
I took advantage of Github Flow [4] as agile development process for this
project. I had a number of public and private discussions
with Apache Brooklyn community and my GSoC mentor to design and take technical
decisions. Once a PR was opened with a
feature proposal, Andrea Turli started the review process, discussing possible
architectural improvements and proposing interesting
advice about how the code would be enhanced, until PR was ready to be merged.
GOALS
Considering the original project plan, we have reached a lot of proposed goals:
- Different providers and orchestration technologies were analyzed.
- A first provider support was added to Brooklyn by means of locations.
- Different Cloud Foundry-based providers can be reached by our solution,
such as Pivotal Web Services or IBM Bluemix.
- A base and extensible architecture was developed taking in account the
Brooklyn lifecycle and patterns such as Entities- and
Driver-based patters to manage PaaS applications and platform add-ons, what
will be useful to reach different providers.
- A generalized architecture was figuring out and analyze (Deliverable D6 and
D6.1, [5]) but it was not implemented yet.
FURTHER IMPROVEMENTS
- The proposed architecture is highly extensible and it will allow the
on-boarding of many other PaaS providers in Apache
Brooklyn. During GSoC 2016 I focused on adding the support for Cloud
Foundry-based platforms. As I consider valuable
to add new provider types (like Heroku or OpenShift), I’ll be proud to help
Apache Brooklyn community to extend PaaS-es
coverage even further the GSoC period.
- Moving the codebase to apache/brooklyn official repo [6].
As was proposed, different deliverables were produced according to the
researching and developing results, you can find all
the deliverables and other documentation in GSoC Deliverables and Documentation
folder [5].
Finally, a track and more concrete information about each of our task can be
obtained in our trello [7] board.
I would like to thank to GSoC organization, Apache Software Foundation and
Apache Brooklyn community the opportunity and for
the trust placed in me as student. Specially, would also use this opportunity
to sincerely thank to Andrea Turli his effort and help
during this period.
Best,
Jose
[1] https://summerofcode.withgoogle.com/projects/#6531111119224832
[2] https://github.com/kiuby88/brooklyn-cloudfoundry
[3] https://issues.apache.org/jira/browse/BROOKLYN-255
[4] https://guides.github.com/introduction/flow/
[5]
https://drive.google.com/a/cloudsoftcorp.com/folderview?id=0BxP_HXE8tVoFazF4cUV0LXpYSTg&usp=sharing#
[6] https://github.com/apache/brooklyn/
[7] https://trello.com/b/ZFfueDsu/gsoc2016