Skip to content

LinearB's On-Premise Agent Installation Prerequisites Guide

This guide depicts all prerequisites for LinearB's On-Premise Agent installation

OS requirements

- Ubuntu 20.04 LTS

Software requirements


Required ports

Make sure the following ports are open on the host you install the agent:

Direction Port Purpose
in 80 Webhook receiver
out 443 Cloning repositories

Egress FQDNs

Kubernetes

  • on-prem-api.linearb.io
  • <Git provider API endpoint>
  • <Git provider HTTPS endpoint>
  • api.datadoghq.com (Datadog agent monitoring and logging)
  • linearb-data-lake.s3.amazonaws.com (Monitoring and logging)

GitStream

  • api.segment.io (Analytics purposes)
  • public-api.linearb.io (Metrics purposes)

Installation Workspace:

LinearB APIs

  • linearb.helpdocs.io
  • api.linearb.io

Helm charts:

https://linearb-on-prem-dist.jfrog.io


Helm Charts and Docker Images Sources

The LinearB On-Premise Agent uses a combination of internal LinearB components and third-party dependencies:

Docker Images

All LinearB Docker images are hosted on JFrog Artifactory:

  • Registry: linearb-on-prem-dist.jfrog.io/artifactory/on-prem-oci
  • Authentication: Requires JFrog credentials (provided by LinearB Principal Solution Architect)

LinearB component images include:

  • Core Services: agent-api, agent-cli, agent-poller, onprem-receiver, sensors
  • Scheduler Components: scheduler, scheduler-worker, scheduler-pm-worker, scheduler-sensors-worker
  • Job Processing: jobs-suite-dispatcher, jobs-suite-worker
  • GitStream Components (when enabled): gs-webhook-consumer, gs-action-consumer, gs-rules-resolver
  • Utility Services: forward-proxy, pods-cleaner

Helm Chart Dependencies

The main on-prem-agent chart (located in helm/on-prem-agent) includes both internal and external dependencies:

Internal Charts (Local)

  • libchart: Common templates and helpers
  • infra: Infrastructure components and configurations
  • All LinearB service charts (agent-api, sensors, scheduler, etc.)

Prerequisites for LinearB's On-Premise Agent Installation

Make sure you have the following from your LinearB Solution Architect:

  • LinearB API Token
  • LinearB Organization ID
  • LinearB Admin Account ID
  • JFrog Credentials
  • DataDog API key (optional)

Configure the agent's required variables.

Create in the parent directory of the public directory a file named local-values.yaml

 touch local-values.yaml

Copy the content of local-values.yaml.template to the designated local-values.yaml file.
Afterwards, fill out the required fields in the local-values.yaml file based on the values you received from the LinearB Solution Architect.

Run the command below to verify the configuration and that the software requirements are met.

./prerequisites.sh
💡The script above will verify only that the software requirements are met and that the local-values.yaml file exists in the correct path but does not validate its content (that will be verified during the deployment process later on)


Jira Fields Permissions

The following section is relevant only if a Jira integration is configured

When collecting issues as part of the Jira collection by default we query the fields specified below.
This is the mandatory fields list. It is imperative to make sure that the user whose credentials are used have access permissions for these fields:

  • aggregateprogress
  • aggregatetimeestimate
  • aggregatetimeoriginalestimate
  • aggregatetimespent
  • assignee
  • attachment
  • comment
  • components
  • created
  • creator
  • description
  • duedate
  • environment
  • fixVersions
  • issuelinks
  • issuerestriction
  • issuetype
  • labels
  • lastViewed
  • parent
  • priority
  • progress
  • project
  • reporter
  • resolution
  • resolutiondate
  • security
  • status
  • statuscategorychangedate
  • subtasks
  • summary
  • timeestimate
  • timeoriginalestimate
  • timespent
  • updated
  • versions
  • votes
  • watches
  • worklog
  • workratio

Selective fields list configuration

Issue fields can be configured in the local-values.yaml file via the JIRA_ISSUE_SELECTIVE_FIELDS field as a comma seperated string.
If the field is left empty then all fields will be queried.
You may find an example in the local-values.yaml.template file.