Skip to content

redhat-appstudio/jvm-build-service

Repository files navigation

HACBS JVM Build Service

Build Status Badge

This repository contains components used to deploy the HACBS JVM build service.

See each component’s directory for specific documentation. There is further documentation available within the docs directory.

Requirements

This is currently using OpenShift Pipelines 1.13

Installation

The following environment variables are configurable and may be set by the user prior to deploying this depending upon which features are to be enabled.

AWS_ACCESS_KEY_ID

AWS Access Key used for S3 and CodeArtfact Access

AWS_PROFILE

AWS Region used for CodeArtifact deployment

AWS_SECRET_ACCESS_KEY

AWS Secret Access Key used for S3 and CodeArtfact Access

GIT_DEPLOY_IDENTITY

Username/organisation name for the Git service

GIT_DEPLOY_TOKEN

Authentication token

GIT_DEPLOY_URL

The URL for the Git service (GitHub/GitLab are supported) to archive the sources

GIT_DISABLE_SSL_VERIFICATION

Whether to disable SSL verification for Git archival service communication

JBS_QUAY_IMAGE

JBS images are pulled by default from the QUAY_USERNAME organization. This may be overridden by changing this

JBS_BUILD_IMAGE_SECRET

Secret for accessing Quay.io (See below)

JBS_GIT_CREDENTIALS

Support for private repositories (See below)

JBS_MAX_MEMORY

Maximum additional memory allowed

JBS_RECIPE_DATABASE

Recipe database to use (defaults to https://github.com/redhat-appstudio/jvm-build-data)

JBS_S3_SYNC_ENABLED

Whether to enable Amazon S3 sync for storage

JBS_WORKER_NAMESPACE

Default 'worker' namespace (test-jvm-namespace) may be customised by setting this

MAVEN_PASSWORD

Password for the Maven repository

MAVEN_REPOSITORY

The URL for the external Maven repository to deploy to

MAVEN_USERNAME

Username for the Maven repository

QUAY_USERNAME

Quay.io registry to use

The $HOME/.docker/config.json must contain a suitable authentication token to Quay.io. In the Account section of Quay you should see an options to generate an encrypted CLI password. Select this option and create a ~/ .docker/config.json by following the prompts. It is recommended to configure this secret as:

export JBS_BUILD_IMAGE_SECRET=$(cat $HOME/.docker/config.json | base64 -w 0)

To support private repositories set:

export JBS_GIT_CREDENTIALS='https://$GITHUB_E2E_ORGANIZATION:$GITHUB_TOKEN@github.com'

Documentation