Bring-your-own code repository
Guidewire provisions Bitbucket as a version control system (VCS) to provide fast updates and develop code in a cloud environment. In Bitbucket, you have access to Guidewire-managed repositories with the code for your applications. With a set of standard Git commands, you can also work with other version control systems. Learn how to work with your external repository and the Guidewire-managed repository to synchronize your code between them.
Guidewire doesn't provide any infrastructure or support for managing your external code repositories and synchronizing them with the Guidewire VCS. You are fully responsible for setting up and maintaining the configuration for the bring-your-own code repository method, including the following in particular:
-
Resolving Git history conflicts and differences between the repositories.
-
Ensuring that code changes don't modify Guidewire Layer in your external repository.
-
Maintaining the integrity and consistency of your external repositories.
-
Maintaining standards and code structure that are required in the Guidewire VCS.
For details on troubleshooting some of the problems, see Troubleshooting.
Workflow
The communication between your internal setup, your external VCS, and the Guidewire VCS happens in the following way:
-
Authenticate with Git to both repositories: one managed by Guidewire in Bitbucket and your external repository in a different VCS.
-
Work on your code in one of the repositories.
-
Push the changes through your internal setup to the other repository.
Limitations
Before you use the bring-your-own code repository method to synchronize between your external repository and the Guidewire VCS, consider the following limitations:
-
Every existing Guidewire product mechanism supports only the Guidewire VCS, namely Bitbucket.
Any change that isn't propagated to the Guidewire VCS isn't also visible to the Guidewire tools and services.
-
Guidewire doesn't support building and Dockerizing directly from an external code repository.
Builds and Docker images can only be created from commits registered through the repository managed by Guidewire in Bitbucket.
-
Guidewire application code in your version control system must reside in a single repository and must be pushed to a repository in the Guidewire VCS that is related to the same application.
For example, Guidewire doesn't support using submodules that might include shared code between your applications.
-
All the standards and code structure that is required in the Guidewire VCS still apply.
Any changes to application structure aren't supported.
-
You can use the bring-your-own code repository method only as a Cloud Platform user.
Requirements
To use the bring-your-own code repository method, ensure the following:
-
The external version control system must support Git Large File Storage (LFS) and it must be enabled for your external repository which you will be synchronizing with the Guidewire VCS.
-
Git LFS must be at version 3.0 or higher.
Commands for older versions might not behave correctly.
-
Guidewire application codebase must reside in a single repository in your version control system.
Note:You can use the code of any Guidewire application in both the Guidewire-managed and your external repository as long as there is a corresponding code repository in the Guidewire VCS.