Introduction
A source repository is a place where your modern application’s code resides.
It is common practice in today’s application development to use a source repository for its many benefits such as version control, code protection and preparation for its release in production.
Nowadays, the most common repository type is git and this article will introduce Google’s version of the Google Cloud Platform (GCP) to native source repository called Cloud Source Repositories (CSR) which is boosted with powerful features and a bunch of “out of the box” integrations which make the lives of developers and DevOps teams using GCP much easier!
Main Features:
- Enterprise grade Git hosts for private repositories;
- Support existing GitHub or Bitbucket repositories;
- Scales up to massive code bases;
- Extremely high availability;
- Security intelligence features;
- Code Search multiple repositories (using regex);
- Pre integrated with CloudBuild and Spinnaker (CI/CD);
- Security keys detection;
- Code debugging with Cloud Debugger without performance impact;
- Supports multiple editors;
- Automatic Logging to Google Cloud’s operations;
Three features to focus on:
Native Google Cloud Platform service integrations
If you are already using GCP for your applications and infrastructure, it comes naturally to use its value-added services for your managed serverless workloads which can automatically scale to zero thus providing you with notable cost savings.
One of the great things about CSR is that it is natively integrated to CloudBuild and AppEngine, which simplifies serverless CI/CD pipelines.
For more complex non-serverless CI/CD tasks, one could use the power of Spinnaker and Pub/Sub and automate server based deployment tasks which previously required entire DevOps teams.
GCR’s native integration with Google Cloud’s operations seamlessly logs all the committed processes and gives you the ability to debug complex issues much quicker without having to sacrifice any performance(Cloud Debugger).
You can also harness its “out of the box” Pub/Sub integration to automate alerting and notifications and keep a watchful eye on all repository related operations.
Proven reliability:
Google is well known for its vast network infrastructure and one can argue that it is probably the most robust one of all the public cloud providers. A few interesting facts about Google’s networking:
- Serves 25% of all global internet traffic
- The company owns 14 submarine cables (with another 4 planned for the near future)
- Serves 92.05% of global search engine market [1]
Since the CSR is managed by Google on top of their infrastructure this makes the repositories virtually indestructible due to the multiple geo-location replications thus making it resilient and lightning fast!
Unlimited private git repositories and CodeSearch
Back in the days, applications were written as monolithic services, therefore developers used Mono-Repo pattern architectures, whereas nowadays modern applications are written as microservices, divided to many different sub-modules, treating each submodule as a different independent application.
As a result, applications may have thousands of submodules, which naturally led to the Multi-Repo pattern architecture.
Conveniently, GCP offers the option to create an unlimited number of repositories free of charge. Even though this sounds great, increasing the number of repositories also increases the environment complexity which in turn could affect operational efficiency.
Google to the rescue! Introducing Google’s GCR Search.
Since Google is currently the leading search engine provider (see footnote [1]), they developed a simple and powerful search mechanism allowing developers to harness the power of google search using regex and simplify the whole Multi repo implications.
Based on the above, one can make a logical deduction if Google managed to simplify the search on the world wide web, they definitely could do it for Multi-Repo environments.
Summary
There are many source repositories out there, most of them are doing their job quite well, but if you are using the GCP ecosystem, CSR can provide many benefits using their native integrations which can simplify CI\CD operations, navigate fluently within very complex environments, harness the vast infrastructure of Google’s infrastructure and a lot more!
If you would like to learn more about CSR features, please visit the official documentation link provided below or reach out to our friendly Professional Cloud Architects team at Wideops!