It's the holiday season, a season of giving. And here at MuseLab, one way we give is by contributing to the CumulusCI open source community. This involvement not only enriches our own development practices but also strengthens the broader CumulusCI ecosystem, fostering a culture of shared growth and innovation.
Our client projects often highlight potential enhancements to CumulusCI that would benefit everyone. In the dynamic landscape of technology, new needs and ideas constantly emerge. Sometimes these are changes we've contemplated for CumulusCI over the years but never had the opportunity to prioritize. Other times, they're fresh, innovative enhancements we never previously considered.
In the spirit of this collaborative and forward-thinking approach, we're pleased to announce a significant contribution to the CumulusCI community. As of today, we have registered CumulusCI's cumulusci.yml
JSON schema at schemastore.org. This integration signifies a major step forward in streamlining the development process for all CumulusCI users.
The registration of the cumulusci.yml
schema at schemastore.org brings a host of benefits to developers, particularly those who rely on Integrated Development Environments (IDEs) like Visual Studio Code (VSCode).
Here's how this integration enhances the development experience:
With this integration, developers using IDEs that support JSON schema validation, like VSCode, will experience automatic validation of their cumulusci.yml
files. This means fewer errors and a smoother development process.
The IDEs will now be able to provide smart suggestions based on the schema. This feature is particularly beneficial for new developers or those exploring new aspects of CumulusCI, as it guides them through the configuration process with recommended settings and options.
By ensuring that the cumulusci.yml
files adhere to the established schema, the overall quality of the code in the CumulusCI community is expected to improve. This translates to more reliable and robust builds and deployments.
At MuseLab, we believe that our contributions to open source projects like CumulusCI are not just about code; they're about community. By sharing our enhancements and tools, we're helping to build a stronger, more connected ecosystem of developers. We're proud to be part of this vibrant community, continuously learning from and contributing to it.
We've got more improvements to CumulusCI in the queue, including:
1. A basic plugin framework for CumulusCI
2. GitHub Actions Job Summary reporting for Apex tests
3. Dynamic, templated package version naming for 1GP
4. GitHubParentBranchCommitStatusResolver for dependency resolution of parent branches in downstream repositories
We'll be contributing all these changes to CumulusCI, but, you don't have to wait! If you're using D2X, you can reference the new "cumulusci-next" branch of d2x instead of "main" in your GitHub workflows to use a custom D2X image containing the enhancements as we finish them.