This seems to be the closest forum to my ask.
I'm beginning to look at whether Compass will be effective in our EBS development environment. I'm just not sure.
The Atlassian docs say "A repository is usually linked to one Compass component. However, you can link multiple components to a single repository."
All of our custom EBS code resides in a single repo, which tends to indicate a single "EBS" Component in Compass.
From what I can see, we could create a number of Components in Compass by hand and point them to the repo. But I am unclear if one could "subdivide" the repo from the Component perspective.
For example, create a Customer Sales Order Form component and have it related to just the specific Form and Libraries in the EBS repo.
Ideas?
Your use case resonates with how Compass satisfies some other code arrangement situations, including monorepos.
What we have been doing in such situations is typically:
1. Create a single component that represents that encompassing repository. This typically ends up being a component of type Capability or Application, since it's going to bundle multiple different sub-components together. This is the repository that will present specific aggregated stats.
2. Create a compass component for each one of the individual modules contained in there. These may be of type Service or Library, for example. You would do that as you suggest - registering them manually, and adding them as dependencies of the containing Capability / Application.
3. For each one of those underlying, smaller components, you could mark them as "component of a monorepo" so their individual events would not be conflated with those of the whole aggregate (this option is available in the component overview page, in the top-right meatballs-style menu).
4. While Compass will likely automatically ingest the events and metrics for your containing Capability / Application, if you want to push events and metrics that would only apply to those smaller contained components, what we've been doing in these situations is to wire their related pipelines to add a final step where using a curl command they would push the events, only related to those targeted sub-repository paths, to the target component. Compass' REST API is your most straightforward option to do so, as illustrated in https://developer.atlassian.com/cloud/compass/rest/v2/api-group-events/#api-compass-v1-events-post
Sorry, I didn't see your reply until now
Interesting. We aren't using pipelines for now, but I wonder if I could some up with something similar, say a very reduced usage of pipelines.
Something to think about. Thank you.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.