How to Effectively Build and Deploy Customizations on an Open Source Project?

0
19
Asked By TechSavvyNinja85 On

I'm looking to build on top of an open source Business Intelligence system for internal use. In addition to my own modifications, I want to regularly pull updates from the vendor's main branch into my version. What's the best way to manage this process using GitLab? I'd appreciate insights on procedures, common pitfalls to watch out for, and the best ways to share any improvements or fixes I make back to the vendor to contribute to their development efforts.

3 Answers

Answered By CIO_SurvivalGuide On

From a management perspective, if you're forking an open source project, there are several essential things to establish:

1. Documentation for every version increment.
2. Clear support strategies and procedures.
3. A solid project roadmap.
4. Adequate support and development teams.

Without these, you risk creating technical debt that can become unmanageable if your project isn’t maintained properly. Make sure that you're prepared for these demands or else the project may become unsustainable.

Answered By CodeCrusader42 On

Using Git forks is a solid method for this! You can easily pull from the vendor's branch to keep your code updated. Just keep in mind that if you add features that the vendor later incorporates in their own way, it can lead to significant headaches when it comes to merging your code. If you want your changes to be accepted back into the main project, make sure they can merge cleanly with the latest vendor release. Also, engaging with the maintainers by opening issues about your developments can help you get insights on whether they’re interested in your contributions.

Answered By DevOpsWhiz On

The two main issues when building on open-source projects are upstream churn and implicit assumptions. Frequent API changes from the vendor can turn your integrations into costly technical debt over time. To avoid this:

- Keep your modifications minimal and leverage plugins instead.
- Stay updated with the vendor's roadmap so you can align your project’s future developments with theirs.
- Contribute back changes you make where you can to ensure your work influences the vendor's direction instead of drifting away from it.

Related Questions

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.