Product
|
Cloud costs
|
released
October 27, 2023
|
3
min read
|

Got Monorepos Instead of Microservices? This is How Harness IDP Has Got You Covered

Updated

Software development is ever-changing, and so are the tools and methodologies developers use. While microservices are the recent buzz and discussions on mono vs polyrepos are ongoing, monorepos have been a staple for a long time. These monolithic repositories, which house code for multiple projects in a single location, have their merits. They simplify dependency management, make code reviews efficient, and offer a unified versioning system.

However, the rise of Cloud Native tools and technologies has shifted the focus towards microservices, influencing tools like Backstage. Backstage, an open-source developer portal, has become a favorite for many organizations, especially those leaning towards microservices. But what about those still using or transitioning from monorepos?

Mono-repo Use Case in Harness IDP
Managing Monorepo in Harness Internal Developer Portal

Monorepos, while beneficial in many ways, come with their set of problems for backstage/Internal Developer Portal use case:

Plugins: Tools like Backstage have plugins, such as GitHub insights, that are designed with the assumption that a single repo corresponds to a single software component. In a monorepo setup, this can lead to inaccurate results, as multiple components might reside in the same repository.

Here's where the Harness Internal Developer Portal comes in. While it's true that our primary design has been microservice-first, and monorepos might seem like an afterthought, the IDP is equipped to handle both. The Harness Developer Portal is versatile enough to cater to both microservices and monorepos, ensuring no organization is left behind in their development journey.

How IDP takes special care of monorepos

This Harness Internal Developer Portal aims to enable organizations to handle monorepos as efficiently as microservices, especially given the challenges they present. Here's How:

  1. Location Flexibility with catalog-info.yaml: One of the standout features of the Harness Internal Developer Portal is its ability to recognize the catalog-info.yaml file, irrespective of its location in the repository.In a monorepo, the YAML definition can be placed anywhere, offering immense flexibility in structuring. Fun fact - we love monorepos here at Harness and our [harness-core](Link to Harness Core) is managed using a monorepo.
  2. Localized Documentation: With monorepos, documentation can reside within specific sub-directories, ensuring that related code and its documentation are closely knit. Backstage even offers a plugin to facilitate this, emphasizing the importance and ease of this setup.
  3. Simplified Service Onboarding: When onboarding new services, there's no need to create entirely new repositories. Instead, new directories can be created within the existing monorepo.
  4. Path-Aware Scorecard Checks: Scorecards in a monorepo are aware of specific paths. This means that as long as the backstage.io/source-location is configured correctly to include the sub-path where a particular project resides, everything functions seamlessly. Also the ability to verify Library version and whether a file exists or not, ensures that each project within the monorepo is treated as a distinct entity, with its checks and configurations.

Conclusion

In conclusion, monorepos offer a flexible and efficient approach to software development. With the ability to place YAML definitions anywhere, keep documentation organized, streamline service onboarding, and have precise path-aware checks, tools like Harness Internal Developer Portal make managing monorepos simpler and more effective. Whether you're a large enterprise or a growing startup, embracing these advantages can significantly enhance your development workflow.

Try out Harness Internal Developer Portal (IDP), we've got a wealth of resources to help you dive deeper. Please reach out to us for a demo. For a comprehensive understanding, our release blogs detail the latest features and updates. And if you're more of a visual learner, our video tutorials, and documentation offer step-by-step guides to get you started. Dive in and discover the transformative power of Harness IDP!

Sign up now

Sign up for our free plan, start building and deploying with Harness, take your software delivery to the next level.

Get a demo

Sign up for a free 14 day trial and take your software development to the next level

Documentation

Learn intelligent software delivery at your own pace. Step-by-step tutorials, videos, and reference docs to help you deliver customer happiness.

Case studies

Learn intelligent software delivery at your own pace. Step-by-step tutorials, videos, and reference docs to help you deliver customer happiness.

We want to hear from you

Enjoyed reading this blog post or have questions or feedback?
Share your thoughts by creating a new topic in the Harness community forum.

Sign up for our monthly newsletter

Subscribe to our newsletter to receive the latest Harness content in your inbox every month.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Internal Developer Portal