Skip to main content

Binary repository

Binary repository is a centralized storage space where Guidewire applications publish their dependencies. It simplifies the development process by removing the need to duplicate artifacts across multiple Bitbucket repositories. By creating a single source of dependencies, Binary repository ensures efficient storage, versioning, and management of npm packages.

Jutro-application-embedded dependencies are published as npm files to edge nodes. Both CI builds and developers can retrieve them.

Access control

Note:

Access to this application is managed by Guidewire Hub. For details, see Access Cloud Platform apps and services.


All read operations performed by developers and their TeamCity builds are logged in Datadog.

Core components

Binary repository consists of the two following components:

  • Guidewire internal binary repository

    Internal repository, used by the Guidewire product development team to store dependencies of applications.

    Publishes artifacts to edge nodes by creating and distributing release bundles.

  • GWCP edge nodes

    Stores dependencies and artifacts, published from the Guidewire internal binary repository. Dependencies and artifacts can be downloaded by both users and their CI infrastructure.

Supported dependency types

The binary repository supports, among others, the following types of dependencies:

  • Maven
  • NPM packages
  • ZIP files

Access Binary repository through a browser

To access Binary repository:

  1. Go to a browser and enter the https://{okta-region}.binrepo.guidewire.net/ui/login/ URL.

    Use AMER, APAC, or EMEA as an okta-region.

  2. Log in with your Guidewire Hub credentials.

    You will be redirected to the Binary repository homepage.

    You can only view artifacts and dependencies to which you have access.

Access Binary repository through the CLI

You can access Binary repository through the CLI using an access token generated from the Binary repository UI.

Generate an access token

You can use the generated access token and your username for all calls to the Binary repository. After a token is generated, it can take up to 4 hours to grant you access to Binary repository through the CLI.

To generate an access token:

  1. Log in to Binary repository UI.

  2. Go to your profile and select Edit Profile.

  3. Select Generate an Identity token.

    Provide a description.

  4. Copy the generated token and save it.

    To increase security, generated secrets aren't stored in JFrog Platform. Copy and save the access token as you won't be able to access it again.

    Important:

    The generated access token is valid for 30 days. You must generate a new token before it expires and update it in the following files:

    • .npmrc
    • environment variables: .zshrc, .bashrc, Windows environment variables
    • gradle.properties
    Warning:

    If you use an expired token more than 10 times, your account will be locked. To unlock it, submit a case in Guidewire Community.

Test connection

To test a connection between your workstation and edge nodes:

  1. Authenticate with the repository through the following HTTPS request:

    curl -u username@domain-name.com:IdentityToken https://amer.binrepo.guidewire.net/artifactory/api/npm/jutro-npm-dev-local/auth/@jutro

    Where:

    • -u username@domain-name.com:IdentityToken refers to your username and the generated access token.
    • https://amer.binrepo.guidewire.net/artifactory/api/npm/jutro-npm-dev-local/auth/@jutro refers to an endpoint to which the request is being made.
  2. Save the response body to an npm configuration (npmrc) file.

    If the response body contains a username, change the _authToken parameter to _password.

    Make sure that strict-ssl is set to false.

  3. Switch to a new directory and run the npm init command.

  4. Install @jutro/cli with the following command:

    npm install @jutro/cli
  5. Check if the npm packages are installed, and if the node_modules folder and the package-lock.json file are created.