Commit 7344b9374b701f98ae5e144904c2758838f7d28a
1 parent
e920f51b
Exists in
master
and in
2 other branches
08-contributions.tex: reviews
Showing
1 changed file
with
28 additions
and
26 deletions
Show diff stats
opensym2017/content/08-contributions.tex
| 1 | -\section{Contributing with Free Software Communities} | |
| 1 | +\section{Contributions to the upstream communities} | |
| 2 | 2 | \label{sec:contributions} |
| 3 | 3 | |
| 4 | 4 | %- projeto feito do jeito certo com relação ao software livre (contribuições upstream etc) |
| ... | ... | @@ -9,24 +9,30 @@ |
| 9 | 9 | %* Coper, empacotamentos (obs), omniauth |
| 10 | 10 | |
| 11 | 11 | |
| 12 | -During the execution of this project we made several contributions from | |
| 13 | -different levels to the communities we interacted with. This occurred due to | |
| 14 | -our development process aligned with those of the respective communities. We | |
| 15 | -used to discuss with upstream the features and bug fixes that we was working | |
| 16 | -on, this kind of discussion improve the developers' technical solutions and | |
| 17 | -allowed upstream to accept our contribution more easily. | |
| 18 | - | |
| 19 | -In Colab we helped upstream to redesign the entirely architecture, enabling the | |
| 20 | -development of plugins to integrate new tools. We also added a feature that | |
| 21 | -allowed Colab to run asynchronous tasks, which was a major improvement for us | |
| 22 | -since we were developing a complex system. A migration to the latest Django | |
| 23 | -version was made (web framework used by Colab). Moreover, we worked on RevProxy | |
| 24 | -(the greatest Colab dependency) to put it in a good shape, fixing many bugs. | |
| 12 | +During the execution of this project we made several contributions to | |
| 13 | +the upstream communities we interacted with. This occurred due to our | |
| 14 | +development process aligned with those of the respective communities. | |
| 15 | +During development, we would explicitly discuss the features and bug | |
| 16 | +fixes that we were working on with the applicable upstream communities. | |
| 17 | +This contributed to improve the developers technical solutions with | |
| 18 | +expertise outside of our team, and make it easier for those changes to | |
| 19 | +be accepted in the original projects. Having changes accepted upstream | |
| 20 | +in turn makes our life easier as it minimizes the delta between our | |
| 21 | +codebase and upstream's allowing us to upgrade and benefit from | |
| 22 | +development work from others. | |
| 23 | + | |
| 24 | +In Colab, we helped upstream redesign the entirely architecture, | |
| 25 | +enabling the development of plugins to integrate new tools. We also | |
| 26 | +added a feature that allowed Colab to run asynchronous tasks, which was | |
| 27 | +a major improvement for us since we were developing a complex system. A | |
| 28 | +migration to the latest Django version was made (web framework used by | |
| 29 | +Colab). Moreover, we worked on RevProxy (the more important dependency | |
| 30 | +of Colab) to put it in a good shape, fixing many bugs. | |
| 25 | 31 | |
| 26 | 32 | Gitlab was the tool that we made the least number of modifications. We |
| 27 | -contributed with some improvements related with configuration files and we | |
| 28 | -developed a new omniauth plugin, which enables the user authentication in | |
| 29 | -Gitlab via REMOTE\_USER HTTP header. This omniauth plugin was needed because | |
| 33 | +contributed with some improvements related with configuration files and | |
| 34 | +we developed a new plugin that enables user authentication in Gitlab | |
| 35 | +through the REMOTE\_USER HTTP header. This plugin was needed because | |
| 30 | 36 | Colab uses this mechanism to manage the authentication. |
| 31 | 37 | |
| 32 | 38 | Noosfero was the tool that contemplated several functional requirements, |
| ... | ... | @@ -35,15 +41,11 @@ migrate to the latest Rails version (web framework used by Noosfero), enable |
| 35 | 41 | the federation implementation (federation with other social networks), decouple |
| 36 | 42 | the interface and the back-end, and so forth. |
| 37 | 43 | |
| 38 | -We also contributed with some DevOps tools as well during the project. Some | |
| 39 | -member of our team took the maintenance of some python libraries that we used | |
| 40 | -to support our scripts to upload our packages to OBS (Open Build Service). | |
| 41 | -Since we were composed by many teams with large number of developers we had | |
| 42 | -some problems related with the tracking of our per team/software releases, the | |
| 43 | -DevOps team did not know when was the right time to package that software or | |
| 44 | -not. Thus we developed a tool called copr-status to keep tracked the version | |
| 45 | -packaged and the version finished by the developers, basically this is a web | |
| 46 | -interface that helps you to visualize the status of that package/software. | |
| 44 | +We also made some contributions on the DevOps front. Some members of | |
| 45 | +them team became maintainers of some python libraries that were used by | |
| 46 | +our scripts to upload packages to OBS (Open Build Service). We developed | |
| 47 | +a tool called copr-status to keep track of the different stages of the | |
| 48 | +lifecycle of each of the individual packages we were working on. | |
| 47 | 49 | |
| 48 | 50 | %TODO: Mezuro |
| 49 | 51 | ... | ... |