In this blog post I would like to share the upcoming changes to the contribution process for Alfresco components. In short, the well known ALF project (https://issues.alfresco.com/jira/projects/ALF) in our Jira is going to be archived.
For quite a while the ALF project was serving as a home of all the contributions from Community members, accommodating the feature requests, bug descriptions and patches. The world around it has changed and the project is no longer the easiest way for us to listen to Community and for Community to talk to us. We would like to propose to use GitHub as the place for collaboration, to be as close to the code as possible.
This is how it can look like.
The process will include a smaller number of steps to make the contribution easier to submit and approve:
- Find the right component (see “How to find the right repository” below) and submit an issue (https://help.github.com/articles/creating-an-issue) about it.
- If you can, provide a pull request (https://help.github.com/en/articles/creating-a-pull-request-from-a-fork) that fixes it or illustrates it with a test.
- CLA assistant will ask you to sign the CLA agreement for your PR
- The pull request will be tested by Travis or internal Bamboo CI system
- The team responsible for the component will get back to you with a review of your PR or try to address the issue you’ve raised
How to find the right repository?
Alfresco Content Services has a lot of components, so it might be quite hard to find the right one to submit your issue. The following list contains all of the relevant repositories and short description of each of them.
- ACS deployment (https://github.com/Alfresco/acs-deployment) and ACS Community deployment (https://github.com/Alfresco/acs-community-deployment)
This is a home of our docker-compose file and Helm charts. The issues raised here should be relevant to these components.
- ACS deployment in AWS (https://github.com/Alfresco/acs-deployment-aws)
This is a home of our Cloud Formation Templates to deploy ACS Helm chart in EKS cluster.
- ACS packaging (https://github.com/Alfresco/acs-packaging) and ACS Community packaging (https://github.com/Alfresco/acs-community-packaging)
If you would like to submit something about how we package alfresco war file, distribution zip or the Docker images, then this is the right place to do so.
These projects are also an umbrella for all the Alfresco libraries that are packaged inside the war file:
If you are unsure which one to select if you experience an issue in Alfresco application, you can use one of the packaging projects to raise the issue. If you know exactly where the issue occurs, please create an issue in the relevant project instead of packaging projects. Needless to say that it is a lot easier for us to review and approve the PR with exact changes than reacting to an issue description without any points to code. Although we will try our best to pay attention to all of them.
- Records Management (https://github.com/Alfresco/records-management) The community code for Records Management.
- REST API Explorer (https://github.com/Alfresco/rest-api-explorer) Web app based on Swagger UI that describes the Rest API definitions.
- Search Services (https://github.com/Alfresco/SearchServices)
This is the Alfresco integration with Apache Solr, providing search capabilities across the repository.
- Search Deployment (https://github.com/Alfresco/alfresco-search-deployment)
The helm chart for Search Services (and Insight Engine), which is consumed by acs-deployment.
Please keep in mind that this list may change over time.
If the feedback will be positive, we will gradually make the following changes:
- Integrate CLA assistant (https://cla-assistant.io/) into each GitHub repository, so that each Pull Request can only be merged if the CLA is signed.
- Update CONTRIBUTING.md if it is present in each of the projects
- Change the following pages in community.alfresco.com to highlight the changes:
- Migrate open ALF issues into GitHub
- Archive ALF project
- Create another blog that will indicate that the transition is complete.