Bring-your-own code repository
Guidewire provisions Bitbucket as a version control system (VCS) to provide fast updates and the possibility to develop code in a cloud environment. Using a set of standard Git commands, you can also work with other version control systems. Learn how to work with external Git repository and Guidewire VCS and synchronize your code between them.
Guidewire doesn't provide any infrastructure or support for managing external code repositories and synchronizing them with 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 remote repositories.
-
Ensuring that code changes don't modify Guidewire Layer in your remote repository.
-
Maintaining the integrity and consistency of your remote repositories.
-
Maintaining standards and code structure that are required in Guidewire VCS.
For details on troubleshooting some of the problems, see Troubleshooting.
Workflow
The communication between your internal setup, your external VCS, and Guidewire VCS happens in the following way:
-
Authenticate with Git to both repositories: one managed by Guidewire in Bitbucket and your remote 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 Guidewire VCS, consider the following limitations:
-
Every existing Guidewire product mechanism supports only Guidewire VCS, namely Bitbucket.
Any change that isn't propagated to Guidewire VCS isn't also visible to 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 Bitbucket.
-
Guidewire application code in your version control system must reside in a single repository and must be pushed to a repository in Guidewire VCS that is connected 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 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 the remote repository which you will be synchronizing with 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 on two remote repositories as long as there is a corresponding code repository in Guidewire VCS.