Files
computer-playbook/roles/web-app-jira
Kevin Veen-Birkenbach 7d9cb5820f feat(jvm): add robust JVM sizing filters and apply across Confluence/Jira
Introduce filter_plugins/jvm_filters.py with jvm_max_mb/jvm_min_mb. Derive Xmx/Xms from docker mem_limit/mem_reservation using safe rules: Xmx=min(70% limit, limit-1024MB, 12288MB), floored at 1024MB; Xms=min(Xmx/2, reservation, Xmx), floored at 512MB. Parse human-readable sizes (k/m/g/t) with binary units.

Wire filters into roles: set JVM_MINIMUM_MEMORY/JVM_MAXIMUM_MEMORY via filters; stop relying on host RAM. Keep env templates simple and stable.

Add unit tests under tests/unit/filter_plugins/test_jvm_filters.py covering typical sizes, floors, caps, invalid inputs, and entity-name derivation.

Ref: https://chatgpt.com/share/68d3b9f6-8d18-800f-aa8d-8a743ddf164d
2025-09-24 11:29:40 +02:00
..
2025-09-11 14:48:54 +02:00

Jira

Description

Jira Software is Atlassians issue and project-tracking platform. This role deploys Jira via Docker Compose, connects it to PostgreSQL, and adds proxy awareness, optional OIDC SSO, health checks, and production-oriented defaults for Infinito.Nexus.

Overview

The role builds a lean custom image on top of the official Jira Software image, provisions persistent volumes, and exposes the app behind your reverse proxy. Variables control image/version/volumes/domains/SSO. JVM heap sizing is auto-derived from host RAM with safe caps to prevent Xms > Xmx.

Features

  • Fully Dockerized: Compose stack with a dedicated data volume (jira_data) and a minimal overlay image to enable future plugins/config.
  • Reverse-Proxy/HTTPS Ready: Preconfigured Atlassian Tomcat proxy envs so Jira respects external scheme/host/port.
  • OIDC SSO (Optional): Pre-templated vars for issuer, client, endpoints, scopes; compatible with Atlassian DC SSO/OIDC marketplace apps.
  • Central Database: PostgreSQL integration (local or central) with credentials sourced from role configuration.
  • JVM Auto-Tuning: Safe calculation of JVM_MINIMUM_MEMORY / JVM_MAXIMUM_MEMORY with caps to avoid VM init errors.
  • Health Checks: Container healthcheck for quicker failure detection and stable automation.
  • CSP & Canonical Domains: Integrates with platform CSP and domain management.
  • Backup Ready: Persistent data under {{ JIRA_STORAGE_PATH }}.

Further Resources