From dff449492edf7514f8fdcb8de4496b6744c3c5ca Mon Sep 17 00:00:00 2001 From: james Hart Date: Tue, 25 Feb 2025 12:27:20 +0000 Subject: [PATCH] Feat/heat 511 refactor script (#69) * new version * fix the prod to local script * first attempt at adding environments * Pretty much works but need to look at github API backoff because that's failing now * a couple of fixes - may improve performance * refactoring the environments to use helm config as the deciding factor * correct the summary * add more to the summary * bit more info * finally no major errors (I think) * bit of light document updating * add some docco * mystery solved - alertSeverity was missing -prod * add force option (maybe run it once a week?) * tidying up the scripts a bit * ignore .venv directory * tweaks to various environment bits * remove environment if there aren't any for a component * timezone oddities * retain existing alertmanager config if it's not available * tidy up unnecessary bits * crontab bits * tidy up some bits and update the README.md * add functionality to preserve non-discovered fields (build_image_tag) * retain build_image_tag * fix circleci exception * add the dockerfile components --- .../actions/cloud-platform-deploy/action.yml | 12 + .github/workflows/deploy.yml | 5 +- .gitignore | 3 +- Dockerfile | 9 + README.md | 78 +- check_github.py | 10 + classes/alertmanager.py | 61 + classes/circleci.py | 86 + classes/github.py | 119 + classes/health.py | 23 + classes/service_catalogue.py | 218 ++ classes/slack.py | 73 + compare-dev-prod.log | 2419 +++++++++++++++++ github_component_discovery.py | 120 + github_discovery.py | 1289 ++------- github_teams_discovery.py | 347 +-- helm_deploy/hmpps-github-discovery/Chart.yaml | 3 - .../templates/_discovery_cron_job_envs.tpl | 10 +- .../templates/github-discovery-cron-job.yaml | 37 + .../github-discovery-full-cron-job.yaml | 37 + ...job.yaml => teams-discovery-cron-job.yaml} | 6 +- .../hmpps-github-discovery/values.yaml | 66 +- helm_deploy/values-dev.yaml | 18 +- helm_deploy/values-prod.yaml | 12 +- includes/environments.py | 194 ++ includes/helm.py | 350 +++ includes/teams.py | 66 + includes/utils.py | 164 ++ processes/components.py | 466 ++++ processes/github_teams.py | 85 + processes/products.py | 98 + requirements.txt | 2 +- utilities/compare-dev-prod.py | 111 + utilities/populate_tag.py | 86 + utilities/prod-to-local.py | 139 + 35 files changed, 5318 insertions(+), 1504 deletions(-) create mode 100644 check_github.py create mode 100644 classes/alertmanager.py create mode 100644 classes/circleci.py create mode 100644 classes/github.py create mode 100644 classes/health.py create mode 100644 classes/service_catalogue.py create mode 100644 classes/slack.py create mode 100644 compare-dev-prod.log create mode 100644 github_component_discovery.py create mode 100644 helm_deploy/hmpps-github-discovery/templates/github-discovery-cron-job.yaml create mode 100644 helm_deploy/hmpps-github-discovery/templates/github-discovery-full-cron-job.yaml rename helm_deploy/hmpps-github-discovery/templates/{discovery-cron-job.yaml => teams-discovery-cron-job.yaml} (90%) create mode 100644 includes/environments.py create mode 100644 includes/helm.py create mode 100644 includes/teams.py create mode 100644 includes/utils.py create mode 100644 processes/components.py create mode 100644 processes/github_teams.py create mode 100644 processes/products.py create mode 100644 utilities/compare-dev-prod.py create mode 100644 utilities/populate_tag.py create mode 100644 utilities/prod-to-local.py diff --git a/.github/actions/cloud-platform-deploy/action.yml b/.github/actions/cloud-platform-deploy/action.yml index 95a588a..511d3d1 100644 --- a/.github/actions/cloud-platform-deploy/action.yml +++ b/.github/actions/cloud-platform-deploy/action.yml @@ -23,6 +23,15 @@ inputs: token: description: The KUBE_TOKEN required: true + sc_filter: + description: Optional service catalogue filter + required: false + slack_notify_channel: + description: Optional Slack notification channel + required: false + slack_alert_channel: + description: Optional Slack alert channel + required: false runs: using: composite @@ -61,4 +70,7 @@ runs: --set 'version=${{ inputs.version }}' \ --timeout 10m \ --values 'helm_deploy/${{ steps.env.outputs.values-file }}' \ + --set generic-service.env.SC_FILTER="${{ inputs.sc_filter }}" \ + --set generic-service.env.SLACK_NOTIFY_CHANNEL="${{ inputs.slack_notify_channel }}" \ + --set generic-service.env.SLACK_ALERT_CHANNEL="${{ inputs.slack_alert_channel }}" \ --wait diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 5f1acb5..6347829 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -50,4 +50,7 @@ jobs: cert: ${{ secrets.KUBE_CERT }} cluster: ${{ secrets.KUBE_CLUSTER }} namespace: ${{ secrets.KUBE_NAMESPACE }} - token: ${{ secrets.KUBE_TOKEN }} + token: ${{ secrets.KUBE_TOKEN }} + sc_filter: ${{ vars.SC_FILTER }} + slack_notify_channel: ${{ vars.SLACK_NOTIFY_CHANNEL }} + slack_alert_channel: ${{ vars.SLACK_ALERT_CHANNEL }} diff --git a/.gitignore b/.gitignore index d26e3f0..b45f9ca 100644 --- a/.gitignore +++ b/.gitignore @@ -1,9 +1,10 @@ # dotenv environment variables file .env* - +.venv/ .python-version .idea .vscode **/Chart.lock __pycache__/ **/.DS_Store +github_discovery.log diff --git a/Dockerfile b/Dockerfile index 8a7359d..9ca743a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -17,8 +17,17 @@ RUN addgroup --gid 2000 --system appgroup && \ # copy the dependencies from builder stage COPY --chown=appuser:appgroup --from=builder /home/appuser/.local /home/appuser/.local +COPY includes includes +COPY classes classes +COPY processes processes +COPY utilities utilities + COPY ./github_discovery.py . COPY ./github_teams_discovery.py . +COPY ./github_component_discovery.py . +COPY ./requirements.txt . + + # update PATH environment variable ENV PATH=/home/appuser/.local:$PATH diff --git a/README.md b/README.md index 09cde8e..1bedd7a 100644 --- a/README.md +++ b/README.md @@ -1,21 +1,26 @@ # HMPPS Github Discovery -This Python app queries the github api for information about hmpps projects and pushes that information into the **Components** collection of the HMPPS service catalogue. +## Github Discovery + +The `github_discovery.py` Python app queries the github api for information about hmpps projects and pushes that information into the **Components** collection of the HMPPS service catalogue. It also updates elements of the **Products** collection in the HMPPS service catalogue. +A single component can be processed using `github_component_discovery.py` using the Service Catalogue component name as a parameter. + +The `-f` or `--force-update` option will bypass checking to see if the environment has updated or the main branch will change, and will update all components. -The app does the following: +The script and its suite of associated functions does the following: ### Components -- Retrieves a list of all components (microservices) from the service catalogue. -- For each component, which has a github repository, it fetches key information (see below) via github api. +- Retrieves a list of all components (microservices) from the service catalogue +- For each component, which has a github repository, it fetches key information (see below) via Github API +- If the environment configuration or main branch SHA has changed since the last scan it retrieves data from Helm and other files within the repository - It then updates each component in the service catalogue with the latest data from github. ### Products -- Retrieves a list of all products from the service catalogue. -- For each product which has a valid (and non-private) Slack channel ID, it fetches the Slack channel name and updates that field in the service catalogue. - +- Retrieves a list of all products from the service catalogue +- For each product which has a valid (and non-private) Slack channel ID, it fetches the Slack channel name and updates that field in the service catalogue ## Key information retrieved @@ -42,6 +47,11 @@ The following secrets are required: - **`SERVICE_CATALOGUE_API_ENDPOINT`** / **`SERVICE_CATALOGUE_API_KEY`** - Service Catalogue API token - **`SC_FILTER`** (eg. `&filters[name][$contains]=-`) - Service Catalogue filter - **required for dev** +Optional environment variables +- SLACK_NOTIFY_CHANNEL: Slack channel for notifications +- SLACK_ALERT_CHANNEL: Slack channel for alerts +- LOG_LEVEL: Log level (default: INFO) + ### Port forward to redis hosted in Cloud-platform This is useful to do so you can test changes with real alertmanager data containing slack channel information. @@ -72,4 +82,56 @@ Ensure following redis environment variables are set: ```bash export ALERTMANAGER_ENDPOINT='http://localhost:6574/alertmanager/status' -``` \ No newline at end of file +``` + +## Classes, processes and functions + +### Classes + +- **AlertManager** (`classes/alertmanager.py`) contains a simple self-contained script that collects and parses data from the Alertmanager Status endpoint +- **CircleCI** (`classes/circleci.py`) contains functions that collect data either from the CircleCI configuration or from endpoints referred to by it +- **GithubSession** (`classes/github.py`) contains custom functions for the discovery script to read and process data from the Github organisation's repositories. It's built on PyGithub +- **HealthServer** (`classes/health.py`) is not used any more - it starts a simple HTTP server that responds to health pings. It's redundant now discovery is running as a crontab +- **ServiceCatalogue** (`classes/service_catalogue.py`) contains functions to read from and write to the Service Catalogue. +- **Slack** (`classes/slack.py`) contains functions to send Slack messages + +### Processes + +- **Components** (`processes\components.py`) deals with the main multithreaded processing of components. It's split into four main sections: + - the dispatcher (`batch_process_sc_components`) which creates the threads, + - the processor (`process_sc_component`) which initiates processing of each component + - independent elements (`process_independent_component`) which is carried out for each component + - changed elements (`process_changed_component`) which - if environments have changed or the main branch has been updated since tht last run - reads configurations that may have changed within the repository + + Components also initiates the **Environments** (`includes/environments`) and **Helm Config** (`includes/helm.py`) functions, where details of those configurations are read and returned to the main functions + +- **Products** (`processes/products.py`) deals with the multithread processing of product entries. Once again it's split into sections: + - the dispatcher (`batch_process_sc_products`) which creates the threads + - the processor (`process_sc_product`) which updates the data + + +### Includes + +- **Utils** contains re-usable functions that are used across various processes +- **Helm** (`includes/helm.py`) reads and processes the helm configuration +- **Environments** (`includes/environments.py`) reads and processes other environment data, from either Bootstrap `projects.json` or Github Actions Environments. + + +## Github Teams Discovery + +Github teams discovery (`github_team_discovery.py`) populates the **Github Teams** table of the Service Catalogue with team member data based on all the github teams associated with repositories. It checks against the [hmpps-github-teams](https://github.com/ministryofjustice/hmpps-github-teams/tree/main/terraform) terraform configuration and compiles a list of teams. + +### Processes + +- **Github Teams** (`processes\github_teams.py`) is the script that carries out the actual processing of the teams. + +### Includes + +- **Teams** (`includes/teams.py`) are functions to processes the teams either from Github or from Terraform data. + + +## Crontab + +The Github Discovery and Github Teams Discovery scripts run on a Kubernetes cluster based on crontab settings within the [helm config](helm_deploy/values-prod.yaml). + +Since the Service Catalogue database is copied from prod to dev every night at 11pm, there is no need to run Github Discovery in the dev environment. \ No newline at end of file diff --git a/check_github.py b/check_github.py new file mode 100644 index 0000000..3e20a7b --- /dev/null +++ b/check_github.py @@ -0,0 +1,10 @@ +import os +from classes.github import GithubSession + +gh_params = { + 'app_id': int(os.getenv('GITHUB_APP_ID')), + 'app_installation_id': int(os.getenv('GITHUB_APP_INSTALLATION_ID')), + 'app_private_key': os.getenv('GITHUB_APP_PRIVATE_KEY'), +} +gh = GithubSession(gh_params) +print(gh.get_rate_limit()) diff --git a/classes/alertmanager.py b/classes/alertmanager.py new file mode 100644 index 0000000..97c71bd --- /dev/null +++ b/classes/alertmanager.py @@ -0,0 +1,61 @@ +import requests +import yaml +import json +import logging + + +class AlertmanagerData: + def __init__(self, am_params, log_level=logging.INFO): + # Needs custom logging because of a bit of a mess later on + logging.basicConfig( + format='[%(asctime)s] %(levelname)s %(threadName)s %(message)s', level=log_level + ) + self.log = logging.getLogger(__name__) + self.url = am_params['url'] + self.get_alertmanager_data() + + def get_alertmanager_data(self): + self.json_config_data = None + try: + response = requests.get(self.url, verify=False, timeout=5) + if response.status_code == 200: + alertmanager_data = response.json() + config_data = alertmanager_data['config'] + formatted_config_data = config_data['original'].replace('\\n', '\n') + yaml_config_data = yaml.safe_load(formatted_config_data) + self.json_config_data = json.loads(json.dumps(yaml_config_data)) + self.log.info('Successfully fetched Alertmanager data') + else: + self.log.error(f'Error: {response.status_code}') + + except requests.exceptions.SSLError as e: + self.log.error(f'SSL Error: {e}') + + except requests.exceptions.RequestException as e: + self.log.error(f'Request Error: {e}') + + except json.JSONDecodeError as e: + self.log.error(f'JSON Decode Error: {e}') + + except Exception as e: + self.log.error(f'Error getting data from Alertmanager: {e}') + + def find_channel_by_severity_label(self, alert_severity_label): + # Find the receiver name for the given severity + receiver_name = '' + if self.json_config_data is None: + return '' + + for route in self.json_config_data['route']['routes']: + if route['match'].get('severity') == alert_severity_label: + receiver_name = route['receiver'] + break + # Find the channel for the receiver name + if receiver_name: + for receiver in self.json_config_data['receivers']: + if receiver['name'] == receiver_name: + slack_configs = receiver.get('slack_configs', []) + if slack_configs: + return slack_configs[0].get('channel') + else: + return '' diff --git a/classes/circleci.py b/classes/circleci.py new file mode 100644 index 0000000..b9dec0a --- /dev/null +++ b/classes/circleci.py @@ -0,0 +1,86 @@ +import requests +import logging +from includes.utils import update_dict + + +class CircleCI: + def __init__(self, params, log_level=logging.INFO): + # Needs custom logging because of a bit of a mess later on + logging.basicConfig( + format='[%(asctime)s] %(levelname)s %(threadName)s %(message)s', level=log_level + ) + self.log_level = log_level + self.log = logging.getLogger(__name__) + self.url = params['url'] + self.headers = { + 'Circle-Token': params['token'], + 'Content-Type': 'application/json', + 'Accept': 'application/json', + } + + def test_connection(self): + try: + response = requests.get( + f'{self.url}/hmpps-project-bootstrap', headers=self.headers, timeout=10 + ) + response.raise_for_status() + self.log.info(f'CircleCI API: {response.status_code}') + return True + except Exception as e: + self.log.critical(f'Unable to connect to the CircleCI API: {e}') + return None + + def get_trivy_scan_json_data(self, project_name): + self.log.debug(f'Getting trivy scan data for {project_name}') + + project_url = f'{self.url}{project_name}' + output_json_content = {} + try: + response = requests.get(project_url, headers=self.headers, timeout=30) + artifacts_url = None + for build_info in response.json(): + workflows = build_info.get('workflows', {}) + workflow_name = workflows.get('workflow_name', {}) + job_name = build_info.get('workflows', {}).get('job_name') + if workflow_name == 'security' and job_name == 'hmpps/trivy_latest_scan': + latest_build_num = build_info['build_num'] + artifacts_url = f'{project_url}/{latest_build_num}/artifacts' + break + + if artifacts_url: + self.log.debug('Getting artifact URLs from CircleCI') + response = requests.get(artifacts_url, headers=self.headers, timeout=30) + + artifact_urls = response.json() + if output_json_url := next( + ( + artifact['url'] + for artifact in artifact_urls + if 'results.json' in artifact['url'] + ), + None, + ): + self.log.debug('Fetching artifacts from CircleCI data') + # do not use DEBUG logging for this request + logging.getLogger('urllib3').setLevel(logging.INFO) + response = requests.get(output_json_url, headers=self.headers, timeout=30) + logging.getLogger('urllib3').setLevel(self.log_level) + output_json_content = response.json() + + except Exception as e: + self.log.debug(f'Error: {e}') + + return output_json_content + + def get_circleci_orb_version(self, circleci_config): + versions_data = {} + try: + cirleci_orbs = circleci_config['orbs'] + for key, value in cirleci_orbs.items(): + if 'ministryofjustice/hmpps' in value: + hmpps_orb_version = value.split('@')[1] + update_dict(versions_data, 'circleci', {'hmpps_orb': hmpps_orb_version}) + self.log.debug(f'hmpps orb version: {hmpps_orb_version}') + except Exception: + self.log.debug('No hmpps orb version found') + return versions_data diff --git a/classes/github.py b/classes/github.py new file mode 100644 index 0000000..a46210d --- /dev/null +++ b/classes/github.py @@ -0,0 +1,119 @@ +import requests +from base64 import b64decode +import json +import yaml +from github import Auth, Github +from github.GithubException import UnknownObjectException +import logging +from datetime import datetime, timedelta, timezone +import jwt + + +class GithubSession: + def __init__(self, params, log_level=logging.INFO): + logging.basicConfig( + format='[%(asctime)s] %(levelname)s %(threadName)s %(message)s', level=log_level + ) + self.log = logging.getLogger(__name__) + self.private_key = b64decode(params['app_private_key']).decode('ascii') + self.app_id = params['app_id'] + self.app_installation_id = params['app_installation_id'] + + self.auth() + if self.session: + try: + rate_limit = self.session.get_rate_limit() + self.core_rate_limit = rate_limit.core + self.log.info(f'Github API: {rate_limit}') + # test fetching organisation name + self.org = self.session.get_organization('ministryofjustice') + except Exception as e: + self.log.critical('Unable to get Github Organisation.') + + def auth(self): + try: + auth = Auth.Token(self.get_access_token()) + self.session = Github(auth=auth, pool_size=50) + except Exception as e: + self.log.critical('Unable to connect to the github API.') + + def get_access_token(self): + now = datetime.utcnow().replace(tzinfo=timezone.utc) + payload = {'iat': now, 'exp': now + timedelta(minutes=10), 'iss': self.app_id} + jwt_token = jwt.encode(payload, self.private_key, algorithm='RS256') + headers = { + 'Authorization': f'Bearer {jwt_token}', + 'Accept': 'application/vnd.github.v3+json', + } + response = requests.post( + f'https://api.github.com/app/installations/{self.app_installation_id}/access_tokens', + headers=headers, + ) + response.raise_for_status() + return response.json()['token'] + + def test_connection(self): + # Test auth and connection to github + try: + rate_limit = self.session.get_rate_limit() + self.core_rate_limit = rate_limit.core + self.log.info(f'Github API: {rate_limit}') + # test fetching organisation name + self.org = self.session.get_organization('ministryofjustice') + return True + except Exception as e: + self.log.critical('Unable to connect to the github API.') + raise SystemExit(e) from e + return None + + def get_rate_limit(self): + try: + if self.session: + return self.session.get_rate_limit().core + except Exception as e: + self.log.error(f'Error getting rate limit: {e}') + return None + + def get_org_repo(self, repo_name): + repo = None + try: + repo = self.org.get_repo(repo_name) + except Exception as e: + self.log.error(f'Error trying to get the repo {repo_name} from Github: {e}') + return None + return repo + + def get_file_yaml(self, repo, path): + try: + file_contents = repo.get_contents(path) + contents = b64decode(file_contents.content).decode().replace('\t', ' ') + yaml_contents = yaml.safe_load(contents) + return yaml_contents + except UnknownObjectException: + self.log.debug(f'404 File not found {repo.name}:{path}') + except Exception as e: + self.log.error(f'Error getting yaml file ({path}): {e}') + + def get_file_json(self, repo, path): + try: + file_contents = repo.get_contents(path) + json_contents = json.loads(b64decode(file_contents.content)) + return json_contents + except UnknownObjectException: + self.log.debug(f'404 File not found {repo.name}:{path}') + return None + except Exception as e: + self.log.error(f'Error getting json file ({path}): {e}') + return None + + def get_file_plain(self, repo, path): + try: + file_contents = repo.get_contents(path) + plain_contents = b64decode(file_contents.content).decode() + return plain_contents + except UnknownObjectException: + self.log.debug(f'404 File not found {repo.name}:{path}') + return None + except Exception as e: + self.log.error(f'Error getting contents from file ({path}): {e}') + return None diff --git a/classes/health.py b/classes/health.py new file mode 100644 index 0000000..964f30d --- /dev/null +++ b/classes/health.py @@ -0,0 +1,23 @@ +import http.server +import socketserver + + +class HealthHttpRequestHandler(http.server.SimpleHTTPRequestHandler): + def do_GET(self): + self.send_response(200) + self.send_header('Content-type', 'text/plain') + self.end_headers() + self.wfile.write(bytes('UP', 'utf8')) + return + + +class HealthServer: + def __init__(self, host='', port=8080): + self.host = host + self.port = port + + def start(self): + handler_object = HealthHttpRequestHandler + with socketserver.TCPServer((self.host, self.port), handler_object) as httpd: + print(f'Serving on {self.host}:{self.port}') + httpd.serve_forever() diff --git a/classes/service_catalogue.py b/classes/service_catalogue.py new file mode 100644 index 0000000..8565b03 --- /dev/null +++ b/classes/service_catalogue.py @@ -0,0 +1,218 @@ +import requests +import logging + + +class ServiceCatalogue: + def __init__(self, params, log_level=logging.INFO): + logging.basicConfig( + format='[%(asctime)s] %(levelname)s %(threadName)s %(message)s', level=log_level + ) + # default variables + page_size = 10 + pagination_page_size = f'&pagination[pageSize]={page_size}' + # Example Sort filter + # sort_filter='&sort=updatedAt:asc' + sort_filter = '' + + self.log = logging.getLogger(__name__) + self.url = params['url'] + self.key = params['key'] + + # limit results for testing/dev + # See strapi filter syntax https://docs.strapi.io/dev-docs/api/rest/filters-locale-publication + # Example filter string = '&filters[name][$contains]=example' + self.filter = params.get('filter', '') + + self.product_filter = '&fields[0]=slack_channel_id&fields[1]=slack_channel_name&fields[2]=p_id&fields[3]=name' + + self.api_headers = { + 'Authorization': f'Bearer {self.key}', + 'Content-Type': 'application/json', + 'Accept': 'application/json', + } + self.components = 'components' + self.components_get = f'{self.components}?populate[0]=latest_commit&populate[1]=environments&populate[2]=product&populate[3]=envs{self.filter}{pagination_page_size}{sort_filter}' + + self.products = 'products' + self.products_get = f'{self.products}?populate[0]=parent&populate[1]=children&populate[2]=product_set&populate[3]=service_area&populate[4]=team{self.product_filter}{pagination_page_size}{sort_filter}' + + self.github_teams = 'github-teams' + self.environments = 'environments' + self.connection_ok = self.test_connection() + + """ + Test connection to the Service Catalogue + """ + + def test_connection(self): + # Test connection to Service Catalogue + try: + self.log.info(f'Testing connection to the Service Catalogue - {self.url}') + r = requests.head(f'{self.url}', headers=self.api_headers, timeout=10) + self.log.info( + f'Successfully connected to the Service Catalogue - {self.url}. {r.status_code}' + ) + return True + except Exception as e: + self.log.critical(f'Unable to connect to the Service Catalogue - {e}') + return False + + """ + Get all multipage results from Service Catalogue + """ + + def get_all_records(self, table): + json_data = [] + self.log.info( + f'Getting all records from table {table} in Service Catalogue using URL: {self.url}/v1/{table}' + ) + try: + r = requests.get(f'{self.url}/v1/{table}', headers=self.api_headers, timeout=10) + if r.status_code == 200: + j_meta = r.json()['meta']['pagination'] + self.log.debug(f'Got result page: {j_meta["page"]} from Service Catalogue') + json_data.extend(r.json()['data']) + else: + raise Exception( + f'Received non-200 response from Service Catalogue: {r.status_code}' + ) + + # Loop over the remaining pages and return one at a time + num_pages = j_meta['pageCount'] + for p in range(2, num_pages + 1): + if '?' in table: # add an extra parameter if there are already parameters + page = f'&pagination[page]={p}' + else: # otherwise use ? to denote the first parameter + page = f'?pagination[page]={p}' + r = requests.get( + f'{self.url}/v1/{table}{page}', headers=self.api_headers, timeout=10 + ) + if r.status_code == 200: + j_meta = r.json()['meta']['pagination'] + self.log.debug(f'Got result page: {j_meta["page"]} from SC') + json_data.extend(r.json()['data']) + else: + raise Exception( + f'Received non-200 response from Service Catalogue when reading all records from {table}: {r.status_code}' + ) + + except Exception as e: + self.log.error( + f'Problem with Service Catalogue API while reading all records from {table}. {e}' + ) + return json_data + + """ + Get a single record by filter parameter from the Service Catalogue + """ + + def get_record(self, table, label, parameter): + json_data = {} + try: + if '?' in table: # add an extra parameter if there are already parameters + filter = f'&filters[{label}][$eq]={parameter}' + else: + filter = f'?filters[{label}][$eq]={parameter}' + r = requests.get( + f'{self.url}/v1/{table}{filter}', headers=self.api_headers, timeout=10 + ) + if r.status_code == 200: + json_data = r.json()['data'][0] + else: + raise Exception( + f'Received non-200 response from Service Catalogue when reading all records from {table}: {r.status_code}' + ) + + except Exception as e: + self.log.error( + f'Problem with Service Catalogue API while reading all records from {table}. {e}' + ) + return json_data + + """ + Update a record in the Service Catalogue with passed-in JSON data + """ + + def update(self, table, element_id, data): + success = False + try: + self.log.debug(data) + x = requests.put( + f'{self.url}/v1/{table}/{element_id}', + headers=self.api_headers, + json={'data': data}, + timeout=10, + ) + if x.status_code == 200: + self.log.info( + f'Successfully updated record {element_id} in {table.split("/")[-1]}: {x.status_code}' + ) + success = True + else: + self.log.info( + f'Received non-200 response from service catalogue for record id {element_id} in {table.split("/")[-1]}: {x.status_code} {x.content}' + ) + except Exception as e: + self.log.error( + f'Error updating service catalogue for record id {element_id} in {table.split("/")[-1]}: {e}' + ) + return success + + def add(self, table, data): + success = False + try: + self.log.debug(data) + x = requests.post( + f'{self.url}/v1/{table}', + headers=self.api_headers, + json={'data': data}, + timeout=10, + ) + if x.status_code == 200: + self.log.info( + f'Successfully added {(data["team_name"] if "team_name" in data else data["name"])} to {table.split("/")[-1]}: {x.status_code}' + ) + success = True + else: + self.log.info( + f'Received non-200 response from service catalogue to add a record to {table.split("/")[-1]}: {x.status_code} {x.content}' + ) + except Exception as e: + self.log.error( + f'Error adding a record to {table.split("/")[-1]} in service catalogue: {e}' + ) + return success + + # eg get_id('github-teams', 'team_name', 'example') + def get_id(self, match_table, match_field, match_string): + try: + r = requests.get( + f'{self.url}/v1/{match_table}?filters[{match_field}][$eq]={match_string.replace("&", "&")}', + headers=self.api_headers, + timeout=10, + ) + if r.status_code == 200 and r.json()['data']: + sc_id = r.json()['data'][0]['id'] + self.log.debug( + f'Successfully found Service Catalogue ID for {match_field}={match_string} in {match_table}: {sc_id}' + ) + return sc_id + self.log.warning( + f'Could not find Service Catalogue ID for {match_field}={match_string} in {match_table}' + ) + return None + except Exception as e: + self.log.error( + f'Error getting Service Catalogue ID for {match_field}={match_string} in {match_table}: {e} - {r.status_code} {r.content}' + ) + return None + + def find_all_teams_ref_in_sc(self): + components = self.get_all_records(self.components_get) + combined_teams = set() + for component in components: + attributes = component.get('attributes', {}) + combined_teams.update(attributes.get('github_project_teams_write', []) or []) + combined_teams.update(attributes.get('github_project_teams_admin', []) or []) + combined_teams.update(attributes.get('github_project_teams_maintain', []) or []) + return combined_teams diff --git a/classes/slack.py b/classes/slack.py new file mode 100644 index 0000000..b9d3193 --- /dev/null +++ b/classes/slack.py @@ -0,0 +1,73 @@ +from slack_sdk import WebClient +from slack_sdk.errors import SlackApiError +import logging + + +class Slack: + def __init__(self, slack_params, log_level=logging.INFO): + logging.basicConfig( + format='[%(asctime)s] %(levelname)s %(threadName)s %(message)s', level=log_level + ) + self.log = logging.getLogger(__name__) + self.notify_channel = slack_params.get('notify_channel', '') + self.alert_channel = slack_params.get('alert_channel', '') + + # Test auth and connection to Slack + self.log.debug( + f'Connecting to Slack with token ending {slack_params["token"][:-4]}' + ) + try: + self.slack_client = WebClient(token=slack_params['token']) + except Exception as e: + self.log.critical('Unable to connect to Slack.') + return False + + def test_connection(self): + try: + self.slack_client.api_test() + self.log.info('Successfully conected to Slack.') + return True + except Exception as e: + self.log.critical('Unable to connect to Slack.') + return None + + def get_slack_channel_name_by_id(self, slack_channel_id): + self.log.debug(f'Getting Slack Channel Name for id {slack_channel_id}') + slack_channel_name = None + try: + slack_channel_name = self.slack_client.conversations_info( + channel=slack_channel_id + )['channel']['name'] + except SlackApiError as e: + if 'channel_not_found' in str(e): + self.log.info( + f'Unable to update Slack channel name - {slack_channel_id} not found or private' + ) + else: + self.log.error(f'Slack error: {e}') + self.log.debug(f'Slack channel name for {slack_channel_id} is {slack_channel_name}') + return slack_channel_name + + def notify(self, message): + if not self.notify_channel: + self.log.warning('No notification channel set in config') + return + self.log.debug(f'Sending notification to {self.notify_channel}') + try: + self.slack_client.chat_postMessage( + channel=self.notify_channel, text=f':information-source: {message}' + ) + except SlackApiError as e: + self.log.error(f'Slack error: {e}') + + def alert(self, message): + if not self.alert_channel: + self.log.error('No alert channel set in config') + return + self.log.debug(f'Sending alert to {self.alert_channel}') + try: + self.slack_client.chat_postMessage( + channel=self.alert_channel, text=f':warning_triangle: {message}' + ) + except SlackApiError as e: + self.log.error(f'Slack error: {e}') diff --git a/compare-dev-prod.log b/compare-dev-prod.log new file mode 100644 index 0000000..cbe972d --- /dev/null +++ b/compare-dev-prod.log @@ -0,0 +1,2419 @@ +Testing connection to the Service Catalogue - https://service-catalogue.hmpps.service.justice.gov.uk +Successfully connected to the Service Catalogue - https://service-catalogue.hmpps.service.justice.gov.uk. 200 +Testing connection to the Service Catalogue - https://service-catalogue-dev.hmpps.service.justice.gov.uk +Successfully connected to the Service Catalogue - https://service-catalogue-dev.hmpps.service.justice.gov.uk. 200 +Getting all records from table components?populate[0]=latest_commit&populate[1]=environments&populate[2]=product&pagination[pageSize]=10 in Service Catalogue using URL: https://service-catalogue.hmpps.service.justice.gov.uk/v1/components?populate[0]=latest_commit&populate[1]=environments&populate[2]=product&pagination[pageSize]=10 +Getting all records from table components?populate[0]=latest_commit&populate[1]=environments&populate[2]=product&pagination[pageSize]=10 in Service Catalogue using URL: https://service-catalogue-dev.hmpps.service.justice.gov.uk/v1/components?populate[0]=latest_commit&populate[1]=environments&populate[2]=product&pagination[pageSize]=10 +hmpps-restricted-patients +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-restricted-patients-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-restricted-patients.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alert'} + DEV: {'name': 'prod', 'namespace': 'hmpps-restricted-patients-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-restricted-patients.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} +hmpps-ppud-automation-api +======================= + veracode_last_completed_scan_date: PROD: 2025-02-17T09:57:00.000Z DEV: 2025-02-10T10:05:16.000Z + + + veracode_results_url: PROD: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1880660:46944753 DEV: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1880660:46659055 + + +hmpps-assess-risks-and-needs-handover-service +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-assess-risks-and-needs-integrations-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://arns-handover-service.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons']}}, 'values-prod.yaml': {'generic-service': {'mod-platform-live-eu-west-2a-nat': '13.41.38.176/32', 'mod-platform-live-eu-west-2b-nat': '3.8.81.175/32', 'mod-platform-live-eu-west-2c-nat': '3.11.197.133/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': None, 'alerts_slack_channel': ''} + DEV: {'name': 'prod', 'namespace': 'hmpps-assess-risks-and-needs-integrations-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://arns-handover-service.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['circleci', 'internal', 'prisons']}}, 'values-prod.yaml': {'generic-service': {'mod-platform-live-eu-west-2a-nat': '13.41.38.176/32', 'mod-platform-live-eu-west-2b-nat': '3.8.81.175/32', 'mod-platform-live-eu-west-2c-nat': '3.11.197.133/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-assess-risks-and-needs-integrations-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://arns-handover-service-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons']}}, 'values-dev.yaml': {'generic-service': {'neil-test': '51.155.102.238/32', 'capita-dev': '51.104.16.30/31', 'captia-further': '172.167.141.40/32', 'joel-app-sec-1': '100.64.10.206/32', 'joel-app-sec-2': '86.134.133.78/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': None, 'alerts_slack_channel': ''} + DEV: {'name': 'dev', 'namespace': 'hmpps-assess-risks-and-needs-integrations-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://arns-handover-service-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['circleci', 'internal', 'prisons']}}, 'values-dev.yaml': {'generic-service': {'neil-test': '51.155.102.238/32', 'capita-dev': '51.104.16.30/31', 'captia-further': '172.167.141.40/32', 'joel-app-sec-1': '100.64.10.206/32', 'joel-app-sec-2': '86.134.133.78/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-assess-risks-and-needs-integrations-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://arns-handover-service-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons']}}, 'values-preprod.yaml': {'generic-service': {'mod-platform-live-eu-west-2a-nat': '13.41.38.176/32', 'mod-platform-live-eu-west-2b-nat': '3.8.81.175/32', 'mod-platform-live-eu-west-2c-nat': '3.11.197.133/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': None, 'alerts_slack_channel': ''} + DEV: {'name': 'preprod', 'namespace': 'hmpps-assess-risks-and-needs-integrations-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://arns-handover-service-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['circleci', 'internal', 'prisons']}}, 'values-preprod.yaml': {'generic-service': {'mod-platform-live-eu-west-2a-nat': '13.41.38.176/32', 'mod-platform-live-eu-west-2b-nat': '3.8.81.175/32', 'mod-platform-live-eu-west-2c-nat': '3.11.197.133/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment test: + PROD: {'name': 'test', 'namespace': 'hmpps-assess-risks-and-needs-integrations-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://arns-handover-service-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'test', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons']}}, 'values-test.yaml': {'generic-service': {'capita-dev': '51.104.16.30/31', 'nat-gw-one': '35.178.209.113/32', 'nat-gw-two': '3.8.51.207/32', 'nat-gw-three': '35.177.252.54/32', 'oasys-box-t2': '10.26.12.211/32', 'krupal-appsec': '80.195.27.199/32', 'captia-further': '172.167.141.40/32', 'mp-nat-egress-one': '13.43.9.198/32', 'mp-nat-egress-two': '13.42.163.245/32', 'mp-nat-egress-three': '18.132.208.127/32', 'kieran-accessibility': '5.181.59.114/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': None, 'alerts_slack_channel': ''} + DEV: {'name': 'test', 'namespace': 'hmpps-assess-risks-and-needs-integrations-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://arns-handover-service-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['circleci', 'internal', 'prisons']}}, 'values-test.yaml': {'generic-service': {'capita-dev': '51.104.16.30/31', 'nat-gw-one': '35.178.209.113/32', 'nat-gw-two': '3.8.51.207/32', 'nat-gw-three': '35.177.252.54/32', 'oasys-box-t2': '10.26.12.211/32', 'krupal-appsec': '80.195.27.199/32', 'captia-further': '172.167.141.40/32', 'mp-nat-egress-one': '13.43.9.198/32', 'mp-nat-egress-two': '13.42.163.245/32', 'mp-nat-egress-three': '18.132.208.127/32', 'kieran-accessibility': '5.181.59.114/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} +workforce-allocations-to-delius +======================= +hmpps-auth-and-delius +======================= +hmpps-tier-ui +======================= +hmpps-trivy-discovery +======================= + github_topics: PROD: None DEV: ['hmpps'] + + +hmpps-domain-events +======================= +hmpps-assessments-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-assessments-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://api-dev.hmpps-assessments.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'pingdom-1': '5.172.196.188/32', 'pingdom-2': '13.232.220.164/32', 'pingdom-3': '23.22.2.46/32', 'pingdom-4': '23.83.129.219/32', 'pingdom-5': '23.92.127.2/32', 'pingdom-6': '23.106.37.99/32', 'pingdom-7': '23.111.152.74/32', 'pingdom-8': '23.111.159.174/32', 'pingdom-9': '23.238.193.202/32', 'pingdom-10': '37.252.231.50/32', 'pingdom-11': '43.225.198.122/32', 'pingdom-12': '43.229.84.12/32', 'pingdom-13': '46.20.45.18/32', 'pingdom-14': '46.246.122.10/32', 'pingdom-15': '50.2.185.66/32', 'pingdom-16': '50.16.153.186/32', 'pingdom-17': '52.0.204.16/32', 'pingdom-18': '52.24.42.103/32', 'pingdom-19': '52.48.244.35/32', 'pingdom-20': '52.52.34.158/32', 'pingdom-21': '52.52.95.213/32', 'pingdom-22': '52.52.118.192/32', 'pingdom-23': '52.57.132.90/32', 'pingdom-24': '52.59.46.112/32', 'pingdom-25': '52.59.147.246/32', 'pingdom-26': '52.62.12.49/32', 'pingdom-27': '52.63.142.2/32', 'pingdom-28': '52.63.164.147/32', 'pingdom-29': '52.63.167.55/32', 'pingdom-30': '52.67.148.55/32', 'pingdom-31': '52.73.209.122/32', 'pingdom-32': '52.89.43.70/32', 'pingdom-33': '52.194.115.181/32', 'pingdom-34': '52.197.31.124/32', 'pingdom-35': '52.197.224.235/32', 'pingdom-36': '52.198.25.184/32', 'pingdom-37': '52.201.3.199/32', 'pingdom-38': '52.209.34.226/32', 'pingdom-39': '52.209.186.226/32', 'pingdom-40': '52.210.232.124/32', 'pingdom-41': '54.68.48.199/32', 'pingdom-42': '54.70.202.58/32', 'pingdom-43': '54.94.206.111/32', 'pingdom-44': '64.237.49.203/32', 'pingdom-45': '64.237.55.3/32', 'pingdom-46': '66.165.229.130/32', 'pingdom-47': '66.165.233.234/32', 'pingdom-48': '72.46.130.18/32', 'pingdom-49': '72.46.131.10/32', 'pingdom-50': '76.72.167.154/32', 'pingdom-51': '76.72.172.208/32', 'pingdom-52': '76.164.234.106/32', 'pingdom-53': '76.164.234.130/32', 'pingdom-54': '82.103.136.16/32', 'pingdom-55': '82.103.139.165/32', 'pingdom-56': '82.103.145.126/32', 'pingdom-57': '85.195.116.134/32', 'pingdom-58': '89.163.146.247/32', 'pingdom-59': '89.163.242.206/32', 'pingdom-60': '94.75.211.73/32', 'pingdom-61': '94.75.211.74/32', 'pingdom-62': '94.247.174.83/32', 'pingdom-63': '96.47.225.18/32', 'pingdom-64': '103.10.197.10/32', 'pingdom-65': '103.47.211.210/32', 'pingdom-66': '104.129.24.154/32', 'pingdom-67': '104.129.30.18/32', 'pingdom-68': '107.182.234.77/32', 'pingdom-69': '148.72.170.233/32', 'pingdom-70': '148.72.171.17/32', 'pingdom-71': '151.106.52.134/32', 'pingdom-72': '159.122.168.9/32', 'pingdom-73': '162.208.48.94/32', 'pingdom-74': '162.218.67.34/32', 'pingdom-75': '162.253.128.178/32', 'pingdom-76': '168.1.203.46/32', 'pingdom-77': '169.51.2.18/32', 'pingdom-78': '169.54.70.214/32', 'pingdom-79': '169.56.174.151/32', 'pingdom-80': '172.241.112.86/32', 'pingdom-81': '173.248.147.18/32', 'pingdom-82': '173.254.206.242/32', 'pingdom-83': '174.34.156.130/32', 'pingdom-84': '175.45.132.20/32', 'pingdom-85': '178.162.206.244/32', 'pingdom-86': '178.255.152.2/32', 'pingdom-87': '178.255.153.2/32', 'pingdom-88': '179.50.12.212/32', 'pingdom-89': '184.75.208.210/32', 'pingdom-90': '184.75.209.18/32', 'pingdom-91': '184.75.210.90/32', 'pingdom-92': '184.75.210.226/32', 'pingdom-93': '184.75.214.66/32', 'pingdom-94': '184.75.214.98/32', 'pingdom-95': '185.39.146.214/32', 'pingdom-96': '185.39.146.215/32', 'pingdom-97': '185.70.76.23/32', 'pingdom-98': '185.93.3.65/32', 'pingdom-99': '185.136.156.82/32', 'pingdom-100': '185.152.65.167/32', 'pingdom-101': '185.180.12.65/32', 'pingdom-102': '185.246.208.82/32', 'pingdom-103': '188.172.252.34/32', 'pingdom-104': '190.120.230.7/32', 'pingdom-105': '196.240.207.18/32', 'pingdom-106': '196.244.191.18/32', 'pingdom-107': '196.245.151.42/32', 'pingdom-108': '199.87.228.66/32', 'pingdom-109': '200.58.101.248/32', 'pingdom-110': '201.33.21.5/32', 'pingdom-111': '207.244.80.239/32', 'pingdom-112': '209.58.139.193/32', 'pingdom-113': '209.58.139.194/32', 'pingdom-114': '209.95.50.14/32', 'pingdom-115': '212.78.83.12/32', 'pingdom-116': '212.78.83.16/32'}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-assess-risks-and-needs', 'alerts_slack_channel': ''} + DEV: {'name': 'dev', 'namespace': 'hmpps-assessments-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://api-dev.hmpps-assessments.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'pingdom-1': '5.172.196.188/32', 'pingdom-2': '13.232.220.164/32', 'pingdom-3': '23.22.2.46/32', 'pingdom-4': '23.83.129.219/32', 'pingdom-5': '23.92.127.2/32', 'pingdom-6': '23.106.37.99/32', 'pingdom-7': '23.111.152.74/32', 'pingdom-8': '23.111.159.174/32', 'pingdom-9': '23.238.193.202/32', 'pingdom-10': '37.252.231.50/32', 'pingdom-11': '43.225.198.122/32', 'pingdom-12': '43.229.84.12/32', 'pingdom-13': '46.20.45.18/32', 'pingdom-14': '46.246.122.10/32', 'pingdom-15': '50.2.185.66/32', 'pingdom-16': '50.16.153.186/32', 'pingdom-17': '52.0.204.16/32', 'pingdom-18': '52.24.42.103/32', 'pingdom-19': '52.48.244.35/32', 'pingdom-20': '52.52.34.158/32', 'pingdom-21': '52.52.95.213/32', 'pingdom-22': '52.52.118.192/32', 'pingdom-23': '52.57.132.90/32', 'pingdom-24': '52.59.46.112/32', 'pingdom-25': '52.59.147.246/32', 'pingdom-26': '52.62.12.49/32', 'pingdom-27': '52.63.142.2/32', 'pingdom-28': '52.63.164.147/32', 'pingdom-29': '52.63.167.55/32', 'pingdom-30': '52.67.148.55/32', 'pingdom-31': '52.73.209.122/32', 'pingdom-32': '52.89.43.70/32', 'pingdom-33': '52.194.115.181/32', 'pingdom-34': '52.197.31.124/32', 'pingdom-35': '52.197.224.235/32', 'pingdom-36': '52.198.25.184/32', 'pingdom-37': '52.201.3.199/32', 'pingdom-38': '52.209.34.226/32', 'pingdom-39': '52.209.186.226/32', 'pingdom-40': '52.210.232.124/32', 'pingdom-41': '54.68.48.199/32', 'pingdom-42': '54.70.202.58/32', 'pingdom-43': '54.94.206.111/32', 'pingdom-44': '64.237.49.203/32', 'pingdom-45': '64.237.55.3/32', 'pingdom-46': '66.165.229.130/32', 'pingdom-47': '66.165.233.234/32', 'pingdom-48': '72.46.130.18/32', 'pingdom-49': '72.46.131.10/32', 'pingdom-50': '76.72.167.154/32', 'pingdom-51': '76.72.172.208/32', 'pingdom-52': '76.164.234.106/32', 'pingdom-53': '76.164.234.130/32', 'pingdom-54': '82.103.136.16/32', 'pingdom-55': '82.103.139.165/32', 'pingdom-56': '82.103.145.126/32', 'pingdom-57': '85.195.116.134/32', 'pingdom-58': '89.163.146.247/32', 'pingdom-59': '89.163.242.206/32', 'pingdom-60': '94.75.211.73/32', 'pingdom-61': '94.75.211.74/32', 'pingdom-62': '94.247.174.83/32', 'pingdom-63': '96.47.225.18/32', 'pingdom-64': '103.10.197.10/32', 'pingdom-65': '103.47.211.210/32', 'pingdom-66': '104.129.24.154/32', 'pingdom-67': '104.129.30.18/32', 'pingdom-68': '107.182.234.77/32', 'pingdom-69': '148.72.170.233/32', 'pingdom-70': '148.72.171.17/32', 'pingdom-71': '151.106.52.134/32', 'pingdom-72': '159.122.168.9/32', 'pingdom-73': '162.208.48.94/32', 'pingdom-74': '162.218.67.34/32', 'pingdom-75': '162.253.128.178/32', 'pingdom-76': '168.1.203.46/32', 'pingdom-77': '169.51.2.18/32', 'pingdom-78': '169.54.70.214/32', 'pingdom-79': '169.56.174.151/32', 'pingdom-80': '172.241.112.86/32', 'pingdom-81': '173.248.147.18/32', 'pingdom-82': '173.254.206.242/32', 'pingdom-83': '174.34.156.130/32', 'pingdom-84': '175.45.132.20/32', 'pingdom-85': '178.162.206.244/32', 'pingdom-86': '178.255.152.2/32', 'pingdom-87': '178.255.153.2/32', 'pingdom-88': '179.50.12.212/32', 'pingdom-89': '184.75.208.210/32', 'pingdom-90': '184.75.209.18/32', 'pingdom-91': '184.75.210.90/32', 'pingdom-92': '184.75.210.226/32', 'pingdom-93': '184.75.214.66/32', 'pingdom-94': '184.75.214.98/32', 'pingdom-95': '185.39.146.214/32', 'pingdom-96': '185.39.146.215/32', 'pingdom-97': '185.70.76.23/32', 'pingdom-98': '185.93.3.65/32', 'pingdom-99': '185.136.156.82/32', 'pingdom-100': '185.152.65.167/32', 'pingdom-101': '185.180.12.65/32', 'pingdom-102': '185.246.208.82/32', 'pingdom-103': '188.172.252.34/32', 'pingdom-104': '190.120.230.7/32', 'pingdom-105': '196.240.207.18/32', 'pingdom-106': '196.244.191.18/32', 'pingdom-107': '196.245.151.42/32', 'pingdom-108': '199.87.228.66/32', 'pingdom-109': '200.58.101.248/32', 'pingdom-110': '201.33.21.5/32', 'pingdom-111': '207.244.80.239/32', 'pingdom-112': '209.58.139.193/32', 'pingdom-113': '209.58.139.194/32', 'pingdom-114': '209.95.50.14/32', 'pingdom-115': '212.78.83.12/32', 'pingdom-116': '212.78.83.16/32'}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-assess-risks-and-needs', 'alerts_slack_channel': '#hmpps-assessments-dev'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-assessments-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://api-preprod.hmpps-assessments.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'pingdom-1': '5.172.196.188/32', 'pingdom-2': '13.232.220.164/32', 'pingdom-3': '23.22.2.46/32', 'pingdom-4': '23.83.129.219/32', 'pingdom-5': '23.92.127.2/32', 'pingdom-6': '23.106.37.99/32', 'pingdom-7': '23.111.152.74/32', 'pingdom-8': '23.111.159.174/32', 'pingdom-9': '23.238.193.202/32', 'pingdom-10': '37.252.231.50/32', 'pingdom-11': '43.225.198.122/32', 'pingdom-12': '43.229.84.12/32', 'pingdom-13': '46.20.45.18/32', 'pingdom-14': '46.246.122.10/32', 'pingdom-15': '50.2.185.66/32', 'pingdom-16': '50.16.153.186/32', 'pingdom-17': '52.0.204.16/32', 'pingdom-18': '52.24.42.103/32', 'pingdom-19': '52.48.244.35/32', 'pingdom-20': '52.52.34.158/32', 'pingdom-21': '52.52.95.213/32', 'pingdom-22': '52.52.118.192/32', 'pingdom-23': '52.57.132.90/32', 'pingdom-24': '52.59.46.112/32', 'pingdom-25': '52.59.147.246/32', 'pingdom-26': '52.62.12.49/32', 'pingdom-27': '52.63.142.2/32', 'pingdom-28': '52.63.164.147/32', 'pingdom-29': '52.63.167.55/32', 'pingdom-30': '52.67.148.55/32', 'pingdom-31': '52.73.209.122/32', 'pingdom-32': '52.89.43.70/32', 'pingdom-33': '52.194.115.181/32', 'pingdom-34': '52.197.31.124/32', 'pingdom-35': '52.197.224.235/32', 'pingdom-36': '52.198.25.184/32', 'pingdom-37': '52.201.3.199/32', 'pingdom-38': '52.209.34.226/32', 'pingdom-39': '52.209.186.226/32', 'pingdom-40': '52.210.232.124/32', 'pingdom-41': '54.68.48.199/32', 'pingdom-42': '54.70.202.58/32', 'pingdom-43': '54.94.206.111/32', 'pingdom-44': '64.237.49.203/32', 'pingdom-45': '64.237.55.3/32', 'pingdom-46': '66.165.229.130/32', 'pingdom-47': '66.165.233.234/32', 'pingdom-48': '72.46.130.18/32', 'pingdom-49': '72.46.131.10/32', 'pingdom-50': '76.72.167.154/32', 'pingdom-51': '76.72.172.208/32', 'pingdom-52': '76.164.234.106/32', 'pingdom-53': '76.164.234.130/32', 'pingdom-54': '82.103.136.16/32', 'pingdom-55': '82.103.139.165/32', 'pingdom-56': '82.103.145.126/32', 'pingdom-57': '85.195.116.134/32', 'pingdom-58': '89.163.146.247/32', 'pingdom-59': '89.163.242.206/32', 'pingdom-60': '94.75.211.73/32', 'pingdom-61': '94.75.211.74/32', 'pingdom-62': '94.247.174.83/32', 'pingdom-63': '96.47.225.18/32', 'pingdom-64': '103.10.197.10/32', 'pingdom-65': '103.47.211.210/32', 'pingdom-66': '104.129.24.154/32', 'pingdom-67': '104.129.30.18/32', 'pingdom-68': '107.182.234.77/32', 'pingdom-69': '148.72.170.233/32', 'pingdom-70': '148.72.171.17/32', 'pingdom-71': '151.106.52.134/32', 'pingdom-72': '159.122.168.9/32', 'pingdom-73': '162.208.48.94/32', 'pingdom-74': '162.218.67.34/32', 'pingdom-75': '162.253.128.178/32', 'pingdom-76': '168.1.203.46/32', 'pingdom-77': '169.51.2.18/32', 'pingdom-78': '169.54.70.214/32', 'pingdom-79': '169.56.174.151/32', 'pingdom-80': '172.241.112.86/32', 'pingdom-81': '173.248.147.18/32', 'pingdom-82': '173.254.206.242/32', 'pingdom-83': '174.34.156.130/32', 'pingdom-84': '175.45.132.20/32', 'pingdom-85': '178.162.206.244/32', 'pingdom-86': '178.255.152.2/32', 'pingdom-87': '178.255.153.2/32', 'pingdom-88': '179.50.12.212/32', 'pingdom-89': '184.75.208.210/32', 'pingdom-90': '184.75.209.18/32', 'pingdom-91': '184.75.210.90/32', 'pingdom-92': '184.75.210.226/32', 'pingdom-93': '184.75.214.66/32', 'pingdom-94': '184.75.214.98/32', 'pingdom-95': '185.39.146.214/32', 'pingdom-96': '185.39.146.215/32', 'pingdom-97': '185.70.76.23/32', 'pingdom-98': '185.93.3.65/32', 'pingdom-99': '185.136.156.82/32', 'pingdom-100': '185.152.65.167/32', 'pingdom-101': '185.180.12.65/32', 'pingdom-102': '185.246.208.82/32', 'pingdom-103': '188.172.252.34/32', 'pingdom-104': '190.120.230.7/32', 'pingdom-105': '196.240.207.18/32', 'pingdom-106': '196.244.191.18/32', 'pingdom-107': '196.245.151.42/32', 'pingdom-108': '199.87.228.66/32', 'pingdom-109': '200.58.101.248/32', 'pingdom-110': '201.33.21.5/32', 'pingdom-111': '207.244.80.239/32', 'pingdom-112': '209.58.139.193/32', 'pingdom-113': '209.58.139.194/32', 'pingdom-114': '209.95.50.14/32', 'pingdom-115': '212.78.83.12/32', 'pingdom-116': '212.78.83.16/32'}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-assess-risks-and-needs', 'alerts_slack_channel': ''} + DEV: {'name': 'preprod', 'namespace': 'hmpps-assessments-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://api-preprod.hmpps-assessments.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'pingdom-1': '5.172.196.188/32', 'pingdom-2': '13.232.220.164/32', 'pingdom-3': '23.22.2.46/32', 'pingdom-4': '23.83.129.219/32', 'pingdom-5': '23.92.127.2/32', 'pingdom-6': '23.106.37.99/32', 'pingdom-7': '23.111.152.74/32', 'pingdom-8': '23.111.159.174/32', 'pingdom-9': '23.238.193.202/32', 'pingdom-10': '37.252.231.50/32', 'pingdom-11': '43.225.198.122/32', 'pingdom-12': '43.229.84.12/32', 'pingdom-13': '46.20.45.18/32', 'pingdom-14': '46.246.122.10/32', 'pingdom-15': '50.2.185.66/32', 'pingdom-16': '50.16.153.186/32', 'pingdom-17': '52.0.204.16/32', 'pingdom-18': '52.24.42.103/32', 'pingdom-19': '52.48.244.35/32', 'pingdom-20': '52.52.34.158/32', 'pingdom-21': '52.52.95.213/32', 'pingdom-22': '52.52.118.192/32', 'pingdom-23': '52.57.132.90/32', 'pingdom-24': '52.59.46.112/32', 'pingdom-25': '52.59.147.246/32', 'pingdom-26': '52.62.12.49/32', 'pingdom-27': '52.63.142.2/32', 'pingdom-28': '52.63.164.147/32', 'pingdom-29': '52.63.167.55/32', 'pingdom-30': '52.67.148.55/32', 'pingdom-31': '52.73.209.122/32', 'pingdom-32': '52.89.43.70/32', 'pingdom-33': '52.194.115.181/32', 'pingdom-34': '52.197.31.124/32', 'pingdom-35': '52.197.224.235/32', 'pingdom-36': '52.198.25.184/32', 'pingdom-37': '52.201.3.199/32', 'pingdom-38': '52.209.34.226/32', 'pingdom-39': '52.209.186.226/32', 'pingdom-40': '52.210.232.124/32', 'pingdom-41': '54.68.48.199/32', 'pingdom-42': '54.70.202.58/32', 'pingdom-43': '54.94.206.111/32', 'pingdom-44': '64.237.49.203/32', 'pingdom-45': '64.237.55.3/32', 'pingdom-46': '66.165.229.130/32', 'pingdom-47': '66.165.233.234/32', 'pingdom-48': '72.46.130.18/32', 'pingdom-49': '72.46.131.10/32', 'pingdom-50': '76.72.167.154/32', 'pingdom-51': '76.72.172.208/32', 'pingdom-52': '76.164.234.106/32', 'pingdom-53': '76.164.234.130/32', 'pingdom-54': '82.103.136.16/32', 'pingdom-55': '82.103.139.165/32', 'pingdom-56': '82.103.145.126/32', 'pingdom-57': '85.195.116.134/32', 'pingdom-58': '89.163.146.247/32', 'pingdom-59': '89.163.242.206/32', 'pingdom-60': '94.75.211.73/32', 'pingdom-61': '94.75.211.74/32', 'pingdom-62': '94.247.174.83/32', 'pingdom-63': '96.47.225.18/32', 'pingdom-64': '103.10.197.10/32', 'pingdom-65': '103.47.211.210/32', 'pingdom-66': '104.129.24.154/32', 'pingdom-67': '104.129.30.18/32', 'pingdom-68': '107.182.234.77/32', 'pingdom-69': '148.72.170.233/32', 'pingdom-70': '148.72.171.17/32', 'pingdom-71': '151.106.52.134/32', 'pingdom-72': '159.122.168.9/32', 'pingdom-73': '162.208.48.94/32', 'pingdom-74': '162.218.67.34/32', 'pingdom-75': '162.253.128.178/32', 'pingdom-76': '168.1.203.46/32', 'pingdom-77': '169.51.2.18/32', 'pingdom-78': '169.54.70.214/32', 'pingdom-79': '169.56.174.151/32', 'pingdom-80': '172.241.112.86/32', 'pingdom-81': '173.248.147.18/32', 'pingdom-82': '173.254.206.242/32', 'pingdom-83': '174.34.156.130/32', 'pingdom-84': '175.45.132.20/32', 'pingdom-85': '178.162.206.244/32', 'pingdom-86': '178.255.152.2/32', 'pingdom-87': '178.255.153.2/32', 'pingdom-88': '179.50.12.212/32', 'pingdom-89': '184.75.208.210/32', 'pingdom-90': '184.75.209.18/32', 'pingdom-91': '184.75.210.90/32', 'pingdom-92': '184.75.210.226/32', 'pingdom-93': '184.75.214.66/32', 'pingdom-94': '184.75.214.98/32', 'pingdom-95': '185.39.146.214/32', 'pingdom-96': '185.39.146.215/32', 'pingdom-97': '185.70.76.23/32', 'pingdom-98': '185.93.3.65/32', 'pingdom-99': '185.136.156.82/32', 'pingdom-100': '185.152.65.167/32', 'pingdom-101': '185.180.12.65/32', 'pingdom-102': '185.246.208.82/32', 'pingdom-103': '188.172.252.34/32', 'pingdom-104': '190.120.230.7/32', 'pingdom-105': '196.240.207.18/32', 'pingdom-106': '196.244.191.18/32', 'pingdom-107': '196.245.151.42/32', 'pingdom-108': '199.87.228.66/32', 'pingdom-109': '200.58.101.248/32', 'pingdom-110': '201.33.21.5/32', 'pingdom-111': '207.244.80.239/32', 'pingdom-112': '209.58.139.193/32', 'pingdom-113': '209.58.139.194/32', 'pingdom-114': '209.95.50.14/32', 'pingdom-115': '212.78.83.12/32', 'pingdom-116': '212.78.83.16/32'}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-assess-risks-and-needs', 'alerts_slack_channel': '#hmpps-assessments-dev'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-assessments-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://api.hmpps-assessments.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'pingdom-1': '5.172.196.188/32', 'pingdom-2': '13.232.220.164/32', 'pingdom-3': '23.22.2.46/32', 'pingdom-4': '23.83.129.219/32', 'pingdom-5': '23.92.127.2/32', 'pingdom-6': '23.106.37.99/32', 'pingdom-7': '23.111.152.74/32', 'pingdom-8': '23.111.159.174/32', 'pingdom-9': '23.238.193.202/32', 'pingdom-10': '37.252.231.50/32', 'pingdom-11': '43.225.198.122/32', 'pingdom-12': '43.229.84.12/32', 'pingdom-13': '46.20.45.18/32', 'pingdom-14': '46.246.122.10/32', 'pingdom-15': '50.2.185.66/32', 'pingdom-16': '50.16.153.186/32', 'pingdom-17': '52.0.204.16/32', 'pingdom-18': '52.24.42.103/32', 'pingdom-19': '52.48.244.35/32', 'pingdom-20': '52.52.34.158/32', 'pingdom-21': '52.52.95.213/32', 'pingdom-22': '52.52.118.192/32', 'pingdom-23': '52.57.132.90/32', 'pingdom-24': '52.59.46.112/32', 'pingdom-25': '52.59.147.246/32', 'pingdom-26': '52.62.12.49/32', 'pingdom-27': '52.63.142.2/32', 'pingdom-28': '52.63.164.147/32', 'pingdom-29': '52.63.167.55/32', 'pingdom-30': '52.67.148.55/32', 'pingdom-31': '52.73.209.122/32', 'pingdom-32': '52.89.43.70/32', 'pingdom-33': '52.194.115.181/32', 'pingdom-34': '52.197.31.124/32', 'pingdom-35': '52.197.224.235/32', 'pingdom-36': '52.198.25.184/32', 'pingdom-37': '52.201.3.199/32', 'pingdom-38': '52.209.34.226/32', 'pingdom-39': '52.209.186.226/32', 'pingdom-40': '52.210.232.124/32', 'pingdom-41': '54.68.48.199/32', 'pingdom-42': '54.70.202.58/32', 'pingdom-43': '54.94.206.111/32', 'pingdom-44': '64.237.49.203/32', 'pingdom-45': '64.237.55.3/32', 'pingdom-46': '66.165.229.130/32', 'pingdom-47': '66.165.233.234/32', 'pingdom-48': '72.46.130.18/32', 'pingdom-49': '72.46.131.10/32', 'pingdom-50': '76.72.167.154/32', 'pingdom-51': '76.72.172.208/32', 'pingdom-52': '76.164.234.106/32', 'pingdom-53': '76.164.234.130/32', 'pingdom-54': '82.103.136.16/32', 'pingdom-55': '82.103.139.165/32', 'pingdom-56': '82.103.145.126/32', 'pingdom-57': '85.195.116.134/32', 'pingdom-58': '89.163.146.247/32', 'pingdom-59': '89.163.242.206/32', 'pingdom-60': '94.75.211.73/32', 'pingdom-61': '94.75.211.74/32', 'pingdom-62': '94.247.174.83/32', 'pingdom-63': '96.47.225.18/32', 'pingdom-64': '103.10.197.10/32', 'pingdom-65': '103.47.211.210/32', 'pingdom-66': '104.129.24.154/32', 'pingdom-67': '104.129.30.18/32', 'pingdom-68': '107.182.234.77/32', 'pingdom-69': '148.72.170.233/32', 'pingdom-70': '148.72.171.17/32', 'pingdom-71': '151.106.52.134/32', 'pingdom-72': '159.122.168.9/32', 'pingdom-73': '162.208.48.94/32', 'pingdom-74': '162.218.67.34/32', 'pingdom-75': '162.253.128.178/32', 'pingdom-76': '168.1.203.46/32', 'pingdom-77': '169.51.2.18/32', 'pingdom-78': '169.54.70.214/32', 'pingdom-79': '169.56.174.151/32', 'pingdom-80': '172.241.112.86/32', 'pingdom-81': '173.248.147.18/32', 'pingdom-82': '173.254.206.242/32', 'pingdom-83': '174.34.156.130/32', 'pingdom-84': '175.45.132.20/32', 'pingdom-85': '178.162.206.244/32', 'pingdom-86': '178.255.152.2/32', 'pingdom-87': '178.255.153.2/32', 'pingdom-88': '179.50.12.212/32', 'pingdom-89': '184.75.208.210/32', 'pingdom-90': '184.75.209.18/32', 'pingdom-91': '184.75.210.90/32', 'pingdom-92': '184.75.210.226/32', 'pingdom-93': '184.75.214.66/32', 'pingdom-94': '184.75.214.98/32', 'pingdom-95': '185.39.146.214/32', 'pingdom-96': '185.39.146.215/32', 'pingdom-97': '185.70.76.23/32', 'pingdom-98': '185.93.3.65/32', 'pingdom-99': '185.136.156.82/32', 'pingdom-100': '185.152.65.167/32', 'pingdom-101': '185.180.12.65/32', 'pingdom-102': '185.246.208.82/32', 'pingdom-103': '188.172.252.34/32', 'pingdom-104': '190.120.230.7/32', 'pingdom-105': '196.240.207.18/32', 'pingdom-106': '196.244.191.18/32', 'pingdom-107': '196.245.151.42/32', 'pingdom-108': '199.87.228.66/32', 'pingdom-109': '200.58.101.248/32', 'pingdom-110': '201.33.21.5/32', 'pingdom-111': '207.244.80.239/32', 'pingdom-112': '209.58.139.193/32', 'pingdom-113': '209.58.139.194/32', 'pingdom-114': '209.95.50.14/32', 'pingdom-115': '212.78.83.12/32', 'pingdom-116': '212.78.83.16/32'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-assess-risks-and-needs', 'alerts_slack_channel': ''} + DEV: {'name': 'prod', 'namespace': 'hmpps-assessments-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://api.hmpps-assessments.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'pingdom-1': '5.172.196.188/32', 'pingdom-2': '13.232.220.164/32', 'pingdom-3': '23.22.2.46/32', 'pingdom-4': '23.83.129.219/32', 'pingdom-5': '23.92.127.2/32', 'pingdom-6': '23.106.37.99/32', 'pingdom-7': '23.111.152.74/32', 'pingdom-8': '23.111.159.174/32', 'pingdom-9': '23.238.193.202/32', 'pingdom-10': '37.252.231.50/32', 'pingdom-11': '43.225.198.122/32', 'pingdom-12': '43.229.84.12/32', 'pingdom-13': '46.20.45.18/32', 'pingdom-14': '46.246.122.10/32', 'pingdom-15': '50.2.185.66/32', 'pingdom-16': '50.16.153.186/32', 'pingdom-17': '52.0.204.16/32', 'pingdom-18': '52.24.42.103/32', 'pingdom-19': '52.48.244.35/32', 'pingdom-20': '52.52.34.158/32', 'pingdom-21': '52.52.95.213/32', 'pingdom-22': '52.52.118.192/32', 'pingdom-23': '52.57.132.90/32', 'pingdom-24': '52.59.46.112/32', 'pingdom-25': '52.59.147.246/32', 'pingdom-26': '52.62.12.49/32', 'pingdom-27': '52.63.142.2/32', 'pingdom-28': '52.63.164.147/32', 'pingdom-29': '52.63.167.55/32', 'pingdom-30': '52.67.148.55/32', 'pingdom-31': '52.73.209.122/32', 'pingdom-32': '52.89.43.70/32', 'pingdom-33': '52.194.115.181/32', 'pingdom-34': '52.197.31.124/32', 'pingdom-35': '52.197.224.235/32', 'pingdom-36': '52.198.25.184/32', 'pingdom-37': '52.201.3.199/32', 'pingdom-38': '52.209.34.226/32', 'pingdom-39': '52.209.186.226/32', 'pingdom-40': '52.210.232.124/32', 'pingdom-41': '54.68.48.199/32', 'pingdom-42': '54.70.202.58/32', 'pingdom-43': '54.94.206.111/32', 'pingdom-44': '64.237.49.203/32', 'pingdom-45': '64.237.55.3/32', 'pingdom-46': '66.165.229.130/32', 'pingdom-47': '66.165.233.234/32', 'pingdom-48': '72.46.130.18/32', 'pingdom-49': '72.46.131.10/32', 'pingdom-50': '76.72.167.154/32', 'pingdom-51': '76.72.172.208/32', 'pingdom-52': '76.164.234.106/32', 'pingdom-53': '76.164.234.130/32', 'pingdom-54': '82.103.136.16/32', 'pingdom-55': '82.103.139.165/32', 'pingdom-56': '82.103.145.126/32', 'pingdom-57': '85.195.116.134/32', 'pingdom-58': '89.163.146.247/32', 'pingdom-59': '89.163.242.206/32', 'pingdom-60': '94.75.211.73/32', 'pingdom-61': '94.75.211.74/32', 'pingdom-62': '94.247.174.83/32', 'pingdom-63': '96.47.225.18/32', 'pingdom-64': '103.10.197.10/32', 'pingdom-65': '103.47.211.210/32', 'pingdom-66': '104.129.24.154/32', 'pingdom-67': '104.129.30.18/32', 'pingdom-68': '107.182.234.77/32', 'pingdom-69': '148.72.170.233/32', 'pingdom-70': '148.72.171.17/32', 'pingdom-71': '151.106.52.134/32', 'pingdom-72': '159.122.168.9/32', 'pingdom-73': '162.208.48.94/32', 'pingdom-74': '162.218.67.34/32', 'pingdom-75': '162.253.128.178/32', 'pingdom-76': '168.1.203.46/32', 'pingdom-77': '169.51.2.18/32', 'pingdom-78': '169.54.70.214/32', 'pingdom-79': '169.56.174.151/32', 'pingdom-80': '172.241.112.86/32', 'pingdom-81': '173.248.147.18/32', 'pingdom-82': '173.254.206.242/32', 'pingdom-83': '174.34.156.130/32', 'pingdom-84': '175.45.132.20/32', 'pingdom-85': '178.162.206.244/32', 'pingdom-86': '178.255.152.2/32', 'pingdom-87': '178.255.153.2/32', 'pingdom-88': '179.50.12.212/32', 'pingdom-89': '184.75.208.210/32', 'pingdom-90': '184.75.209.18/32', 'pingdom-91': '184.75.210.90/32', 'pingdom-92': '184.75.210.226/32', 'pingdom-93': '184.75.214.66/32', 'pingdom-94': '184.75.214.98/32', 'pingdom-95': '185.39.146.214/32', 'pingdom-96': '185.39.146.215/32', 'pingdom-97': '185.70.76.23/32', 'pingdom-98': '185.93.3.65/32', 'pingdom-99': '185.136.156.82/32', 'pingdom-100': '185.152.65.167/32', 'pingdom-101': '185.180.12.65/32', 'pingdom-102': '185.246.208.82/32', 'pingdom-103': '188.172.252.34/32', 'pingdom-104': '190.120.230.7/32', 'pingdom-105': '196.240.207.18/32', 'pingdom-106': '196.244.191.18/32', 'pingdom-107': '196.245.151.42/32', 'pingdom-108': '199.87.228.66/32', 'pingdom-109': '200.58.101.248/32', 'pingdom-110': '201.33.21.5/32', 'pingdom-111': '207.244.80.239/32', 'pingdom-112': '209.58.139.193/32', 'pingdom-113': '209.58.139.194/32', 'pingdom-114': '209.95.50.14/32', 'pingdom-115': '212.78.83.12/32', 'pingdom-116': '212.78.83.16/32'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-assess-risks-and-needs', 'alerts_slack_channel': '#hmpps-assessments-dev'} + versions: PROD: {'circleci': {'hmpps_orb': '8.2'}} DEV: {'circleci': {'hmpps_orb': '8.2'}, 'dockerfile': {'base_image': 'runtime'}, 'helm_dependencies': {'generic-service': '3.8', 'generic-prometheus-alerts': '1.11.3'}} + + +hmpps-organisations-api +======================= + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-organisations-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://organisations-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'hmpps-organisations-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://organisations-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'warning', 'alerts_slack_channel': '#lower-priority-alarms'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-organisations-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://organisations-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'hmpps-organisations-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://organisations-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'warning', 'alerts_slack_channel': '#lower-priority-alarms'} +hmpps-domain-event-logger +======================= +prisoner-contact-registry +======================= +hmpps-resettlement-passport-person-on-probation-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-resettlement-passport-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://person-on-probation-user-ui-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'circleci']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-resettlement-passport-non-prod', 'alerts_slack_channel': '#resettlement_passport_alerts_non_prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-resettlement-passport-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://person-on-probation-user-ui-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'circleci']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-resettlement-passport-non-prod', 'alerts_slack_channel': '#resettlement_passport_alerts_non_prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-resettlement-passport-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://person-on-probation-user-ui-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'circleci']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-resettlement-passport-non-prod', 'alerts_slack_channel': '#resettlement_passport_alerts_non_prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-resettlement-passport-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://person-on-probation-user-ui-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'circleci']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-resettlement-passport-non-prod', 'alerts_slack_channel': '#resettlement_passport_alerts_non_prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-resettlement-passport-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://plan-your-future.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-resettlement-passport-prod', 'alerts_slack_channel': '#resettlement_passport_alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-resettlement-passport-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://plan-your-future.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-resettlement-passport-prod', 'alerts_slack_channel': '#resettlement_passport_alerts'} +risk-assessment-scores-to-delius +======================= +hmpps-court-cases-release-dates-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-court-cases-release-dates-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-cases-release-dates-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-court-cases-release-dates-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-cases-release-dates-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} +hmpps-nomis-sync-dashboard +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-prisoner-from-nomis-migration-dev', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'moj-official-tgw-prod': '51.149.250.0/24', 'moj-official-tgw-preprod': '51.149.251.0/24'}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-prisoner-from-nomis-migration-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://nomis-sync-dashboard-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'moj-official-tgw-prod': '51.149.250.0/24', 'moj-official-tgw-preprod': '51.149.251.0/24'}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'syscon-nonprod', 'alerts_slack_channel': '#syscon-alerts-non-prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-prisoner-from-nomis-migration-preprod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'moj-official-tgw-prod': '51.149.250.0/24', 'moj-official-tgw-preprod': '51.149.251.0/24'}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'hmpps-prisoner-from-nomis-migration-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://nomis-sync-dashboard-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'moj-official-tgw-prod': '51.149.250.0/24', 'moj-official-tgw-preprod': '51.149.251.0/24'}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'syscon-nonprod', 'alerts_slack_channel': '#syscon-alerts-non-prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-prisoner-from-nomis-migration-prod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'moj-official-tgw-prod': '51.149.250.0/24', 'moj-official-tgw-preprod': '51.149.251.0/24'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'hmpps-prisoner-from-nomis-migration-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://nomis-sync-dashboard.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'moj-official-tgw-prod': '51.149.250.0/24', 'moj-official-tgw-preprod': '51.149.251.0/24'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'syscon', 'alerts_slack_channel': '#syscon-alerts'} +hmpps-github-actions +======================= +subject-access-requests-and-delius +======================= +hmpps-assess-risks-and-needs-coordinator-api +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-assess-risks-and-needs-integrations-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://arns-coordinator-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}, 'values-prod.yaml': {'generic-service': {'mod-platform-live-eu-west-2a-nat': '13.41.38.176/32', 'mod-platform-live-eu-west-2b-nat': '3.8.81.175/32', 'mod-platform-live-eu-west-2c-nat': '3.11.197.133/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': None, 'alerts_slack_channel': ''} + DEV: {'name': 'prod', 'namespace': 'hmpps-assess-risks-and-needs-integrations-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://arns-coordinator-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons']}}, 'values-prod.yaml': {'generic-service': {'mod-platform-live-eu-west-2a-nat': '13.41.38.176/32', 'mod-platform-live-eu-west-2b-nat': '3.8.81.175/32', 'mod-platform-live-eu-west-2c-nat': '3.11.197.133/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-assess-risks-and-needs-integrations-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://arns-coordinator-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}, 'values-dev.yaml': {'generic-service': {'neil-test': '51.155.102.238/32', 'capita-dev': '51.104.16.30/31', 'captia-further': '172.167.141.40/32', 'krupal-app-sec': '80.195.27.199/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': None, 'alerts_slack_channel': ''} + DEV: {'name': 'dev', 'namespace': 'hmpps-assess-risks-and-needs-integrations-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://arns-coordinator-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons']}}, 'values-dev.yaml': {'generic-service': {'neil-test': '51.155.102.238/32', 'capita-dev': '51.104.16.30/31', 'captia-further': '172.167.141.40/32', 'krupal-app-sec': '80.195.27.199/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-assess-risks-and-needs-integrations-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://arns-coordinator-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}, 'values-preprod.yaml': {'generic-service': {'mod-platform-live-eu-west-2a-nat': '13.41.38.176/32', 'mod-platform-live-eu-west-2b-nat': '3.8.81.175/32', 'mod-platform-live-eu-west-2c-nat': '3.11.197.133/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': None, 'alerts_slack_channel': ''} + DEV: {'name': 'preprod', 'namespace': 'hmpps-assess-risks-and-needs-integrations-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://arns-coordinator-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons']}}, 'values-preprod.yaml': {'generic-service': {'mod-platform-live-eu-west-2a-nat': '13.41.38.176/32', 'mod-platform-live-eu-west-2b-nat': '3.8.81.175/32', 'mod-platform-live-eu-west-2c-nat': '3.11.197.133/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment test: + PROD: {'name': 'test', 'namespace': 'hmpps-assess-risks-and-needs-integrations-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://arns-coordinator-api-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'test', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}, 'values-test.yaml': {'generic-service': {'neil-test': '51.155.102.238/32', 'capita-dev': '51.104.16.30/31', 'nat-gw-one': '35.178.209.113/31', 'nat-gw-two': '3.8.51.207/31', 'nat-gw-three': '35.177.252.54/31', 'oasys-box-t2': '10.26.12.211/32', 'captia-further': '172.167.141.40/32', 'krupal-app-sec': '80.195.27.199/32', 'mp-nat-egress-one': '13.43.9.198/32', 'mp-nat-egress-two': '13.42.163.245/32', 'mp-nat-egress-three': '18.132.208.127/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': None, 'alerts_slack_channel': ''} + DEV: {'name': 'test', 'namespace': 'hmpps-assess-risks-and-needs-integrations-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://arns-coordinator-api-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons']}}, 'values-test.yaml': {'generic-service': {'neil-test': '51.155.102.238/32', 'capita-dev': '51.104.16.30/31', 'nat-gw-one': '35.178.209.113/31', 'nat-gw-two': '3.8.51.207/31', 'nat-gw-three': '35.177.252.54/31', 'oasys-box-t2': '10.26.12.211/32', 'captia-further': '172.167.141.40/32', 'krupal-app-sec': '80.195.27.199/32', 'mp-nat-egress-one': '13.43.9.198/32', 'mp-nat-egress-two': '13.42.163.245/32', 'mp-nat-egress-three': '18.132.208.127/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} +pathfinder-api +======================= + trivy_last_completed_scan_date: PROD: None DEV: 2025-02-20T06:04:07.885046533Z + + +feature-flags +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-probation-integration-services-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://feature-flags-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'unilink_staff'], 'dxw-vpn': '54.76.254.148/32'}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-probation-integration-services-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://feature-flags-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'unilink_staff'], 'dxw-vpn': '54.76.254.148/32'}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-probation-integration-services-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://feature-flags-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'unilink_staff'], 'dxw-vpn': '54.76.254.148/32'}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'hmpps-probation-integration-services-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://feature-flags-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'unilink_staff'], 'dxw-vpn': '54.76.254.148/32'}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-probation-integration-services-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://feature-flags.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'unilink_staff'], 'dxw-vpn': '54.76.254.148/32'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'hmpps-probation-integration-services-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://feature-flags.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'unilink_staff'], 'dxw-vpn': '54.76.254.148/32'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +hmpps-connect-dps-components +======================= + github_template_repo: PROD: DEV: None + + +breach-notice-and-delius +======================= + github_project_branch_protection_restricted_teams: PROD: None DEV: [] + + + Environment preprod: + PROD: None + DEV: {'name': 'preprod', 'namespace': 'hmpps-probation-integration-services-preprod', 'info_path': None, 'health_path': None, 'url': 'https://breach-notice-and-delius-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: None + DEV: {'name': 'prod', 'namespace': 'hmpps-probation-integration-services-prod', 'info_path': None, 'health_path': None, 'url': 'https://breach-notice-and-delius.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +deployment-tools +======================= +hmpps-digital-prison-reporting-frontend +======================= + github_template_repo: PROD: DEV: None + + +hmpps-mercury-data-monorepo +======================= +hmpps-assess-risks-and-needs-oastub-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-assess-risks-and-needs-integrations-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://arns-oastub-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons'], 'neil-test': '51.155.102.238/32', 'capita-dev': '51.104.16.30/31', 'captia-further': '172.167.141.40/32', 'moj-appsec-test-ip': '80.195.27.199/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': ''} + DEV: {'name': 'dev', 'namespace': 'hmpps-assess-risks-and-needs-integrations-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://arns-oastub-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons'], 'neil-test': '51.155.102.238/32', 'capita-dev': '51.104.16.30/31', 'captia-further': '172.167.141.40/32', 'moj-appsec-test-ip': '80.195.27.199/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment test: + PROD: {'name': 'test', 'namespace': 'hmpps-assess-risks-and-needs-integrations-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://arns-oastub-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'test', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-test.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons'], 'neil-test': '51.155.102.238/32', 'capita-dev': '51.104.16.30/31', 'captia-further': '172.167.141.40/32', 'moj-appsec-test-ip': '80.195.27.199/32', 'kieran-accessibility': '5.181.59.114/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': ''} + DEV: {'name': 'test', 'namespace': 'hmpps-assess-risks-and-needs-integrations-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://arns-oastub-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-test.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons'], 'neil-test': '51.155.102.238/32', 'capita-dev': '51.104.16.30/31', 'captia-further': '172.167.141.40/32', 'moj-appsec-test-ip': '80.195.27.199/32', 'kieran-accessibility': '5.181.59.114/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + versions: PROD: {'dockerfile': {'base_image': 'node:22-alpine'}, 'helm_dependencies': {'generic-service': '3.8', 'generic-prometheus-alerts': '1.11'}} DEV: {} + + +common-platform-and-delius +======================= +hmpps-approved-premises-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-community-accommodation-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://approved-premises-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'health-kick': '35.177.252.195/32', 'global-protect': '35.176.93.186/32', 'petty-france-wifi': '213.121.161.112/28', 'cloudplatform-live-1': '35.178.209.113/32', 'cloudplatform-live-2': '3.8.51.207/32', 'cloudplatform-live-3': '35.177.252.54/32'}}, 'values-dev.yaml': {'generic-service': {'ncc-tsc-team-1': '5.148.32.192/26', 'ncc-tsc-team-2': '5.148.69.16/28', 'ncc-tsc-team-3': '31.221.110.80/29', 'ncc-tsc-team-4': '154.51.64.64/27', 'ncc-tsc-team-5': '154.51.128.224/27', 'ncc-tsc-team-6': '167.98.1.160/28', 'ncc-tsc-team-7': '167.98.25.176/28', 'ncc-tsc-team-8': '167.98.200.192/27', 'ncc-tsc-team-9': '195.95.131.0/24', 'unilink-aovpn1': '194.75.210.216/29', 'unilink-aovpn2': '83.98.63.176/29', 'unilink-aovpn3': '78.33.10.50/31', 'unilink-aovpn4': '78.33.10.52/30', 'unilink-aovpn5': '78.33.10.56/30', 'unilink-aovpn6': '78.33.10.60/32', 'unilink-aovpn7': '78.33.32.99/32', 'unilink-aovpn8': '78.33.32.100/30', 'unilink-aovpn9': '78.33.32.104/30', 'ncc-mvss-team-1': '5.148.8.192/26', 'unilink-aovpn10': '78.33.32.108/32', 'unilink-aovpn11': '217.138.45.109/32', 'unilink-aovpn12': '217.138.45.110/32'}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-approved-premises', 'alerts_slack_channel': '#cas-events'} + DEV: {'name': 'dev', 'namespace': 'hmpps-community-accommodation-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://approved-premises-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'health-kick': '35.177.252.195/32', 'global-protect': '35.176.93.186/32', 'petty-france-wifi': '213.121.161.112/28', 'cloudplatform-live-1': '35.178.209.113/32', 'cloudplatform-live-2': '3.8.51.207/32', 'cloudplatform-live-3': '35.177.252.54/32'}}, 'values-dev.yaml': {'generic-service': {'ncc-tsc-team-1': '5.148.32.192/26', 'ncc-tsc-team-2': '5.148.69.16/28', 'ncc-tsc-team-3': '31.221.110.80/29', 'ncc-tsc-team-4': '154.51.64.64/27', 'ncc-tsc-team-5': '154.51.128.224/27', 'ncc-tsc-team-6': '167.98.1.160/28', 'ncc-tsc-team-7': '167.98.25.176/28', 'ncc-tsc-team-8': '167.98.200.192/27', 'ncc-tsc-team-9': '195.95.131.0/24', 'unilink-aovpn1': '194.75.210.216/29', 'unilink-aovpn2': '83.98.63.176/29', 'unilink-aovpn3': '78.33.10.50/31', 'unilink-aovpn4': '78.33.10.52/30', 'unilink-aovpn5': '78.33.10.56/30', 'unilink-aovpn6': '78.33.10.60/32', 'unilink-aovpn7': '78.33.32.99/32', 'unilink-aovpn8': '78.33.32.100/30', 'unilink-aovpn9': '78.33.32.104/30', 'ncc-mvss-team-1': '5.148.8.192/26', 'unilink-aovpn10': '78.33.32.108/32', 'unilink-aovpn11': '217.138.45.109/32', 'unilink-aovpn12': '217.138.45.110/32'}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-approved-premises', 'alerts_slack_channel': '#cas-events'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-community-accommodation-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://approved-premises-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'health-kick': '35.177.252.195/32', 'global-protect': '35.176.93.186/32', 'petty-france-wifi': '213.121.161.112/28', 'cloudplatform-live-1': '35.178.209.113/32', 'cloudplatform-live-2': '3.8.51.207/32', 'cloudplatform-live-3': '35.177.252.54/32'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'prod', 'namespace': 'hmpps-community-accommodation-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://approved-premises-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'health-kick': '35.177.252.195/32', 'global-protect': '35.176.93.186/32', 'petty-france-wifi': '213.121.161.112/28', 'cloudplatform-live-1': '35.178.209.113/32', 'cloudplatform-live-2': '3.8.51.207/32', 'cloudplatform-live-3': '35.177.252.54/32'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + versions: PROD: {'circleci': {'hmpps_orb': '8.2.1'}, 'dockerfile': {'base_image': 'eclipse-temurin:21-jre-jammy'}, 'helm_dependencies': {'generic-service': '2.9.2', 'generic-prometheus-alerts': '1.4.0'}} DEV: {'circleci': {'hmpps_orb': '8.2.1'}} + + +hmpps-elephants-scripts +======================= +hmpps-electronic-monitoring-create-an-order-prototype +======================= +hmpps-github-actions-runner +======================= + latest_commit: PROD: {'sha': 'ff65de971b0d970914dc212d1bcf01faad0ce44b', 'date_time': '2025-01-17T12:11:00.000Z'} DEV: {'sha': 'ce959fbda708bd80ca7b714a4c4b7626bba090ce', 'date_time': '2025-02-10T15:24:58.000Z'} + + +hmpps-mailbox-register-api +======================= + github_repo: PROD: hmpps-mailbox-register-api DEV: hmpps-manage-custody-mailbox-register-api + + + app_insights_cloud_role_name: PROD: hmpps-mailbox-register-api DEV: hmpps-manage-custody-mailbox-register-api + + + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-mailbox-register-dev', 'info_path': '/info', 'health_path': '/health', 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'moic', 'alerts_slack_channel': ''} + DEV: {'name': 'dev', 'namespace': 'hmpps-manage-custody-mailbox-register-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-custody-mailbox-register-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + description: PROD: A centralised functional mailbox registry providing email addresses for probation and prisons. The service would act as a source of truth for functional mailbox email addresses that services across HMPPS can use. (bootstrapped 2024-12-13) DEV: Functional mailbox registry for manage custody service area. (bootstrapped 2024-12-13) + + + latest_commit: PROD: {'sha': 'fe52604dc8451fee68b64dbe62b24b9b9e60e3fe', 'date_time': '2025-02-04T14:22:37.000Z'} DEV: {'sha': '94c04e981dcfafddb791987b883f62757d8a1ff2', 'date_time': '2025-02-19T09:48:58.000Z'} + + +person-search-index-from-delius +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-probation-integration-services-dev', 'info_path': '/info', 'health_path': '/', 'url': 'https://person-search-index-from-delius-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-probation-integration-services-dev', 'info_path': None, 'health_path': None, 'url': 'https://person-search-index-from-delius-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-probation-integration-services-preprod', 'info_path': '/info', 'health_path': '/', 'url': 'https://person-search-index-from-delius-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'hmpps-probation-integration-services-preprod', 'info_path': None, 'health_path': None, 'url': 'https://person-search-index-from-delius-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-probation-integration-services-prod', 'info_path': '/info', 'health_path': '/', 'url': 'https://person-search-index-from-delius.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'hmpps-probation-integration-services-prod', 'info_path': None, 'health_path': None, 'url': 'https://person-search-index-from-delius.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +cmd-api +======================= +hmpps-book-a-video-link-ui +======================= + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-book-a-video-link-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://book-a-video-link-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['prisons', 'moj_cloud_platform', 'digital_staff_and_mojo']}}, 'values-preprod.yaml': {'generic-service': {'groups': ['prisons', 'moj_cloud_platform', 'digital_staff_and_mojo'], 'pen-tester-1': '80.195.27.199/32', 'pen-tester-2': '109.151.94.16/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-book-a-video-link-preprod', 'alerts_slack_channel': '#book-a-video-link-alerts_non-prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-book-a-video-link-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://book-a-video-link-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['prisons', 'moj_cloud_platform', 'digital_staff_and_mojo']}}, 'values-preprod.yaml': {'generic-service': {'groups': ['prisons', 'moj_cloud_platform', 'digital_staff_and_mojo'], 'pen-tester-1': '80.195.27.199/32', 'pen-tester-2': '109.151.94.16/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-book-a-video-link-preprod', 'alerts_slack_channel': '#book-a-video-link-alerts_non-prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-book-a-video-link-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://book-a-video-link.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['prisons', 'moj_cloud_platform', 'digital_staff_and_mojo']}}, 'values-prod.yaml': {'generic-service': {'groups': ['prisons', 'probation', 'moj_cloud_platform', 'digital_staff_and_mojo', 'analytic-platform'], 'royal-courts-of-justice': '178.248.34.43/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-book-a-video-link-prod', 'alerts_slack_channel': '#book-a-video-link-alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-book-a-video-link-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://book-a-video-link.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['prisons', 'moj_cloud_platform', 'digital_staff_and_mojo']}}, 'values-prod.yaml': {'generic-service': {'groups': ['prisons', 'probation', 'moj_cloud_platform', 'digital_staff_and_mojo', 'analytic-platform'], 'royal-courts-of-justice': '178.248.34.43/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-book-a-video-link-prod', 'alerts_slack_channel': '#book-a-video-link-alerts'} +cas3-and-delius +======================= +soc-and-delius +======================= +hmpps-jobs-board-reporting-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-jobs-board-reporting-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://jobs-board-reporting-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'education-alerts-non-prod', 'alerts_slack_channel': '#education_alerts_non_prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-jobs-board-reporting-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://jobs-board-reporting-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'education-alerts-non-prod', 'alerts_slack_channel': '#prison-education-alerts-non-prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-jobs-board-reporting-preprod', 'info_path': None, 'health_path': None, 'url': 'https://jobs-board-reporting-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'education-alerts-non-prod', 'alerts_slack_channel': '#education_alerts_non_prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-jobs-board-reporting-preprod', 'info_path': None, 'health_path': None, 'url': 'https://jobs-board-reporting-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'education-alerts-non-prod', 'alerts_slack_channel': '#prison-education-alerts-non-prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-jobs-board-reporting-prod', 'info_path': None, 'health_path': None, 'url': 'https://jobs-board-reporting.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'education-alerts', 'alerts_slack_channel': '#education_alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-jobs-board-reporting-prod', 'info_path': None, 'health_path': None, 'url': 'https://jobs-board-reporting.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'education-alerts', 'alerts_slack_channel': '#prison-education-alerts'} +health-kick +======================= + github_template_repo: PROD: DEV: None + + + Environment prod: + PROD: {'name': 'prod', 'namespace': 'dps-toolkit', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'pingdom': '5.172.196.188,13.232.220.164,23.22.2.46,23.83.129.219,23.92.127.2,23.106.37.99,23.111.152.74,23.111.159.174,37.252.231.50,43.225.198.122,43.229.84.12,46.20.45.18,46.246.122.10,50.2.185.66,50.16.153.186,52.0.204.16,52.24.42.103,52.48.244.35,52.52.34.158,52.52.95.213,52.52.118.192,52.57.132.90,52.59.46.112,52.59.147.246,52.62.12.49,52.63.142.2,52.63.164.147,52.63.167.55,52.67.148.55,52.73.209.122,52.89.43.70,52.194.115.181,52.197.31.124,52.197.224.235,52.198.25.184,52.201.3.199,52.209.34.226,52.209.186.226,52.210.232.124,54.68.48.199,54.70.202.58,54.94.206.111,64.237.49.203,64.237.55.3,66.165.229.130,66.165.233.234,72.46.130.18,72.46.131.10,76.72.167.154,76.72.172.208,76.164.234.106,76.164.234.130,82.103.136.16,82.103.139.165,82.103.145.126,85.195.116.134,89.163.146.247,89.163.242.206,94.75.211.73,94.75.211.74,94.247.174.83,96.47.225.18,103.10.197.10,103.47.211.210,104.129.24.154,104.129.30.18,107.182.234.77,108.181.70.3,148.72.170.233,148.72.171.17,151.106.52.134,159.122.168.9,162.208.48.94,162.218.67.34,162.253.128.178,168.1.203.46,169.51.2.18,169.54.70.214,169.56.174.151,172.241.112.86,173.248.147.18,173.254.206.242,174.34.156.130,175.45.132.20,178.162.206.244,178.255.152.2,178.255.153.2,179.50.12.212,184.75.208.210,184.75.209.18,184.75.210.90,184.75.210.226,184.75.214.66,184.75.214.98,185.39.146.214,185.39.146.215,185.70.76.23,185.93.3.65,185.136.156.82,185.152.65.167,185.180.12.65,185.246.208.82,188.172.252.34,190.120.230.7,196.240.207.18,196.244.191.18,196.245.151.42,199.87.228.66,200.58.101.248,201.33.21.5,207.244.80.239,209.58.139.193,209.58.139.194,209.95.50.14,212.78.83.12,212.78.83.16', 'applicationInsights': '13.86.97.224/28,20.37.156.64/27,20.37.192.80/29,20.38.80.80/28,20.40.104.96/28,20.40.124.176/28,20.40.129.32/28,20.40.129.96/28,20.42.4.64/27,20.42.35.32/28,20.42.129.32/27,20.43.40.80/28,20.43.64.80/29,20.43.128.96/29,20.45.5.160/28,20.189.106.64/29,23.100.224.16/28,40.74.24.80/28,40.80.186.128/26,40.91.82.48/28,40.119.8.96/27,51.104.24.80/29,51.105.9.128/28,51.137.160.80/29,51.144.56.96/28,52.139.250.96/28,52.140.232.160/28,52.158.28.64/28,52.229.216.48/28,191.233.26.176/28,191.235.224.80/29'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'dps-toolkit', 'info_path': None, 'health_path': '/health', 'url': 'https://health-kick.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'pingdom': '5.172.196.188,13.232.220.164,23.22.2.46,23.83.129.219,23.92.127.2,23.106.37.99,23.111.152.74,23.111.159.174,37.252.231.50,43.225.198.122,43.229.84.12,46.20.45.18,46.246.122.10,50.2.185.66,50.16.153.186,52.0.204.16,52.24.42.103,52.48.244.35,52.52.34.158,52.52.95.213,52.52.118.192,52.57.132.90,52.59.46.112,52.59.147.246,52.62.12.49,52.63.142.2,52.63.164.147,52.63.167.55,52.67.148.55,52.73.209.122,52.89.43.70,52.194.115.181,52.197.31.124,52.197.224.235,52.198.25.184,52.201.3.199,52.209.34.226,52.209.186.226,52.210.232.124,54.68.48.199,54.70.202.58,54.94.206.111,64.237.49.203,64.237.55.3,66.165.229.130,66.165.233.234,72.46.130.18,72.46.131.10,76.72.167.154,76.72.172.208,76.164.234.106,76.164.234.130,82.103.136.16,82.103.139.165,82.103.145.126,85.195.116.134,89.163.146.247,89.163.242.206,94.75.211.73,94.75.211.74,94.247.174.83,96.47.225.18,103.10.197.10,103.47.211.210,104.129.24.154,104.129.30.18,107.182.234.77,108.181.70.3,148.72.170.233,148.72.171.17,151.106.52.134,159.122.168.9,162.208.48.94,162.218.67.34,162.253.128.178,168.1.203.46,169.51.2.18,169.54.70.214,169.56.174.151,172.241.112.86,173.248.147.18,173.254.206.242,174.34.156.130,175.45.132.20,178.162.206.244,178.255.152.2,178.255.153.2,179.50.12.212,184.75.208.210,184.75.209.18,184.75.210.90,184.75.210.226,184.75.214.66,184.75.214.98,185.39.146.214,185.39.146.215,185.70.76.23,185.93.3.65,185.136.156.82,185.152.65.167,185.180.12.65,185.246.208.82,188.172.252.34,190.120.230.7,196.240.207.18,196.244.191.18,196.245.151.42,199.87.228.66,200.58.101.248,201.33.21.5,207.244.80.239,209.58.139.193,209.58.139.194,209.95.50.14,212.78.83.12,212.78.83.16', 'applicationInsights': '13.86.97.224/28,20.37.156.64/27,20.37.192.80/29,20.38.80.80/28,20.40.104.96/28,20.40.124.176/28,20.40.129.32/28,20.40.129.96/28,20.42.4.64/27,20.42.35.32/28,20.42.129.32/27,20.43.40.80/28,20.43.64.80/29,20.43.128.96/29,20.45.5.160/28,20.189.106.64/29,23.100.224.16/28,40.74.24.80/28,40.80.186.128/26,40.91.82.48/28,40.119.8.96/27,51.104.24.80/29,51.105.9.128/28,51.137.160.80/29,51.144.56.96/28,52.139.250.96/28,52.140.232.160/28,52.158.28.64/28,52.229.216.48/28,191.233.26.176/28,191.235.224.80/29'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_tech', 'alerts_slack_channel': '#hmpps_tech_alerts'} + versions: PROD: {'circleci': {'hmpps_orb': '7'}} DEV: {'circleci': {'hmpps_orb': '7'}, 'dockerfile': {'base_image': 'node:20-bookworm-slim'}, 'helm_dependencies': {'generic-service': 2.7, 'generic-prometheus-alerts': 1.3}} + + +help-with-prison-visits-internal +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'help-with-prison-visits-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://manage.hwpv-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'help-with-prison-visits-devtest', 'alerts_slack_channel': '#help-with-prison-visits-alerts-devtest'} + DEV: {'name': 'dev', 'namespace': 'help-with-prison-visits-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://manage.hwpv-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'help-with-prison-visits-devtest', 'alerts_slack_channel': '#help-with-prison-visits-alerts-devtest'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'help-with-prison-visits-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://manage.hwpv-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'help-with-prison-visits-devtest', 'alerts_slack_channel': '#help-with-prison-visits-alerts-devtest'} + DEV: {'name': 'preprod', 'namespace': 'help-with-prison-visits-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://manage.hwpv-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'help-with-prison-visits-devtest', 'alerts_slack_channel': '#help-with-prison-visits-alerts-devtest'} +hmpps-book-secure-move-frontend +======================= + Environment production: + PROD: {'name': 'production', 'namespace': 'hmpps-book-secure-move-frontend-production', 'info_path': None, 'health_path': None, 'url': 'https://bookasecuremove.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'allowlist': False}}, 'values-production.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'production', 'namespace': 'hmpps-book-secure-move-frontend-production', 'info_path': None, 'health_path': None, 'url': 'https://bookasecuremove.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'allowlist': False}}, 'values-production.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +hmpps-micro-frontend-components +======================= + veracode_last_completed_scan_date: PROD: 2025-02-17T08:20:46.000Z DEV: 2025-02-10T08:17:43.000Z + + + veracode_results_url: PROD: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1782369:46941873 DEV: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1782369:46656165 + + + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-micro-frontend-components-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://frontend-components-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'police'], 'sscl-york': '62.6.61.29/32', 'sscl-azure': '51.142.106.199/32', 'sscl-newport': '217.38.237.212/32', 'sscl-blackpool': '31.121.5.27/32', 'sscl-newcastle': '62.172.79.105/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-micro-frontend-components-non-prod', 'alerts_slack_channel': '#connect-dps-non-prod-alerts'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-micro-frontend-components-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://frontend-components-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'police'], 'sscl-york': '62.6.61.29/32', 'sscl-azure': '51.142.106.199/32', 'sscl-newport': '217.38.237.212/32', 'sscl-blackpool': '31.121.5.27/32', 'sscl-newcastle': '62.172.79.105/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-micro-frontend-components-non-prod', 'alerts_slack_channel': '#connect-dps-non-prod-alerts'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-micro-frontend-components-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://frontend-components.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'police'], 'sscl-york': '62.6.61.29/32', 'sscl-azure': '51.142.106.199/32', 'sscl-newport': '217.38.237.212/32', 'sscl-blackpool': '31.121.5.27/32', 'sscl-newcastle': '62.172.79.105/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-micro-frontend-components-prod', 'alerts_slack_channel': '#connect-dps-prod-alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-micro-frontend-components-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://frontend-components.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'police'], 'sscl-york': '62.6.61.29/32', 'sscl-azure': '51.142.106.199/32', 'sscl-newport': '217.38.237.212/32', 'sscl-blackpool': '31.121.5.27/32', 'sscl-newcastle': '62.172.79.105/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-micro-frontend-components-prod', 'alerts_slack_channel': '#connect-dps-prod-alerts'} +hmpps-alerts-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-alerts-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://alerts-ui-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform']}}, 'values-dev.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'accessibility-testing-1']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-non-prod', 'alerts_slack_channel': '#move-and-improve-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-alerts-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://alerts-ui-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform']}}, 'values-dev.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'accessibility-testing-1']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-non-prod', 'alerts_slack_channel': '#move-and-improve-alerts-non-prod'} +money-to-prisoners-cashbook +======================= +prison-visits-public +======================= + github_template_repo: PROD: DEV: None + + + Environment staging: + PROD: {'name': 'staging', 'namespace': 'prison-visits-booking-staging', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': None, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'staging', 'namespace': 'prison-visits-booking-staging', 'info_path': None, 'health_path': '/health', 'url': 'https://preprod.prisonvisits.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': None, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment dev: + PROD: {'name': 'dev', 'namespace': 'prison-visits-booking-dev', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': None, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'prison-visits-booking-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://dev.prisonvisits.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': None, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment production: + PROD: {'name': 'production', 'namespace': 'prison-visits-booking-production', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': None, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'production', 'namespace': 'prison-visits-booking-production', 'info_path': None, 'health_path': '/health', 'url': 'https://www.prisonvisits.service.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': None, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +hmpps-record-a-recall +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-record-a-recall-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://record-a-recall-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-record-a-recall-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://record-a-recall-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['circleci', 'internal', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-record-a-recall-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://record-a-recall-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-preprod.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24', 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-record-a-recall-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://record-a-recall-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['circleci', 'internal', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-preprod.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24', 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + versions: PROD: {'circleci': {'hmpps_orb': '8'}} DEV: {'circleci': {'hmpps_orb': '8'}, 'dockerfile': {'base_image': 'node:22.13-bookworm-slim'}, 'helm_dependencies': {'generic-service': '3.8', 'generic-prometheus-alerts': '1.11'}} + + +hmpps-wmt-migration +======================= + github_template_repo: PROD: DEV: None + + +hmpps-probation-in-court-utils +======================= +hmpps-person-integration-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-person-integration-api-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://person-integration-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-person-integration-api-dev', 'alerts_slack_channel': ''} + DEV: None + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-person-integration-api-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://person-integration-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-person-integration-api-preprod', 'alerts_slack_channel': ''} + DEV: {'name': 'preprod', 'namespace': 'hmpps-person-integration-api-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://person-integration-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-person-integration-api-preprod', 'alerts_slack_channel': '#connect-dps-non-prod-alerts'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-person-integration-api-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://person-integration-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-person-integration-api-prod', 'alerts_slack_channel': ''} + DEV: None +hmpps-non-associations-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-non-associations-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://non-associations-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-non-associations-dev', 'alerts_slack_channel': '#non-associations-dev'} + DEV: {'name': 'dev', 'namespace': 'hmpps-non-associations-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://non-associations-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-non-associations-dev', 'alerts_slack_channel': '#non-associations-dev'} +hmpps-prison-roll-count +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-prison-roll-count-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://prison-roll-count.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'move-a-prisoner-alerts-nonprod', 'alerts_slack_channel': '#move-a-prisoner-alerts-nonprod'} + DEV: {'name': 'prod', 'namespace': 'hmpps-prison-roll-count-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://prison-roll-count.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'move-a-prisoner-alerts-nonprod', 'alerts_slack_channel': '#move-a-prisoner-alerts-nonprod'} +hmpps-registers +======================= + veracode_last_completed_scan_date: PROD: 2025-02-17T06:47:38.000Z DEV: 2025-02-10T06:46:57.000Z + + + veracode_results_url: PROD: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1144810:46938875 DEV: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1144810:46653005 + + +probation-search-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-probation-search-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://probation-search-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['moj_cloud_platform', 'digital_staff_and_mojo', 'unilink_staff', 'probation', 'prisons', 'private_prisons']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': ''} + DEV: {'name': 'dev', 'namespace': 'hmpps-probation-search-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://probation-search-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['moj_cloud_platform', 'digital_staff_and_mojo', 'unilink_staff', 'probation', 'prisons', 'private_prisons']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-probation-search-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://probation-search-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['moj_cloud_platform', 'digital_staff_and_mojo', 'unilink_staff', 'probation', 'prisons', 'private_prisons']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': ''} + DEV: {'name': 'preprod', 'namespace': 'hmpps-probation-search-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://probation-search-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['moj_cloud_platform', 'digital_staff_and_mojo', 'unilink_staff', 'probation', 'prisons', 'private_prisons']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-probation-search-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://probation-search.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['moj_cloud_platform', 'digital_staff_and_mojo', 'unilink_staff', 'probation', 'prisons', 'private_prisons']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': ''} + DEV: {'name': 'prod', 'namespace': 'hmpps-probation-search-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://probation-search.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['moj_cloud_platform', 'digital_staff_and_mojo', 'unilink_staff', 'probation', 'prisons', 'private_prisons']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': '#probation-integration-notifications'} +hmpps-sre-docs +======================= +hmpps-challenge-support-intervention-plan-api +======================= + veracode_last_completed_scan_date: PROD: 2025-02-17T07:14:27.000Z DEV: 2025-02-10T07:17:59.000Z + + + veracode_results_url: PROD: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:2133135:46939635 DEV: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:2133135:46653901 + + + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-challenge-support-intervention-plan-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://csip-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform']}}, 'values-dev.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prisons']}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-non-prod', 'alerts_slack_channel': '#move-and-improve-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-challenge-support-intervention-plan-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://csip-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform']}}, 'values-dev.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prisons']}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-non-prod', 'alerts_slack_channel': '#move-and-improve-alerts-non-prod'} +hmpps-temporary-accommodation-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-community-accommodation-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://transitional-accommodation-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons'], 'palo-alto-prisma-access-corporate': '128.77.75.64/26'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-community-accommodation-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://transitional-accommodation-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons'], 'palo-alto-prisma-access-corporate': '128.77.75.64/26'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-community-accommodation-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://transitional-accommodation.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons'], 'palo-alto-prisma-access-corporate': '128.77.75.64/26'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'prod', 'namespace': 'hmpps-community-accommodation-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://transitional-accommodation.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons'], 'palo-alto-prisma-access-corporate': '128.77.75.64/26'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +hmpps-manage-prison-visits-orchestration +======================= +hmpps-interventions-ui +======================= + veracode_last_completed_scan_date: PROD: 2025-02-20T07:21:06.000Z DEV: 2025-02-17T07:17:32.000Z + + + veracode_results_url: PROD: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1141100:47092555 DEV: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1141100:46939626 + + + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-interventions-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://hmpps-interventions-ui-preprod.apps.live-1.cloud-platform.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleUpdateActionById 949110 "t:none,deny,status:423,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:423,logdata:%{SERVER_NAME}"\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941310, \\\n ctl:ruleRemoveById=941130, \\\n ctl:ruleRemoveById=942250, \\\n nolog, \\\n pass"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'hmpps-interventions-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://hmpps-interventions-ui-preprod.apps.live-1.cloud-platform.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleUpdateActionById 949110 "t:none,deny,status:423,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:423,logdata:%{SERVER_NAME}"\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941310, \\\n ctl:ruleRemoveById=941130, \\\n ctl:ruleRemoveById=942250, \\\n nolog, \\\n pass"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-interventions-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://refer-monitor-intervention.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleUpdateActionById 949110 "t:none,deny,status:423,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:423,logdata:%{SERVER_NAME}"\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941310, \\\n ctl:ruleRemoveById=941130, \\\n ctl:ruleRemoveById=942250, \\\n nolog, \\\n pass"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'hmpps-interventions-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://refer-monitor-intervention.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleUpdateActionById 949110 "t:none,deny,status:423,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:423,logdata:%{SERVER_NAME}"\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941310, \\\n ctl:ruleRemoveById=941130, \\\n ctl:ruleRemoveById=942250, \\\n nolog, \\\n pass"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} + versions: PROD: {'circleci': {'hmpps_orb': '7.5.1'}} DEV: {'circleci': {'hmpps_orb': '7.5.1'}, 'dockerfile': {'base_image': 'node:20-alpine3.17'}, 'helm_dependencies': {'generic-service': '3.4.0'}} + + +hmpps-book-a-video-link-api +======================= + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-book-a-video-link-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://book-a-video-link-api-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal'], 'pen-tester-1': '80.195.27.199/32', 'pen-tester-2': '109.151.94.16/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-book-a-video-link-preprod', 'alerts_slack_channel': '#book-a-video-link-alerts_non-prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-book-a-video-link-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://book-a-video-link-api-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal'], 'pen-tester-1': '80.195.27.199/32', 'pen-tester-2': '109.151.94.16/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-book-a-video-link-preprod', 'alerts_slack_channel': '#book-a-video-link-alerts_non-prod'} + versions: PROD: {'circleci': {'hmpps_orb': '10'}, 'dockerfile': {'base_image': 'eclipse-temurin:21-jre-jammy', 'rds_ca_cert': 'global-bundle.pem'}, 'helm_dependencies': {'generic-service': '3.7', 'generic-prometheus-alerts': '1.11'}} DEV: {'circleci': {'hmpps_orb': '10'}} + + +hmpps-manage-adjudications-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-manage-adjudications-api-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-adjudications-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT DELETE"\n# Missing User Agent Header\nSecRuleRemoveById 920320\n', 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-manage-adjudications-api-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-adjudications-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT DELETE"\n# Missing User Agent Header\nSecRuleRemoveById 920320\n', 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} +offender-events-ui +======================= +approved-premises-and-oasys +======================= +prison-custody-status-to-delius +======================= +sentence-plan-and-delius +======================= +money-to-prisoners-api +======================= +use-of-force +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'use-of-force-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://use-of-force.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['moj_cloud_platform', 'digital_staff_and_mojo']}}, 'values-prod.yaml': {'generic-service': {'groups': ['prisons', 'private_prisons', 'probation', 'moj_cloud_platform', 'digital_staff_and_mojo']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'move-a-prisoner-alerts-prod', 'alerts_slack_channel': '#move-a-prisoner-alerts'} + DEV: {'name': 'prod', 'namespace': 'use-of-force-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://use-of-force.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['moj_cloud_platform', 'digital_staff_and_mojo']}}, 'values-prod.yaml': {'generic-service': {'groups': ['prisons', 'private_prisons', 'probation', 'moj_cloud_platform', 'digital_staff_and_mojo']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'move-a-prisoner-alerts-prod', 'alerts_slack_channel': '#move-a-prisoner-alerts'} +help-with-prison-visits-external +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'help-with-prison-visits-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://help-with-prison-visits-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'help-with-prison-visits-devtest', 'alerts_slack_channel': '#help-with-prison-visits-alerts-devtest'} + DEV: {'name': 'dev', 'namespace': 'help-with-prison-visits-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://help-with-prison-visits-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'help-with-prison-visits-devtest', 'alerts_slack_channel': '#help-with-prison-visits-alerts-devtest'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'help-with-prison-visits-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://help-with-prison-visits-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'help-with-prison-visits-devtest', 'alerts_slack_channel': '#help-with-prison-visits-alerts-devtest'} + DEV: {'name': 'preprod', 'namespace': 'help-with-prison-visits-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://help-with-prison-visits-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'help-with-prison-visits-devtest', 'alerts_slack_channel': '#help-with-prison-visits-alerts-devtest'} +hmpps-launchpad-auth +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-launchpad-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://launchpad-auth-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'groups': ['internal'], 'nutrition-app-dev': '94.14.26.195', 'nutrition-app-dev-2': '94.12.242.130', 'nutrition-app-dev-3': '51.19.33.88', 'nutrition-app-staging': '3.10.88.156', 'uservision-accessibility-testers': '5.181.59.114/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# Default is only GET HEAD POST OPTIONS so need to include PUT, DELETE etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT DELETE"\nSecRuleUpdateTargetById 949110 "!ARGS:/redirect_uri/"\n', 'alert_severity_label': 'hmpps-launchpad-nonprod', 'alerts_slack_channel': ' #launchpad-alerts-nonprod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-launchpad-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://launchpad-auth-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'groups': ['internal'], 'nutrition-app-dev': '94.14.26.195', 'nutrition-app-dev-2': '94.12.242.130', 'nutrition-app-dev-3': '51.19.33.88', 'nutrition-app-staging': '3.10.88.156', 'uservision-accessibility-testers': '5.181.59.114/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# Default is only GET HEAD POST OPTIONS so need to include PUT, DELETE etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT DELETE"\nSecRuleUpdateTargetById 949110 "!ARGS:/redirect_uri/"\n', 'alert_severity_label': 'hmpps-launchpad-nonprod', 'alerts_slack_channel': ' #launchpad-alerts-nonprod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-launchpad-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://launchpad-auth.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'prisoner_facing_services'], 'nutrition-app-prod': '18.170.16.19', 'nutrition-app-prod-1': '51.19.33.88'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# Default is only GET HEAD POST OPTIONS so need to include PUT, DELETE etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT DELETE"\nSecRuleUpdateTargetById 949110 "!ARGS:/redirect_uri/"\n', 'alert_severity_label': 'hmpps-launchpad', 'alerts_slack_channel': ' #launchpad-alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-launchpad-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://launchpad-auth.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'prisoner_facing_services'], 'nutrition-app-prod': '18.170.16.19', 'nutrition-app-prod-1': '51.19.33.88'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# Default is only GET HEAD POST OPTIONS so need to include PUT, DELETE etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT DELETE"\nSecRuleUpdateTargetById 949110 "!ARGS:/redirect_uri/"\n', 'alert_severity_label': 'hmpps-launchpad', 'alerts_slack_channel': ' #launchpad-alerts'} +hmpps-community-accommodation-tier-2-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-community-accommodation-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://community-accommodation-tier-2-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-community-accommodation-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://community-accommodation-tier-2-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-community-accommodation-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://community-accommodation-tier-2-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-community-accommodation-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://community-accommodation-tier-2-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-community-accommodation-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://short-term-accommodation-cas-2.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'prod', 'namespace': 'hmpps-community-accommodation-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://short-term-accommodation-cas-2.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +wmt-worker +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-workload-dev', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-workload-dev', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-workload-preprod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-tier', 'alerts_slack_channel': '#manage_a_workforce_dev'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-workload-preprod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-workload-prod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-workload-prod-alerts', 'alerts_slack_channel': '#manage-a-workforce_live'} + DEV: {'name': 'prod', 'namespace': 'hmpps-workload-prod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-workload-prod-alerts', 'alerts_slack_channel': '#manage-a-workforce_live'} + latest_commit: PROD: {'sha': '15aa84f5107001007e5762665b86d1ac9a4b81a6', 'date_time': '2025-01-14T09:09:48.000Z'} DEV: {'sha': 'd5a63c5d3287f89a7bdfb3b3d5e85e02abe033a5', 'date_time': '2025-02-19T10:07:57.000Z'} + + +hmpps-community-accommodation-tier-2-bail-ui +======================= +hmpps-document-management-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-document-management-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://document-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_document_management_api_non_prod', 'alerts_slack_channel': '#hmpps-document-management-nonprod-alerts'} + DEV: {'name': 'dev', 'namespace': 'hmpps-document-management-dev', 'info_path': None, 'health_path': None, 'url': 'https://document-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_document_management_api_non_prod', 'alerts_slack_channel': '#hmpps-document-management-nonprod-alerts'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-document-management-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://document-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_document_management_api_non_prod', 'alerts_slack_channel': '#hmpps-document-management-nonprod-alerts'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-document-management-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://document-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_document_management_api_non_prod', 'alerts_slack_channel': '#hmpps-document-management-nonprod-alerts'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-document-management-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://document-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'circleci']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_document_management_api', 'alerts_slack_channel': '#hmpps-document-management-alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-document-management-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://document-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'circleci']}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_document_management_api', 'alerts_slack_channel': '#hmpps-document-management-alerts'} +hmpps-prison-visits-testing-helper-api +======================= + Environment staging: + PROD: {'name': 'staging', 'namespace': 'visit-someone-in-prison-backend-svc-staging', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-prison-visits-testing-helper-api-staging.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'circleci']}}, 'values-staging.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} + DEV: {'name': 'staging', 'namespace': 'visit-someone-in-prison-backend-svc-staging', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-prison-visits-testing-helper-api-staging.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'circleci']}}, 'values-staging.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment dev: + PROD: {'name': 'dev', 'namespace': 'visit-someone-in-prison-backend-svc-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-prison-visits-testing-helper-api-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'circleci']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} + DEV: {'name': 'dev', 'namespace': 'visit-someone-in-prison-backend-svc-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-prison-visits-testing-helper-api-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'circleci']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +domain-events-and-delius +======================= +hmpps-visits-prison-config-service +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'visit-someone-in-prison-backend-svc-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-visits-prison-config-service.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': False, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'visits-alerts', 'alerts_slack_channel': '#visits-alerts'} + DEV: {'name': 'prod', 'namespace': 'visit-someone-in-prison-backend-svc-prod', 'info_path': None, 'health_path': None, 'url': 'https://hmpps-visits-prison-config-service.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment staging: + PROD: {'name': 'staging', 'namespace': 'visit-someone-in-prison-backend-svc-staging', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-visits-prison-config-service-staging.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': False, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-staging.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} + DEV: {'name': 'staging', 'namespace': 'visit-someone-in-prison-backend-svc-staging', 'info_path': None, 'health_path': None, 'url': 'https://hmpps-visits-prison-config-service-staging.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-staging.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment dev: + PROD: {'name': 'dev', 'namespace': 'visit-someone-in-prison-backend-svc-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-visits-prison-config-service-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': False, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} + DEV: {'name': 'dev', 'namespace': 'visit-someone-in-prison-backend-svc-dev', 'info_path': None, 'health_path': None, 'url': 'https://hmpps-visits-prison-config-service-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'visit-someone-in-prison-backend-svc-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-visits-prison-config-service-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': False, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} + DEV: {'name': 'preprod', 'namespace': 'visit-someone-in-prison-backend-svc-preprod', 'info_path': None, 'health_path': None, 'url': 'https://hmpps-visits-prison-config-service-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +justice-email-and-delius +======================= + Environment preprod: + PROD: None + DEV: {'name': 'preprod', 'namespace': 'hmpps-probation-integration-services-preprod', 'info_path': None, 'health_path': None, 'url': 'https://justice-email-and-delius-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: None + DEV: {'name': 'prod', 'namespace': 'hmpps-probation-integration-services-prod', 'info_path': None, 'health_path': None, 'url': 'https://justice-email-and-delius.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +opd-and-delius +======================= +pathfinder +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'pathfinder-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://dev.pathfinder.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'prisons'], 'faculty-ai': '3.11.194.229/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine Off\nSecRequestBodyLimit 104857600\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRule REQUEST_URI "@contains documents/upload" \\\n "id:1004,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=attack-lfi;REQUEST_BODY"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'dps-sed-alerts-nonprod', 'alerts_slack_channel': '#sed_nonprod_alerts'} + DEV: {'name': 'dev', 'namespace': 'pathfinder-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://dev.pathfinder.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'prisons'], 'faculty-ai': '3.11.194.229/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine Off\nSecRequestBodyLimit 104857600\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRule REQUEST_URI "@contains documents/upload" \\\n "id:1004,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=attack-lfi;REQUEST_BODY"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'dps-sed-alerts-nonprod', 'alerts_slack_channel': '#sed_nonprod_alerts'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'pathfinder-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://preprod.pathfinder.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal'], 'home-office-vpn-1': '52.56.62.128/25'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine Off\nSecRequestBodyLimit 104857600\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRule REQUEST_URI "@contains documents/upload" \\\n "id:1004,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=attack-lfi;REQUEST_BODY"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'dps-sed-alerts-nonprod', 'alerts_slack_channel': '#sed_nonprod_alerts'} + DEV: {'name': 'preprod', 'namespace': 'pathfinder-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://preprod.pathfinder.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal'], 'home-office-vpn-1': '52.56.62.128/25'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine Off\nSecRequestBodyLimit 104857600\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRule REQUEST_URI "@contains documents/upload" \\\n "id:1004,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=attack-lfi;REQUEST_BODY"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'dps-sed-alerts-nonprod', 'alerts_slack_channel': '#sed_nonprod_alerts'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'pathfinder-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://pathfinder.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'police'], 'police-13': '31.121.22.64/27', 'police-14': '82.16.19.192/27', 'police-4-old': '80.194.71.110/32', 'home-office-vpn-1': '52.56.62.128/25', 'police-derbyshire-1': '80.197.71.96/28', 'police-derbyshire-2': '82.33.248.160/28', 'police-derbyshire-3': '149.86.95.229/28', 'police-south-wales-1': '31.121.85.162/32', 'police-south-wales-2': '62.254.151.122/32', 'police-south-wales-4': '62.7.232.90/32', 'police-thames-valley-1': '165.225.80.0/22', 'police-thames-valley-2': '165.225.16.0/23', 'police-thames-valley-3': '165.225.196.0/23', 'police-thames-valley-4': '165.225.198.0/23', 'police-thames-valley-5': '147.161.236.0/23', 'police-thames-valley-6': '147.161.166.0/23', 'police-thames-valley-7': '147.161.224.0/23', 'police-thames-valley-8': '147.161.140.0/23', 'police-thames-valley-9': '147.161.142.0/23', 'west-midlands-police-1': '195.89.175.236/32', 'west-midlands-police-2': '195.89.175.220/32', 'police-leicestershire-1': '217.137.155.48/28', 'police-leicestershire-2': '62.254.166.88/29', 'police-leicestershire-3': '62.255.220.0/29', 'police-leicestershire-4': '213.106.235.80/28', 'police-leicestershire-5': '62.255.14.112/29', 'police-leicestershire-6': '62.255.220.16/29', 'police-thames-valley-10': '147.161.144.0/23', 'police-thames-valley-11': '170.85.58.0/23', 'police-thames-valley-12': '170.85.84.0/23', 'police-thames-valley-13': '136.226.166.0/23', 'police-thames-valley-14': '136.226.190.0/23', 'durham-constabulary-primary': '217.23.235.242/32', 'durham-constabulary-secondary': '217.23.234.226/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine Off\nSecRequestBodyLimit 104857600\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRule REQUEST_URI "@contains documents/upload" \\\n "id:1004,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=attack-lfi;REQUEST_BODY"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'dps-sed-alerts-prod', 'alerts_slack_channel': '#dps_sed_alerts'} + DEV: {'name': 'prod', 'namespace': 'pathfinder-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://pathfinder.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'police'], 'police-13': '31.121.22.64/27', 'police-14': '82.16.19.192/27', 'police-4-old': '80.194.71.110/32', 'home-office-vpn-1': '52.56.62.128/25', 'police-derbyshire-1': '80.197.71.96/28', 'police-derbyshire-2': '82.33.248.160/28', 'police-derbyshire-3': '149.86.95.229/28', 'police-south-wales-1': '31.121.85.162/32', 'police-south-wales-2': '62.254.151.122/32', 'police-south-wales-4': '62.7.232.90/32', 'police-thames-valley-1': '165.225.80.0/22', 'police-thames-valley-2': '165.225.16.0/23', 'police-thames-valley-3': '165.225.196.0/23', 'police-thames-valley-4': '165.225.198.0/23', 'police-thames-valley-5': '147.161.236.0/23', 'police-thames-valley-6': '147.161.166.0/23', 'police-thames-valley-7': '147.161.224.0/23', 'police-thames-valley-8': '147.161.140.0/23', 'police-thames-valley-9': '147.161.142.0/23', 'west-midlands-police-1': '195.89.175.236/32', 'west-midlands-police-2': '195.89.175.220/32', 'police-leicestershire-1': '217.137.155.48/28', 'police-leicestershire-2': '62.254.166.88/29', 'police-leicestershire-3': '62.255.220.0/29', 'police-leicestershire-4': '213.106.235.80/28', 'police-leicestershire-5': '62.255.14.112/29', 'police-leicestershire-6': '62.255.220.16/29', 'police-thames-valley-10': '147.161.144.0/23', 'police-thames-valley-11': '170.85.58.0/23', 'police-thames-valley-12': '170.85.84.0/23', 'police-thames-valley-13': '136.226.166.0/23', 'police-thames-valley-14': '136.226.190.0/23', 'durham-constabulary-primary': '217.23.235.242/32', 'durham-constabulary-secondary': '217.23.234.226/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine Off\nSecRequestBodyLimit 104857600\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRule REQUEST_URI "@contains documents/upload" \\\n "id:1004,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=attack-lfi;REQUEST_BODY"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'dps-sed-alerts-prod', 'alerts_slack_channel': '#dps_sed_alerts'} + description: PROD: None DEV: None + + + versions: PROD: {'circleci': {'hmpps_orb': '7'}} DEV: {'circleci': {'hmpps_orb': '7'}, 'dockerfile': {'base_image': 'node:20.12-bookworm-slim', 'rds_ca_cert': 'rds-ca-2019-root.pem'}, 'helm_dependencies': {'clamav': '1.1.0', 'generic-service': '2.8', 'generic-prometheus-alerts': '1.3.2'}} + + +hmpps-health-and-medication-api +======================= + api: PROD: False DEV: True + + + Environment preprod: + PROD: None + DEV: {'name': 'preprod', 'namespace': 'hmpps-health-and-medication-api-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://health-and-medication-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-prisoner-profile-non-prod', 'alerts_slack_channel': '#connect-dps-non-prod-alerts'} + versions: PROD: {'dockerfile': {'base_image': 'eclipse-temurin:21-jre-jammy', 'rds_ca_cert': 'global-bundle.pem'}} DEV: {} + + +make-recall-decision-ui +======================= + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'make-recall-decision-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://consider-a-recall-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons', 'probation'], 'pingdom-1': '5.172.196.188/32', 'pingdom-2': '13.232.220.164/32', 'pingdom-3': '23.22.2.46/32', 'pingdom-4': '23.83.129.219/32', 'pingdom-5': '23.92.127.2/32', 'pingdom-6': '23.106.37.99/32', 'pingdom-7': '23.111.152.74/32', 'pingdom-8': '23.111.159.174/32', 'pingdom-9': '23.238.193.202/32', 'pingdom-10': '37.252.231.50/32', 'pingdom-11': '43.225.198.122/32', 'pingdom-12': '43.229.84.12/32', 'pingdom-13': '46.20.45.18/32', 'pingdom-14': '46.246.122.10/32', 'pingdom-15': '50.2.185.66/32', 'pingdom-16': '50.16.153.186/32', 'pingdom-17': '52.0.204.16/32', 'pingdom-18': '52.24.42.103/32', 'pingdom-19': '52.48.244.35/32', 'pingdom-20': '52.52.34.158/32', 'pingdom-21': '52.52.95.213/32', 'pingdom-22': '52.52.118.192/32', 'pingdom-23': '52.57.132.90/32', 'pingdom-24': '52.59.46.112/32', 'pingdom-25': '52.59.147.246/32', 'pingdom-26': '52.62.12.49/32', 'pingdom-27': '52.63.142.2/32', 'pingdom-28': '52.63.164.147/32', 'pingdom-29': '52.63.167.55/32', 'pingdom-30': '52.67.148.55/32', 'pingdom-31': '52.73.209.122/32', 'pingdom-32': '52.89.43.70/32', 'pingdom-33': '52.194.115.181/32', 'pingdom-34': '52.197.31.124/32', 'pingdom-35': '52.197.224.235/32', 'pingdom-36': '52.198.25.184/32', 'pingdom-37': '52.201.3.199/32', 'pingdom-38': '52.209.34.226/32', 'pingdom-39': '52.209.186.226/32', 'pingdom-40': '52.210.232.124/32', 'pingdom-41': '54.68.48.199/32', 'pingdom-42': '54.70.202.58/32', 'pingdom-43': '54.94.206.111/32', 'pingdom-44': '64.237.49.203/32', 'pingdom-45': '64.237.55.3/32', 'pingdom-46': '66.165.229.130/32', 'pingdom-47': '66.165.233.234/32', 'pingdom-48': '72.46.130.18/32', 'pingdom-49': '72.46.131.10/32', 'pingdom-50': '76.72.167.154/32', 'pingdom-51': '76.72.172.208/32', 'pingdom-52': '76.164.234.106/32', 'pingdom-53': '76.164.234.130/32', 'pingdom-54': '82.103.136.16/32', 'pingdom-55': '82.103.139.165/32', 'pingdom-56': '82.103.145.126/32', 'pingdom-57': '85.195.116.134/32', 'pingdom-58': '89.163.146.247/32', 'pingdom-59': '89.163.242.206/32', 'pingdom-60': '94.75.211.73/32', 'pingdom-61': '94.75.211.74/32', 'pingdom-62': '94.247.174.83/32', 'pingdom-63': '96.47.225.18/32', 'pingdom-64': '103.10.197.10/32', 'pingdom-65': '103.47.211.210/32', 'pingdom-66': '104.129.24.154/32', 'pingdom-67': '104.129.30.18/32', 'pingdom-68': '107.182.234.77/32', 'pingdom-69': '148.72.170.233/32', 'pingdom-70': '148.72.171.17/32', 'pingdom-71': '151.106.52.134/32', 'pingdom-72': '159.122.168.9/32', 'pingdom-73': '162.208.48.94/32', 'pingdom-74': '162.218.67.34/32', 'pingdom-75': '162.253.128.178/32', 'pingdom-76': '168.1.203.46/32', 'pingdom-77': '169.51.2.18/32', 'pingdom-78': '169.54.70.214/32', 'pingdom-79': '169.56.174.151/32', 'pingdom-80': '172.241.112.86/32', 'pingdom-81': '173.248.147.18/32', 'pingdom-82': '173.254.206.242/32', 'pingdom-83': '174.34.156.130/32', 'pingdom-84': '175.45.132.20/32', 'pingdom-85': '178.162.206.244/32', 'pingdom-86': '178.255.152.2/32', 'pingdom-87': '178.255.153.2/32', 'pingdom-88': '179.50.12.212/32', 'pingdom-89': '184.75.208.210/32', 'pingdom-90': '184.75.209.18/32', 'pingdom-91': '184.75.210.90/32', 'pingdom-92': '184.75.210.226/32', 'pingdom-93': '184.75.214.66/32', 'pingdom-94': '184.75.214.98/32', 'pingdom-95': '185.39.146.214/32', 'pingdom-96': '185.39.146.215/32', 'pingdom-97': '185.70.76.23/32', 'pingdom-98': '185.93.3.65/32', 'pingdom-99': '185.136.156.82/32', 'pingdom-100': '185.152.65.167/32', 'pingdom-101': '185.180.12.65/32', 'pingdom-102': '185.246.208.82/32', 'pingdom-103': '188.172.252.34/32', 'pingdom-104': '190.120.230.7/32', 'pingdom-105': '196.240.207.18/32', 'pingdom-106': '196.244.191.18/32', 'pingdom-107': '196.245.151.42/32', 'pingdom-108': '199.87.228.66/32', 'pingdom-109': '200.58.101.248/32', 'pingdom-110': '201.33.21.5/32', 'pingdom-111': '207.244.80.239/32', 'pingdom-112': '209.58.139.193/32', 'pingdom-113': '209.58.139.194/32', 'pingdom-114': '209.95.50.14/32', 'pingdom-115': '212.78.83.12/32', 'pingdom-116': '212.78.83.16/32', 'kettering_user': '194.33.196.4/24', 'north_shields_user': '194.33.192.1/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'make-recall-decision-nonprod', 'alerts_slack_channel': '#make-recall-decisions-alerts-nonprod'} + DEV: {'name': 'preprod', 'namespace': 'make-recall-decision-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://consider-a-recall-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons', 'probation'], 'pingdom-1': '5.172.196.188/32', 'pingdom-2': '13.232.220.164/32', 'pingdom-3': '23.22.2.46/32', 'pingdom-4': '23.83.129.219/32', 'pingdom-5': '23.92.127.2/32', 'pingdom-6': '23.106.37.99/32', 'pingdom-7': '23.111.152.74/32', 'pingdom-8': '23.111.159.174/32', 'pingdom-9': '23.238.193.202/32', 'pingdom-10': '37.252.231.50/32', 'pingdom-11': '43.225.198.122/32', 'pingdom-12': '43.229.84.12/32', 'pingdom-13': '46.20.45.18/32', 'pingdom-14': '46.246.122.10/32', 'pingdom-15': '50.2.185.66/32', 'pingdom-16': '50.16.153.186/32', 'pingdom-17': '52.0.204.16/32', 'pingdom-18': '52.24.42.103/32', 'pingdom-19': '52.48.244.35/32', 'pingdom-20': '52.52.34.158/32', 'pingdom-21': '52.52.95.213/32', 'pingdom-22': '52.52.118.192/32', 'pingdom-23': '52.57.132.90/32', 'pingdom-24': '52.59.46.112/32', 'pingdom-25': '52.59.147.246/32', 'pingdom-26': '52.62.12.49/32', 'pingdom-27': '52.63.142.2/32', 'pingdom-28': '52.63.164.147/32', 'pingdom-29': '52.63.167.55/32', 'pingdom-30': '52.67.148.55/32', 'pingdom-31': '52.73.209.122/32', 'pingdom-32': '52.89.43.70/32', 'pingdom-33': '52.194.115.181/32', 'pingdom-34': '52.197.31.124/32', 'pingdom-35': '52.197.224.235/32', 'pingdom-36': '52.198.25.184/32', 'pingdom-37': '52.201.3.199/32', 'pingdom-38': '52.209.34.226/32', 'pingdom-39': '52.209.186.226/32', 'pingdom-40': '52.210.232.124/32', 'pingdom-41': '54.68.48.199/32', 'pingdom-42': '54.70.202.58/32', 'pingdom-43': '54.94.206.111/32', 'pingdom-44': '64.237.49.203/32', 'pingdom-45': '64.237.55.3/32', 'pingdom-46': '66.165.229.130/32', 'pingdom-47': '66.165.233.234/32', 'pingdom-48': '72.46.130.18/32', 'pingdom-49': '72.46.131.10/32', 'pingdom-50': '76.72.167.154/32', 'pingdom-51': '76.72.172.208/32', 'pingdom-52': '76.164.234.106/32', 'pingdom-53': '76.164.234.130/32', 'pingdom-54': '82.103.136.16/32', 'pingdom-55': '82.103.139.165/32', 'pingdom-56': '82.103.145.126/32', 'pingdom-57': '85.195.116.134/32', 'pingdom-58': '89.163.146.247/32', 'pingdom-59': '89.163.242.206/32', 'pingdom-60': '94.75.211.73/32', 'pingdom-61': '94.75.211.74/32', 'pingdom-62': '94.247.174.83/32', 'pingdom-63': '96.47.225.18/32', 'pingdom-64': '103.10.197.10/32', 'pingdom-65': '103.47.211.210/32', 'pingdom-66': '104.129.24.154/32', 'pingdom-67': '104.129.30.18/32', 'pingdom-68': '107.182.234.77/32', 'pingdom-69': '148.72.170.233/32', 'pingdom-70': '148.72.171.17/32', 'pingdom-71': '151.106.52.134/32', 'pingdom-72': '159.122.168.9/32', 'pingdom-73': '162.208.48.94/32', 'pingdom-74': '162.218.67.34/32', 'pingdom-75': '162.253.128.178/32', 'pingdom-76': '168.1.203.46/32', 'pingdom-77': '169.51.2.18/32', 'pingdom-78': '169.54.70.214/32', 'pingdom-79': '169.56.174.151/32', 'pingdom-80': '172.241.112.86/32', 'pingdom-81': '173.248.147.18/32', 'pingdom-82': '173.254.206.242/32', 'pingdom-83': '174.34.156.130/32', 'pingdom-84': '175.45.132.20/32', 'pingdom-85': '178.162.206.244/32', 'pingdom-86': '178.255.152.2/32', 'pingdom-87': '178.255.153.2/32', 'pingdom-88': '179.50.12.212/32', 'pingdom-89': '184.75.208.210/32', 'pingdom-90': '184.75.209.18/32', 'pingdom-91': '184.75.210.90/32', 'pingdom-92': '184.75.210.226/32', 'pingdom-93': '184.75.214.66/32', 'pingdom-94': '184.75.214.98/32', 'pingdom-95': '185.39.146.214/32', 'pingdom-96': '185.39.146.215/32', 'pingdom-97': '185.70.76.23/32', 'pingdom-98': '185.93.3.65/32', 'pingdom-99': '185.136.156.82/32', 'pingdom-100': '185.152.65.167/32', 'pingdom-101': '185.180.12.65/32', 'pingdom-102': '185.246.208.82/32', 'pingdom-103': '188.172.252.34/32', 'pingdom-104': '190.120.230.7/32', 'pingdom-105': '196.240.207.18/32', 'pingdom-106': '196.244.191.18/32', 'pingdom-107': '196.245.151.42/32', 'pingdom-108': '199.87.228.66/32', 'pingdom-109': '200.58.101.248/32', 'pingdom-110': '201.33.21.5/32', 'pingdom-111': '207.244.80.239/32', 'pingdom-112': '209.58.139.193/32', 'pingdom-113': '209.58.139.194/32', 'pingdom-114': '209.95.50.14/32', 'pingdom-115': '212.78.83.12/32', 'pingdom-116': '212.78.83.16/32', 'kettering_user': '194.33.196.4/24', 'north_shields_user': '194.33.192.1/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'make-recall-decision-nonprod', 'alerts_slack_channel': '#make-recall-decisions-alerts-nonprod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'make-recall-decision-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://consider-a-recall.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'probation'], 'pingdom-1': '5.172.196.188/32', 'pingdom-2': '13.232.220.164/32', 'pingdom-3': '23.22.2.46/32', 'pingdom-4': '23.83.129.219/32', 'pingdom-5': '23.92.127.2/32', 'pingdom-6': '23.106.37.99/32', 'pingdom-7': '23.111.152.74/32', 'pingdom-8': '23.111.159.174/32', 'pingdom-9': '23.238.193.202/32', 'pingdom-10': '37.252.231.50/32', 'pingdom-11': '43.225.198.122/32', 'pingdom-12': '43.229.84.12/32', 'pingdom-13': '46.20.45.18/32', 'pingdom-14': '46.246.122.10/32', 'pingdom-15': '50.2.185.66/32', 'pingdom-16': '50.16.153.186/32', 'pingdom-17': '52.0.204.16/32', 'pingdom-18': '52.24.42.103/32', 'pingdom-19': '52.48.244.35/32', 'pingdom-20': '52.52.34.158/32', 'pingdom-21': '52.52.95.213/32', 'pingdom-22': '52.52.118.192/32', 'pingdom-23': '52.57.132.90/32', 'pingdom-24': '52.59.46.112/32', 'pingdom-25': '52.59.147.246/32', 'pingdom-26': '52.62.12.49/32', 'pingdom-27': '52.63.142.2/32', 'pingdom-28': '52.63.164.147/32', 'pingdom-29': '52.63.167.55/32', 'pingdom-30': '52.67.148.55/32', 'pingdom-31': '52.73.209.122/32', 'pingdom-32': '52.89.43.70/32', 'pingdom-33': '52.194.115.181/32', 'pingdom-34': '52.197.31.124/32', 'pingdom-35': '52.197.224.235/32', 'pingdom-36': '52.198.25.184/32', 'pingdom-37': '52.201.3.199/32', 'pingdom-38': '52.209.34.226/32', 'pingdom-39': '52.209.186.226/32', 'pingdom-40': '52.210.232.124/32', 'pingdom-41': '54.68.48.199/32', 'pingdom-42': '54.70.202.58/32', 'pingdom-43': '54.94.206.111/32', 'pingdom-44': '64.237.49.203/32', 'pingdom-45': '64.237.55.3/32', 'pingdom-46': '66.165.229.130/32', 'pingdom-47': '66.165.233.234/32', 'pingdom-48': '72.46.130.18/32', 'pingdom-49': '72.46.131.10/32', 'pingdom-50': '76.72.167.154/32', 'pingdom-51': '76.72.172.208/32', 'pingdom-52': '76.164.234.106/32', 'pingdom-53': '76.164.234.130/32', 'pingdom-54': '82.103.136.16/32', 'pingdom-55': '82.103.139.165/32', 'pingdom-56': '82.103.145.126/32', 'pingdom-57': '85.195.116.134/32', 'pingdom-58': '89.163.146.247/32', 'pingdom-59': '89.163.242.206/32', 'pingdom-60': '94.75.211.73/32', 'pingdom-61': '94.75.211.74/32', 'pingdom-62': '94.247.174.83/32', 'pingdom-63': '96.47.225.18/32', 'pingdom-64': '103.10.197.10/32', 'pingdom-65': '103.47.211.210/32', 'pingdom-66': '104.129.24.154/32', 'pingdom-67': '104.129.30.18/32', 'pingdom-68': '107.182.234.77/32', 'pingdom-69': '148.72.170.233/32', 'pingdom-70': '148.72.171.17/32', 'pingdom-71': '151.106.52.134/32', 'pingdom-72': '159.122.168.9/32', 'pingdom-73': '162.208.48.94/32', 'pingdom-74': '162.218.67.34/32', 'pingdom-75': '162.253.128.178/32', 'pingdom-76': '168.1.203.46/32', 'pingdom-77': '169.51.2.18/32', 'pingdom-78': '169.54.70.214/32', 'pingdom-79': '169.56.174.151/32', 'pingdom-80': '172.241.112.86/32', 'pingdom-81': '173.248.147.18/32', 'pingdom-82': '173.254.206.242/32', 'pingdom-83': '174.34.156.130/32', 'pingdom-84': '175.45.132.20/32', 'pingdom-85': '178.162.206.244/32', 'pingdom-86': '178.255.152.2/32', 'pingdom-87': '178.255.153.2/32', 'pingdom-88': '179.50.12.212/32', 'pingdom-89': '184.75.208.210/32', 'pingdom-90': '184.75.209.18/32', 'pingdom-91': '184.75.210.90/32', 'pingdom-92': '184.75.210.226/32', 'pingdom-93': '184.75.214.66/32', 'pingdom-94': '184.75.214.98/32', 'pingdom-95': '185.39.146.214/32', 'pingdom-96': '185.39.146.215/32', 'pingdom-97': '185.70.76.23/32', 'pingdom-98': '185.93.3.65/32', 'pingdom-99': '185.136.156.82/32', 'pingdom-100': '185.152.65.167/32', 'pingdom-101': '185.180.12.65/32', 'pingdom-102': '185.246.208.82/32', 'pingdom-103': '188.172.252.34/32', 'pingdom-104': '190.120.230.7/32', 'pingdom-105': '196.240.207.18/32', 'pingdom-106': '196.244.191.18/32', 'pingdom-107': '196.245.151.42/32', 'pingdom-108': '199.87.228.66/32', 'pingdom-109': '200.58.101.248/32', 'pingdom-110': '201.33.21.5/32', 'pingdom-111': '207.244.80.239/32', 'pingdom-112': '209.58.139.193/32', 'pingdom-113': '209.58.139.194/32', 'pingdom-114': '209.95.50.14/32', 'pingdom-115': '212.78.83.12/32', 'pingdom-116': '212.78.83.16/32', 'kettering_user': '194.33.196.4/24', 'north_shields_user': '194.33.192.1/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'make-recall-decision-prod', 'alerts_slack_channel': '#make-recall-decisions-alerts-prod'} + DEV: {'name': 'prod', 'namespace': 'make-recall-decision-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://consider-a-recall.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'probation'], 'pingdom-1': '5.172.196.188/32', 'pingdom-2': '13.232.220.164/32', 'pingdom-3': '23.22.2.46/32', 'pingdom-4': '23.83.129.219/32', 'pingdom-5': '23.92.127.2/32', 'pingdom-6': '23.106.37.99/32', 'pingdom-7': '23.111.152.74/32', 'pingdom-8': '23.111.159.174/32', 'pingdom-9': '23.238.193.202/32', 'pingdom-10': '37.252.231.50/32', 'pingdom-11': '43.225.198.122/32', 'pingdom-12': '43.229.84.12/32', 'pingdom-13': '46.20.45.18/32', 'pingdom-14': '46.246.122.10/32', 'pingdom-15': '50.2.185.66/32', 'pingdom-16': '50.16.153.186/32', 'pingdom-17': '52.0.204.16/32', 'pingdom-18': '52.24.42.103/32', 'pingdom-19': '52.48.244.35/32', 'pingdom-20': '52.52.34.158/32', 'pingdom-21': '52.52.95.213/32', 'pingdom-22': '52.52.118.192/32', 'pingdom-23': '52.57.132.90/32', 'pingdom-24': '52.59.46.112/32', 'pingdom-25': '52.59.147.246/32', 'pingdom-26': '52.62.12.49/32', 'pingdom-27': '52.63.142.2/32', 'pingdom-28': '52.63.164.147/32', 'pingdom-29': '52.63.167.55/32', 'pingdom-30': '52.67.148.55/32', 'pingdom-31': '52.73.209.122/32', 'pingdom-32': '52.89.43.70/32', 'pingdom-33': '52.194.115.181/32', 'pingdom-34': '52.197.31.124/32', 'pingdom-35': '52.197.224.235/32', 'pingdom-36': '52.198.25.184/32', 'pingdom-37': '52.201.3.199/32', 'pingdom-38': '52.209.34.226/32', 'pingdom-39': '52.209.186.226/32', 'pingdom-40': '52.210.232.124/32', 'pingdom-41': '54.68.48.199/32', 'pingdom-42': '54.70.202.58/32', 'pingdom-43': '54.94.206.111/32', 'pingdom-44': '64.237.49.203/32', 'pingdom-45': '64.237.55.3/32', 'pingdom-46': '66.165.229.130/32', 'pingdom-47': '66.165.233.234/32', 'pingdom-48': '72.46.130.18/32', 'pingdom-49': '72.46.131.10/32', 'pingdom-50': '76.72.167.154/32', 'pingdom-51': '76.72.172.208/32', 'pingdom-52': '76.164.234.106/32', 'pingdom-53': '76.164.234.130/32', 'pingdom-54': '82.103.136.16/32', 'pingdom-55': '82.103.139.165/32', 'pingdom-56': '82.103.145.126/32', 'pingdom-57': '85.195.116.134/32', 'pingdom-58': '89.163.146.247/32', 'pingdom-59': '89.163.242.206/32', 'pingdom-60': '94.75.211.73/32', 'pingdom-61': '94.75.211.74/32', 'pingdom-62': '94.247.174.83/32', 'pingdom-63': '96.47.225.18/32', 'pingdom-64': '103.10.197.10/32', 'pingdom-65': '103.47.211.210/32', 'pingdom-66': '104.129.24.154/32', 'pingdom-67': '104.129.30.18/32', 'pingdom-68': '107.182.234.77/32', 'pingdom-69': '148.72.170.233/32', 'pingdom-70': '148.72.171.17/32', 'pingdom-71': '151.106.52.134/32', 'pingdom-72': '159.122.168.9/32', 'pingdom-73': '162.208.48.94/32', 'pingdom-74': '162.218.67.34/32', 'pingdom-75': '162.253.128.178/32', 'pingdom-76': '168.1.203.46/32', 'pingdom-77': '169.51.2.18/32', 'pingdom-78': '169.54.70.214/32', 'pingdom-79': '169.56.174.151/32', 'pingdom-80': '172.241.112.86/32', 'pingdom-81': '173.248.147.18/32', 'pingdom-82': '173.254.206.242/32', 'pingdom-83': '174.34.156.130/32', 'pingdom-84': '175.45.132.20/32', 'pingdom-85': '178.162.206.244/32', 'pingdom-86': '178.255.152.2/32', 'pingdom-87': '178.255.153.2/32', 'pingdom-88': '179.50.12.212/32', 'pingdom-89': '184.75.208.210/32', 'pingdom-90': '184.75.209.18/32', 'pingdom-91': '184.75.210.90/32', 'pingdom-92': '184.75.210.226/32', 'pingdom-93': '184.75.214.66/32', 'pingdom-94': '184.75.214.98/32', 'pingdom-95': '185.39.146.214/32', 'pingdom-96': '185.39.146.215/32', 'pingdom-97': '185.70.76.23/32', 'pingdom-98': '185.93.3.65/32', 'pingdom-99': '185.136.156.82/32', 'pingdom-100': '185.152.65.167/32', 'pingdom-101': '185.180.12.65/32', 'pingdom-102': '185.246.208.82/32', 'pingdom-103': '188.172.252.34/32', 'pingdom-104': '190.120.230.7/32', 'pingdom-105': '196.240.207.18/32', 'pingdom-106': '196.244.191.18/32', 'pingdom-107': '196.245.151.42/32', 'pingdom-108': '199.87.228.66/32', 'pingdom-109': '200.58.101.248/32', 'pingdom-110': '201.33.21.5/32', 'pingdom-111': '207.244.80.239/32', 'pingdom-112': '209.58.139.193/32', 'pingdom-113': '209.58.139.194/32', 'pingdom-114': '209.95.50.14/32', 'pingdom-115': '212.78.83.12/32', 'pingdom-116': '212.78.83.16/32', 'kettering_user': '194.33.196.4/24', 'north_shields_user': '194.33.192.1/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'make-recall-decision-prod', 'alerts_slack_channel': '#make-recall-decisions-alerts-prod'} +hmpps-digital-prison-reporting-mi +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-digital-prison-reporting-mi-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://digital-prison-reporting-mi.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-digital-prison-reporting-prod', 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'hmpps-digital-prison-reporting-mi-prod', 'info_path': None, 'health_path': None, 'url': 'https://digital-prison-reporting-mi.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-digital-prison-reporting-prod', 'alerts_slack_channel': None} + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-digital-prison-reporting-mi-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://digital-prison-reporting-mi-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-dev.yaml': {'generic-service': {'groups': ['circleci', 'internal']}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-digital-prison-reporting-dev', 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-digital-prison-reporting-mi-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://digital-prison-reporting-mi-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-dev.yaml': {'generic-service': {'groups': ['circleci', 'internal']}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-digital-prison-reporting-dev', 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-digital-prison-reporting-mi-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://digital-prison-reporting-mi-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-digital-prison-reporting-preprod', 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'hmpps-digital-prison-reporting-mi-preprod', 'info_path': None, 'health_path': None, 'url': 'https://digital-prison-reporting-mi-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-digital-prison-reporting-preprod', 'alerts_slack_channel': None} + Environment test: + PROD: {'name': 'test', 'namespace': 'hmpps-digital-prison-reporting-mi-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://digital-prison-reporting-mi-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'test', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-test.yaml': {'generic-service': {'groups': ['circleci', 'internal']}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-digital-prison-reporting-dev', 'alerts_slack_channel': None} + DEV: {'name': 'test', 'namespace': 'hmpps-digital-prison-reporting-mi-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://digital-prison-reporting-mi-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-test.yaml': {'generic-service': {'groups': ['circleci', 'internal']}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-digital-prison-reporting-dev', 'alerts_slack_channel': None} +hmpps-visits-internal-admin-ui +======================= +calculate-release-dates-api +======================= + github_project_branch_protection_restricted_teams: PROD: ['dps-tech', 'farsight-devs'] DEV: ['farsight-devs'] + + + Environment dev: + PROD: {'name': 'dev', 'namespace': 'calculate-release-dates-api-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://calculate-release-dates-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'calculate-release-dates-api-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://calculate-release-dates-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'calculate-release-dates-api-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://calculate-release-dates-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32'}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'preprod', 'namespace': 'calculate-release-dates-api-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://calculate-release-dates-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32'}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'calculate-release-dates-api-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://calculate-release-dates-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts', 'alerts_slack_channel': '#legacy-replacement-alerts'} + DEV: {'name': 'prod', 'namespace': 'calculate-release-dates-api-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://calculate-release-dates-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts', 'alerts_slack_channel': '#legacy-replacement-alerts'} + github_project_teams_admin: PROD: ['dps-tech', 'dps-core', 'farsight-devs', 'calculate-release-dates-team'] DEV: ['dps-core', 'farsight-devs', 'calculate-release-dates-team'] + + + latest_commit: PROD: {'sha': '63634a0b39c7150e28ec356c0dc48d76b933c49d', 'date_time': '2025-01-28T15:02:28.000Z'} DEV: {'sha': 'dd48034c782e98b7342f521b8735bcb90fcce08e', 'date_time': '2025-02-19T13:13:38.000Z'} + + + trivy_last_completed_scan_date: PROD: 2025-01-29T05:13:29.951284724Z DEV: 2025-02-20T05:13:35.691312668Z + + +hmpps-person-links-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-person-links-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-person-links-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-person-record-alerts-prod', 'alerts_slack_channel': ''} + DEV: {'name': 'dev', 'namespace': 'hmpps-person-links-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-person-links-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-person-links-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-person-links-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-person-record-alerts-prod', 'alerts_slack_channel': ''} + DEV: {'name': 'preprod', 'namespace': 'hmpps-person-links-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-person-links-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-person-links-prod', 'info_path': None, 'health_path': None, 'url': 'https://hmpps-person-links.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-person-record-alerts-prod', 'alerts_slack_channel': ''} + DEV: {'name': 'prod', 'namespace': 'hmpps-person-links-prod', 'info_path': None, 'health_path': None, 'url': 'https://hmpps-person-links.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + trivy_last_completed_scan_date: PROD: None DEV: 2025-02-20T05:35:46.067931757Z + + +hmpps-locations-inside-prison-api +======================= + Environment train: + PROD: {'name': 'train', 'namespace': 'hmpps-locations-inside-prison-train', 'info_path': '/info', 'health_path': '/health', 'url': 'https://locations-inside-prison-api-train.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'test', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-train.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'move-a-prisoner-alerts-nonprod', 'alerts_slack_channel': '#move-a-prisoner-alerts-nonprod'} + DEV: {'name': 'train', 'namespace': 'hmpps-locations-inside-prison-train', 'info_path': '/info', 'health_path': '/health', 'url': 'https://locations-inside-prison-api-train.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-train.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-locations-inside-prison-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://locations-inside-prison-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'move-a-prisoner-alerts-nonprod', 'alerts_slack_channel': '#move-a-prisoner-alerts-nonprod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-locations-inside-prison-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://locations-inside-prison-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-locations-inside-prison-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://locations-inside-prison-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'move-a-prisoner-alerts-nonprod', 'alerts_slack_channel': '#move-a-prisoner-alerts-nonprod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-locations-inside-prison-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://locations-inside-prison-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +hmpps-prisoner-communication-monitoring-api +======================= + trivy_last_completed_scan_date: PROD: None DEV: 2025-02-20T04:06:13.25289193Z + + +hmpps-personal-relationships-api +======================= +hmpps-digital-prison-reporting-lib +======================= + github_template_repo: PROD: DEV: None + + +hmpps-appointment-reminders-ui +======================= +hmpps-managing-prisoner-apps-api +======================= +prisoner-content-hub +======================= +hmpps-community-api-wiremock +======================= +hmpps-adjudications-insights-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-manage-adjudications-api-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://adjudications-insights-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-manage-adjudications-api-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://adjudications-insights-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT DELETE"\n# Missing User Agent Header\nSecRuleRemoveById 920320\n', 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-manage-adjudications-api-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://adjudications-insights-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-manage-adjudications-api-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://adjudications-insights-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-manage-adjudications-api-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://adjudications-insights-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alert'} + DEV: {'name': 'prod', 'namespace': 'hmpps-manage-adjudications-api-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://adjudications-insights-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} +hmpps-strengths-based-needs-assessments-ui +======================= + veracode_last_completed_scan_date: PROD: 2025-02-17T08:16:15.000Z DEV: 2025-02-10T08:15:03.000Z + + + veracode_results_url: PROD: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1702487:46941727 DEV: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1702487:46655990 + + + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-strengths-based-needs-assessments-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://strengths-based-needs-assessments-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons']}}, 'values-dev.yaml': {'generic-service': {'neil-test': '51.155.102.238/32', 'capita-dev': '51.104.16.30/31', 'captia-further': '172.167.141.40/32', 'joel-app-sec-1': '100.64.10.206/32', 'joel-app-sec-2': '86.134.133.78/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-strengths-based-needs-assessments', 'alerts_slack_channel': '#hmpps-strengths-based-needs-assessments-alerts'} + DEV: {'name': 'dev', 'namespace': 'hmpps-strengths-based-needs-assessments-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://strengths-based-needs-assessments-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['circleci', 'internal', 'prisons']}}, 'values-dev.yaml': {'generic-service': {'neil-test': '51.155.102.238/32', 'capita-dev': '51.104.16.30/31', 'captia-further': '172.167.141.40/32', 'joel-app-sec-1': '100.64.10.206/32', 'joel-app-sec-2': '86.134.133.78/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-strengths-based-needs-assessments', 'alerts_slack_channel': '#hmpps-strengths-based-needs-assessments-alerts'} + Environment test: + PROD: {'name': 'test', 'namespace': 'hmpps-strengths-based-needs-assessments-test', 'info_path': None, 'health_path': '/health', 'url': 'https://strengths-based-needs-assessments-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'test', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons']}}, 'values-test.yaml': {'generic-service': {'capita-dev': '51.104.16.30/31', 'krupal-appsec': '80.195.27.199/32', 'captia-further': '172.167.141.40/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-strengths-based-needs-assessments', 'alerts_slack_channel': '#hmpps-strengths-based-needs-assessments-alerts'} + DEV: {'name': 'test', 'namespace': 'hmpps-strengths-based-needs-assessments-test', 'info_path': None, 'health_path': '/health', 'url': 'https://strengths-based-needs-assessments-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['circleci', 'internal', 'prisons']}}, 'values-test.yaml': {'generic-service': {'capita-dev': '51.104.16.30/31', 'krupal-appsec': '80.195.27.199/32', 'captia-further': '172.167.141.40/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-strengths-based-needs-assessments', 'alerts_slack_channel': '#hmpps-strengths-based-needs-assessments-alerts'} +hmpps-audit-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-audit-dev', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-audit-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://audit-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_tech_non_prod', 'alerts_slack_channel': '#hmpps_tech_alerts_non_prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-audit-preprod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'hmpps-audit-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://audit-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_tech_non_prod', 'alerts_slack_channel': '#hmpps_tech_alerts_non_prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-audit-prod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'hmpps-audit-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://audit-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_tech', 'alerts_slack_channel': '#hmpps_tech_alerts'} +hmpps-education-employment-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-education-employment-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://get-ready-for-work-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'prisons-education'], 'sscl-york': '62.6.61.29/32', 'sscl-azure': '51.142.106.199/32', 'sscl-newport': '217.38.237.212/32', 'sscl-blackpool': '31.121.5.27/32', 'sscl-newcastle': '62.172.79.105/32'}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'education-alerts-non-prod', 'alerts_slack_channel': ''} + DEV: {'name': 'dev', 'namespace': 'hmpps-education-employment-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://get-ready-for-work-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'prisons-education'], 'sscl-york': '62.6.61.29/32', 'sscl-azure': '51.142.106.199/32', 'sscl-newport': '217.38.237.212/32', 'sscl-blackpool': '31.121.5.27/32', 'sscl-newcastle': '62.172.79.105/32'}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'education-alerts-non-prod', 'alerts_slack_channel': '#prison-education-alerts-non-prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-education-employment-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://get-ready-for-work-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'prisons-education'], 'sscl-york': '62.6.61.29/32', 'sscl-azure': '51.142.106.199/32', 'sscl-newport': '217.38.237.212/32', 'sscl-blackpool': '31.121.5.27/32', 'sscl-newcastle': '62.172.79.105/32'}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'education-alerts-non-prod', 'alerts_slack_channel': ''} + DEV: {'name': 'preprod', 'namespace': 'hmpps-education-employment-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://get-ready-for-work-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'prisons-education'], 'sscl-york': '62.6.61.29/32', 'sscl-azure': '51.142.106.199/32', 'sscl-newport': '217.38.237.212/32', 'sscl-blackpool': '31.121.5.27/32', 'sscl-newcastle': '62.172.79.105/32'}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'education-alerts-non-prod', 'alerts_slack_channel': '#prison-education-alerts-non-prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-education-employment-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://get-ready-for-work.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'prisons-education'], 'sscl-york': '62.6.61.29/32', 'sscl-azure': '51.142.106.199/32', 'sscl-newport': '217.38.237.212/32', 'sscl-blackpool': '31.121.5.27/32', 'sscl-newcastle': '62.172.79.105/32'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'education-alerts', 'alerts_slack_channel': ''} + DEV: {'name': 'prod', 'namespace': 'hmpps-education-employment-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://get-ready-for-work.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'prisons-education'], 'sscl-york': '62.6.61.29/32', 'sscl-azure': '51.142.106.199/32', 'sscl-newport': '217.38.237.212/32', 'sscl-blackpool': '31.121.5.27/32', 'sscl-newcastle': '62.172.79.105/32'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'education-alerts', 'alerts_slack_channel': '#prison-education-alerts'} +prepare-a-case-gatling-performance-tests +======================= +prison-identifier-and-delius +======================= +hmpps-visit-allocation-api +======================= + Environment staging: + PROD: {'name': 'staging', 'namespace': 'visit-someone-in-prison-backend-svc-staging', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-visit-allocation-api-staging.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': False, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-staging.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} + DEV: {'name': 'staging', 'namespace': 'visit-someone-in-prison-backend-svc-staging', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-visit-allocation-api-staging.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-staging.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} +hmpps-electronic-monitoring-datastore-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-electronic-monitoring-datastore-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://electronic-monitoring-datastore-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'NON_PROD_ALERTS_SEVERITY_LABEL', 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-electronic-monitoring-datastore-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://electronic-monitoring-datastore-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-electronic-monitoring-datastore-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://electronic-monitoring-datastore-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'NON_PROD_ALERTS_SEVERITY_LABEL', 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'hmpps-electronic-monitoring-datastore-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://electronic-monitoring-datastore-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-electronic-monitoring-datastore-prod', 'info_path': None, 'health_path': None, 'url': 'https://electronic-monitoring-datastore-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'PROD_ALERTS_SEVERITY_LABEL', 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'hmpps-electronic-monitoring-datastore-prod', 'info_path': None, 'health_path': None, 'url': 'https://electronic-monitoring-datastore-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} +hmpps-person-match +======================= + latest_commit: PROD: {'sha': '18a51a4770fabc8b70d7831aaef9b61664716571', 'date_time': '2025-02-20T10:41:34.000Z'} DEV: {'sha': '97032928d106bed6b08b3e228fefcb48368190d0', 'date_time': '2025-02-19T14:58:31.000Z'} + + + versions: PROD: {'dockerfile': {'base_image': 'python:3.12.7-slim-bullseye', 'rds_ca_cert': 'global-bundle.pem'}, 'helm_dependencies': {'generic-service': '3.8.0', 'generic-prometheus-alerts': '1.11.3'}} DEV: {'dockerfile': {'base_image': 'python:3.12.7-slim-bullseye', 'rds_ca_cert': 'rds-ca-2019-root.pem'}, 'helm_dependencies': {'generic-service': '3.8.0', 'generic-prometheus-alerts': '1.11.3'}} + + +create-and-vary-a-licence-wiremock +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'create-and-vary-a-licence-api-dev', 'info_path': None, 'health_path': None, 'url': 'https://cvl-probation-mock.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'create-and-vary-a-licence-api-dev', 'info_path': None, 'health_path': None, 'url': 'https://cvl-probation-mock.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +prison-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-prison-api-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://prison-api-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {'generic-service': {'groups': ['moj_cloud_platform', 'digital_staff_and_mojo', 'circleci', 'unilink-api-dev'], 'prum-dev': '18.135.61.191/32', 'serco-dev': '52.23.29.131/32', 'curious-dev-1': '51.140.221.69/32', 'delius-test-1': '35.176.126.163/32', 'delius-test-2': '35.178.162.73/32', 'delius-test-3': '52.56.195.113/32', 'curious-preprod-1': '20.49.246.49/32', 'curious-preprod-2': '202.189.235.70/32', 'delius-mis-dev-az3-nat-gateway': '35.178.35.115/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# team here grants access to the OpenSearch logs to delve into the cause of the blockage\nSecDefaultAction "phase:2,pass,log,tag:github_team=dps-tech"\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT PATCH DELETE"\n# Missing User Agent Header\nSecRuleRemoveById 920320\n# Request Missing an Accept Header\nSecRuleRemoveById 920300\n# Restrict file extension\nSecRuleRemoveById 920440\n# SQL Injection Attack: Common Injection Testing Detected\nSecRuleRemoveById 942110\n# Found User-Agent associated with scripting/generic HTTP client\nSecRuleRemoveById 913101\n# Remote Command Execution: Windows Command Injection - only for windows servers\nSecRuleRemoveById 932110\n# Remote Command Execution: Windows Command Injection - only for windows servers\nSecRuleRemoveById 932115\n# Remote Command Execution: Windows FOR/IF Command Found - only for windows servers\nSecRuleRemoveById 932140\n# attack-protocol is 921 range\nSecRuleUpdateTargetByTag "attack-protocol" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-protocol" "!ARGS:/text/"\nSecRuleUpdateTargetById 930100 "!ARGS:/.*comment/"\nSecRuleUpdateTargetById 930100 "!ARGS:/text/"\nSecRuleUpdateTargetById 930110 "!ARGS:/.*comment/"\nSecRuleUpdateTargetById 930110 "!ARGS:/text/"\n# attack-rce is 932 range\nSecRuleUpdateTargetByTag "attack-rce" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-rce" "!ARGS:/text/"\nSecRuleUpdateTargetById 932150 "!ARGS:/keywords/"\n# attack-injection-php is 933 range\nSecRuleUpdateTargetByTag "attack-injection-php" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-injection-php" "!ARGS:/text/"\nSecRuleUpdateTargetById 933210 "!ARGS:/.*description/"\n# attack-xss is 941 range\nSecRuleUpdateTargetByTag "attack-xss" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-xss" "!ARGS:/text/"\n# attack-sqli is 942 range\nSecRuleUpdateTargetByTag "attack-sqli" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-sqli" "!ARGS:/text/"\nSecRuleUpdateTargetById 942100 "!ARGS:/.*description/"\nSecRuleUpdateTargetById 942130 "!ARGS:/.*description/"\nSecRuleUpdateTargetById 942130 "!ARGS:/statement/"\nSecRuleUpdateTargetById 942150 "!ARGS:/outcomeComment/"\nSecRuleUpdateTargetById 942230 "!ARGS:/.*description/"\nSecRuleUpdateTargetById 942330 "!ARGS:/keywords/"\nSecRuleUpdateTargetById 942410 "!ARGS:/outcomeComment/"\n# Disable rule 942360 (SQL Injection) for create and update alert - /api/bookings/:bookingId/alert and /api/bookings/:bookingId/alert/:alertId\nSecRule REQUEST_URI "@rx ^\\/api\\/bookings\\/[\\w|\\d]*\\/(alert$|alert\\/[\\w|\\d|-]+)" "id:800001,phase:1,pass,t:none,nolog,ctl:ruleRemoveById=942360"\n# Disable rule 942360 (SQL Injection) for create and update case note - /api/offenders/:offenderNo/case-notes and /api/offenders/:offenderNo/case-notes/:caseNoteId\nSecRule REQUEST_URI "@rx ^\\/api\\/offenders\\/[\\w|\\d]*\\/(case-notes$|case-notes\\/[\\w|\\d|-]+)" "id:800002,phase:1,pass,t:none,nolog,ctl:ruleRemoveById=942360"\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'syscon-nonprod', 'alerts_slack_channel': '#syscon-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-prison-api-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://prison-api-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-dev.yaml': {'generic-service': {'groups': ['moj_cloud_platform', 'digital_staff_and_mojo', 'circleci', 'unilink-api-dev'], 'prum-dev': '18.135.61.191/32', 'serco-dev': '52.23.29.131/32', 'curious-dev-1': '51.140.221.69/32', 'delius-test-1': '35.176.126.163/32', 'delius-test-2': '35.178.162.73/32', 'delius-test-3': '52.56.195.113/32', 'curious-preprod-1': '20.49.246.49/32', 'curious-preprod-2': '202.189.235.70/32', 'delius-mis-dev-az3-nat-gateway': '35.178.35.115/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# team here grants access to the OpenSearch logs to delve into the cause of the blockage\nSecDefaultAction "phase:2,pass,log,tag:github_team=dps-tech"\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT PATCH DELETE"\n# Missing User Agent Header\nSecRuleRemoveById 920320\n# Request Missing an Accept Header\nSecRuleRemoveById 920300\n# Restrict file extension\nSecRuleRemoveById 920440\n# SQL Injection Attack: Common Injection Testing Detected\nSecRuleRemoveById 942110\n# Found User-Agent associated with scripting/generic HTTP client\nSecRuleRemoveById 913101\n# Remote Command Execution: Windows Command Injection - only for windows servers\nSecRuleRemoveById 932110\n# Remote Command Execution: Windows Command Injection - only for windows servers\nSecRuleRemoveById 932115\n# Remote Command Execution: Windows FOR/IF Command Found - only for windows servers\nSecRuleRemoveById 932140\n# attack-protocol is 921 range\nSecRuleUpdateTargetByTag "attack-protocol" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-protocol" "!ARGS:/text/"\nSecRuleUpdateTargetById 930100 "!ARGS:/.*comment/"\nSecRuleUpdateTargetById 930100 "!ARGS:/text/"\nSecRuleUpdateTargetById 930110 "!ARGS:/.*comment/"\nSecRuleUpdateTargetById 930110 "!ARGS:/text/"\n# attack-rce is 932 range\nSecRuleUpdateTargetByTag "attack-rce" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-rce" "!ARGS:/text/"\nSecRuleUpdateTargetById 932150 "!ARGS:/keywords/"\n# attack-injection-php is 933 range\nSecRuleUpdateTargetByTag "attack-injection-php" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-injection-php" "!ARGS:/text/"\nSecRuleUpdateTargetById 933210 "!ARGS:/.*description/"\n# attack-xss is 941 range\nSecRuleUpdateTargetByTag "attack-xss" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-xss" "!ARGS:/text/"\n# attack-sqli is 942 range\nSecRuleUpdateTargetByTag "attack-sqli" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-sqli" "!ARGS:/text/"\nSecRuleUpdateTargetById 942100 "!ARGS:/.*description/"\nSecRuleUpdateTargetById 942130 "!ARGS:/.*description/"\nSecRuleUpdateTargetById 942130 "!ARGS:/statement/"\nSecRuleUpdateTargetById 942150 "!ARGS:/outcomeComment/"\nSecRuleUpdateTargetById 942230 "!ARGS:/.*description/"\nSecRuleUpdateTargetById 942330 "!ARGS:/keywords/"\nSecRuleUpdateTargetById 942410 "!ARGS:/outcomeComment/"\n# Disable rule 942360 (SQL Injection) for create and update alert - /api/bookings/:bookingId/alert and /api/bookings/:bookingId/alert/:alertId\nSecRule REQUEST_URI "@rx ^\\/api\\/bookings\\/[\\w|\\d]*\\/(alert$|alert\\/[\\w|\\d|-]+)" "id:800001,phase:1,pass,t:none,nolog,ctl:ruleRemoveById=942360"\n# Disable rule 942360 (SQL Injection) for create and update case note - /api/offenders/:offenderNo/case-notes and /api/offenders/:offenderNo/case-notes/:caseNoteId\nSecRule REQUEST_URI "@rx ^\\/api\\/offenders\\/[\\w|\\d]*\\/(case-notes$|case-notes\\/[\\w|\\d|-]+)" "id:800002,phase:1,pass,t:none,nolog,ctl:ruleRemoveById=942360"\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'syscon-nonprod', 'alerts_slack_channel': '#syscon-alerts-non-prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-prison-api-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://prison-api-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prum-test', 'mod-platform-non-live', 'delius-preprod', 'delius-stage', 'unilink-api', 'unilink-api-preprod'], 'curious-preprod-1': '20.49.246.49/32', 'curious-preprod-2': '202.189.235.70/32', 'pfs-azure-logicapps': '20.68.51.129/32', 'kainos-azure-logic-apps-1': '51.140.74.14/32', 'kainos-azure-logic-apps-2': '51.140.73.85/32', 'kainos-azure-logic-apps-3': '51.140.78.44/32', 'kainos-azure-logic-apps-4': '51.140.137.190/32', 'kainos-azure-logic-apps-5': '51.140.153.135/32', 'kainos-azure-logic-apps-6': '51.140.28.225/32', 'kainos-azure-logic-apps-7': '51.140.142.28/32', 'kainos-azure-logic-apps-8': '51.140.158.24/32', 'kainos-azure-logic-apps-9': '20.108.102.142/32', 'kainos-azure-logic-apps-10': '20.108.102.123/32', 'kainos-azure-logic-apps-11': '20.90.204.228/32', 'kainos-azure-logic-apps-12': '20.90.204.188/32', 'kainos-azure-logic-apps-13': '20.108.146.132/32', 'kainos-azure-logic-apps-14': '20.90.223.4/32', 'kainos-azure-logic-apps-15': '20.26.15.70/32', 'kainos-azure-logic-apps-16': '20.26.13.151/32', 'kainos-azure-logic-apps-17': '4.159.24.241/32', 'kainos-azure-logic-apps-18': '4.250.55.134/32', 'kainos-azure-logic-apps-19': '4.159.24.255/32', 'kainos-azure-logic-apps-20': '4.250.55.217/32', 'kainos-azure-logic-apps-21': '172.165.88.82/32', 'kainos-azure-logic-apps-22': '4.250.82.111/32', 'kainos-azure-logic-apps-23': '4.158.106.101/32', 'kainos-azure-logic-apps-24': '4.158.105.106/32', 'kainos-azure-logic-apps-25': '4.250.51.127/32', 'kainos-azure-logic-apps-26': '4.250.49.230/32', 'kainos-azure-logic-apps-27': '4.159.26.128/32', 'kainos-azure-logic-apps-28': '172.166.86.30/32', 'kainos-azure-logic-apps-29': '4.159.26.151/32', 'kainos-azure-logic-apps-30': '4.159.26.77/32', 'kainos-azure-logic-apps-31': '4.159.59.140/32', 'kainos-azure-logic-apps-32': '4.159.59.13/32', 'kainos-azure-logic-apps-33': '51.140.74.150/32', 'kainos-azure-logic-apps-34': '51.140.80.51/32', 'kainos-azure-logic-apps-35': '51.140.61.124/32', 'kainos-azure-logic-apps-36': '51.105.77.96/27', 'kainos-azure-logic-apps-37': '51.140.148.0/28', 'kainos-azure-logic-apps-38': '20.90.129.0/27', 'kainos-azure-logic-apps-39': '20.90.129.32/28', 'kainos-azure-logic-apps-40': '20.90.125.211', 'kainos-azure-logic-apps-41': '20.90.124.134'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# team here grants access to the OpenSearch logs to delve into the cause of the blockage\nSecDefaultAction "phase:2,pass,log,tag:github_team=dps-tech"\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT PATCH DELETE"\n# Missing User Agent Header\nSecRuleRemoveById 920320\n# Request Missing an Accept Header\nSecRuleRemoveById 920300\n# Restrict file extension\nSecRuleRemoveById 920440\n# SQL Injection Attack: Common Injection Testing Detected\nSecRuleRemoveById 942110\n# Found User-Agent associated with scripting/generic HTTP client\nSecRuleRemoveById 913101\n# Remote Command Execution: Windows Command Injection - only for windows servers\nSecRuleRemoveById 932110\n# Remote Command Execution: Windows Command Injection - only for windows servers\nSecRuleRemoveById 932115\n# Remote Command Execution: Windows FOR/IF Command Found - only for windows servers\nSecRuleRemoveById 932140\n# attack-protocol is 921 range\nSecRuleUpdateTargetByTag "attack-protocol" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-protocol" "!ARGS:/text/"\nSecRuleUpdateTargetById 930100 "!ARGS:/.*comment/"\nSecRuleUpdateTargetById 930100 "!ARGS:/text/"\nSecRuleUpdateTargetById 930110 "!ARGS:/.*comment/"\nSecRuleUpdateTargetById 930110 "!ARGS:/text/"\n# attack-rce is 932 range\nSecRuleUpdateTargetByTag "attack-rce" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-rce" "!ARGS:/text/"\nSecRuleUpdateTargetById 932150 "!ARGS:/keywords/"\n# attack-injection-php is 933 range\nSecRuleUpdateTargetByTag "attack-injection-php" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-injection-php" "!ARGS:/text/"\nSecRuleUpdateTargetById 933210 "!ARGS:/.*description/"\n# attack-xss is 941 range\nSecRuleUpdateTargetByTag "attack-xss" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-xss" "!ARGS:/text/"\n# attack-sqli is 942 range\nSecRuleUpdateTargetByTag "attack-sqli" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-sqli" "!ARGS:/text/"\nSecRuleUpdateTargetById 942100 "!ARGS:/.*description/"\nSecRuleUpdateTargetById 942130 "!ARGS:/.*description/"\nSecRuleUpdateTargetById 942130 "!ARGS:/statement/"\nSecRuleUpdateTargetById 942150 "!ARGS:/outcomeComment/"\nSecRuleUpdateTargetById 942230 "!ARGS:/.*description/"\nSecRuleUpdateTargetById 942330 "!ARGS:/keywords/"\nSecRuleUpdateTargetById 942410 "!ARGS:/outcomeComment/"\n# Disable rule 942360 (SQL Injection) for create and update alert - /api/bookings/:bookingId/alert and /api/bookings/:bookingId/alert/:alertId\nSecRule REQUEST_URI "@rx ^\\/api\\/bookings\\/[\\w|\\d]*\\/(alert$|alert\\/[\\w|\\d|-]+)" "id:800001,phase:1,pass,t:none,nolog,ctl:ruleRemoveById=942360"\n# Disable rule 942360 (SQL Injection) for create and update case note - /api/offenders/:offenderNo/case-notes and /api/offenders/:offenderNo/case-notes/:caseNoteId\nSecRule REQUEST_URI "@rx ^\\/api\\/offenders\\/[\\w|\\d]*\\/(case-notes$|case-notes\\/[\\w|\\d|-]+)" "id:800002,phase:1,pass,t:none,nolog,ctl:ruleRemoveById=942360"\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'syscon-nonprod', 'alerts_slack_channel': '#syscon-alerts-non-prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-prison-api-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://prison-api-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prum-test', 'mod-platform-non-live', 'delius-preprod', 'delius-stage', 'unilink-api', 'unilink-api-preprod'], 'curious-preprod-1': '20.49.246.49/32', 'curious-preprod-2': '202.189.235.70/32', 'pfs-azure-logicapps': '20.68.51.129/32', 'kainos-azure-logic-apps-1': '51.140.74.14/32', 'kainos-azure-logic-apps-2': '51.140.73.85/32', 'kainos-azure-logic-apps-3': '51.140.78.44/32', 'kainos-azure-logic-apps-4': '51.140.137.190/32', 'kainos-azure-logic-apps-5': '51.140.153.135/32', 'kainos-azure-logic-apps-6': '51.140.28.225/32', 'kainos-azure-logic-apps-7': '51.140.142.28/32', 'kainos-azure-logic-apps-8': '51.140.158.24/32', 'kainos-azure-logic-apps-9': '20.108.102.142/32', 'kainos-azure-logic-apps-10': '20.108.102.123/32', 'kainos-azure-logic-apps-11': '20.90.204.228/32', 'kainos-azure-logic-apps-12': '20.90.204.188/32', 'kainos-azure-logic-apps-13': '20.108.146.132/32', 'kainos-azure-logic-apps-14': '20.90.223.4/32', 'kainos-azure-logic-apps-15': '20.26.15.70/32', 'kainos-azure-logic-apps-16': '20.26.13.151/32', 'kainos-azure-logic-apps-17': '4.159.24.241/32', 'kainos-azure-logic-apps-18': '4.250.55.134/32', 'kainos-azure-logic-apps-19': '4.159.24.255/32', 'kainos-azure-logic-apps-20': '4.250.55.217/32', 'kainos-azure-logic-apps-21': '172.165.88.82/32', 'kainos-azure-logic-apps-22': '4.250.82.111/32', 'kainos-azure-logic-apps-23': '4.158.106.101/32', 'kainos-azure-logic-apps-24': '4.158.105.106/32', 'kainos-azure-logic-apps-25': '4.250.51.127/32', 'kainos-azure-logic-apps-26': '4.250.49.230/32', 'kainos-azure-logic-apps-27': '4.159.26.128/32', 'kainos-azure-logic-apps-28': '172.166.86.30/32', 'kainos-azure-logic-apps-29': '4.159.26.151/32', 'kainos-azure-logic-apps-30': '4.159.26.77/32', 'kainos-azure-logic-apps-31': '4.159.59.140/32', 'kainos-azure-logic-apps-32': '4.159.59.13/32', 'kainos-azure-logic-apps-33': '51.140.74.150/32', 'kainos-azure-logic-apps-34': '51.140.80.51/32', 'kainos-azure-logic-apps-35': '51.140.61.124/32', 'kainos-azure-logic-apps-36': '51.105.77.96/27', 'kainos-azure-logic-apps-37': '51.140.148.0/28', 'kainos-azure-logic-apps-38': '20.90.129.0/27', 'kainos-azure-logic-apps-39': '20.90.129.32/28', 'kainos-azure-logic-apps-40': '20.90.125.211', 'kainos-azure-logic-apps-41': '20.90.124.134'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# team here grants access to the OpenSearch logs to delve into the cause of the blockage\nSecDefaultAction "phase:2,pass,log,tag:github_team=dps-tech"\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT PATCH DELETE"\n# Missing User Agent Header\nSecRuleRemoveById 920320\n# Request Missing an Accept Header\nSecRuleRemoveById 920300\n# Restrict file extension\nSecRuleRemoveById 920440\n# SQL Injection Attack: Common Injection Testing Detected\nSecRuleRemoveById 942110\n# Found User-Agent associated with scripting/generic HTTP client\nSecRuleRemoveById 913101\n# Remote Command Execution: Windows Command Injection - only for windows servers\nSecRuleRemoveById 932110\n# Remote Command Execution: Windows Command Injection - only for windows servers\nSecRuleRemoveById 932115\n# Remote Command Execution: Windows FOR/IF Command Found - only for windows servers\nSecRuleRemoveById 932140\n# attack-protocol is 921 range\nSecRuleUpdateTargetByTag "attack-protocol" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-protocol" "!ARGS:/text/"\nSecRuleUpdateTargetById 930100 "!ARGS:/.*comment/"\nSecRuleUpdateTargetById 930100 "!ARGS:/text/"\nSecRuleUpdateTargetById 930110 "!ARGS:/.*comment/"\nSecRuleUpdateTargetById 930110 "!ARGS:/text/"\n# attack-rce is 932 range\nSecRuleUpdateTargetByTag "attack-rce" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-rce" "!ARGS:/text/"\nSecRuleUpdateTargetById 932150 "!ARGS:/keywords/"\n# attack-injection-php is 933 range\nSecRuleUpdateTargetByTag "attack-injection-php" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-injection-php" "!ARGS:/text/"\nSecRuleUpdateTargetById 933210 "!ARGS:/.*description/"\n# attack-xss is 941 range\nSecRuleUpdateTargetByTag "attack-xss" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-xss" "!ARGS:/text/"\n# attack-sqli is 942 range\nSecRuleUpdateTargetByTag "attack-sqli" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-sqli" "!ARGS:/text/"\nSecRuleUpdateTargetById 942100 "!ARGS:/.*description/"\nSecRuleUpdateTargetById 942130 "!ARGS:/.*description/"\nSecRuleUpdateTargetById 942130 "!ARGS:/statement/"\nSecRuleUpdateTargetById 942150 "!ARGS:/outcomeComment/"\nSecRuleUpdateTargetById 942230 "!ARGS:/.*description/"\nSecRuleUpdateTargetById 942330 "!ARGS:/keywords/"\nSecRuleUpdateTargetById 942410 "!ARGS:/outcomeComment/"\n# Disable rule 942360 (SQL Injection) for create and update alert - /api/bookings/:bookingId/alert and /api/bookings/:bookingId/alert/:alertId\nSecRule REQUEST_URI "@rx ^\\/api\\/bookings\\/[\\w|\\d]*\\/(alert$|alert\\/[\\w|\\d|-]+)" "id:800001,phase:1,pass,t:none,nolog,ctl:ruleRemoveById=942360"\n# Disable rule 942360 (SQL Injection) for create and update case note - /api/offenders/:offenderNo/case-notes and /api/offenders/:offenderNo/case-notes/:caseNoteId\nSecRule REQUEST_URI "@rx ^\\/api\\/offenders\\/[\\w|\\d]*\\/(case-notes$|case-notes\\/[\\w|\\d|-]+)" "id:800002,phase:1,pass,t:none,nolog,ctl:ruleRemoveById=942360"\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'syscon-nonprod', 'alerts_slack_channel': '#syscon-alerts-non-prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-prison-api-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://prison-api.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prum-prod', 'mod-platform-live', 'delius-prod', 'unilink-api', 'unilink-api-prod'], 'curious-prod-1': '51.142.161.93/32', 'curious-prod-2': '51.140.252.153/32', 'pfs-azure-logicapps': '20.68.51.129/32', 'kainos-azure-logic-apps-1': '51.140.74.14/32', 'kainos-azure-logic-apps-2': '51.140.73.85/32', 'kainos-azure-logic-apps-3': '51.140.78.44/32', 'kainos-azure-logic-apps-4': '51.140.137.190/32', 'kainos-azure-logic-apps-5': '51.140.153.135/32', 'kainos-azure-logic-apps-6': '51.140.28.225/32', 'kainos-azure-logic-apps-7': '51.140.142.28/32', 'kainos-azure-logic-apps-8': '51.140.158.24/32', 'kainos-azure-logic-apps-9': '20.108.102.142/32', 'kainos-azure-logic-apps-10': '20.108.102.123/32', 'kainos-azure-logic-apps-11': '20.90.204.228/32', 'kainos-azure-logic-apps-12': '20.90.204.188/32', 'kainos-azure-logic-apps-13': '20.108.146.132/32', 'kainos-azure-logic-apps-14': '20.90.223.4/32', 'kainos-azure-logic-apps-15': '20.26.15.70/32', 'kainos-azure-logic-apps-16': '20.26.13.151/32', 'kainos-azure-logic-apps-17': '4.159.24.241/32', 'kainos-azure-logic-apps-18': '4.250.55.134/32', 'kainos-azure-logic-apps-19': '4.159.24.255/32', 'kainos-azure-logic-apps-20': '4.250.55.217/32', 'kainos-azure-logic-apps-21': '172.165.88.82/32', 'kainos-azure-logic-apps-22': '4.250.82.111/32', 'kainos-azure-logic-apps-23': '4.158.106.101/32', 'kainos-azure-logic-apps-24': '4.158.105.106/32', 'kainos-azure-logic-apps-25': '4.250.51.127/32', 'kainos-azure-logic-apps-26': '4.250.49.230/32', 'kainos-azure-logic-apps-27': '4.159.26.128/32', 'kainos-azure-logic-apps-28': '172.166.86.30/32', 'kainos-azure-logic-apps-29': '4.159.26.151/32', 'kainos-azure-logic-apps-30': '4.159.26.77/32', 'kainos-azure-logic-apps-31': '4.159.59.140/32', 'kainos-azure-logic-apps-32': '4.159.59.13/32', 'kainos-azure-logic-apps-33': '51.140.74.150/32', 'kainos-azure-logic-apps-34': '51.140.80.51/32', 'kainos-azure-logic-apps-35': '51.140.61.124/32', 'kainos-azure-logic-apps-36': '51.105.77.96/27', 'kainos-azure-logic-apps-37': '51.140.148.0/28', 'kainos-azure-logic-apps-38': '20.90.129.0/27', 'kainos-azure-logic-apps-39': '20.90.129.32/28', 'kainos-azure-logic-apps-40': '20.90.125.211', 'kainos-azure-logic-apps-41': '20.90.124.134'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# team here grants access to the OpenSearch logs to delve into the cause of the blockage\nSecDefaultAction "phase:2,pass,log,tag:github_team=dps-tech"\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT PATCH DELETE"\n# Missing User Agent Header\nSecRuleRemoveById 920320\n# Request Missing an Accept Header\nSecRuleRemoveById 920300\n# Restrict file extension\nSecRuleRemoveById 920440\n# SQL Injection Attack: Common Injection Testing Detected\nSecRuleRemoveById 942110\n# Found User-Agent associated with scripting/generic HTTP client\nSecRuleRemoveById 913101\n# Remote Command Execution: Windows Command Injection - only for windows servers\nSecRuleRemoveById 932110\n# Remote Command Execution: Windows Command Injection - only for windows servers\nSecRuleRemoveById 932115\n# Remote Command Execution: Windows FOR/IF Command Found - only for windows servers\nSecRuleRemoveById 932140\n# attack-protocol is 921 range\nSecRuleUpdateTargetByTag "attack-protocol" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-protocol" "!ARGS:/text/"\nSecRuleUpdateTargetById 930100 "!ARGS:/.*comment/"\nSecRuleUpdateTargetById 930100 "!ARGS:/text/"\nSecRuleUpdateTargetById 930110 "!ARGS:/.*comment/"\nSecRuleUpdateTargetById 930110 "!ARGS:/text/"\n# attack-rce is 932 range\nSecRuleUpdateTargetByTag "attack-rce" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-rce" "!ARGS:/text/"\nSecRuleUpdateTargetById 932150 "!ARGS:/keywords/"\n# attack-injection-php is 933 range\nSecRuleUpdateTargetByTag "attack-injection-php" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-injection-php" "!ARGS:/text/"\nSecRuleUpdateTargetById 933210 "!ARGS:/.*description/"\n# attack-xss is 941 range\nSecRuleUpdateTargetByTag "attack-xss" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-xss" "!ARGS:/text/"\n# attack-sqli is 942 range\nSecRuleUpdateTargetByTag "attack-sqli" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-sqli" "!ARGS:/text/"\nSecRuleUpdateTargetById 942100 "!ARGS:/.*description/"\nSecRuleUpdateTargetById 942130 "!ARGS:/.*description/"\nSecRuleUpdateTargetById 942130 "!ARGS:/statement/"\nSecRuleUpdateTargetById 942150 "!ARGS:/outcomeComment/"\nSecRuleUpdateTargetById 942230 "!ARGS:/.*description/"\nSecRuleUpdateTargetById 942330 "!ARGS:/keywords/"\nSecRuleUpdateTargetById 942410 "!ARGS:/outcomeComment/"\n# Disable rule 942360 (SQL Injection) for create and update alert - /api/bookings/:bookingId/alert and /api/bookings/:bookingId/alert/:alertId\nSecRule REQUEST_URI "@rx ^\\/api\\/bookings\\/[\\w|\\d]*\\/(alert$|alert\\/[\\w|\\d|-]+)" "id:800001,phase:1,pass,t:none,nolog,ctl:ruleRemoveById=942360"\n# Disable rule 942360 (SQL Injection) for create and update case note - /api/offenders/:offenderNo/case-notes and /api/offenders/:offenderNo/case-notes/:caseNoteId\nSecRule REQUEST_URI "@rx ^\\/api\\/offenders\\/[\\w|\\d]*\\/(case-notes$|case-notes\\/[\\w|\\d|-]+)" "id:800002,phase:1,pass,t:none,nolog,ctl:ruleRemoveById=942360"\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'syscon', 'alerts_slack_channel': '#syscon-alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-prison-api-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://prison-api.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prum-prod', 'mod-platform-live', 'delius-prod', 'unilink-api', 'unilink-api-prod'], 'curious-prod-1': '51.142.161.93/32', 'curious-prod-2': '51.140.252.153/32', 'pfs-azure-logicapps': '20.68.51.129/32', 'kainos-azure-logic-apps-1': '51.140.74.14/32', 'kainos-azure-logic-apps-2': '51.140.73.85/32', 'kainos-azure-logic-apps-3': '51.140.78.44/32', 'kainos-azure-logic-apps-4': '51.140.137.190/32', 'kainos-azure-logic-apps-5': '51.140.153.135/32', 'kainos-azure-logic-apps-6': '51.140.28.225/32', 'kainos-azure-logic-apps-7': '51.140.142.28/32', 'kainos-azure-logic-apps-8': '51.140.158.24/32', 'kainos-azure-logic-apps-9': '20.108.102.142/32', 'kainos-azure-logic-apps-10': '20.108.102.123/32', 'kainos-azure-logic-apps-11': '20.90.204.228/32', 'kainos-azure-logic-apps-12': '20.90.204.188/32', 'kainos-azure-logic-apps-13': '20.108.146.132/32', 'kainos-azure-logic-apps-14': '20.90.223.4/32', 'kainos-azure-logic-apps-15': '20.26.15.70/32', 'kainos-azure-logic-apps-16': '20.26.13.151/32', 'kainos-azure-logic-apps-17': '4.159.24.241/32', 'kainos-azure-logic-apps-18': '4.250.55.134/32', 'kainos-azure-logic-apps-19': '4.159.24.255/32', 'kainos-azure-logic-apps-20': '4.250.55.217/32', 'kainos-azure-logic-apps-21': '172.165.88.82/32', 'kainos-azure-logic-apps-22': '4.250.82.111/32', 'kainos-azure-logic-apps-23': '4.158.106.101/32', 'kainos-azure-logic-apps-24': '4.158.105.106/32', 'kainos-azure-logic-apps-25': '4.250.51.127/32', 'kainos-azure-logic-apps-26': '4.250.49.230/32', 'kainos-azure-logic-apps-27': '4.159.26.128/32', 'kainos-azure-logic-apps-28': '172.166.86.30/32', 'kainos-azure-logic-apps-29': '4.159.26.151/32', 'kainos-azure-logic-apps-30': '4.159.26.77/32', 'kainos-azure-logic-apps-31': '4.159.59.140/32', 'kainos-azure-logic-apps-32': '4.159.59.13/32', 'kainos-azure-logic-apps-33': '51.140.74.150/32', 'kainos-azure-logic-apps-34': '51.140.80.51/32', 'kainos-azure-logic-apps-35': '51.140.61.124/32', 'kainos-azure-logic-apps-36': '51.105.77.96/27', 'kainos-azure-logic-apps-37': '51.140.148.0/28', 'kainos-azure-logic-apps-38': '20.90.129.0/27', 'kainos-azure-logic-apps-39': '20.90.129.32/28', 'kainos-azure-logic-apps-40': '20.90.125.211', 'kainos-azure-logic-apps-41': '20.90.124.134'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# team here grants access to the OpenSearch logs to delve into the cause of the blockage\nSecDefaultAction "phase:2,pass,log,tag:github_team=dps-tech"\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT PATCH DELETE"\n# Missing User Agent Header\nSecRuleRemoveById 920320\n# Request Missing an Accept Header\nSecRuleRemoveById 920300\n# Restrict file extension\nSecRuleRemoveById 920440\n# SQL Injection Attack: Common Injection Testing Detected\nSecRuleRemoveById 942110\n# Found User-Agent associated with scripting/generic HTTP client\nSecRuleRemoveById 913101\n# Remote Command Execution: Windows Command Injection - only for windows servers\nSecRuleRemoveById 932110\n# Remote Command Execution: Windows Command Injection - only for windows servers\nSecRuleRemoveById 932115\n# Remote Command Execution: Windows FOR/IF Command Found - only for windows servers\nSecRuleRemoveById 932140\n# attack-protocol is 921 range\nSecRuleUpdateTargetByTag "attack-protocol" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-protocol" "!ARGS:/text/"\nSecRuleUpdateTargetById 930100 "!ARGS:/.*comment/"\nSecRuleUpdateTargetById 930100 "!ARGS:/text/"\nSecRuleUpdateTargetById 930110 "!ARGS:/.*comment/"\nSecRuleUpdateTargetById 930110 "!ARGS:/text/"\n# attack-rce is 932 range\nSecRuleUpdateTargetByTag "attack-rce" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-rce" "!ARGS:/text/"\nSecRuleUpdateTargetById 932150 "!ARGS:/keywords/"\n# attack-injection-php is 933 range\nSecRuleUpdateTargetByTag "attack-injection-php" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-injection-php" "!ARGS:/text/"\nSecRuleUpdateTargetById 933210 "!ARGS:/.*description/"\n# attack-xss is 941 range\nSecRuleUpdateTargetByTag "attack-xss" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-xss" "!ARGS:/text/"\n# attack-sqli is 942 range\nSecRuleUpdateTargetByTag "attack-sqli" "!ARGS:/.*comment/"\nSecRuleUpdateTargetByTag "attack-sqli" "!ARGS:/text/"\nSecRuleUpdateTargetById 942100 "!ARGS:/.*description/"\nSecRuleUpdateTargetById 942130 "!ARGS:/.*description/"\nSecRuleUpdateTargetById 942130 "!ARGS:/statement/"\nSecRuleUpdateTargetById 942150 "!ARGS:/outcomeComment/"\nSecRuleUpdateTargetById 942230 "!ARGS:/.*description/"\nSecRuleUpdateTargetById 942330 "!ARGS:/keywords/"\nSecRuleUpdateTargetById 942410 "!ARGS:/outcomeComment/"\n# Disable rule 942360 (SQL Injection) for create and update alert - /api/bookings/:bookingId/alert and /api/bookings/:bookingId/alert/:alertId\nSecRule REQUEST_URI "@rx ^\\/api\\/bookings\\/[\\w|\\d]*\\/(alert$|alert\\/[\\w|\\d|-]+)" "id:800001,phase:1,pass,t:none,nolog,ctl:ruleRemoveById=942360"\n# Disable rule 942360 (SQL Injection) for create and update case note - /api/offenders/:offenderNo/case-notes and /api/offenders/:offenderNo/case-notes/:caseNoteId\nSecRule REQUEST_URI "@rx ^\\/api\\/offenders\\/[\\w|\\d]*\\/(case-notes$|case-notes\\/[\\w|\\d|-]+)" "id:800002,phase:1,pass,t:none,nolog,ctl:ruleRemoveById=942360"\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'syscon', 'alerts_slack_channel': '#syscon-alerts'} + versions: PROD: {'circleci': {'hmpps_orb': '10'}, 'dockerfile': {'base_image': 'eclipse-temurin:21-jre-jammy'}, 'helm_dependencies': {'generic-service': '3.8', 'generic-prometheus-alerts': '1.11'}} DEV: {'circleci': {'hmpps_orb': '10'}} + + +hmpps-review-send-recall-prototype-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-review-send-recall-dev', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'health-kick': '35.177.252.195/32', 'global-protect': '35.176.93.186/32', 'petty-france-wifi': '213.121.161.112/28', 'cloudplatform-live-1': '35.178.209.113/32', 'cloudplatform-live-2': '3.8.51.207/32', 'cloudplatform-live-3': '35.177.252.54/32'}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-review-send-recall-dev', 'info_path': None, 'health_path': None, 'url': 'https://hmpps-review-send-recall-prototype-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'health-kick': '35.177.252.195/32', 'global-protect': '35.176.93.186/32', 'petty-france-wifi': '213.121.161.112/28', 'cloudplatform-live-1': '35.178.209.113/32', 'cloudplatform-live-2': '3.8.51.207/32', 'cloudplatform-live-3': '35.177.252.54/32'}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} +court-hearing-event-receiver +======================= + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'court-probation-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-hearing-event-receiver-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'hmcts-1': '51.140.138.86/32', 'hmcts-2': '51.145.115.21/32', 'hmcts-3': '51.143.153.50/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation_in_court_alerts_preprod', 'alerts_slack_channel': '#probation_in_court_alerts_preprod'} + DEV: {'name': 'preprod', 'namespace': 'court-probation-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-hearing-event-receiver-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'hmcts-1': '51.140.138.86/32', 'hmcts-2': '51.145.115.21/32', 'hmcts-3': '51.143.153.50/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation_in_court_alerts_preprod', 'alerts_slack_channel': '#probation_in_court_alerts_preprod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'court-probation-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-hearing-event-receiver.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'hmcts-1': '51.140.24.220/32', 'hmcts-2': '51.140.52.246/32', 'hmcts-3': '51.11.12.29/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation_in_court_alerts_prod', 'alerts_slack_channel': '#probation_in_court_alerts_prod'} + DEV: {'name': 'prod', 'namespace': 'court-probation-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-hearing-event-receiver.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'hmcts-1': '51.140.24.220/32', 'hmcts-2': '51.140.52.246/32', 'hmcts-3': '51.11.12.29/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation_in_court_alerts_prod', 'alerts_slack_channel': '#probation_in_court_alerts_prod'} +probation-search-frontend +======================= +hmpps-find-and-refer-an-intervention-service +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-find-and-refer-an-intervention-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://find-and-refer-intervention-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'NON_PROD_ALERTS_SEVERITY_LABEL', 'alerts_slack_channel': ''} + DEV: {'name': 'dev', 'namespace': 'hmpps-find-and-refer-an-intervention-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://find-and-refer-intervention-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'NON_PROD_ALERTS_SEVERITY_LABEL', 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-find-and-refer-an-intervention-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://find-and-refer-intervention-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'NON_PROD_ALERTS_SEVERITY_LABEL', 'alerts_slack_channel': ''} + DEV: None + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-find-and-refer-an-intervention-prod', 'info_path': None, 'health_path': None, 'url': 'https://find-and-refer-intervention-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'PROD_ALERTS_SEVERITY_LABEL', 'alerts_slack_channel': ''} + DEV: None +hmpps-resettlement-passport-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-resettlement-passport-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://resettlement-passport-ui-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'circleci']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-resettlement-passport-non-prod', 'alerts_slack_channel': '#resettlement_passport_alerts_non_prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-resettlement-passport-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://resettlement-passport-ui-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'circleci']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-resettlement-passport-non-prod', 'alerts_slack_channel': '#resettlement_passport_alerts_non_prod'} + versions: PROD: {'circleci': {'hmpps_orb': '10'}, 'dockerfile': {'base_image': 'node:20.14-bookworm-slim'}, 'helm_dependencies': {'generic-service': 2.8, 'generic-prometheus-alerts': '1.3.2'}} DEV: {'circleci': {'hmpps_orb': '10'}} + + +offender-management-allocation-manager +======================= + Environment staging: + PROD: {'name': 'staging', 'namespace': 'offender-management-staging', 'info_path': '/info', 'health_path': '/health', 'url': 'https://dev.moic.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prisons', 'private_prisons']}}, 'values-staging.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'mpc-alerts-nonprod-dev', 'alerts_slack_channel': '#mpc_alerts_nonprod'} + DEV: {'name': 'staging', 'namespace': 'offender-management-staging', 'info_path': '/info', 'health_path': '/health', 'url': 'https://dev.moic.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prisons', 'private_prisons']}}, 'values-staging.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'mpc-alerts-nonprod-dev', 'alerts_slack_channel': '#mpc_alerts_nonprod'} + Environment test: + PROD: {'name': 'test', 'namespace': 'offender-management-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://test.moic.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prisons', 'private_prisons']}}, 'values-test.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'mpc-alerts-nonprod-dev', 'alerts_slack_channel': '#mpc_alerts_nonprod'} + DEV: {'name': 'test', 'namespace': 'offender-management-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://test.moic.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prisons', 'private_prisons']}}, 'values-test.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'mpc-alerts-nonprod-dev', 'alerts_slack_channel': '#mpc_alerts_nonprod'} +hmpps-prisoner-profile-casenotes-search-prototype +======================= +visit-scheduler +======================= +hmpps-dpr-data-product-definitions +======================= +create-and-vary-a-licence-api +======================= + Environment test1: + PROD: {'name': 'test1', 'namespace': 'create-and-vary-a-licence-test1', 'info_path': '/info', 'health_path': '/health', 'url': 'https://create-and-vary-a-licence-api-test1.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'test', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'dxw-vpn': '54.76.254.148/32'}}, 'values-test1.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'cvl-alerts-non-prod', 'alerts_slack_channel': '#cvl_alerts_non_prod'} + DEV: {'name': 'test1', 'namespace': 'create-and-vary-a-licence-test1', 'info_path': '/info', 'health_path': '/health', 'url': 'https://create-and-vary-a-licence-api-test1.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'dxw-vpn': '54.76.254.148/32'}}, 'values-test1.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'cvl-alerts-non-prod', 'alerts_slack_channel': '#cvl_alerts_non_prod'} + Environment test2: + PROD: {'name': 'test2', 'namespace': 'create-and-vary-a-licence-test2', 'info_path': '/info', 'health_path': '/health', 'url': 'https://create-and-vary-a-licence-api-test2.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'test', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'dxw-vpn': '54.76.254.148/32'}}, 'values-test2.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'cvl-alerts-non-prod', 'alerts_slack_channel': '#cvl_alerts_non_prod'} + DEV: {'name': 'test2', 'namespace': 'create-and-vary-a-licence-test2', 'info_path': '/info', 'health_path': '/health', 'url': 'https://create-and-vary-a-licence-api-test2.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'dxw-vpn': '54.76.254.148/32'}}, 'values-test2.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'cvl-alerts-non-prod', 'alerts_slack_channel': '#cvl_alerts_non_prod'} +james-kotlin-test +======================= + api: PROD: False DEV: True + + +hmpps-vsip-ui-tests +======================= +hmpps-audit-client +======================= +refer-and-monitor-and-delius +======================= +unpaid-work-and-delius +======================= +hmpps-prisoner-search +======================= +hmpps-health-ping +======================= + github_template_repo: PROD: DEV: None + + +hmpps-dpr-fake-dps-service-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-dpr-fake-dps-service', 'info_path': '/info', 'health_path': '/health', 'url': 'hmpps-dpr-fake-dps-service-ui.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': None, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-dpr-fake-dps-service', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': None, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +hmpps-circleci-orb +======================= +prisoner-profile-and-delius +======================= +hmpps-education-and-work-plan-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-education-and-work-plan-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://learningandworkprogress-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-education-and-work-plan-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://learningandworkprogress-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} +resettlement-passport-and-delius +======================= +manage-key-workers +======================= + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'manage-key-workers-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://preprod.manage-key-workers.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-non-prod', 'alerts_slack_channel': '#move-and-improve-alerts-non-prod'} + DEV: {'name': 'preprod', 'namespace': 'manage-key-workers-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://preprod.manage-key-workers.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-non-prod', 'alerts_slack_channel': '#move-and-improve-alerts-non-prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'manage-key-workers-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://manage-key-workers.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-prod', 'alerts_slack_channel': '#move-and-improve-alerts'} + DEV: {'name': 'prod', 'namespace': 'manage-key-workers-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://manage-key-workers.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-prod', 'alerts_slack_channel': '#move-and-improve-alerts'} +court-case-service +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'court-probation-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-case-service-dev.apps.live-1.cloud-platform.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'court-probation-dev', 'info_path': None, 'health_path': None, 'url': "https://{'host': 'court-case-service-dev.apps.live-1.cloud-platform.service.justice.gov.uk'}", 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'court-probation-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-case-service-preprod.apps.live-1.cloud-platform.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'court-probation-preprod', 'info_path': None, 'health_path': None, 'url': "https://{'host': 'court-case-service-preprod.apps.live-1.cloud-platform.service.justice.gov.uk'}", 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'court-probation-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-case-service.apps.live-1.cloud-platform.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'court-probation-prod', 'info_path': None, 'health_path': None, 'url': "https://{'host': 'court-case-service.apps.live-1.cloud-platform.service.justice.gov.uk', 'cert_secret': 'court-case-service-cert'}", 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +prison-visits-2 +======================= + github_template_repo: PROD: DEV: None + + + Environment staging: + PROD: None + DEV: {'name': 'staging', 'namespace': 'prison-visits-booking-staging', 'info_path': '/info', 'health_path': '/health', 'url': 'https://staff.preprod.prisonvisits.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'global_protect']}}, 'values-staging.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} + Environment dev: + PROD: None + DEV: {'name': 'dev', 'namespace': 'prison-visits-booking-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://staff.dev.prisonvisits.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'global_protect']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} + Environment production: + PROD: None + DEV: {'name': 'production', 'namespace': 'prison-visits-booking-production', 'info_path': '/info', 'health_path': '/health', 'url': 'https://staff.prisonvisits.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'global_protect']}}, 'values-production.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'visits-alerts', 'alerts_slack_channel': '#visits-alerts'} + versions: PROD: {'circleci': {'hmpps_orb': '8'}, 'dockerfile': {'base_image': 'ruby:3.3.5-bullseye'}, 'helm_dependencies': {'generic-service': '2.9', 'generic-prometheus-alerts': '1.3'}} DEV: {'circleci': {'hmpps_orb': '8'}} + + +hmpps-allocations +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'workforce-management-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-allocations-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-tier', 'alerts_slack_channel': ''} + DEV: {'name': 'dev', 'namespace': 'workforce-management-dev', 'info_path': None, 'health_path': None, 'url': 'https://hmpps-allocations-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'workforce-management-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-allocations-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-tier', 'alerts_slack_channel': ''} + DEV: {'name': 'preprod', 'namespace': 'workforce-management-preprod', 'info_path': None, 'health_path': None, 'url': 'https://hmpps-allocations-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'workforce-management-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-allocations.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'workforce-management-prod-alerts', 'alerts_slack_channel': ''} + DEV: {'name': 'prod', 'namespace': 'workforce-management-prod', 'info_path': None, 'health_path': None, 'url': 'https://hmpps-allocations.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'workforce-management-prod-alerts', 'alerts_slack_channel': '#manage-a-workforce_live'} +hmpps-project-bootstrap +======================= + github_project_branch_protection_restricted_teams: PROD: ['dps-tech'] DEV: [] + + +oasys-and-delius +======================= +hmpps-activities-management +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-activities-management-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://activities-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': ['RSI', 'LPI', 'WDI', 'IWI', 'FKI', 'FMI', 'WMI', 'GTI', 'LTI', 'BCI', 'LEI', 'FNI', 'RNI'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'ark-nps-hmcts-ttp1': '195.59.75.0/24', 'ark-nps-hmcts-ttp2': '194.33.192.0/25', 'ark-nps-hmcts-ttp3': '194.33.193.0/25', 'ark-nps-hmcts-ttp4': '194.33.196.0/25', 'ark-nps-hmcts-ttp5': '194.33.197.0/25'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-activities-management-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://activities-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': ['RSI', 'LPI', 'WDI', 'IWI', 'FKI', 'FMI', 'WMI', 'GTI', 'LTI', 'BCI', 'LEI', 'FNI', 'RNI'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal'], 'ark-nps-hmcts-ttp1': '195.59.75.0/24', 'ark-nps-hmcts-ttp2': '194.33.192.0/25', 'ark-nps-hmcts-ttp3': '194.33.193.0/25', 'ark-nps-hmcts-ttp4': '194.33.196.0/25', 'ark-nps-hmcts-ttp5': '194.33.197.0/25'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-activities-management-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://activities-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': ['RSI', 'LPI', 'WDI', 'FMI', 'FKI', 'IWI', 'WMI', 'GTI', 'LTI', 'BCI', 'FNI', 'MTI', 'LEI', 'FSI', 'DMI', 'HII', 'WII', 'RCI', 'RNI', 'MDI', 'LFI', 'LHI', 'EYI', 'PDI', 'SNI', 'BXI', 'NMI', 'PVI', 'WEI'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'ark-nps-hmcts-ttp1': '195.59.75.0/24', 'ark-nps-hmcts-ttp2': '194.33.192.0/25', 'ark-nps-hmcts-ttp3': '194.33.193.0/25', 'ark-nps-hmcts-ttp4': '194.33.196.0/25', 'ark-nps-hmcts-ttp5': '194.33.197.0/25'}}, 'values-preprod.yaml': {'generic-service': {'moj-official-tgw-prod': '51.149.250.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-activities-management-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://activities-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': ['RSI', 'LPI', 'WDI', 'FMI', 'FKI', 'IWI', 'WMI', 'GTI', 'LTI', 'BCI', 'FNI', 'MTI', 'LEI', 'FSI', 'DMI', 'HII', 'WII', 'RCI', 'RNI', 'MDI', 'LFI', 'LHI', 'EYI', 'PDI', 'SNI', 'BXI', 'NMI', 'PVI', 'WEI'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal'], 'ark-nps-hmcts-ttp1': '195.59.75.0/24', 'ark-nps-hmcts-ttp2': '194.33.192.0/25', 'ark-nps-hmcts-ttp3': '194.33.193.0/25', 'ark-nps-hmcts-ttp4': '194.33.196.0/25', 'ark-nps-hmcts-ttp5': '194.33.197.0/25'}}, 'values-preprod.yaml': {'generic-service': {'moj-official-tgw-prod': '51.149.250.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-activities-management-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://activities.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': ['RSI', 'LPI', 'WDI', 'FMI', 'FKI', 'IWI', 'WMI', 'GTI', 'LTI', 'BCI', 'FNI', 'MTI', 'LEI', 'FSI', 'DMI', 'HII', 'WII', 'RCI', 'RNI', 'MDI', 'LFI', 'LHI', 'EYI', 'PDI', 'SLI', 'SNI', 'BXI', 'PVI', 'WEI'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'ark-nps-hmcts-ttp1': '195.59.75.0/24', 'ark-nps-hmcts-ttp2': '194.33.192.0/25', 'ark-nps-hmcts-ttp3': '194.33.193.0/25', 'ark-nps-hmcts-ttp4': '194.33.196.0/25', 'ark-nps-hmcts-ttp5': '194.33.197.0/25'}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-activities-management-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://activities.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': ['RSI', 'LPI', 'WDI', 'FMI', 'FKI', 'IWI', 'WMI', 'GTI', 'LTI', 'BCI', 'FNI', 'MTI', 'LEI', 'FSI', 'DMI', 'HII', 'WII', 'RCI', 'RNI', 'MDI', 'LFI', 'LHI', 'EYI', 'PDI', 'SLI', 'SNI', 'BXI', 'PVI', 'WEI'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal'], 'ark-nps-hmcts-ttp1': '195.59.75.0/24', 'ark-nps-hmcts-ttp2': '194.33.192.0/25', 'ark-nps-hmcts-ttp3': '194.33.193.0/25', 'ark-nps-hmcts-ttp4': '194.33.196.0/25', 'ark-nps-hmcts-ttp5': '194.33.197.0/25'}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} +money-to-prisoners-bank-admin +======================= +money-to-prisoners-send-money +======================= +hmpps-spring-boot-sqs +======================= + github_template_repo: PROD: DEV: None + + +hmpps-kotlin-lib +======================= + github_template_repo: PROD: DEV: None + + +hmpps-github-teams +======================= +hmpps-dpr-tools-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-dpr-tools-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://dpr-tools-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-dev.yaml': {'generic-service': {'groups': ['circleci', 'internal']}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-digital-prison-reporting-dev', 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-dpr-tools-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://dpr-tools-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal'], 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-dev.yaml': {'generic-service': {'groups': ['circleci', 'internal']}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-digital-prison-reporting-dev', 'alerts_slack_channel': None} + Environment test: + PROD: {'name': 'test', 'namespace': 'hmpps-dpr-tools-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://dpr-tools-api-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'test', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-test.yaml': {'generic-service': {'groups': ['circleci', 'internal']}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-digital-prison-reporting-dev', 'alerts_slack_channel': None} + DEV: {'name': 'test', 'namespace': 'hmpps-dpr-tools-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://dpr-tools-api-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal'], 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-test.yaml': {'generic-service': {'groups': ['circleci', 'internal']}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-digital-prison-reporting-dev', 'alerts_slack_channel': None} +iis +======================= + description: PROD: Historical Prisoners Application UI DEV: [ARCHIVED] Historical Prisoners Application UI + + +hmpps-subject-access-request-worker +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-subject-access-request-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://subject-access-request-worker.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_tech', 'alerts_slack_channel': '#hmpps_tech_alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-subject-access-request-prod', 'info_path': None, 'health_path': None, 'url': 'https://subject-access-request-worker.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_tech', 'alerts_slack_channel': '#hmpps_tech_alerts'} +hmpps-digital-prison-services +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-digital-prison-services-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://dps-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleRemoveById 949110\nSecRuleRemoveById 942440\nSecRuleRemoveById 920300\n', 'alert_severity_label': 'hmpps-digital-prison-services-non-prod', 'alerts_slack_channel': '#connect-dps-non-prod-alerts'} + DEV: {'name': 'dev', 'namespace': 'hmpps-digital-prison-services-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://dps-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleRemoveById 949110\nSecRuleRemoveById 942440\nSecRuleRemoveById 920300\n', 'alert_severity_label': 'hmpps-digital-prison-services-non-prod', 'alerts_slack_channel': '#connect-dps-non-prod-alerts'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-digital-prison-services-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://dps-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'police'], 'sscl-york': '62.6.61.29/32', 'sscl-azure': '51.142.106.199/32', 'sscl-newport': '217.38.237.212/32', 'sscl-blackpool': '31.121.5.27/32', 'sscl-newcastle': '62.172.79.105/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleRemoveById 949110\nSecRuleRemoveById 942440\nSecRuleRemoveById 920300\n', 'alert_severity_label': 'hmpps-digital-prison-services-non-prod', 'alerts_slack_channel': '#connect-dps-non-prod-alerts'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-digital-prison-services-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://dps-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'police'], 'sscl-york': '62.6.61.29/32', 'sscl-azure': '51.142.106.199/32', 'sscl-newport': '217.38.237.212/32', 'sscl-blackpool': '31.121.5.27/32', 'sscl-newcastle': '62.172.79.105/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleRemoveById 949110\nSecRuleRemoveById 942440\nSecRuleRemoveById 920300\n', 'alert_severity_label': 'hmpps-digital-prison-services-non-prod', 'alerts_slack_channel': '#connect-dps-non-prod-alerts'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-digital-prison-services-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://dps.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'police'], 'sscl-york': '62.6.61.29/32', 'sscl-azure': '51.142.106.199/32', 'sscl-newport': '217.38.237.212/32', 'sscl-blackpool': '31.121.5.27/32', 'sscl-newcastle': '62.172.79.105/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\n', 'alert_severity_label': 'hmpps-digital-prison-services-prod', 'alerts_slack_channel': '#connect-dps-prod-alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-digital-prison-services-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://dps.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'police'], 'sscl-york': '62.6.61.29/32', 'sscl-azure': '51.142.106.199/32', 'sscl-newport': '217.38.237.212/32', 'sscl-blackpool': '31.121.5.27/32', 'sscl-newcastle': '62.172.79.105/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\n', 'alert_severity_label': 'hmpps-digital-prison-services-prod', 'alerts_slack_channel': '#connect-dps-prod-alerts'} +hmpps-electronic-monitoring-for-probation-officers-ui +======================= + Environment dev: + PROD: None + DEV: {'name': 'dev', 'namespace': 'hmpps-electronic-monitoring-for-probation-officers-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://electronic-monitoring-for-probation-officers-ui-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + versions: PROD: {'dockerfile': {'base_image': 'node:22.11-bookworm-slim'}, 'helm_dependencies': {'generic-service': '3.7', 'generic-prometheus-alerts': '1.11'}} DEV: {} + + +check-my-diary +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'check-my-diary-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://checkmydiary.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'syscon', 'alerts_slack_channel': '#syscon-alerts'} + DEV: {'name': 'prod', 'namespace': 'check-my-diary-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://checkmydiary.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +hmpps-assess-risks-and-needs +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-assess-risks-and-needs-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://assess-risks-and-needs-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'pingdom-1': '5.172.196.188/32', 'pingdom-2': '13.232.220.164/32', 'pingdom-3': '23.22.2.46/32', 'pingdom-4': '23.83.129.219/32', 'pingdom-5': '23.92.127.2/32', 'pingdom-6': '23.106.37.99/32', 'pingdom-7': '23.111.152.74/32', 'pingdom-8': '23.111.159.174/32', 'pingdom-9': '23.238.193.202/32', 'pingdom-10': '37.252.231.50/32', 'pingdom-11': '43.225.198.122/32', 'pingdom-12': '43.229.84.12/32', 'pingdom-13': '46.20.45.18/32', 'pingdom-14': '46.246.122.10/32', 'pingdom-15': '50.2.185.66/32', 'pingdom-16': '50.16.153.186/32', 'pingdom-17': '52.0.204.16/32', 'pingdom-18': '52.24.42.103/32', 'pingdom-19': '52.48.244.35/32', 'pingdom-20': '52.52.34.158/32', 'pingdom-21': '52.52.95.213/32', 'pingdom-22': '52.52.118.192/32', 'pingdom-23': '52.57.132.90/32', 'pingdom-24': '52.59.46.112/32', 'pingdom-25': '52.59.147.246/32', 'pingdom-26': '52.62.12.49/32', 'pingdom-27': '52.63.142.2/32', 'pingdom-28': '52.63.164.147/32', 'pingdom-29': '52.63.167.55/32', 'pingdom-30': '52.67.148.55/32', 'pingdom-31': '52.73.209.122/32', 'pingdom-32': '52.89.43.70/32', 'pingdom-33': '52.194.115.181/32', 'pingdom-34': '52.197.31.124/32', 'pingdom-35': '52.197.224.235/32', 'pingdom-36': '52.198.25.184/32', 'pingdom-37': '52.201.3.199/32', 'pingdom-38': '52.209.34.226/32', 'pingdom-39': '52.209.186.226/32', 'pingdom-40': '52.210.232.124/32', 'pingdom-41': '54.68.48.199/32', 'pingdom-42': '54.70.202.58/32', 'pingdom-43': '54.94.206.111/32', 'pingdom-44': '64.237.49.203/32', 'pingdom-45': '64.237.55.3/32', 'pingdom-46': '66.165.229.130/32', 'pingdom-47': '66.165.233.234/32', 'pingdom-48': '72.46.130.18/32', 'pingdom-49': '72.46.131.10/32', 'pingdom-50': '76.72.167.154/32', 'pingdom-51': '76.72.172.208/32', 'pingdom-52': '76.164.234.106/32', 'pingdom-53': '76.164.234.130/32', 'pingdom-54': '82.103.136.16/32', 'pingdom-55': '82.103.139.165/32', 'pingdom-56': '82.103.145.126/32', 'pingdom-57': '85.195.116.134/32', 'pingdom-58': '89.163.146.247/32', 'pingdom-59': '89.163.242.206/32', 'pingdom-60': '94.75.211.73/32', 'pingdom-61': '94.75.211.74/32', 'pingdom-62': '94.247.174.83/32', 'pingdom-63': '96.47.225.18/32', 'pingdom-64': '103.10.197.10/32', 'pingdom-65': '103.47.211.210/32', 'pingdom-66': '104.129.24.154/32', 'pingdom-67': '104.129.30.18/32', 'pingdom-68': '107.182.234.77/32', 'pingdom-69': '148.72.170.233/32', 'pingdom-70': '148.72.171.17/32', 'pingdom-71': '151.106.52.134/32', 'pingdom-72': '159.122.168.9/32', 'pingdom-73': '162.208.48.94/32', 'pingdom-74': '162.218.67.34/32', 'pingdom-75': '162.253.128.178/32', 'pingdom-76': '168.1.203.46/32', 'pingdom-77': '169.51.2.18/32', 'pingdom-78': '169.54.70.214/32', 'pingdom-79': '169.56.174.151/32', 'pingdom-80': '172.241.112.86/32', 'pingdom-81': '173.248.147.18/32', 'pingdom-82': '173.254.206.242/32', 'pingdom-83': '174.34.156.130/32', 'pingdom-84': '175.45.132.20/32', 'pingdom-85': '178.162.206.244/32', 'pingdom-86': '178.255.152.2/32', 'pingdom-87': '178.255.153.2/32', 'pingdom-88': '179.50.12.212/32', 'pingdom-89': '184.75.208.210/32', 'pingdom-90': '184.75.209.18/32', 'pingdom-91': '184.75.210.90/32', 'pingdom-92': '184.75.210.226/32', 'pingdom-93': '184.75.214.66/32', 'pingdom-94': '184.75.214.98/32', 'pingdom-95': '185.39.146.214/32', 'pingdom-96': '185.39.146.215/32', 'pingdom-97': '185.70.76.23/32', 'pingdom-98': '185.93.3.65/32', 'pingdom-99': '185.136.156.82/32', 'pingdom-100': '185.152.65.167/32', 'pingdom-101': '185.180.12.65/32', 'pingdom-102': '185.246.208.82/32', 'pingdom-103': '188.172.252.34/32', 'pingdom-104': '190.120.230.7/32', 'pingdom-105': '196.240.207.18/32', 'pingdom-106': '196.244.191.18/32', 'pingdom-107': '196.245.151.42/32', 'pingdom-108': '199.87.228.66/32', 'pingdom-109': '200.58.101.248/32', 'pingdom-110': '201.33.21.5/32', 'pingdom-111': '207.244.80.239/32', 'pingdom-112': '209.58.139.193/32', 'pingdom-113': '209.58.139.194/32', 'pingdom-114': '209.95.50.14/32', 'pingdom-115': '212.78.83.12/32', 'pingdom-116': '212.78.83.16/32', 'hmpps-daresbury-park': '194.168.183.128/28'}}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'unilink_staff'], 'dxw-vpn': '54.76.254.148/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-assess-risks-and-needs-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://assess-risks-and-needs-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal'], 'pingdom-1': '5.172.196.188/32', 'pingdom-2': '13.232.220.164/32', 'pingdom-3': '23.22.2.46/32', 'pingdom-4': '23.83.129.219/32', 'pingdom-5': '23.92.127.2/32', 'pingdom-6': '23.106.37.99/32', 'pingdom-7': '23.111.152.74/32', 'pingdom-8': '23.111.159.174/32', 'pingdom-9': '23.238.193.202/32', 'pingdom-10': '37.252.231.50/32', 'pingdom-11': '43.225.198.122/32', 'pingdom-12': '43.229.84.12/32', 'pingdom-13': '46.20.45.18/32', 'pingdom-14': '46.246.122.10/32', 'pingdom-15': '50.2.185.66/32', 'pingdom-16': '50.16.153.186/32', 'pingdom-17': '52.0.204.16/32', 'pingdom-18': '52.24.42.103/32', 'pingdom-19': '52.48.244.35/32', 'pingdom-20': '52.52.34.158/32', 'pingdom-21': '52.52.95.213/32', 'pingdom-22': '52.52.118.192/32', 'pingdom-23': '52.57.132.90/32', 'pingdom-24': '52.59.46.112/32', 'pingdom-25': '52.59.147.246/32', 'pingdom-26': '52.62.12.49/32', 'pingdom-27': '52.63.142.2/32', 'pingdom-28': '52.63.164.147/32', 'pingdom-29': '52.63.167.55/32', 'pingdom-30': '52.67.148.55/32', 'pingdom-31': '52.73.209.122/32', 'pingdom-32': '52.89.43.70/32', 'pingdom-33': '52.194.115.181/32', 'pingdom-34': '52.197.31.124/32', 'pingdom-35': '52.197.224.235/32', 'pingdom-36': '52.198.25.184/32', 'pingdom-37': '52.201.3.199/32', 'pingdom-38': '52.209.34.226/32', 'pingdom-39': '52.209.186.226/32', 'pingdom-40': '52.210.232.124/32', 'pingdom-41': '54.68.48.199/32', 'pingdom-42': '54.70.202.58/32', 'pingdom-43': '54.94.206.111/32', 'pingdom-44': '64.237.49.203/32', 'pingdom-45': '64.237.55.3/32', 'pingdom-46': '66.165.229.130/32', 'pingdom-47': '66.165.233.234/32', 'pingdom-48': '72.46.130.18/32', 'pingdom-49': '72.46.131.10/32', 'pingdom-50': '76.72.167.154/32', 'pingdom-51': '76.72.172.208/32', 'pingdom-52': '76.164.234.106/32', 'pingdom-53': '76.164.234.130/32', 'pingdom-54': '82.103.136.16/32', 'pingdom-55': '82.103.139.165/32', 'pingdom-56': '82.103.145.126/32', 'pingdom-57': '85.195.116.134/32', 'pingdom-58': '89.163.146.247/32', 'pingdom-59': '89.163.242.206/32', 'pingdom-60': '94.75.211.73/32', 'pingdom-61': '94.75.211.74/32', 'pingdom-62': '94.247.174.83/32', 'pingdom-63': '96.47.225.18/32', 'pingdom-64': '103.10.197.10/32', 'pingdom-65': '103.47.211.210/32', 'pingdom-66': '104.129.24.154/32', 'pingdom-67': '104.129.30.18/32', 'pingdom-68': '107.182.234.77/32', 'pingdom-69': '148.72.170.233/32', 'pingdom-70': '148.72.171.17/32', 'pingdom-71': '151.106.52.134/32', 'pingdom-72': '159.122.168.9/32', 'pingdom-73': '162.208.48.94/32', 'pingdom-74': '162.218.67.34/32', 'pingdom-75': '162.253.128.178/32', 'pingdom-76': '168.1.203.46/32', 'pingdom-77': '169.51.2.18/32', 'pingdom-78': '169.54.70.214/32', 'pingdom-79': '169.56.174.151/32', 'pingdom-80': '172.241.112.86/32', 'pingdom-81': '173.248.147.18/32', 'pingdom-82': '173.254.206.242/32', 'pingdom-83': '174.34.156.130/32', 'pingdom-84': '175.45.132.20/32', 'pingdom-85': '178.162.206.244/32', 'pingdom-86': '178.255.152.2/32', 'pingdom-87': '178.255.153.2/32', 'pingdom-88': '179.50.12.212/32', 'pingdom-89': '184.75.208.210/32', 'pingdom-90': '184.75.209.18/32', 'pingdom-91': '184.75.210.90/32', 'pingdom-92': '184.75.210.226/32', 'pingdom-93': '184.75.214.66/32', 'pingdom-94': '184.75.214.98/32', 'pingdom-95': '185.39.146.214/32', 'pingdom-96': '185.39.146.215/32', 'pingdom-97': '185.70.76.23/32', 'pingdom-98': '185.93.3.65/32', 'pingdom-99': '185.136.156.82/32', 'pingdom-100': '185.152.65.167/32', 'pingdom-101': '185.180.12.65/32', 'pingdom-102': '185.246.208.82/32', 'pingdom-103': '188.172.252.34/32', 'pingdom-104': '190.120.230.7/32', 'pingdom-105': '196.240.207.18/32', 'pingdom-106': '196.244.191.18/32', 'pingdom-107': '196.245.151.42/32', 'pingdom-108': '199.87.228.66/32', 'pingdom-109': '200.58.101.248/32', 'pingdom-110': '201.33.21.5/32', 'pingdom-111': '207.244.80.239/32', 'pingdom-112': '209.58.139.193/32', 'pingdom-113': '209.58.139.194/32', 'pingdom-114': '209.95.50.14/32', 'pingdom-115': '212.78.83.12/32', 'pingdom-116': '212.78.83.16/32', 'hmpps-daresbury-park': '194.168.183.128/28'}}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'unilink_staff'], 'dxw-vpn': '54.76.254.148/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +offender-events-and-delius +======================= +hmpps-incentives-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-incentives-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://incentives-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-incentives-dev', 'alerts_slack_channel': ''} + DEV: {'name': 'dev', 'namespace': 'hmpps-incentives-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://incentives-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-incentives-dev', 'alerts_slack_channel': '#incentives-dev'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-incentives-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://incentives-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-incentives-preprod', 'alerts_slack_channel': ''} + DEV: {'name': 'preprod', 'namespace': 'hmpps-incentives-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://incentives-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-incentives-preprod', 'alerts_slack_channel': '#incentives-dev'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-incentives-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://incentives-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-incentives-prod', 'alerts_slack_channel': ''} + DEV: {'name': 'prod', 'namespace': 'hmpps-incentives-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://incentives-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-incentives-prod', 'alerts_slack_channel': '#incentives-dev'} +hmpps-launchpad-home-ui +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-launchpad-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://launchpad-home.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'prisoner_facing_services']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-launchpad', 'alerts_slack_channel': ' #launchpad-alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-launchpad-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://launchpad-home.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'prisoner_facing_services']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-launchpad', 'alerts_slack_channel': ' #launchpad-alerts'} + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-launchpad-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://launchpad-home-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'groups': ['internal']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-launchpad-nonprod', 'alerts_slack_channel': ' #launchpad-alerts-nonprod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-launchpad-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://launchpad-home-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'groups': ['internal']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-launchpad-nonprod', 'alerts_slack_channel': ' #launchpad-alerts-nonprod'} +community-api +======================= + github_template_repo: PROD: DEV: None + + + frontend: PROD: True DEV: False + + +custody-key-dates-and-delius +======================= +hmpps-electronic-monitoring-create-an-order +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-ems-cemo-ui-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-electronic-monitoring-create-an-order-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo']}}, 'values-dev.yaml': {'generic-service': {'unrestricted': '0.0.0.0/0'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-electronic-monitoring-create-an-order-dev', 'alerts_slack_channel': '#hmpps-ems-cemo-alerts-dev'} + DEV: {'name': 'dev', 'namespace': 'hmpps-ems-cemo-ui-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-electronic-monitoring-create-an-order-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['digital_staff_and_mojo']}}, 'values-dev.yaml': {'generic-service': {'unrestricted': '0.0.0.0/0'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-electronic-monitoring-create-an-order-dev', 'alerts_slack_channel': '#hmpps-ems-cemo-alerts-dev'} +hmpps-mailbox-register +======================= + github_repo: PROD: hmpps-mailbox-register DEV: hmpps-manage-custody-mailbox-register + + + app_insights_cloud_role_name: PROD: hmpps-mailbox-register DEV: hmpps-manage-custody-mailbox-register + + + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-mailbox-register-dev', 'info_path': '/info', 'health_path': '/health', 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'moic', 'alerts_slack_channel': ''} + DEV: {'name': 'dev', 'namespace': 'hmpps-manage-custody-mailbox-register-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-custody-mailbox-register-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + description: PROD: A centralised functional mailbox registry providing email addresses for probation and prisons. The service would act as a source of truth for functional mailbox email addresses that services across HMPPS can use. (bootstrapped 2024-12-17) DEV: Functional mailbox registry for manage custody service area. (bootstrapped 2024-12-17) + + + latest_commit: PROD: {'sha': '9081b14a4ed000001d63c197b8c76084936893d1', 'date_time': '2025-01-31T09:23:55.000Z'} DEV: {'sha': 'c802a9fd60b4c298075a059598e7e18c963c8f78', 'date_time': '2025-02-19T09:50:20.000Z'} + + +book-a-prison-visit-staff-ui +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'visit-someone-in-prison-frontend-svc-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-prison-visits.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': ['AGI', 'AYI', 'BCI', 'BFI', 'BLI', 'BNI', 'BRI', 'BSI', 'CDI', 'CFI', 'CLI', 'CWI', 'DAI', 'DHI', 'DMI', 'DTI', 'DWI', 'EEI', 'EHI', 'ESI', 'EWI', 'EXI', 'EYI', 'FDI', 'FHI', 'FNI', 'FSI', 'GMI', 'HBI', 'HDI', 'HEI', 'HII', 'HLI', 'HMI', 'HPI', 'HVI', 'KMI', 'LFI', 'LHI', 'LII', 'LNI', 'LTI', 'LWI', 'LYI', 'MDI', 'MHI', 'MSI', 'MTI', 'NHI', 'NMI', 'NSI', 'NWI', 'ONI', 'PDI', 'PNI', 'PVI', 'RCI', 'RNI', 'SDI', 'SFI', 'SHI', 'SKI', 'SLI', 'SNI', 'STI', 'SUI', 'SWI', 'TCI', 'WCI', 'WEI', 'WII', 'WLI', 'WMI', 'WNI', 'WRI', 'WTI', 'WWI'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'visits-alerts', 'alerts_slack_channel': '#visits-alerts'} + DEV: {'name': 'prod', 'namespace': 'visit-someone-in-prison-frontend-svc-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-prison-visits.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'visits-alerts', 'alerts_slack_channel': '#visits-alerts'} + Environment staging: + PROD: {'name': 'staging', 'namespace': 'visit-someone-in-prison-frontend-svc-staging', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-prison-visits-staging.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': ['AGI', 'BLI', 'BNI', 'BSI', 'CFI', 'DHI', 'DMI', 'ESI', 'EWI', 'FHI', 'FNI', 'HEI', 'LNI', 'MHI', 'PNI', 'WMI', 'WSI', 'WWI'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}, 'values-staging.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'circleci']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} + DEV: {'name': 'staging', 'namespace': 'visit-someone-in-prison-frontend-svc-staging', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-prison-visits-staging.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons']}}, 'values-staging.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'circleci']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} + Environment dev: + PROD: {'name': 'dev', 'namespace': 'visit-someone-in-prison-frontend-svc-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-prison-visits-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': ['AGI', 'BLI', 'BNI', 'BSI', 'CFI', 'DHI', 'DMI', 'ESI', 'EWI', 'FHI', 'FNI', 'HEI', 'LGI', 'LNI', 'MHI', 'PNI', 'PVI', 'SWI', 'WMI', 'WWI'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'circleci']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} + DEV: {'name': 'dev', 'namespace': 'visit-someone-in-prison-frontend-svc-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-prison-visits-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons']}}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'circleci']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'visit-someone-in-prison-frontend-svc-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-prison-visits-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': ['AGI', 'AYI', 'BCI', 'BFI', 'BLI', 'BNI', 'BRI', 'BSI', 'CDI', 'CFI', 'CLI', 'CWI', 'DAI', 'DHI', 'DMI', 'DTI', 'DWI', 'EEI', 'EHI', 'ESI', 'EWI', 'EXI', 'EYI', 'FDI', 'FHI', 'FNI', 'FSI', 'GMI', 'HBI', 'HDI', 'HEI', 'HLI', 'HPI', 'HVI', 'KMI', 'LFI', 'LHI', 'LII', 'LNI', 'LTI', 'LWI', 'LYI', 'MDI', 'MHI', 'MSI', 'MTI', 'NHI', 'NMI', 'NSI', 'NWI', 'ONI', 'PDI', 'PNI', 'PVI', 'RCI', 'RNI', 'SDI', 'SFI', 'SHI', 'SKI', 'SLI', 'SNI', 'STI', 'SUI', 'SWI', 'TCI', 'WCI', 'WEI', 'WII', 'WLI', 'WMI', 'WNI', 'WRI', 'WTI', 'WWI'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} + DEV: {'name': 'preprod', 'namespace': 'visit-someone-in-prison-frontend-svc-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-prison-visits-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} +whereabouts-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'whereabouts-api-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://whereabouts-api-dev.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': ['ALI', 'ACI', 'ASI', 'AGI', 'AYI', 'BFI', 'BAI', 'BWI', 'BMI', 'BHI', 'BSI', 'BLI', 'BXI', 'BZI', 'BNI', 'BRI', 'CFI', 'CWI', 'CDI', 'CLI', 'CKI', 'DAI', 'DTI', 'DNI', 'DGI', 'DVI', 'DWI', 'DHI', 'DMI', 'ESI', 'EWI', 'EYI', 'EEI', 'EXI', 'FSI', 'FWI', 'FDI', 'FBI', 'FHI', 'GHI', 'GPI', 'GNI', 'GMI', 'HRI', 'HDI', 'HVI', 'HEI', 'HOI', 'HPI', 'HII', 'HBI', 'HHI', 'HLI', 'HMI', 'HCI', 'ISI', 'KTI', 'KMI', 'KVI', 'LFI', 'LCI', 'LWI', 'LYI', 'LII', 'LHI', 'LLI', 'LNI', 'LGI', 'MSI', 'MRI', 'MWI', 'MKI', 'MDI', 'MHI', 'NHI', 'NSI', 'NLI', 'NWI', 'NMI', 'OWI', 'ONI', 'PRI', 'PVI', 'PBI', 'PFI', 'PDI', 'UPI', 'PNI', 'RCI', 'RHI', 'SDI', 'SPI', 'SFI', 'EHI', 'SKI', 'SHI', 'STI', 'SUI', 'SLI', 'SWI', 'SNI', 'TSI', 'MTI', 'VEI', 'TCI', 'UKI', 'WWI', 'WII', 'WLI', 'WEI', 'WNI', 'WYI', 'WTI', 'WRI', 'WCI', 'WHI', 'WSI'], 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'groups': ['internal']}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'whereabouts-api-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://whereabouts-api-dev.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'groups': ['internal']}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'whereabouts-api-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://whereabouts-api-preprod.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': ['ACI', 'ASI', 'AGI', 'AYI', 'BFI', 'BAI', 'BWI', 'BMI', 'BSI', 'BLI', 'BZI', 'BNI', 'BRI', 'CFI', 'CWI', 'CDI', 'CLI', 'CKI', 'DAI', 'DTI', 'DNI', 'DGI', 'DWI', 'DHI', 'ESI', 'EWI', 'EEI', 'EXI', 'FYI', 'FWI', 'FDI', 'FBI', 'FEI', 'FHI', 'GHI', 'GNI', 'GMI', 'HDI', 'HVI', 'HEI', 'HOI', 'HPI', 'HBI', 'HHI', 'HLI', 'HMI', 'HCI', 'ISI', 'KMI', 'KVI', 'LCI', 'LWI', 'LYI', 'LII', 'LLI', 'LNI', 'LGI', 'MSI', 'MRI', 'MWI', 'MKI', 'MHI', 'NHI', 'NSI', 'NLI', 'NWI', 'OWI', 'ONI', 'PRI', 'PYI', 'PBI', 'PFI', 'UPI', 'PNI', 'RHI', 'SDI', 'SPI', 'SFI', 'EHI', 'SKI', 'SHI', 'STI', 'SUI', 'SWI', 'TSI', 'VEI', 'TCI', 'UKI', 'WWI', 'WLI', 'WNI', 'WYI', 'WTI', 'WRI', 'WCI', 'WHI', 'WSI'], 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'whereabouts-api-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://whereabouts-api-preprod.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'whereabouts-api-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://whereabouts-api.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': ['ACI', 'ASI', 'AGI', 'AYI', 'BFI', 'BAI', 'BWI', 'BMI', 'BSI', 'BLI', 'BZI', 'BNI', 'BRI', 'CFI', 'CWI', 'CDI', 'CLI', 'CKI', 'DAI', 'DTI', 'DNI', 'DGI', 'DWI', 'DHI', 'ESI', 'EWI', 'EEI', 'EXI', 'FYI', 'FWI', 'FDI', 'FBI', 'FEI', 'FHI', 'GHI', 'GNI', 'GMI', 'HDI', 'HVI', 'HEI', 'HOI', 'HPI', 'HBI', 'HHI', 'HLI', 'HMI', 'HCI', 'ISI', 'KMI', 'KVI', 'LCI', 'LWI', 'LYI', 'LII', 'LLI', 'LNI', 'LGI', 'MSI', 'MRI', 'MWI', 'MKI', 'MHI', 'NHI', 'NSI', 'NLI', 'NWI', 'NMI', 'OWI', 'ONI', 'PRI', 'PYI', 'PBI', 'PFI', 'UPI', 'PNI', 'RHI', 'SDI', 'SPI', 'SFI', 'EHI', 'SKI', 'SHI', 'STI', 'SUI', 'SWI', 'TSI', 'VEI', 'TCI', 'UKI', 'WWI', 'WLI', 'WNI', 'WYI', 'WTI', 'WRI', 'WCI', 'WHI', 'WSI'], 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} + DEV: {'name': 'prod', 'namespace': 'whereabouts-api-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://whereabouts-api.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} +offender-case-notes +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'offender-case-notes-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://dev.offender-case-notes.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': ['FKI', 'FMI', 'IWI', 'LEI', 'LPI', 'RSI', 'WDI', 'WMI'], 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'delius-dev-1': '35.178.19.203/32', 'delius-dev-2': '35.177.67.41/32', 'delius-dev-3': '35.178.40.151/32', 'delius-test-1': '35.176.126.163/32', 'delius-test-2': '35.178.162.73/32', 'delius-test-3': '52.56.195.113/32'}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-non-prod', 'alerts_slack_channel': '#move-and-improve-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'offender-case-notes-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://dev.offender-case-notes.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'delius-dev-1': '35.178.19.203/32', 'delius-dev-2': '35.177.67.41/32', 'delius-dev-3': '35.178.40.151/32', 'delius-test-1': '35.176.126.163/32', 'delius-test-2': '35.178.162.73/32', 'delius-test-3': '52.56.195.113/32'}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-non-prod', 'alerts_slack_channel': '#move-and-improve-alerts-non-prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'offender-case-notes-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://preprod.offender-case-notes.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': ['BFI', 'BRI', 'BZI', 'CDI', 'CKI', 'CLI', 'EHI', 'ESI', 'EYI', 'FDI', 'FWI', 'HBI', 'HPI', 'LTI', 'LWI', 'MSI', 'MTI', 'NWI', 'PBI', 'PFI', 'RCI', 'RHI', 'SLI', 'WII', 'WLI', 'WRI'], 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'delius-pre-prod-1': '52.56.240.62/32', 'delius-pre-prod-2': '18.130.110.168/32', 'delius-pre-prod-3': '35.178.44.184/32'}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-non-prod', 'alerts_slack_channel': '#move-and-improve-alerts-non-prod'} + DEV: {'name': 'preprod', 'namespace': 'offender-case-notes-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://preprod.offender-case-notes.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'delius-pre-prod-1': '52.56.240.62/32', 'delius-pre-prod-2': '18.130.110.168/32', 'delius-pre-prod-3': '35.178.44.184/32'}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-non-prod', 'alerts_slack_channel': '#move-and-improve-alerts-non-prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'offender-case-notes-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://offender-case-notes.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': ['BFI', 'BRI', 'BZI', 'CDI', 'CKI', 'CLI', 'EHI', 'ESI', 'EYI', 'FDI', 'FWI', 'HBI', 'HPI', 'LTI', 'LWI', 'MSI', 'MTI', 'NWI', 'PBI', 'PFI', 'RCI', 'RHI', 'SLI', 'WII', 'WLI', 'WRI'], 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'delius-prod-1': '52.56.115.146/32', 'delius-prod-2': '35.178.104.253/32', 'delius-prod-3': '35.177.47.45/32'}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-prod', 'alerts_slack_channel': '#move-and-improve-alerts'} + DEV: {'name': 'prod', 'namespace': 'offender-case-notes-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://offender-case-notes.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'delius-prod-1': '52.56.115.146/32', 'delius-prod-2': '35.178.104.253/32', 'delius-prod-3': '35.177.47.45/32'}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-prod', 'alerts_slack_channel': '#move-and-improve-alerts'} +prisoner-content-hub-backend +======================= +hmpps-electronic-monitoring-create-an-order-api +======================= +hmpps-integration-events +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-integration-api-prod', 'info_path': None, 'health_path': None, 'url': 'https://hmpps-integration-events.apps.live.cloud-platform.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'unrestricted': '0.0.0.0/0'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'PROD_ALERTS_SEVERITY_LABEL', 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'hmpps-integration-api-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-integration-events.apps.live.cloud-platform.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'unrestricted': '0.0.0.0/0'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'PROD_ALERTS_SEVERITY_LABEL', 'alerts_slack_channel': None} +hmpps-video-conference-schedule-ui +======================= +dps-smoketest +======================= +redrive-dead-letter-queues +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-probation-integration-services-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://null', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-probation-integration-services-dev', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-probation-integration-services-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://null', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'hmpps-probation-integration-services-preprod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-probation-integration-services-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://null', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'hmpps-probation-integration-services-prod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + latest_commit: PROD: {'sha': 'c549d07052e167336514fee2e861da4ecaa7255f', 'date_time': '2025-01-28T10:33:07.000Z'} DEV: {'sha': '5e2fd1a8f1f6522b17dec88c853ef698cce149c1', 'date_time': '2025-02-19T17:27:49.000Z'} + + +hmpps-tools-installer +======================= +hmpps-custody-manager-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-court-cases-release-dates-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-cases-release-dates-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-court-cases-release-dates-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-cases-release-dates-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-court-cases-release-dates-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-cases-release-dates-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24', 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-court-cases-release-dates-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-cases-release-dates-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24', 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + github_project_teams_admin: PROD: ['dps-tech', 'farsight-devs', 'hmpps-sre'] DEV: ['farsight-devs', 'hmpps-sre'] + + + latest_commit: PROD: {'sha': '9d3eed7e2545878a8a83f9389269e933b70bde02', 'date_time': '2025-01-27T14:10:15.000Z'} DEV: {'sha': '881b2a64606817cc28c48059d7694d7efb03b83f', 'date_time': '2025-02-19T10:26:10.000Z'} + + +hmpps-assess-for-early-release-api +======================= +hmpps-auth-performance-tests +======================= + github_project_branch_protection_restricted_teams: PROD: ['dps-tech'] DEV: [] + + + description: PROD: Gatling performance tests for HMPPS Auth DEV: [ARCHIVED] Gatling performance tests for HMPPS Auth + + + versions: PROD: {'circleci': {'hmpps_orb': '5.1'}} DEV: {'circleci': {'hmpps_orb': '5.1'}, 'dockerfile': {'base_image': 'eclipse-temurin:18-jdk-jammy'}} + + +calculate-release-dates +======================= + github_project_branch_protection_restricted_teams: PROD: ['dps-tech', 'farsight-devs'] DEV: ['farsight-devs'] + + + Environment dev: + PROD: {'name': 'dev', 'namespace': 'calculate-release-dates-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://calculate-release-dates-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'calculate-release-dates-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://calculate-release-dates-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'calculate-release-dates-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://calculate-release-dates-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'preprod', 'namespace': 'calculate-release-dates-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://calculate-release-dates-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + github_project_teams_admin: PROD: ['dps-tech', 'dps-core', 'farsight-devs', 'calculate-release-dates-team'] DEV: ['dps-core', 'farsight-devs', 'calculate-release-dates-team'] + + + latest_commit: PROD: {'sha': 'c84e028ce5863db500a536a911ea356d5e357163', 'date_time': '2025-01-24T11:51:48.000Z'} DEV: {'sha': '7eccf88ec79ad72fa8cff1497b97c0c51a1c22ba', 'date_time': '2025-02-18T17:51:08.000Z'} + + + versions: PROD: {'circleci': {'hmpps_orb': '8'}, 'dockerfile': {'base_image': 'node:22.12-bookworm-slim'}, 'helm_dependencies': {'generic-service': '3.6', 'generic-prometheus-alerts': '~1.11.0'}} DEV: {'circleci': {'hmpps_orb': '8'}} + + + trivy_last_completed_scan_date: PROD: 2025-01-28T03:06:17.247459193Z DEV: 2025-02-20T03:06:02.372392395Z + + +create-and-vary-a-licence-and-delius +======================= +hmpps-historical-prisoner +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-historical-prisoner-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://historical-prisoner.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# team here grants access to the OpenSearch logs to delve into the cause of the blockage\nSecDefaultAction "phase:2,pass,log,tag:github_team=syscon-devs,tag:namespace={{ .Release.Namespace }}"\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS,setvar:tx.paranoia_level=3"\n# Searching for prisoners gives Invalid character in request (outside of printable chars below ascii 127) so remove\nSecRuleRemoveById 920272\n# Allow multiple parameters of the same name to be passed through for HTTP Parameter Pollution\nSecRuleUpdateTargetById 921180 "!TX:paramcounter_ARGS_NAMES:section"\nSecRuleUpdateTargetById 921180 "!TX:paramcounter_ARGS_NAMES:filters"\n# Allow 1c in request cookie and csrf for SQL Injection Attack Detected via libinjection\nSecRuleUpdateTargetById 942100 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942100 "!REQUEST_COOKIES:/connect.sid/"\nSecRuleUpdateTargetById 942100 "!REQUEST_COOKIES:/hmpps-historical-prisoner.session/"\n# Allow -- in session cookie and csrf for SQL Comment Sequence Detected\nSecRuleUpdateTargetById 942440 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/connect.sid/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/hmpps-historical-prisoner.session/"\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'syscon', 'alerts_slack_channel': '#syscon-alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-historical-prisoner-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://historical-prisoner.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# team here grants access to the OpenSearch logs to delve into the cause of the blockage\nSecDefaultAction "phase:2,pass,log,tag:github_team=syscon-devs,tag:namespace={{ .Release.Namespace }}"\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS,setvar:tx.paranoia_level=3"\n# Searching for prisoners gives Invalid character in request (outside of printable chars below ascii 127) so remove\nSecRuleRemoveById 920272\n# Allow multiple parameters of the same name to be passed through for HTTP Parameter Pollution\nSecRuleUpdateTargetById 921180 "!TX:paramcounter_ARGS_NAMES:section"\nSecRuleUpdateTargetById 921180 "!TX:paramcounter_ARGS_NAMES:filters"\n# Allow 1c in request cookie and csrf for SQL Injection Attack Detected via libinjection\nSecRuleUpdateTargetById 942100 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942100 "!REQUEST_COOKIES:/connect.sid/"\nSecRuleUpdateTargetById 942100 "!REQUEST_COOKIES:/hmpps-historical-prisoner.session/"\n# Allow -- in session cookie and csrf for SQL Comment Sequence Detected\nSecRuleUpdateTargetById 942440 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/connect.sid/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/hmpps-historical-prisoner.session/"\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'syscon', 'alerts_slack_channel': '#syscon-alerts'} +prison-services-feedback-and-support +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'prison-services-feedback-and-support-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://support-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'dev', 'namespace': 'prison-services-feedback-and-support-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://support-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'prison-services-feedback-and-support-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://support.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alert'} + DEV: {'name': 'prod', 'namespace': 'prison-services-feedback-and-support-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://support.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} +help-with-prison-visits-asynchronous-worker +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'help-with-prison-visits-dev', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'help-with-prison-visits-dev', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': 'help-with-prison-visits-devtest', 'alerts_slack_channel': '#help-with-prison-visits-alerts-devtest'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'help-with-prison-visits-preprod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'help-with-prison-visits-devtest', 'alerts_slack_channel': '#help-with-prison-visits-alerts-devtest'} + DEV: {'name': 'preprod', 'namespace': 'help-with-prison-visits-preprod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': 'help-with-prison-visits-devtest', 'alerts_slack_channel': '#help-with-prison-visits-alerts-devtest'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'help-with-prison-visits-prod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'help-with-prison-visits', 'alerts_slack_channel': '#help-with-prison-visits-alerts'} + DEV: {'name': 'prod', 'namespace': 'help-with-prison-visits-prod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': 'help-with-prison-visits', 'alerts_slack_channel': '#help-with-prison-visits-alerts'} + latest_commit: PROD: {'sha': 'b513ccab084974b4246c2ea3be8600bb5f4666b7', 'date_time': '2025-01-28T08:54:03.000Z'} DEV: {'sha': 'e65cb2f39d1952a1d35d1f92740dff39a594376a', 'date_time': '2025-01-30T11:39:44.000Z'} + + + trivy_last_completed_scan_date: PROD: 2025-01-30T05:12:10.483259715Z DEV: 2025-02-20T05:12:04.824928582Z + + +hmpps-education-and-work-plan-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-education-and-work-plan-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://learning-and-work-progress-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': ['BLI', 'BXI', 'BZI', 'RSI', 'MDI', 'WDI', 'WSI', 'ONI', 'SKI', 'SWI', 'WTI', 'DGI', 'KMI', 'NLI', 'GHI', 'DNI'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'prisons-education']}}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'prisons-education'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'uservision-accessibility-testers': '5.181.59.114/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': '# WAF configured in detection-only mode, as per decision in https://dsdmoj.atlassian.net/wiki/spaces/RR/pages/5304352991/ADR-004+Use+modsec+WAF+in+detection-only+mode+for+PLP+UI\nSecAuditEngine On\nSecRuleEngine DetectionOnly\n# GitHub team name to grant access to the OpenSearch logs to be able to delve into the detail and cause\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-farsight-reduce-re-offend"\n# Change default response code to be a 406 so that we can tell easily that it is modsecurity doing the blocking\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n# Update OWASP rule 942440 (SQL Comment injection via ==) to not apply it to the connect.sid cookie (express) or the _csrf token. Both can legitimately include ==\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/connect.sid/"\nSecRuleUpdateTargetById 942440 "!ARGS:_csrf"\n# Disable OWASP rule 942230 (SQL injection attempt) as the regex is too strict and prevents sentences containing `case`, `like`, `having` or `if` in them\nSecRuleRemoveById 942230\n', 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-education-and-work-plan-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://learning-and-work-progress-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': ['BLI', 'BXI', 'BZI', 'RSI', 'MDI', 'WDI', 'WSI', 'ONI', 'SKI', 'SWI', 'WTI', 'DGI', 'KMI', 'NLI', 'GHI', 'DNI'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'prisons-education']}}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'prisons-education'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'uservision-accessibility-testers': '5.181.59.114/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': '# WAF configured in detection-only mode, as per decision in https://dsdmoj.atlassian.net/wiki/spaces/RR/pages/5304352991/ADR-004+Use+modsec+WAF+in+detection-only+mode+for+PLP+UI\nSecAuditEngine On\nSecRuleEngine DetectionOnly\n# GitHub team name to grant access to the OpenSearch logs to be able to delve into the detail and cause\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-farsight-reduce-re-offend"\n# Change default response code to be a 406 so that we can tell easily that it is modsecurity doing the blocking\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n# Update OWASP rule 942440 (SQL Comment injection via ==) to not apply it to the connect.sid cookie (express) or the _csrf token. Both can legitimately include ==\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/connect.sid/"\nSecRuleUpdateTargetById 942440 "!ARGS:_csrf"\n# Disable OWASP rule 942230 (SQL injection attempt) as the regex is too strict and prevents sentences containing `case`, `like`, `having` or `if` in them\nSecRuleRemoveById 942230\n', 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + versions: PROD: {'circleci': {'hmpps_orb': '8'}} DEV: {'circleci': {'hmpps_orb': '8'}, 'dockerfile': {'base_image': 'node:20.18-bullseye-slim'}, 'helm_dependencies': {'generic-service': '3.8.0', 'generic-prometheus-alerts': '1.11.3'}} + + +ndelius-new-tech +======================= +hmpps-authorization +======================= + veracode_last_completed_scan_date: PROD: 2025-02-17T10:04:41.000Z DEV: 2025-02-10T10:02:20.000Z + + + veracode_results_url: PROD: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1788405:46945069 DEV: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1788405:46659373 + + + Environment stage: + PROD: {'name': 'stage', 'namespace': 'hmpps-auth-stage', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-stage.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'stage', 'namespace': 'hmpps-auth-stage', 'info_path': '/info', 'health_path': '/health', 'url': 'https://authorization-stage.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-stage.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-auth-dev', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-auth-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://authorization-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} +money-to-prisoners-noms-ops +======================= +hmpps-accredited-programmes-api +======================= + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-accredited-programmes-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://accredited-programmes-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-accredited-programmes-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://accredited-programmes-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-accredited-programmes-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://accredited-programmes-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-accredited-programmes-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://accredited-programmes-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} +tst-em-example-app-jkn +======================= +hmpps-dpr-tools-ui +======================= + Environment test: + PROD: {'name': 'test', 'namespace': 'hmpps-dpr-tools-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://dpr-tools-ui-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'test', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons'], 'consultant-ip': '217.155.59.198'}}, 'values-test.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-reporting-dev', 'alerts_slack_channel': None} + DEV: {'name': 'test', 'namespace': 'hmpps-dpr-tools-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://dpr-tools-ui-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons'], 'consultant-ip': '217.155.59.198'}}, 'values-test.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-reporting-dev', 'alerts_slack_channel': None} +hmpps-prisoner-search-indexer +======================= +core-person-record-and-delius +======================= +digital-prison-services +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'digital-prison-services-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://digital-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {'generic-service': {'allowlist': False}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'digital-prison-services-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://digital-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-dev.yaml': {'generic-service': {'allowlist': False}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'digital-prison-services-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://digital-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'palo-alto-prisma-corporate': '128.77.75.64/26'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'digital-prison-services-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://digital-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'palo-alto-prisma-corporate': '128.77.75.64/26'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'digital-prison-services-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://digital.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'police'], 'sscl-york': '62.6.61.29/32', 'sscl-azure': '51.142.106.199/32', 'sscl-newport': '217.38.237.212/32', 'sscl-blackpool': '31.121.5.27/32', 'sscl-newcastle': '62.172.79.105/32', 'palo-alto-prisma-corporate': '128.77.75.64/26'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} + DEV: {'name': 'prod', 'namespace': 'digital-prison-services-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://digital.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'police'], 'sscl-york': '62.6.61.29/32', 'sscl-azure': '51.142.106.199/32', 'sscl-newport': '217.38.237.212/32', 'sscl-blackpool': '31.121.5.27/32', 'sscl-newcastle': '62.172.79.105/32', 'palo-alto-prisma-corporate': '128.77.75.64/26'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} +csr-api +======================= +hmpps-locations-inside-prison +======================= + Environment train: + PROD: {'name': 'train', 'namespace': 'hmpps-locations-inside-prison-train', 'info_path': '/info', 'health_path': '/health', 'url': 'https://locations-inside-prison-train.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'test', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prisons']}}, 'values-train.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'move-a-prisoner-alerts-nonprod', 'alerts_slack_channel': '#move-a-prisoner-alerts-nonprod'} + DEV: {'name': 'train', 'namespace': 'hmpps-locations-inside-prison-train', 'info_path': '/info', 'health_path': '/health', 'url': 'https://locations-inside-prison-train.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prisons']}}, 'values-train.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'move-a-prisoner-alerts-nonprod', 'alerts_slack_channel': '#move-a-prisoner-alerts-nonprod'} +hmpps-contacts-ui +======================= + versions: PROD: {'circleci': {'hmpps_orb': '8'}} DEV: {'circleci': {'hmpps_orb': '8'}, 'dockerfile': {'base_image': 'node:22.14-bookworm-slim'}, 'helm_dependencies': {'generic-service': '3.8', 'generic-prometheus-alerts': '1.11'}} + + +hmpps-community-payback-assessment-e2e-tests +======================= +hmpps-helm-charts +======================= +hmpps-change-someones-cell +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-prisoner-cell-allocation-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://change-someones-cell.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'move-a-prisoner-alerts-prod', 'alerts_slack_channel': '#move-a-prisoner-alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-prisoner-cell-allocation-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://change-someones-cell.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'move-a-prisoner-alerts-prod', 'alerts_slack_channel': '#move-a-prisoner-alerts'} +hmpps-nomis-mapping-service +======================= +hmpps-identify-remand-periods-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-identify-remand-periods-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://identify-remand-periods-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-identify-remand-periods-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://identify-remand-periods-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} +hmpps-assess-for-early-release-ui +======================= +nomis-user-roles-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-nomis-user-roles-api-dev', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-nomis-user-roles-api-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://nomis-user-roles-api-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_tech_non_prod', 'alerts_slack_channel': '#hmpps_tech_alerts_non_prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-nomis-user-roles-api-preprod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'hmpps-nomis-user-roles-api-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://nomis-user-roles-api-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_tech_non_prod', 'alerts_slack_channel': '#hmpps_tech_alerts_non_prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-nomis-user-roles-api-prod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'hmpps-nomis-user-roles-api-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://nomis-user-roles-api.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal']}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_tech', 'alerts_slack_channel': '#hmpps_tech_alerts'} +hmpps-service-catalogue +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-portfolio-management-prod', 'info_path': None, 'health_path': None, 'url': 'https://service-catalogue.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'google': '8.8.4.0/24,8.8.8.0/24,8.34.208.0/20,8.35.192.0/20,23.236.48.0/20,23.251.128.0/19,34.0.0.0/15,34.2.0.0/16,34.3.0.0/23,34.3.3.0/24,34.3.4.0/24,34.3.8.0/21,34.3.16.0/20,34.3.32.0/19,34.3.64.0/18,34.3.128.0/17,34.4.0.0/14,34.8.0.0/13,34.16.0.0/12,34.32.0.0/11,34.64.0.0/10,34.128.0.0/10,35.184.0.0/13,35.192.0.0/14,35.196.0.0/15,35.198.0.0/16,35.199.0.0/17,35.199.128.0/18,35.200.0.0/13,35.208.0.0/12,35.224.0.0/12,35.240.0.0/13,64.15.112.0/20,64.233.160.0/19,66.22.228.0/23,66.102.0.0/20,66.249.64.0/19,70.32.128.0/19,72.14.192.0/18,74.125.0.0/16,104.154.0.0/15,104.196.0.0/14,104.237.160.0/19,107.167.160.0/19,107.178.192.0/18,108.59.80.0/20,108.170.192.0/18,108.177.0.0/17,130.211.0.0/16,136.112.0.0/12,142.250.0.0/15,146.148.0.0/17,162.216.148.0/22,162.222.176.0/21,172.110.32.0/21,172.217.0.0/16,172.253.0.0/16,173.194.0.0/16,173.255.112.0/20,192.158.28.0/22,192.178.0.0/15,193.186.4.0/24,199.36.154.0/23,199.36.156.0/24,199.192.112.0/22,199.223.232.0/21,207.223.160.0/20,208.65.152.0/22,208.68.108.0/22,208.81.188.0/22,208.117.224.0/19,209.85.128.0/17,216.58.192.0/19,216.73.80.0/20,216.239.32.0/19', 'groups': ['internal', 'prisons']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-sre-alerts-prod', 'alerts_slack_channel': '#hmpps-sre-alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-portfolio-management-prod', 'info_path': None, 'health_path': None, 'url': 'https://service-catalogue.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'google': '8.8.4.0/24,8.8.8.0/24,8.34.208.0/20,8.35.192.0/20,23.236.48.0/20,23.251.128.0/19,34.0.0.0/15,34.2.0.0/16,34.3.0.0/23,34.3.3.0/24,34.3.4.0/24,34.3.8.0/21,34.3.16.0/20,34.3.32.0/19,34.3.64.0/18,34.3.128.0/17,34.4.0.0/14,34.8.0.0/13,34.16.0.0/12,34.32.0.0/11,34.64.0.0/10,34.128.0.0/10,35.184.0.0/13,35.192.0.0/14,35.196.0.0/15,35.198.0.0/16,35.199.0.0/17,35.199.128.0/18,35.200.0.0/13,35.208.0.0/12,35.224.0.0/12,35.240.0.0/13,64.15.112.0/20,64.233.160.0/19,66.22.228.0/23,66.102.0.0/20,66.249.64.0/19,70.32.128.0/19,72.14.192.0/18,74.125.0.0/16,104.154.0.0/15,104.196.0.0/14,104.237.160.0/19,107.167.160.0/19,107.178.192.0/18,108.59.80.0/20,108.170.192.0/18,108.177.0.0/17,130.211.0.0/16,136.112.0.0/12,142.250.0.0/15,146.148.0.0/17,162.216.148.0/22,162.222.176.0/21,172.110.32.0/21,172.217.0.0/16,172.253.0.0/16,173.194.0.0/16,173.255.112.0/20,192.158.28.0/22,192.178.0.0/15,193.186.4.0/24,199.36.154.0/23,199.36.156.0/24,199.192.112.0/22,199.223.232.0/21,207.223.160.0/20,208.65.152.0/22,208.68.108.0/22,208.81.188.0/22,208.117.224.0/19,209.85.128.0/17,216.58.192.0/19,216.73.80.0/20,216.239.32.0/19', 'groups': ['internal', 'prisons']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-sre-alerts-prod', 'alerts_slack_channel': '#hmpps-sre-alerts'} +keyworker-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'keyworker-api-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://keyworker-api-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'allowlist': False}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-non-prod', 'alerts_slack_channel': '#move-and-improve-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'keyworker-api-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://keyworker-api-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'allowlist': False}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-non-prod', 'alerts_slack_channel': '#move-and-improve-alerts-non-prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'keyworker-api-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://keyworker-api-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal']}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-non-prod', 'alerts_slack_channel': '#move-and-improve-alerts-non-prod'} + DEV: {'name': 'preprod', 'namespace': 'keyworker-api-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://keyworker-api-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal']}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-non-prod', 'alerts_slack_channel': '#move-and-improve-alerts-non-prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'keyworker-api-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://keyworker-api.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal']}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-prod', 'alerts_slack_channel': '#move-and-improve-alerts'} + DEV: {'name': 'prod', 'namespace': 'keyworker-api-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://keyworker-api.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal']}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-prod', 'alerts_slack_channel': '#move-and-improve-alerts'} +hmpps-prisoner-from-nomis-migration +======================= + versions: PROD: {'circleci': {'hmpps_orb': '10'}, 'dockerfile': {'base_image': 'eclipse-temurin:21-jre-jammy', 'rds_ca_cert': 'global-bundle.pem'}, 'helm_dependencies': {'generic-service': '3.8', 'generic-prometheus-alerts': '1.11'}} DEV: {'circleci': {'hmpps_orb': '10'}} + + +hmpps-terraform-discovery +======================= + github_template_repo: PROD: DEV: None + + +manage-offences-and-delius +======================= +hmpps-welcome-people-into-prison-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-welcome-to-prison-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://welcome-api-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'move-a-prisoner-alerts-nonprod', 'alerts_slack_channel': '#move-a-prisoner-alerts-nonprod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-welcome-to-prison-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://welcome-api-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-welcome-to-prison-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://welcome-api-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'move-a-prisoner-alerts-nonprod', 'alerts_slack_channel': '#move-a-prisoner-alerts-nonprod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-welcome-to-prison-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://welcome-api-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +hmpps-workload +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-workload-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-workload-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32'}}, 'values-dev.yaml': {'generic-service': {'delius-dev-1': '35.178.19.203/32', 'delius-dev-2': '35.177.67.41/32', 'delius-dev-3': '35.178.40.151/32', 'delius-test-1': '35.176.126.163/32', 'delius-test-2': '35.178.162.73/32', 'delius-test-3': '52.56.195.113/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-tier', 'alerts_slack_channel': ''} + DEV: {'name': 'dev', 'namespace': 'hmpps-workload-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-workload-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32'}}, 'values-dev.yaml': {'generic-service': {'delius-dev-1': '35.178.19.203/32', 'delius-dev-2': '35.177.67.41/32', 'delius-dev-3': '35.178.40.151/32', 'delius-test-1': '35.176.126.163/32', 'delius-test-2': '35.178.162.73/32', 'delius-test-3': '52.56.195.113/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-workload-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-workload-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32'}}, 'values-preprod.yaml': {'generic-service': {'delius-pre-prod-1': '52.56.240.62/32', 'delius-pre-prod-2': '18.130.110.168/32', 'delius-pre-prod-3': '35.178.44.184/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-tier', 'alerts_slack_channel': ''} + DEV: {'name': 'preprod', 'namespace': 'hmpps-workload-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-workload-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32'}}, 'values-preprod.yaml': {'generic-service': {'delius-pre-prod-1': '52.56.240.62/32', 'delius-pre-prod-2': '18.130.110.168/32', 'delius-pre-prod-3': '35.178.44.184/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-workload-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-workload.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32'}}, 'values-prod.yaml': {'generic-service': {'delius-prod-1': '52.56.115.146/32', 'delius-prod-2': '35.178.104.253/32', 'delius-prod-3': '35.177.47.45/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-workload-prod-alerts', 'alerts_slack_channel': ''} + DEV: {'name': 'prod', 'namespace': 'hmpps-workload-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-workload.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32'}}, 'values-prod.yaml': {'generic-service': {'delius-prod-1': '52.56.115.146/32', 'delius-prod-2': '35.178.104.253/32', 'delius-prod-3': '35.177.47.45/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-workload-prod-alerts', 'alerts_slack_channel': '#manage-a-workforce_live'} +hmpps-breach-notice-ui +======================= +hmpps-send-legal-mail-staff-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'send-legal-mail-to-prisons-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://check-rule39-mail-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'global_protect']}}, 'values-dev.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'circle-ci-1': '3.228.39.90', 'circle-ci-2': '18.213.67.41', 'circle-ci-3': '34.194.94.201', 'circle-ci-4': '34.194.144.202', 'circle-ci-5': '34.197.6.234', 'circle-ci-6': '35.169.17.173', 'circle-ci-7': '35.174.253.146', 'circle-ci-8': '52.3.128.216', 'circle-ci-9': '52.4.195.249', 'health-kick': '35.177.252.195/32', 'circle-ci-10': '52.5.58.121', 'circle-ci-11': '52.21.153.129', 'circle-ci-12': '52.72.72.233', 'circle-ci-13': '54.92.235.88', 'circle-ci-14': '54.161.182.76', 'circle-ci-15': '54.164.161.41', 'circle-ci-16': '54.166.105.113', 'circle-ci-17': '54.167.72.230', 'circle-ci-18': '54.172.26.132', 'circle-ci-19': '54.205.138.102', 'circle-ci-20': '54.208.72.234', 'circle-ci-21': '54.209.115.53', 'global-protect': '35.176.93.186/32', 'petty-france-wifi': '213.121.161.112/28', 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32', 'moj-official-tgw-prod': '51.149.250.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-visits-send-legal-email-dev', 'alerts_slack_channel': '#send-legal-mail-alerts-nonprod'} + DEV: {'name': 'dev', 'namespace': 'send-legal-mail-to-prisons-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://check-rule39-mail-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'global_protect']}}, 'values-dev.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'circle-ci-1': '3.228.39.90', 'circle-ci-2': '18.213.67.41', 'circle-ci-3': '34.194.94.201', 'circle-ci-4': '34.194.144.202', 'circle-ci-5': '34.197.6.234', 'circle-ci-6': '35.169.17.173', 'circle-ci-7': '35.174.253.146', 'circle-ci-8': '52.3.128.216', 'circle-ci-9': '52.4.195.249', 'health-kick': '35.177.252.195/32', 'circle-ci-10': '52.5.58.121', 'circle-ci-11': '52.21.153.129', 'circle-ci-12': '52.72.72.233', 'circle-ci-13': '54.92.235.88', 'circle-ci-14': '54.161.182.76', 'circle-ci-15': '54.164.161.41', 'circle-ci-16': '54.166.105.113', 'circle-ci-17': '54.167.72.230', 'circle-ci-18': '54.172.26.132', 'circle-ci-19': '54.205.138.102', 'circle-ci-20': '54.208.72.234', 'circle-ci-21': '54.209.115.53', 'global-protect': '35.176.93.186/32', 'petty-france-wifi': '213.121.161.112/28', 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32', 'moj-official-tgw-prod': '51.149.250.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-visits-send-legal-email-dev', 'alerts_slack_channel': '#send-legal-mail-alerts-nonprod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'send-legal-mail-to-prisons-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://check-rule39-mail-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'global_protect']}}, 'values-preprod.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'circle-ci-1': '3.228.39.90', 'circle-ci-2': '18.213.67.41', 'circle-ci-3': '34.194.94.201', 'circle-ci-4': '34.194.144.202', 'circle-ci-5': '34.197.6.234', 'circle-ci-6': '35.169.17.173', 'circle-ci-7': '35.174.253.146', 'circle-ci-8': '52.3.128.216', 'circle-ci-9': '52.4.195.249', 'health-kick': '35.177.252.195/32', 'circle-ci-10': '52.5.58.121', 'circle-ci-11': '52.21.153.129', 'circle-ci-12': '52.72.72.233', 'circle-ci-13': '54.92.235.88', 'circle-ci-14': '54.161.182.76', 'circle-ci-15': '54.164.161.41', 'circle-ci-16': '54.166.105.113', 'circle-ci-17': '54.167.72.230', 'circle-ci-18': '54.172.26.132', 'circle-ci-19': '54.205.138.102', 'circle-ci-20': '54.208.72.234', 'circle-ci-21': '54.209.115.53', 'global-protect': '35.176.93.186/32', 'petty-france-wifi': '213.121.161.112/28', 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32', 'moj-official-tgw-prod': '51.149.250.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-visits-send-legal-email-preprod', 'alerts_slack_channel': '#send-legal-mail-alerts-nonprod'} + DEV: {'name': 'preprod', 'namespace': 'send-legal-mail-to-prisons-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://check-rule39-mail-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'global_protect']}}, 'values-preprod.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'circle-ci-1': '3.228.39.90', 'circle-ci-2': '18.213.67.41', 'circle-ci-3': '34.194.94.201', 'circle-ci-4': '34.194.144.202', 'circle-ci-5': '34.197.6.234', 'circle-ci-6': '35.169.17.173', 'circle-ci-7': '35.174.253.146', 'circle-ci-8': '52.3.128.216', 'circle-ci-9': '52.4.195.249', 'health-kick': '35.177.252.195/32', 'circle-ci-10': '52.5.58.121', 'circle-ci-11': '52.21.153.129', 'circle-ci-12': '52.72.72.233', 'circle-ci-13': '54.92.235.88', 'circle-ci-14': '54.161.182.76', 'circle-ci-15': '54.164.161.41', 'circle-ci-16': '54.166.105.113', 'circle-ci-17': '54.167.72.230', 'circle-ci-18': '54.172.26.132', 'circle-ci-19': '54.205.138.102', 'circle-ci-20': '54.208.72.234', 'circle-ci-21': '54.209.115.53', 'global-protect': '35.176.93.186/32', 'petty-france-wifi': '213.121.161.112/28', 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32', 'moj-official-tgw-prod': '51.149.250.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-visits-send-legal-email-preprod', 'alerts_slack_channel': '#send-legal-mail-alerts-nonprod'} +pre-sentence-reports-to-delius +======================= +manage-a-workforce-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'workforce-management-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://workforce-management-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'prisons', 'probation']}}, 'values-dev.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prisons', 'unilink_staff']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecDefaultAction "phase:2,pass,log,tag:github_team=manage-a-workforce"\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleRemoveById 942430\nSecRuleRemoveById 942210\nSecRuleRemoveById 950100\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/connect.sid/"\nSecRuleUpdateTargetById 942450 "!REQUEST_COOKIES:/connect.sid/"\nSecRuleUpdateTargetById 930120 "!REQUEST_COOKIES:/connect.sid/"\nSecRuleUpdateTargetById 942210 "!REQUEST_COOKIES:/connect.sid/"\nSecRule REQUEST_URI "@rx \\/(confirm-allocation|choose-practitioner|confirm-instructions|case-view|probation-record|documents|risk)$" \\\n "id:1004,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=attack-sqli;ARGS:instructions"\nSecRule REQUEST_URI "@rx \\/(confirm-allocation|choose-practitioner|confirm-instructions|case-view|probation-record|documents|risk)$" \\\n "id:1005,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=platform-windows;ARGS:instructions"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\nSecRule REQUEST_URI "@rx \\/(confirm-allocation|choose-practitioner|confirm-instructions|case-view|probation-record|documents|risk)$" \\\n "id:1006,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=attack-rce;ARGS:instructions"\nSecRule REQUEST_URI "@rx \\/(confirm-allocation|choose-practitioner|confirm-instructions|case-view|probation-record|documents|risk)$" \\\n "id:1007,\\\n phase:2,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveById=921110"\nSecRuleUpdateTargetById 942440 "!ARGS:_csrf"\nSecRule REQUEST_URI "@rx \\/(confirm-allocation|choose-practitioner|confirm-instructions|case-view|probation-record|documents|risk)$" \\\n "id:1010,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=language-php;ARGS:instructions"\n', 'alert_severity_label': 'hmpps-tier', 'alerts_slack_channel': '#manage_a_workforce_dev'} + DEV: {'name': 'dev', 'namespace': 'workforce-management-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://workforce-management-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['digital_staff_and_mojo', 'prisons', 'probation']}}, 'values-dev.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prisons', 'unilink_staff']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecDefaultAction "phase:2,pass,log,tag:github_team=manage-a-workforce"\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleRemoveById 942430\nSecRuleRemoveById 942210\nSecRuleRemoveById 950100\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/connect.sid/"\nSecRuleUpdateTargetById 942450 "!REQUEST_COOKIES:/connect.sid/"\nSecRuleUpdateTargetById 930120 "!REQUEST_COOKIES:/connect.sid/"\nSecRuleUpdateTargetById 942210 "!REQUEST_COOKIES:/connect.sid/"\nSecRule REQUEST_URI "@rx \\/(confirm-allocation|choose-practitioner|confirm-instructions|case-view|probation-record|documents|risk)$" \\\n "id:1004,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=attack-sqli;ARGS:instructions"\nSecRule REQUEST_URI "@rx \\/(confirm-allocation|choose-practitioner|confirm-instructions|case-view|probation-record|documents|risk)$" \\\n "id:1005,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=platform-windows;ARGS:instructions"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\nSecRule REQUEST_URI "@rx \\/(confirm-allocation|choose-practitioner|confirm-instructions|case-view|probation-record|documents|risk)$" \\\n "id:1006,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=attack-rce;ARGS:instructions"\nSecRule REQUEST_URI "@rx \\/(confirm-allocation|choose-practitioner|confirm-instructions|case-view|probation-record|documents|risk)$" \\\n "id:1007,\\\n phase:2,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveById=921110"\nSecRuleUpdateTargetById 942440 "!ARGS:_csrf"\nSecRule REQUEST_URI "@rx \\/(confirm-allocation|choose-practitioner|confirm-instructions|case-view|probation-record|documents|risk)$" \\\n "id:1010,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=language-php;ARGS:instructions"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'workforce-management-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://workforce-management-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'prisons', 'probation']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecDefaultAction "phase:2,pass,log,tag:github_team=manage-a-workforce"\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleRemoveById 942430\nSecRuleRemoveById 942210\nSecRuleRemoveById 950100\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/connect.sid/"\nSecRuleUpdateTargetById 942450 "!REQUEST_COOKIES:/connect.sid/"\nSecRuleUpdateTargetById 930120 "!REQUEST_COOKIES:/connect.sid/"\nSecRuleUpdateTargetById 942210 "!REQUEST_COOKIES:/connect.sid/"\nSecRule REQUEST_URI "@rx \\/(confirm-allocation|choose-practitioner|confirm-instructions|case-view|probation-record|documents|risk)$" \\\n "id:1004,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=attack-sqli;ARGS:instructions"\nSecRule REQUEST_URI "@rx \\/(confirm-allocation|choose-practitioner|confirm-instructions|case-view|probation-record|documents|risk)$" \\\n "id:1005,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=platform-windows;ARGS:instructions"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\nSecRule REQUEST_URI "@rx \\/(confirm-allocation|choose-practitioner|confirm-instructions|case-view|probation-record|documents|risk)$" \\\n "id:1006,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=attack-rce;ARGS:instructions"\nSecRule REQUEST_URI "@rx \\/(confirm-allocation|choose-practitioner|confirm-instructions|case-view|probation-record|documents|risk)$" \\\n "id:1007,\\\n phase:2,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveById=921110"\nSecRuleUpdateTargetById 942440 "!ARGS:_csrf"\nSecRule REQUEST_URI "@rx \\/(confirm-allocation|choose-practitioner|confirm-instructions|case-view|probation-record|documents|risk)$" \\\n "id:1010,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=language-php;ARGS:instructions"\n', 'alert_severity_label': 'hmpps-tier', 'alerts_slack_channel': '#manage_a_workforce_dev'} + DEV: {'name': 'preprod', 'namespace': 'workforce-management-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://workforce-management-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'prisons', 'probation']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecDefaultAction "phase:2,pass,log,tag:github_team=manage-a-workforce"\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleRemoveById 942430\nSecRuleRemoveById 942210\nSecRuleRemoveById 950100\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/connect.sid/"\nSecRuleUpdateTargetById 942450 "!REQUEST_COOKIES:/connect.sid/"\nSecRuleUpdateTargetById 930120 "!REQUEST_COOKIES:/connect.sid/"\nSecRuleUpdateTargetById 942210 "!REQUEST_COOKIES:/connect.sid/"\nSecRule REQUEST_URI "@rx \\/(confirm-allocation|choose-practitioner|confirm-instructions|case-view|probation-record|documents|risk)$" \\\n "id:1004,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=attack-sqli;ARGS:instructions"\nSecRule REQUEST_URI "@rx \\/(confirm-allocation|choose-practitioner|confirm-instructions|case-view|probation-record|documents|risk)$" \\\n "id:1005,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=platform-windows;ARGS:instructions"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\nSecRule REQUEST_URI "@rx \\/(confirm-allocation|choose-practitioner|confirm-instructions|case-view|probation-record|documents|risk)$" \\\n "id:1006,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=attack-rce;ARGS:instructions"\nSecRule REQUEST_URI "@rx \\/(confirm-allocation|choose-practitioner|confirm-instructions|case-view|probation-record|documents|risk)$" \\\n "id:1007,\\\n phase:2,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveById=921110"\nSecRuleUpdateTargetById 942440 "!ARGS:_csrf"\nSecRule REQUEST_URI "@rx \\/(confirm-allocation|choose-practitioner|confirm-instructions|case-view|probation-record|documents|risk)$" \\\n "id:1010,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=language-php;ARGS:instructions"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} +hmpps-component-dependencies +======================= + github_template_repo: PROD: DEV: None + + +hmpps-book-a-prison-visit-ui +======================= + Environment staging: + PROD: {'name': 'staging', 'namespace': 'visit-someone-in-prison-frontend-svc-staging', 'info_path': '/info', 'health_path': '/health', 'url': 'https://visit-staging.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-staging.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'circleci']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-prison-visits-booking,tag:namespace={{ .Release.Namespace }}"\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateTargetById 942100 "!REQUEST_COOKIES:/prison-visits.session/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/prison-visits.session/"\nSecRuleUpdateTargetById 942340 "!REQUEST_COOKIES:/cookie_policy/"\nSecRuleUpdateTargetById 942100 "!ARGS:code"\nSecRuleUpdateTargetById 942440 "!ARGS:code"\nSecRuleUpdateTargetById 942100 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942440 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942100 "!ARGS:state"\nSecRuleUpdateTargetById 942440 "!ARGS:state"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} + DEV: {'name': 'staging', 'namespace': 'visit-someone-in-prison-frontend-svc-staging', 'info_path': '/info', 'health_path': '/health', 'url': 'https://visit-staging.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-staging.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'circleci']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-prison-visits-booking,tag:namespace={{ .Release.Namespace }}"\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateTargetById 942100 "!REQUEST_COOKIES:/prison-visits.session/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/prison-visits.session/"\nSecRuleUpdateTargetById 942340 "!REQUEST_COOKIES:/cookie_policy/"\nSecRuleUpdateTargetById 942100 "!ARGS:code"\nSecRuleUpdateTargetById 942440 "!ARGS:code"\nSecRuleUpdateTargetById 942100 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942440 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942100 "!ARGS:state"\nSecRuleUpdateTargetById 942440 "!ARGS:state"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} + Environment dev: + PROD: {'name': 'dev', 'namespace': 'visit-someone-in-prison-frontend-svc-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://visit-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'circleci']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-prison-visits-booking,tag:namespace={{ .Release.Namespace }}"\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateTargetById 942100 "!REQUEST_COOKIES:/prison-visits.session/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/prison-visits.session/"\nSecRuleUpdateTargetById 942340 "!REQUEST_COOKIES:/cookie_policy/"\nSecRuleUpdateTargetById 942100 "!ARGS:code"\nSecRuleUpdateTargetById 942440 "!ARGS:code"\nSecRuleUpdateTargetById 942100 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942440 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942100 "!ARGS:state"\nSecRuleUpdateTargetById 942440 "!ARGS:state"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} + DEV: {'name': 'dev', 'namespace': 'visit-someone-in-prison-frontend-svc-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://visit-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-dev.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'circleci']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-prison-visits-booking,tag:namespace={{ .Release.Namespace }}"\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateTargetById 942100 "!REQUEST_COOKIES:/prison-visits.session/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/prison-visits.session/"\nSecRuleUpdateTargetById 942340 "!REQUEST_COOKIES:/cookie_policy/"\nSecRuleUpdateTargetById 942100 "!ARGS:code"\nSecRuleUpdateTargetById 942440 "!ARGS:code"\nSecRuleUpdateTargetById 942100 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942440 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942100 "!ARGS:state"\nSecRuleUpdateTargetById 942440 "!ARGS:state"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'visit-someone-in-prison-frontend-svc-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://visit-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-prison-visits-booking,tag:namespace={{ .Release.Namespace }}"\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateTargetById 942100 "!REQUEST_COOKIES:/prison-visits.session/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/prison-visits.session/"\nSecRuleUpdateTargetById 942340 "!REQUEST_COOKIES:/cookie_policy/"\nSecRuleUpdateTargetById 942100 "!ARGS:code"\nSecRuleUpdateTargetById 942440 "!ARGS:code"\nSecRuleUpdateTargetById 942100 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942440 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942100 "!ARGS:state"\nSecRuleUpdateTargetById 942440 "!ARGS:state"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} + DEV: {'name': 'preprod', 'namespace': 'visit-someone-in-prison-frontend-svc-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://visit-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-prison-visits-booking,tag:namespace={{ .Release.Namespace }}"\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateTargetById 942100 "!REQUEST_COOKIES:/prison-visits.session/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/prison-visits.session/"\nSecRuleUpdateTargetById 942340 "!REQUEST_COOKIES:/cookie_policy/"\nSecRuleUpdateTargetById 942100 "!ARGS:code"\nSecRuleUpdateTargetById 942440 "!ARGS:code"\nSecRuleUpdateTargetById 942100 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942440 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942100 "!ARGS:state"\nSecRuleUpdateTargetById 942440 "!ARGS:state"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'visits-alerts-nonprod', 'alerts_slack_channel': '#visits-alerts-nonprod'} +prison-case-notes-to-probation +======================= +arns-and-delius +======================= + versions: PROD: {} DEV: {'helm_dependencies': {'generic-service': '3.2', 'generic-prometheus-alerts': '1.4'}} + + +hmpps-typescript-lib +======================= +manage-soc-cases +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'manage-soc-cases-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://manage-soc-cases-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine Off\nSecRequestBodyLimit 104857600\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRule REQUEST_URI "@contains documents/upload" \\\n "id:1004,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=attack-lfi;REQUEST_BODY"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'dps-sed-alerts-nonprod', 'alerts_slack_channel': '#sed_nonprod_alerts'} + DEV: {'name': 'dev', 'namespace': 'manage-soc-cases-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://manage-soc-cases-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine Off\nSecRequestBodyLimit 104857600\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRule REQUEST_URI "@contains documents/upload" \\\n "id:1004,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=attack-lfi;REQUEST_BODY"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'dps-sed-alerts-nonprod', 'alerts_slack_channel': '#sed_nonprod_alerts'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'manage-soc-cases-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://manage-soc-cases-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine Off\nSecRequestBodyLimit 104857600\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRule REQUEST_URI "@contains documents/upload" \\\n "id:1004,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=attack-lfi;REQUEST_BODY"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'dps-sed-alerts-nonprod', 'alerts_slack_channel': '#sed_nonprod_alerts'} + DEV: {'name': 'preprod', 'namespace': 'manage-soc-cases-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://manage-soc-cases-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine Off\nSecRequestBodyLimit 104857600\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRule REQUEST_URI "@contains documents/upload" \\\n "id:1004,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=attack-lfi;REQUEST_BODY"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'dps-sed-alerts-nonprod', 'alerts_slack_channel': '#sed_nonprod_alerts'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'manage-soc-cases-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://manage-soc-cases.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine Off\nSecRequestBodyLimit 104857600\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRule REQUEST_URI "@contains documents/upload" \\\n "id:1004,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=attack-lfi;REQUEST_BODY"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'dps-sed-alerts-prod', 'alerts_slack_channel': '#dps_sed_alerts'} + DEV: {'name': 'prod', 'namespace': 'manage-soc-cases-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://manage-soc-cases.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine Off\nSecRequestBodyLimit 104857600\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRule REQUEST_URI "@contains documents/upload" \\\n "id:1004,\\\n phase:1,\\\n pass,\\\n nolog,\\\n ctl:ruleRemoveTargetByTag=attack-lfi;REQUEST_BODY"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'dps-sed-alerts-prod', 'alerts_slack_channel': '#dps_sed_alerts'} +hmpps-remand-and-sentencing-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-remand-and-sentencing-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://remand-and-sentencing-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-remand-and-sentencing-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://remand-and-sentencing-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-remand-and-sentencing-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://remand-and-sentencing-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32'}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-remand-and-sentencing-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://remand-and-sentencing-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32'}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} +hmpps-court-cases-release-dates-design +======================= + github_template_repo: PROD: DEV: None + + +hmpps-activities-management-api +======================= + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-activities-management-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://activities-api-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'ark-nps-hmcts-ttp1': '195.59.75.0/24', 'ark-nps-hmcts-ttp2': '194.33.192.0/25', 'ark-nps-hmcts-ttp3': '194.33.193.0/25', 'ark-nps-hmcts-ttp4': '194.33.196.0/25', 'ark-nps-hmcts-ttp5': '194.33.197.0/25'}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-activities-management-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://activities-api-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'ark-nps-hmcts-ttp1': '195.59.75.0/24', 'ark-nps-hmcts-ttp2': '194.33.192.0/25', 'ark-nps-hmcts-ttp3': '194.33.193.0/25', 'ark-nps-hmcts-ttp4': '194.33.196.0/25', 'ark-nps-hmcts-ttp5': '194.33.197.0/25'}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} +hmpps-jobs-board-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-jobs-board-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://jobs-board-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'prisons', 'moj_cloud_platform']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'education-alerts-non-prod', 'alerts_slack_channel': '#prison-education-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-jobs-board-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://jobs-board-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'prisons', 'moj_cloud_platform']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'education-alerts-non-prod', 'alerts_slack_channel': '#prison-education-alerts-non-prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-jobs-board-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://jobs-board-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'prisons', 'moj_cloud_platform']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'education-alerts-non-prod', 'alerts_slack_channel': '#prison-education-alerts-non-prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-jobs-board-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://jobs-board-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'prisons', 'moj_cloud_platform']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'education-alerts-non-prod', 'alerts_slack_channel': '#prison-education-alerts-non-prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-jobs-board-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://jobs-board.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'prisons', 'moj_cloud_platform']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'education-alerts', 'alerts_slack_channel': '#prison-education-alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-jobs-board-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://jobs-board.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'prisons', 'moj_cloud_platform']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'education-alerts', 'alerts_slack_channel': '#prison-education-alerts'} +assessment-summary-and-delius +======================= +hmpps-sg-validation-test2 +======================= + Environment dev: + PROD: None + DEV: {'name': 'dev', 'namespace': 'san_dev', 'info_path': None, 'health_path': None, 'url': 'https://sg-validation-test2-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'james-dev', 'alerts_slack_channel': None} + versions: PROD: {'dockerfile': {'base_image': 'node:22.12-bookworm-slim'}, 'helm_dependencies': {'generic-service': '3.8', 'generic-prometheus-alerts': '1.11'}} DEV: {} + + +probation-search-and-delius +======================= +hmpps-probation-integration-scripts +======================= +hmpps-incentives-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-incentives-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://incentives-ui-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prisons', 'private_prisons']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-incentives-dev', 'alerts_slack_channel': '#incentives-dev'} + DEV: {'name': 'dev', 'namespace': 'hmpps-incentives-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://incentives-ui-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prisons', 'private_prisons']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-incentives-dev', 'alerts_slack_channel': '#incentives-dev'} +hmpps-utility-container-images +======================= + latest_commit: PROD: {'sha': '8cbd02466d4d6e1c6fcb8706f0a6554787d4fa2c', 'date_time': '2024-09-18T10:40:22.000Z'} DEV: {'sha': 'a08734fbf8dc97f724d7e9f51420ce551f43557b', 'date_time': '2025-02-20T10:52:35.000Z'} + + +hmpps-breach-notice-api +======================= + github_project_branch_protection_restricted_teams: PROD: ['unilink'] DEV: [] + + + trivy_last_completed_scan_date: PROD: 2025-02-19T09:35:18.762699985Z DEV: 2025-02-20T09:35:29.021387927Z + + +court-list-splitter +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'court-probation-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-list-splitter-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'health-kick': '35.177.252.195/32', 'global-protect': '35.176.93.186/32', 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'prepare-a-case', 'alerts_slack_channel': '#probation_in_court_alerts'} + DEV: {'name': 'dev', 'namespace': 'court-probation-dev', 'info_path': None, 'health_path': None, 'url': 'https://court-list-splitter-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'health-kick': '35.177.252.195/32', 'global-protect': '35.176.93.186/32', 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'prepare-a-case', 'alerts_slack_channel': '#probation_in_court_alerts'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'court-probation-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-list-splitter-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'health-kick': '35.177.252.195/32', 'global-protect': '35.176.93.186/32', 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'prepare-a-case', 'alerts_slack_channel': '#probation_in_court_alerts'} + DEV: {'name': 'preprod', 'namespace': 'court-probation-preprod', 'info_path': None, 'health_path': None, 'url': 'https://court-list-splitter-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'health-kick': '35.177.252.195/32', 'global-protect': '35.176.93.186/32', 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'prepare-a-case', 'alerts_slack_channel': '#probation_in_court_alerts'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'court-probation-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-list-splitter.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'health-kick': '35.177.252.195/32', 'global-protect': '35.176.93.186/32', 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'prepare-a-case', 'alerts_slack_channel': '#probation_in_court_alerts'} + DEV: {'name': 'prod', 'namespace': 'court-probation-prod', 'info_path': None, 'health_path': None, 'url': 'https://court-list-splitter.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'health-kick': '35.177.252.195/32', 'global-protect': '35.176.93.186/32', 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'prepare-a-case', 'alerts_slack_channel': '#probation_in_court_alerts'} +hmpps-manage-offences +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-manage-offences-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-offences-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': ''} + DEV: {'name': 'dev', 'namespace': 'hmpps-manage-offences-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-offences-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-manage-offences-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-offences-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': ''} + DEV: {'name': 'preprod', 'namespace': 'hmpps-manage-offences-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-offences-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-manage-offences-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-offences.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts', 'alerts_slack_channel': ''} + DEV: {'name': 'prod', 'namespace': 'hmpps-manage-offences-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-offences.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts', 'alerts_slack_channel': '#legacy-replacement-alerts'} +basm-move-generator +======================= +offloc-server +======================= + github_project_branch_protection_restricted_teams: PROD: ['dps-tech'] DEV: [] + + +hmpps-incident-reporting +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-incident-reporting-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://incident-reporting-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prisons', 'private_prisons']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-incident-reporting-dev', 'alerts_slack_channel': '#incident-reporting-service-dev'} + DEV: {'name': 'dev', 'namespace': 'hmpps-incident-reporting-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://incident-reporting-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prisons', 'private_prisons']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-incident-reporting-dev', 'alerts_slack_channel': '#incident-reporting-service-dev'} + latest_commit: PROD: {'sha': 'a4f982b263135efe848a268bd7673d7874966166', 'date_time': '2025-02-19T13:33:18.000Z'} DEV: {'sha': '5ee6ce44446bff0bc8d03689e0cc616fa6ab25dc', 'date_time': '2025-02-20T10:22:28.000Z'} + + + trivy_last_completed_scan_date: PROD: 2025-02-19T09:49:47.636974544Z DEV: 2025-02-20T09:49:11.865879556Z + + +manage-intelligence-api +======================= + Environment stage: + PROD: {'name': 'stage', 'namespace': 'hmpps-manage-intelligence-stage', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-intelligence-api-stage.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-stage.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'intelligence-management-service-dev', 'alerts_slack_channel': '#ims_alerts_non_prod'} + DEV: {'name': 'stage', 'namespace': 'hmpps-manage-intelligence-stage', 'info_path': None, 'health_path': None, 'url': 'https://manage-intelligence-api-stage.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-stage.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment dev: + PROD: {'name': 'dev', 'namespace': 'manage-intelligence-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-intelligence-api-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'intelligence-management-service-dev', 'alerts_slack_channel': '#ims_alerts_non_prod'} + DEV: None + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-manage-intelligence-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-intelligence-api-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'intelligence-management-service-pre-prod', 'alerts_slack_channel': '#ims_alerts_non_prod'} + DEV: None + Environment test: + PROD: {'name': 'test', 'namespace': 'hmpps-manage-intelligence-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-intelligence-api-test.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'test', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-test.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'intelligence-management-service-dev', 'alerts_slack_channel': '#ims_alerts_non_prod'} + DEV: None + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-manage-intelligence-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-intelligence-api.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-manage-intelligence-multi-app-prod', 'alerts_slack_channel': '#ims_alerts'} + DEV: None + trivy_last_completed_scan_date: PROD: None DEV: 2025-02-20T03:55:03.721078154Z + + +hmpps-prisoner-events +======================= +hmpps-template-typescript +======================= +offender-categorisation +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'offender-categorisation-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://dev.offender-categorisation.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'prisons'], 'ark-nps-hmcts-ttp1': '195.59.75.0/24', 'ark-nps-hmcts-ttp2': '194.33.192.0/25', 'ark-nps-hmcts-ttp3': '194.33.193.0/25', 'ark-nps-hmcts-ttp4': '194.33.196.0/25', 'ark-nps-hmcts-ttp5': '194.33.197.0/25'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleRemoveById 949110\n', 'alert_severity_label': 'dps-sed-alerts-nonprod', 'alerts_slack_channel': '#sed_nonprod_alerts'} + DEV: {'name': 'dev', 'namespace': 'offender-categorisation-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://dev.offender-categorisation.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'prisons'], 'ark-nps-hmcts-ttp1': '195.59.75.0/24', 'ark-nps-hmcts-ttp2': '194.33.192.0/25', 'ark-nps-hmcts-ttp3': '194.33.193.0/25', 'ark-nps-hmcts-ttp4': '194.33.196.0/25', 'ark-nps-hmcts-ttp5': '194.33.197.0/25'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleRemoveById 949110\n', 'alert_severity_label': 'dps-sed-alerts-nonprod', 'alerts_slack_channel': '#sed_nonprod_alerts'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'offender-categorisation-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://preprod.offender-categorisation.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleRemoveById 949110\n', 'alert_severity_label': 'dps-sed-alerts-nonprod', 'alerts_slack_channel': '#sed_nonprod_alerts'} + DEV: {'name': 'preprod', 'namespace': 'offender-categorisation-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://preprod.offender-categorisation.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleRemoveById 949110\n', 'alert_severity_label': 'dps-sed-alerts-nonprod', 'alerts_slack_channel': '#sed_nonprod_alerts'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'offender-categorisation-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://offender-categorisation.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleRemoveById 949110\n', 'alert_severity_label': 'dps-sed-alerts-prod', 'alerts_slack_channel': '#dps_sed_alerts'} + DEV: {'name': 'prod', 'namespace': 'offender-categorisation-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://offender-categorisation.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleRemoveById 949110\n', 'alert_severity_label': 'dps-sed-alerts-prod', 'alerts_slack_channel': '#dps_sed_alerts'} +hmpps-integration-api +======================= + container_image: PROD: 754256621582.dkr.ecr.eu-west-2.amazonaws.com/hmpps-integration-api/hmpps-integration-api-prod-ecr DEV: quay.io/hmpps/hmpps-integration-api + + + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-integration-api-prod', 'info_path': None, 'health_path': None, 'url': 'https://hmpps-integration-api-prod.apps.live.cloud-platform.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'unrestricted': '0.0.0.0/0'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-integration-api-prod', 'info_path': None, 'health_path': None, 'url': 'https://hmpps-integration-api-prod.apps.live.cloud-platform.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'unrestricted': '0.0.0.0/0'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} +prisoner-content-hub-frontend +======================= +probation-teams +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'licences-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://probation-teams-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'health-kick': '35.177.252.195/32', 'global-protect': '35.176.93.186/32', 'petty-france-wifi': '213.121.161.112/28', 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'cvl-alerts-non-prod', 'alerts_slack_channel': '#cvl_alerts_non_prod'} + DEV: {'name': 'dev', 'namespace': 'licences-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://probation-teams-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'health-kick': '35.177.252.195/32', 'global-protect': '35.176.93.186/32', 'petty-france-wifi': '213.121.161.112/28', 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'cvl-alerts-non-prod', 'alerts_slack_channel': '#cvl_alerts_non_prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'licences-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://probation-teams-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'health-kick': '35.177.252.195/32', 'global-protect': '35.176.93.186/32', 'petty-france-wifi': '213.121.161.112/28', 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'cvl-alerts-non-prod', 'alerts_slack_channel': '#cvl_alerts_non_prod'} + DEV: {'name': 'preprod', 'namespace': 'licences-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://probation-teams-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'health-kick': '35.177.252.195/32', 'global-protect': '35.176.93.186/32', 'petty-france-wifi': '213.121.161.112/28', 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'cvl-alerts-non-prod', 'alerts_slack_channel': '#cvl_alerts_non_prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'licences-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://probation-teams.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'health-kick': '35.177.252.195/32', 'global-protect': '35.176.93.186/32', 'petty-france-wifi': '213.121.161.112/28', 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'cvl-alerts', 'alerts_slack_channel': '#cvl_alerts'} + DEV: {'name': 'prod', 'namespace': 'licences-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://probation-teams.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'health-kick': '35.177.252.195/32', 'global-protect': '35.176.93.186/32', 'petty-france-wifi': '213.121.161.112/28', 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'cvl-alerts', 'alerts_slack_channel': '#cvl_alerts'} +san-typescript-test +======================= + container_image: PROD: quay.io/hmpps/san-typescript-test DEV: ghcr.io/ministryofjustice/san-typescript-test + + +manage-soc-cases-api +======================= + veracode_last_completed_scan_date: PROD: 2025-02-17T05:59:20.000Z DEV: 2025-02-10T05:59:20.000Z + + + veracode_results_url: PROD: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1189746:46937315 DEV: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1189746:46651547 + + + trivy_last_completed_scan_date: PROD: None DEV: 2025-02-20T03:52:25.275707688Z + + +hmpps-sentence-plan-ui +======================= + veracode_last_completed_scan_date: PROD: 2025-02-17T09:32:16.000Z DEV: 2025-02-10T09:32:09.000Z + + + veracode_results_url: PROD: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1718817:46944032 DEV: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1718817:46658269 + + + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-sentence-plan-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://sentence-plan-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons']}}, 'values-dev.yaml': {'generic-service': {'neil-test': '51.155.102.238/32', 'capita-dev': '51.104.16.30/31', 'captia-further': '172.167.141.40/32', 'krupal-app-sec': '80.195.27.199/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-sentence-plan-notifications', 'alerts_slack_channel': ''} + DEV: {'name': 'dev', 'namespace': 'hmpps-sentence-plan-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://sentence-plan-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['circleci', 'internal', 'prisons']}}, 'values-dev.yaml': {'generic-service': {'neil-test': '51.155.102.238/32', 'capita-dev': '51.104.16.30/31', 'captia-further': '172.167.141.40/32', 'krupal-app-sec': '80.195.27.199/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-sentence-plan-notifications', 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-sentence-plan-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://sentence-plan-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-sentence-plan-notifications', 'alerts_slack_channel': ''} + DEV: {'name': 'preprod', 'namespace': 'hmpps-sentence-plan-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://sentence-plan-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-sentence-plan-notifications', 'alerts_slack_channel': None} + Environment test: + PROD: {'name': 'test', 'namespace': 'hmpps-sentence-plan-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://sentence-plan-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'test', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons']}}, 'values-test.yaml': {'generic-service': {'neil-test': '51.155.102.238/32', 'capita-dev': '51.104.16.30/31', 'captia-further': '172.167.141.40/32', 'krupal-app-sec': '80.195.27.199/32', 'kieran-accessibility': '5.181.59.114/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-sentence-plan-notifications', 'alerts_slack_channel': ''} + DEV: {'name': 'test', 'namespace': 'hmpps-sentence-plan-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://sentence-plan-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['circleci', 'internal', 'prisons']}}, 'values-test.yaml': {'generic-service': {'neil-test': '51.155.102.238/32', 'capita-dev': '51.104.16.30/31', 'captia-further': '172.167.141.40/32', 'krupal-app-sec': '80.195.27.199/32', 'kieran-accessibility': '5.181.59.114/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-sentence-plan-notifications', 'alerts_slack_channel': None} + trivy_last_completed_scan_date: PROD: 2025-02-19T09:37:41.112709681Z DEV: 2025-02-20T09:37:40.634961635Z + + +hmpps-challenge-support-intervention-plan-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-challenge-support-intervention-plan-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://csip-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prisons', 'private_prisons']}}, 'values-dev.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prisons', 'accessibility-testing-1']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-non-prod', 'alerts_slack_channel': '#move-and-improve-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-challenge-support-intervention-plan-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://csip-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prisons', 'private_prisons']}}, 'values-dev.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prisons', 'accessibility-testing-1']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-alerts-api-non-prod', 'alerts_slack_channel': '#move-and-improve-alerts-non-prod'} +hmpps-user-preferences +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-user-preferences-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-user-preferences-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-user-preferences-dev', 'info_path': None, 'health_path': None, 'url': "https://{'host': 'hmpps-user-preferences-dev.hmpps.service.justice.gov.uk', 'cert_secret': 'hmpps-user-preferences-secret'}", 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-user-preferences-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-user-preferences-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'hmpps-user-preferences-preprod', 'info_path': None, 'health_path': None, 'url': "https://{'host': 'hmpps-user-preferences-preprod.hmpps.service.justice.gov.uk', 'cert_secret': 'hmpps-user-preferences-secret'}", 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-user-preferences-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-user-preferences.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'hmpps-user-preferences-prod', 'info_path': None, 'health_path': None, 'url': "https://{'host': 'hmpps-user-preferences.hmpps.service.justice.gov.uk', 'cert_secret': 'hmpps-user-preferences-secret'}", 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +hmpps-prisoner-location +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-prisoner-location-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://prisoner-location.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# team here grants access to the OpenSearch logs to delve into the cause of the blockage\nSecDefaultAction "phase:2,pass,log,tag:github_team=syscon-devs,tag:namespace={{ .Release.Namespace }}"\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS,setvar:tx.paranoia_level=3"\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'syscon', 'alerts_slack_channel': '#syscon-alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-prisoner-location-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://prisoner-location.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# team here grants access to the OpenSearch logs to delve into the cause of the blockage\nSecDefaultAction "phase:2,pass,log,tag:github_team=syscon-devs,tag:namespace={{ .Release.Namespace }}"\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS,setvar:tx.paranoia_level=3"\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} +hmpps-find-and-refer-an-intervention-ui +======================= + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-find-and-refer-an-intervention-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://find-and-refer-intervention-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'tbc', 'alerts_slack_channel': None} + DEV: None + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-find-and-refer-an-intervention-prod', 'info_path': None, 'health_path': None, 'url': 'https://find-and-refer-intervention.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'tbc', 'alerts_slack_channel': None} + DEV: None + latest_commit: PROD: {'sha': '94a374c71dee112bf9e7868171cfbb6904e76757', 'date_time': '2025-02-19T14:12:52.000Z'} DEV: {'sha': '0be23d56466dcb089e8a5d6f407e90e849459e42', 'date_time': '2025-02-20T10:38:56.000Z'} + + +hmpps-alerts-api +======================= +hmpps-digital-prison-reporting-mi-ui +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-digital-prison-reporting-mi-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://digital-prison-reporting-mi-ui.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': ['EXI', 'BNI', 'LYI', 'EEI', 'VEI'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'hmp-parc-1': '217.161.76.162/32', 'hmp-parc-2': '217.161.76.154/32'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# Limit permitted HTTP methods.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET POST OPTIONS"\n# This grants access to the OpenSearch logs to delve into the cause of the blockage.\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-digital-prison-reporting"\nSecDefaultAction "phase:4,pass,log,tag:github_team=hmpps-digital-prison-reporting"\n# This disables the Remote Command Execution: Windows Command Injection rule, since we do not use Windows and it was flagging a false positive. \nSecRuleRemoveById 932110\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking.\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'digital-prison-reporting-prod', 'alerts_slack_channel': ''} + DEV: {'name': 'prod', 'namespace': 'hmpps-digital-prison-reporting-mi-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://digital-prison-reporting-mi-ui.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': ['EXI', 'BNI', 'LYI', 'EEI', 'VEI'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'hmp-parc-1': '217.161.76.162/32', 'hmp-parc-2': '217.161.76.154/32'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# Limit permitted HTTP methods.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET POST OPTIONS"\n# This grants access to the OpenSearch logs to delve into the cause of the blockage.\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-digital-prison-reporting"\nSecDefaultAction "phase:4,pass,log,tag:github_team=hmpps-digital-prison-reporting"\n# This disables the Remote Command Execution: Windows Command Injection rule, since we do not use Windows and it was flagging a false positive. \nSecRuleRemoveById 932110\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking.\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'digital-prison-reporting-prod', 'alerts_slack_channel': None} + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-digital-prison-reporting-mi-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://digital-prison-reporting-mi-ui-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'hmp-parc-1': '217.161.76.162/32', 'hmp-parc-2': '217.161.76.154/32'}}, 'values-dev.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# Limit permitted HTTP methods.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET POST OPTIONS"\n# This grants access to the OpenSearch logs to delve into the cause of the blockage.\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-digital-prison-reporting"\nSecDefaultAction "phase:4,pass,log,tag:github_team=hmpps-digital-prison-reporting"\n# This disables the Remote Command Execution: Windows Command Injection rule, since we do not use Windows and it was flagging a false positive. \nSecRuleRemoveById 932110\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking.\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'digital-prison-reporting-dev', 'alerts_slack_channel': ''} + DEV: {'name': 'dev', 'namespace': 'hmpps-digital-prison-reporting-mi-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://digital-prison-reporting-mi-ui-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'hmp-parc-1': '217.161.76.162/32', 'hmp-parc-2': '217.161.76.154/32'}}, 'values-dev.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# Limit permitted HTTP methods.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET POST OPTIONS"\n# This grants access to the OpenSearch logs to delve into the cause of the blockage.\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-digital-prison-reporting"\nSecDefaultAction "phase:4,pass,log,tag:github_team=hmpps-digital-prison-reporting"\n# This disables the Remote Command Execution: Windows Command Injection rule, since we do not use Windows and it was flagging a false positive. \nSecRuleRemoveById 932110\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking.\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'digital-prison-reporting-dev', 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-digital-prison-reporting-mi-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://digital-prison-reporting-mi-ui-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': ['EXI', 'BNI', 'LYI', 'EEI', 'VEI'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'hmp-parc-1': '217.161.76.162/32', 'hmp-parc-2': '217.161.76.154/32'}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# Limit permitted HTTP methods.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET POST OPTIONS"\n# This grants access to the OpenSearch logs to delve into the cause of the blockage.\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-digital-prison-reporting"\nSecDefaultAction "phase:4,pass,log,tag:github_team=hmpps-digital-prison-reporting"\n# This disables the Remote Command Execution: Windows Command Injection rule, since we do not use Windows and it was flagging a false positive. \nSecRuleRemoveById 932110\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking.\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'digital-prison-reporting-preprod', 'alerts_slack_channel': ''} + DEV: {'name': 'preprod', 'namespace': 'hmpps-digital-prison-reporting-mi-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://digital-prison-reporting-mi-ui-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': ['EXI', 'BNI', 'LYI', 'EEI', 'VEI'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'hmp-parc-1': '217.161.76.162/32', 'hmp-parc-2': '217.161.76.154/32'}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# Limit permitted HTTP methods.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET POST OPTIONS"\n# This grants access to the OpenSearch logs to delve into the cause of the blockage.\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-digital-prison-reporting"\nSecDefaultAction "phase:4,pass,log,tag:github_team=hmpps-digital-prison-reporting"\n# This disables the Remote Command Execution: Windows Command Injection rule, since we do not use Windows and it was flagging a false positive. \nSecRuleRemoveById 932110\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking.\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'digital-prison-reporting-preprod', 'alerts_slack_channel': None} + Environment test: + PROD: {'name': 'test', 'namespace': 'hmpps-digital-prison-reporting-mi-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://digital-prison-reporting-mi-ui-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'test', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'hmp-parc-1': '217.161.76.162/32', 'hmp-parc-2': '217.161.76.154/32'}}, 'values-test.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons', 'private_prisons'], 'hmp-parc-1': '217.161.76.162/32', 'hmp-parc-2': '217.161.76.154/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# Limit permitted HTTP methods.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET POST OPTIONS"\n# This grants access to the OpenSearch logs to delve into the cause of the blockage.\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-digital-prison-reporting"\nSecDefaultAction "phase:4,pass,log,tag:github_team=hmpps-digital-prison-reporting"\n# This disables the Remote Command Execution: Windows Command Injection rule, since we do not use Windows and it was flagging a false positive. \nSecRuleRemoveById 932110\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking.\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'digital-prison-reporting-dev', 'alerts_slack_channel': ''} + DEV: {'name': 'test', 'namespace': 'hmpps-digital-prison-reporting-mi-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://digital-prison-reporting-mi-ui-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': ['***'], 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'hmp-parc-1': '217.161.76.162/32', 'hmp-parc-2': '217.161.76.154/32'}}, 'values-test.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons', 'private_prisons'], 'hmp-parc-1': '217.161.76.162/32', 'hmp-parc-2': '217.161.76.154/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# Limit permitted HTTP methods.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET POST OPTIONS"\n# This grants access to the OpenSearch logs to delve into the cause of the blockage.\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-digital-prison-reporting"\nSecDefaultAction "phase:4,pass,log,tag:github_team=hmpps-digital-prison-reporting"\n# This disables the Remote Command Execution: Windows Command Injection rule, since we do not use Windows and it was flagging a false positive. \nSecRuleRemoveById 932110\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking.\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'digital-prison-reporting-dev', 'alerts_slack_channel': None} +hmpps-person-record +======================= + latest_commit: PROD: {'sha': 'f58d4a2f03328b8eb24738174abd43f5e6d1b995', 'date_time': '2025-02-17T10:06:39.000Z'} DEV: {'sha': '088400d334c623014d2b81b189a9a90f1f844a6b', 'date_time': '2025-02-20T10:45:49.000Z'} + + + versions: PROD: {'circleci': {'hmpps_orb': '10'}} DEV: {'circleci': {'hmpps_orb': '10'}, 'dockerfile': {'base_image': 'eclipse-temurin:21-jre-jammy', 'rds_ca_cert': 'global-bundle.pem'}, 'helm_dependencies': {'generic-service': '3.8.0', 'generic-prometheus-alerts': '1.11.3'}} + + + trivy_last_completed_scan_date: PROD: 2025-02-19T07:25:29.119906286Z DEV: 2025-02-20T07:25:30.931827282Z + + +wmt-web +======================= + veracode_last_completed_scan_date: PROD: 2025-02-17T05:11:48.000Z DEV: 2025-02-10T05:09:36.000Z + + + veracode_results_url: PROD: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1180476:46935923 DEV: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1180476:46650104 + + + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-workload-dev', 'info_path': None, 'health_path': None, 'url': 'https://workload-measurement-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'probation'], 'quantum1': '62.25.109.197/32', 'quantum2': '212.137.36.230/32', 'quantum3': '195.92.38.16/28'}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecDefaultAction "phase:2,pass,log,tag:github_team=manage-a-workforce"\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleRemoveById 942430\nSecRuleRemoveById 942210\nSecRuleRemoveById 950100\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES"\n', 'alert_severity_label': 'hmpps-tier', 'alerts_slack_channel': '#manage_a_workforce_dev'} + DEV: {'name': 'dev', 'namespace': 'hmpps-workload-dev', 'info_path': None, 'health_path': None, 'url': 'https://workload-measurement-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'probation'], 'quantum1': '62.25.109.197/32', 'quantum2': '212.137.36.230/32', 'quantum3': '195.92.38.16/28'}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecDefaultAction "phase:2,pass,log,tag:github_team=manage-a-workforce"\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleRemoveById 942430\nSecRuleRemoveById 942210\nSecRuleRemoveById 950100\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} +hmpps-dpr-fake-dps-service +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-dpr-fake-dps-service', 'info_path': '/info', 'health_path': '/health', 'url': 'hmpps-dpr-fake-dps-service.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': None, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-dpr-fake-dps-service', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': None, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + github_project_teams_admin: PROD: ['dps-tech', 'hmpps-digital-prison-reporting', 'hmpps-sre'] DEV: ['hmpps-digital-prison-reporting', 'hmpps-sre'] + + + latest_commit: PROD: {'sha': 'e93276c47b1fd3bbdf9886517194a218dab35951', 'date_time': '2024-10-30T10:53:12.000Z'} DEV: {'sha': 'f253688fb42e130c6aa96b8e35fd0d245225c28a', 'date_time': '2025-02-03T11:12:47.000Z'} + + + versions: PROD: {'circleci': {'hmpps_orb': '7'}} DEV: {'circleci': {'hmpps_orb': '10'}} + + + trivy_last_completed_scan_date: PROD: None DEV: 2025-02-20T06:56:34.405348857Z + + +hmpps-prison-visit-booker-registry +======================= +hmpps-prisoner-profile +======================= + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-prisoner-profile-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://prisoner-preprod.digital.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'sscl-york': '62.6.61.29/32', 'sscl-azure': '51.142.106.199/32', 'sscl-newport': '217.38.237.212/32', 'sscl-blackpool': '31.121.5.27/32', 'sscl-newcastle': '62.172.79.105/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecAuditEngine On\nSecDefaultAction "phase:2,pass,log,tag:github_team=connect-dps,tag:namespace=hmpps-prisoner-profile-preprod"\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-prisoner-profile-non-prod', 'alerts_slack_channel': '#connect-dps-non-prod-alerts'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-prisoner-profile-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://prisoner-preprod.digital.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'sscl-york': '62.6.61.29/32', 'sscl-azure': '51.142.106.199/32', 'sscl-newport': '217.38.237.212/32', 'sscl-blackpool': '31.121.5.27/32', 'sscl-newcastle': '62.172.79.105/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecAuditEngine On\nSecDefaultAction "phase:2,pass,log,tag:github_team=connect-dps,tag:namespace=hmpps-prisoner-profile-preprod"\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-prisoner-profile-non-prod', 'alerts_slack_channel': '#connect-dps-non-prod-alerts'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-prisoner-profile-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://prisoner.digital.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'home_office'], 'sscl-york': '62.6.61.29/32', 'sscl-azure': '51.142.106.199/32', 'sscl-newport': '217.38.237.212/32', 'sscl-blackpool': '31.121.5.27/32', 'sscl-newcastle': '62.172.79.105/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecAuditEngine On\nSecDefaultAction "phase:2,pass,log,tag:github_team=connect-dps,tag:namespace=hmpps-prisoner-profile-prod"\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-prisoner-profile-prod', 'alerts_slack_channel': '#connect-dps-prod-alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-prisoner-profile-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://prisoner.digital.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'home_office'], 'sscl-york': '62.6.61.29/32', 'sscl-azure': '51.142.106.199/32', 'sscl-newport': '217.38.237.212/32', 'sscl-blackpool': '31.121.5.27/32', 'sscl-newcastle': '62.172.79.105/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecAuditEngine On\nSecDefaultAction "phase:2,pass,log,tag:github_team=connect-dps,tag:namespace=hmpps-prisoner-profile-prod"\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-prisoner-profile-prod', 'alerts_slack_channel': '#connect-dps-prod-alerts'} +hmpps-hdc-api +======================= +hmpps-subject-access-request-api +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-subject-access-request-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://subject-access-request-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': False, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-subject-access-request-prod', 'info_path': None, 'health_path': None, 'url': 'https://subject-access-request-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} +probation-offender-search +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-probation-search-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://probation-offender-search-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'unilink_staff'], 'analyticplatform-1': '34.250.17.221/32', 'analyticplatform-2': '34.251.212.33/32', 'analyticplatform-3': '34.252.4.39/32'}}, 'values-dev.yaml': {'generic-service': {'delius-test-1': '35.176.126.163/32', 'delius-test-2': '35.178.162.73/32', 'delius-test-3': '52.56.195.113/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': '#probation-integration-notifications'} + DEV: {'name': 'dev', 'namespace': 'hmpps-probation-search-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://probation-offender-search-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'unilink_staff'], 'analyticplatform-1': '34.250.17.221/32', 'analyticplatform-2': '34.251.212.33/32', 'analyticplatform-3': '34.252.4.39/32'}}, 'values-dev.yaml': {'generic-service': {'delius-test-1': '35.176.126.163/32', 'delius-test-2': '35.178.162.73/32', 'delius-test-3': '52.56.195.113/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': '#probation-integration-notifications'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-probation-search-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://probation-offender-search-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'unilink_staff'], 'analyticplatform-1': '34.250.17.221/32', 'analyticplatform-2': '34.251.212.33/32', 'analyticplatform-3': '34.252.4.39/32'}}, 'values-preprod.yaml': {'generic-service': {'delius-pre-prod-1': '52.56.240.62/32', 'delius-pre-prod-2': '18.130.110.168/32', 'delius-pre-prod-3': '35.178.44.184/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': '#probation-integration-notifications'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-probation-search-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://probation-offender-search-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'unilink_staff'], 'analyticplatform-1': '34.250.17.221/32', 'analyticplatform-2': '34.251.212.33/32', 'analyticplatform-3': '34.252.4.39/32'}}, 'values-preprod.yaml': {'generic-service': {'delius-pre-prod-1': '52.56.240.62/32', 'delius-pre-prod-2': '18.130.110.168/32', 'delius-pre-prod-3': '35.178.44.184/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': '#probation-integration-notifications'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-probation-search-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://probation-offender-search.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'unilink_staff'], 'analyticplatform-1': '34.250.17.221/32', 'analyticplatform-2': '34.251.212.33/32', 'analyticplatform-3': '34.252.4.39/32'}}, 'values-prod.yaml': {'generic-service': {'delius-prod-1': '52.56.115.146/32', 'delius-prod-2': '35.178.104.253/32', 'delius-prod-3': '35.177.47.45/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': '#probation-integration-notifications'} + DEV: {'name': 'prod', 'namespace': 'hmpps-probation-search-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://probation-offender-search.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'unilink_staff'], 'analyticplatform-1': '34.250.17.221/32', 'analyticplatform-2': '34.251.212.33/32', 'analyticplatform-3': '34.252.4.39/32'}}, 'values-prod.yaml': {'generic-service': {'delius-prod-1': '52.56.115.146/32', 'delius-prod-2': '35.178.104.253/32', 'delius-prod-3': '35.177.47.45/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': '#probation-integration-notifications'} +licences +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'licences-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://licences-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'cvl-alerts-non-prod', 'alerts_slack_channel': '#cvl_alerts_non_prod'} + DEV: {'name': 'dev', 'namespace': 'licences-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://licences-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': 'cvl-alerts-non-prod', 'alerts_slack_channel': '#cvl_alerts_non_prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'licences-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://licences-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'crc-rrp': '62.253.83.37/32', 'quantum': '62.25.109.197/32', 'serco-1': '217.22.14.151/32', 'serco-2': '128.77.110.45/32', 'sodexo1': '80.86.46.16/32', 'sodexo2': '80.86.46.17/32', 'sodexo3': '80.86.46.18/32', 'oakwood-1': '217.161.76.187/32', 'oakwood-2': '217.161.76.195/32', 'oakwood-3': '217.161.76.186/32', 'oakwood-4': '217.161.76.194/32', 'crc-pp-wwm': '5.153.255.210/32', 'oakwood-01': '217.161.76.184/29', 'oakwood-02': '217.161.76.192/29', 'fivewells-1': '20.49.214.199/32', 'fivewells-2': '20.49.214.228/32', 'fivewells-3': '195.89.157.56/29', 'fivewells-4': '195.59.215.184/29', 'health-kick': '35.177.252.195/32', 'j5-phones-1': '35.177.125.252/32', 'j5-phones-2': '35.177.137.160/32', 'quantum_alt': '212.137.36.230/32', 'interservfls': '51.179.196.131/32', 'ark-dom1-ttp1': '195.59.75.0/24', 'dxc_webprox23': '195.92.38.23/32', 'dxc_webproxy1': '195.92.38.20/32', 'dxc_webproxy2': '195.92.38.21/32', 'dxc_webproxy3': '195.92.38.22/32', 'global-protect': '35.176.93.186/32', 'vodafone-dia-1': '194.33.200.0/21', 'vodafone-dia-2': '194.33.216.0/24', 'vodafone-dia-3': '194.33.217.0/24', 'vodafone-dia-4': '194.33.218.0/24', 'digitalprisons1': '52.56.112.98/32', 'digitalprisons2': '52.56.118.154/32', 'dxc-mitcheldean': '195.92.38.16/28', 'ark-dom1-corsham': '194.33.196.0/24', 'petty-france-wifi': '213.121.161.112/28', 'durham-tees-valley': '51.179.197.1/32', 'sodexo-bronzefield': '51.148.9.201/32', 'ark-dom1-non-live-1': '194.33.193.0/25', 'ark-dom1-non-live-2': '194.33.197.0/25', 'sodexo-peterborough': '51.155.55.241/32', 'sodoxeo-forest-bank': '51.155.85.249/32', 'ark-dom1-corsham-psn': '51.247.4.0/24', 'ark-dom1-farnborough': '194.33.192.0/24', 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32', 'moj-official-tgw-prod': '51.149.250.0/24', 'sodexo-northumberland': '88.98.48.10/32', 'sodexo-northumberland2': '51.148.47.137/32', 'ark-dom1-farnborough-psn': '51.247.3.0/24', 'moj-official-tgw-preprod': '51.149.251.0/24', 'moj-official-ark-c-expo-e': '51.149.249.0/29', 'moj-official-ark-f-expo-e': '51.149.249.32/29', 'palo-alto-prisma-corporate': '128.77.75.64/26', 'moj-official-ark-c-vodafone': '194.33.248.0/29', 'moj-official-ark-f-vodafone': '194.33.249.0/29'}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'cvl-alerts-non-prod', 'alerts_slack_channel': '#cvl_alerts_non_prod'} + DEV: {'name': 'preprod', 'namespace': 'licences-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://licences-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'crc-rrp': '62.253.83.37/32', 'quantum': '62.25.109.197/32', 'serco-1': '217.22.14.151/32', 'serco-2': '128.77.110.45/32', 'sodexo1': '80.86.46.16/32', 'sodexo2': '80.86.46.17/32', 'sodexo3': '80.86.46.18/32', 'oakwood-1': '217.161.76.187/32', 'oakwood-2': '217.161.76.195/32', 'oakwood-3': '217.161.76.186/32', 'oakwood-4': '217.161.76.194/32', 'crc-pp-wwm': '5.153.255.210/32', 'oakwood-01': '217.161.76.184/29', 'oakwood-02': '217.161.76.192/29', 'fivewells-1': '20.49.214.199/32', 'fivewells-2': '20.49.214.228/32', 'fivewells-3': '195.89.157.56/29', 'fivewells-4': '195.59.215.184/29', 'health-kick': '35.177.252.195/32', 'j5-phones-1': '35.177.125.252/32', 'j5-phones-2': '35.177.137.160/32', 'quantum_alt': '212.137.36.230/32', 'interservfls': '51.179.196.131/32', 'ark-dom1-ttp1': '195.59.75.0/24', 'dxc_webprox23': '195.92.38.23/32', 'dxc_webproxy1': '195.92.38.20/32', 'dxc_webproxy2': '195.92.38.21/32', 'dxc_webproxy3': '195.92.38.22/32', 'global-protect': '35.176.93.186/32', 'vodafone-dia-1': '194.33.200.0/21', 'vodafone-dia-2': '194.33.216.0/24', 'vodafone-dia-3': '194.33.217.0/24', 'vodafone-dia-4': '194.33.218.0/24', 'digitalprisons1': '52.56.112.98/32', 'digitalprisons2': '52.56.118.154/32', 'dxc-mitcheldean': '195.92.38.16/28', 'ark-dom1-corsham': '194.33.196.0/24', 'petty-france-wifi': '213.121.161.112/28', 'durham-tees-valley': '51.179.197.1/32', 'sodexo-bronzefield': '51.148.9.201/32', 'ark-dom1-non-live-1': '194.33.193.0/25', 'ark-dom1-non-live-2': '194.33.197.0/25', 'sodexo-peterborough': '51.155.55.241/32', 'sodoxeo-forest-bank': '51.155.85.249/32', 'ark-dom1-corsham-psn': '51.247.4.0/24', 'ark-dom1-farnborough': '194.33.192.0/24', 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32', 'moj-official-tgw-prod': '51.149.250.0/24', 'sodexo-northumberland': '88.98.48.10/32', 'sodexo-northumberland2': '51.148.47.137/32', 'ark-dom1-farnborough-psn': '51.247.3.0/24', 'moj-official-tgw-preprod': '51.149.251.0/24', 'moj-official-ark-c-expo-e': '51.149.249.0/29', 'moj-official-ark-f-expo-e': '51.149.249.32/29', 'palo-alto-prisma-corporate': '128.77.75.64/26', 'moj-official-ark-c-vodafone': '194.33.248.0/29', 'moj-official-ark-f-vodafone': '194.33.249.0/29'}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': 'cvl-alerts-non-prod', 'alerts_slack_channel': '#cvl_alerts_non_prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'licences-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://licences.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'crc-rrp': '62.253.83.37/32', 'quantum': '62.25.109.197/32', 'serco-1': '217.22.14.151/32', 'serco-2': '128.77.110.45/32', 'sodexo1': '80.86.46.16/32', 'sodexo2': '80.86.46.17/32', 'sodexo3': '80.86.46.18/32', 'oakwood-1': '217.161.76.187/32', 'oakwood-2': '217.161.76.195/32', 'oakwood-3': '217.161.76.186/32', 'oakwood-4': '217.161.76.194/32', 'crc-pp-wwm': '5.153.255.210/32', 'oakwood-01': '217.161.76.184/29', 'oakwood-02': '217.161.76.192/29', 'fivewells-1': '20.49.214.199/32', 'fivewells-2': '20.49.214.228/32', 'fivewells-3': '195.89.157.56/29', 'fivewells-4': '195.59.215.184/29', 'health-kick': '35.177.252.195/32', 'j5-phones-1': '35.177.125.252/32', 'j5-phones-2': '35.177.137.160/32', 'quantum_alt': '212.137.36.230/32', 'interservfls': '51.179.196.131/32', 'ark-dom1-ttp1': '195.59.75.0/24', 'dxc_webprox23': '195.92.38.23/32', 'dxc_webproxy1': '195.92.38.20/32', 'dxc_webproxy2': '195.92.38.21/32', 'dxc_webproxy3': '195.92.38.22/32', 'global-protect': '35.176.93.186/32', 'vodafone-dia-1': '194.33.200.0/21', 'vodafone-dia-2': '194.33.216.0/24', 'vodafone-dia-3': '194.33.217.0/24', 'vodafone-dia-4': '194.33.218.0/24', 'digitalprisons1': '52.56.112.98/32', 'digitalprisons2': '52.56.118.154/32', 'dxc-mitcheldean': '195.92.38.16/28', 'ark-dom1-corsham': '194.33.196.0/24', 'petty-france-wifi': '213.121.161.112/28', 'durham-tees-valley': '51.179.197.1/32', 'sodexo-bronzefield': '51.148.9.201/32', 'ark-dom1-non-live-1': '194.33.193.0/25', 'ark-dom1-non-live-2': '194.33.197.0/25', 'sodexo-peterborough': '51.155.55.241/32', 'sodoxeo-forest-bank': '51.155.85.249/32', 'ark-dom1-corsham-psn': '51.247.4.0/24', 'ark-dom1-farnborough': '194.33.192.0/24', 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32', 'moj-official-tgw-prod': '51.149.250.0/24', 'sodexo-northumberland': '88.98.48.10/32', 'sodexo-northumberland2': '51.148.47.137/32', 'ark-dom1-farnborough-psn': '51.247.3.0/24', 'moj-official-tgw-preprod': '51.149.251.0/24', 'moj-official-ark-c-expo-e': '51.149.249.0/29', 'moj-official-ark-f-expo-e': '51.149.249.32/29', 'palo-alto-prisma-corporate': '128.77.75.64/26', 'moj-official-ark-c-vodafone': '194.33.248.0/29', 'moj-official-ark-f-vodafone': '194.33.249.0/29', 'azure-landing-zone-public-egress-1': '20.26.11.71/32', 'azure-landing-zone-public-egress-2': '20.26.11.108/32'}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'cvl-alerts', 'alerts_slack_channel': '#cvl_alerts'} + DEV: {'name': 'prod', 'namespace': 'licences-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://licences.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-prod.yaml': {'mojvpn': '81.134.202.29/32', 'office': '217.33.148.210/32', 'crc-rrp': '62.253.83.37/32', 'quantum': '62.25.109.197/32', 'serco-1': '217.22.14.151/32', 'serco-2': '128.77.110.45/32', 'sodexo1': '80.86.46.16/32', 'sodexo2': '80.86.46.17/32', 'sodexo3': '80.86.46.18/32', 'oakwood-1': '217.161.76.187/32', 'oakwood-2': '217.161.76.195/32', 'oakwood-3': '217.161.76.186/32', 'oakwood-4': '217.161.76.194/32', 'crc-pp-wwm': '5.153.255.210/32', 'oakwood-01': '217.161.76.184/29', 'oakwood-02': '217.161.76.192/29', 'fivewells-1': '20.49.214.199/32', 'fivewells-2': '20.49.214.228/32', 'fivewells-3': '195.89.157.56/29', 'fivewells-4': '195.59.215.184/29', 'health-kick': '35.177.252.195/32', 'j5-phones-1': '35.177.125.252/32', 'j5-phones-2': '35.177.137.160/32', 'quantum_alt': '212.137.36.230/32', 'interservfls': '51.179.196.131/32', 'ark-dom1-ttp1': '195.59.75.0/24', 'dxc_webprox23': '195.92.38.23/32', 'dxc_webproxy1': '195.92.38.20/32', 'dxc_webproxy2': '195.92.38.21/32', 'dxc_webproxy3': '195.92.38.22/32', 'global-protect': '35.176.93.186/32', 'vodafone-dia-1': '194.33.200.0/21', 'vodafone-dia-2': '194.33.216.0/24', 'vodafone-dia-3': '194.33.217.0/24', 'vodafone-dia-4': '194.33.218.0/24', 'digitalprisons1': '52.56.112.98/32', 'digitalprisons2': '52.56.118.154/32', 'dxc-mitcheldean': '195.92.38.16/28', 'ark-dom1-corsham': '194.33.196.0/24', 'petty-france-wifi': '213.121.161.112/28', 'durham-tees-valley': '51.179.197.1/32', 'sodexo-bronzefield': '51.148.9.201/32', 'ark-dom1-non-live-1': '194.33.193.0/25', 'ark-dom1-non-live-2': '194.33.197.0/25', 'sodexo-peterborough': '51.155.55.241/32', 'sodoxeo-forest-bank': '51.155.85.249/32', 'ark-dom1-corsham-psn': '51.247.4.0/24', 'ark-dom1-farnborough': '194.33.192.0/24', 'cloudplatform-live1-1': '35.178.209.113/32', 'cloudplatform-live1-2': '3.8.51.207/32', 'cloudplatform-live1-3': '35.177.252.54/32', 'moj-official-tgw-prod': '51.149.250.0/24', 'sodexo-northumberland': '88.98.48.10/32', 'sodexo-northumberland2': '51.148.47.137/32', 'ark-dom1-farnborough-psn': '51.247.3.0/24', 'moj-official-tgw-preprod': '51.149.251.0/24', 'moj-official-ark-c-expo-e': '51.149.249.0/29', 'moj-official-ark-f-expo-e': '51.149.249.32/29', 'palo-alto-prisma-corporate': '128.77.75.64/26', 'moj-official-ark-c-vodafone': '194.33.248.0/29', 'moj-official-ark-f-vodafone': '194.33.249.0/29', 'azure-landing-zone-public-egress-1': '20.26.11.71/32', 'azure-landing-zone-public-egress-2': '20.26.11.108/32'}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': 'cvl-alerts', 'alerts_slack_channel': '#cvl_alerts'} + versions: PROD: {'circleci': {'hmpps_orb': '8'}} DEV: {'circleci': {'hmpps_orb': '8'}, 'dockerfile': {'base_image': 'node:20.8-bullseye-slim', 'rds_ca_cert': 'rds-ca-2019-root.pem'}, 'helm_dependencies': {'gotenberg': '0.1.x', 'generic-prometheus-alerts': '1.11.0', 'generic-data-analytics-extractor': '0.2.0'}} + + +prisoner-content-hub-feedback-exporter +======================= + Environment staging: + PROD: {'name': 'staging', 'namespace': 'prisoner-content-hub-staging', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-staging.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'staging', 'namespace': 'prisoner-content-hub-staging', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-staging.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment dev: + PROD: {'name': 'dev', 'namespace': 'prisoner-content-hub-development', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'prisoner-content-hub-development', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment production: + PROD: {'name': 'production', 'namespace': 'prisoner-content-hub-production', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': None, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: None + latest_commit: PROD: {'sha': '958a7ba3557f312f350a479672c2766632e709aa', 'date_time': '2024-11-21T10:21:17.000Z'} DEV: {'sha': '11745f8c9a58f88380537ab6321bc12d98feccdd', 'date_time': '2025-02-07T14:40:36.000Z'} + + + trivy_last_completed_scan_date: PROD: 2025-02-07T03:34:46.91201903Z DEV: 2025-02-20T03:34:47.933146334Z + + +hmpps-book-secure-move-api +======================= + latest_commit: PROD: {'sha': '305553eee450884b0691aecdbf970af52966f72e', 'date_time': '2025-02-11T13:30:04.000Z'} DEV: {'sha': 'e62b5673109c9f1b246169b5e4e2ed024edf47bd', 'date_time': '2025-02-20T09:37:30.000Z'} + + +pre-sentence-service +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'court-probation-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://pre-sentence-service-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'gotenberg': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'court-probation-dev', 'info_path': None, 'health_path': None, 'url': 'https://pre-sentence-service-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'gotenberg': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'court-probation-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://pre-sentence-service-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'gotenberg': {'groups': ['internal']}}, 'values-preprod.yaml': {'wproofreader': {'ingress': {'groups': ['delius-pre-prod']}}, 'generic-service': {'groups': ['delius-pre-prod']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'court-probation-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://pre-sentence-service-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'gotenberg': {'groups': ['internal']}}, 'values-preprod.yaml': {'wproofreader': {'ingress': {'groups': ['delius-pre-prod']}}, 'generic-service': {'groups': ['delius-pre-prod']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'court-probation-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://pre-sentence-service.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'gotenberg': {'groups': ['internal']}}, 'values-prod.yaml': {'wproofreader': {'groups': ['delius-prod']}, 'generic-service': {'groups': ['delius-prod']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'court-probation-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://pre-sentence-service.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'gotenberg': {'groups': ['internal']}}, 'values-prod.yaml': {'wproofreader': {'groups': ['delius-prod']}, 'generic-service': {'groups': ['delius-prod']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +hmpps-subject-access-request-ui +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-subject-access-request-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://subject-access-request.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alert'} + DEV: {'name': 'prod', 'namespace': 'hmpps-subject-access-request-prod', 'info_path': None, 'health_path': None, 'url': 'https://subject-access-request.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} +hmpps-offender-categorisation-api +======================= +hmpps-restricted-patients-api +======================= +hmpps-tier +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-tier-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-tier-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'unilink_staff']}}, 'values-dev.yaml': {'generic-service': {'dxw-vpn': '54.76.254.148/32', 'delius-test-1': '35.176.126.163/32', 'delius-test-2': '35.178.162.73/32', 'delius-test-3': '52.56.195.113/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': ''} + DEV: {'name': 'dev', 'namespace': 'hmpps-tier-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-tier-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'unilink_staff']}}, 'values-dev.yaml': {'generic-service': {'dxw-vpn': '54.76.254.148/32', 'delius-test-1': '35.176.126.163/32', 'delius-test-2': '35.178.162.73/32', 'delius-test-3': '52.56.195.113/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': '#probation-integration-notifications'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-tier-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-tier-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'unilink_staff']}}, 'values-preprod.yaml': {'generic-service': {'delius-pre-prod-1': '52.56.240.62/32', 'delius-pre-prod-2': '18.130.110.168/32', 'delius-pre-prod-3': '35.178.44.184/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': ''} + DEV: {'name': 'preprod', 'namespace': 'hmpps-tier-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-tier-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'unilink_staff']}}, 'values-preprod.yaml': {'generic-service': {'delius-pre-prod-1': '52.56.240.62/32', 'delius-pre-prod-2': '18.130.110.168/32', 'delius-pre-prod-3': '35.178.44.184/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': '#probation-integration-notifications'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-tier-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-tier.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'unilink_staff']}}, 'values-prod.yaml': {'generic-service': {'delius-prod-1': '52.56.115.146/32', 'delius-prod-2': '35.178.104.253/32', 'delius-prod-3': '35.177.47.45/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': ''} + DEV: {'name': 'prod', 'namespace': 'hmpps-tier-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-tier.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'unilink_staff']}}, 'values-prod.yaml': {'generic-service': {'delius-prod-1': '52.56.115.146/32', 'delius-prod-2': '35.178.104.253/32', 'delius-prod-3': '35.177.47.45/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': '#probation-integration-notifications'} +hmpps-resettlement-passport-api +======================= +hmpps-court-register-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-court-register-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-register-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-court-register-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-register-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-court-register-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-register-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-court-register-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-register-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-court-register-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-register-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts', 'alerts_slack_channel': '#legacy-replacement-alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-court-register-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-register-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts', 'alerts_slack_channel': '#legacy-replacement-alerts'} +hmpps-learner-records-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-learner-records-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://learner-records-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['global_protect', 'moj_cloud_platform']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': ''} + DEV: {'name': 'dev', 'namespace': 'hmpps-learner-records-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://learner-records-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['global_protect', 'moj_cloud_platform']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment uat: + PROD: {'name': 'uat', 'namespace': 'hmpps-learner-records-uat', 'info_path': None, 'health_path': None, 'url': 'https://learner-records-api-uat.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['global_protect', 'moj_cloud_platform']}}, 'values-uat.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': ''} + DEV: {'name': 'uat', 'namespace': 'hmpps-learner-records-uat', 'info_path': None, 'health_path': None, 'url': 'https://learner-records-api-uat.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['global_protect', 'moj_cloud_platform']}}, 'values-uat.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-learner-records-api-prod', 'info_path': None, 'health_path': None, 'url': 'https://learner-records-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['global_protect', 'moj_cloud_platform']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': ''} + DEV: {'name': 'prod', 'namespace': 'hmpps-learner-records-api-prod', 'info_path': None, 'health_path': None, 'url': 'https://learner-records-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['global_protect', 'moj_cloud_platform']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} + versions: PROD: {'dockerfile': {'base_image': 'eclipse-temurin:21-jre-jammy', 'rds_ca_cert': 'global-bundle.pem'}, 'helm_dependencies': {'generic-service': '3.7', 'generic-prometheus-alerts': '1.11'}} DEV: {} + + +prison-offender-events +======================= +chux-dev-typescript +======================= +hmpps-prisoner-communication-monitoring +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-pin-phone-monitor-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://pcms-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRequestBodyLimit 104857600\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'dps-sed-alerts-nonprod', 'alerts_slack_channel': '#sed_nonprod_alerts'} + DEV: {'name': 'dev', 'namespace': 'hmpps-pin-phone-monitor-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://pcms-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRequestBodyLimit 104857600\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'dps-sed-alerts-nonprod', 'alerts_slack_channel': '#sed_nonprod_alerts'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-pin-phone-monitor-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://pcms.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'hmp-parc-1': '217.161.76.162/32', 'hmp-parc-2': '217.161.76.154/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRequestBodyLimit 104857600\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'dps-sed-alerts-prod', 'alerts_slack_channel': '#dps_sed_alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-pin-phone-monitor-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://pcms.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'hmp-parc-1': '217.161.76.162/32', 'hmp-parc-2': '217.161.76.154/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRequestBodyLimit 104857600\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'dps-sed-alerts-prod', 'alerts_slack_channel': '#dps_sed_alerts'} + trivy_last_completed_scan_date: PROD: None DEV: 2025-02-20T03:24:40.342483559Z + + +manage-intelligence-testsuite +======================= + trivy_last_completed_scan_date: PROD: None DEV: 2025-02-20T05:17:41.876807024Z + + +external-api-and-delius +======================= +hmpps-veracode-discovery +======================= + github_template_repo: PROD: DEV: None + + +hmpps-court-cases-release-dates +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-court-cases-release-dates-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-cases-release-dates-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-court-cases-release-dates-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-cases-release-dates-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['circleci', 'internal', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-court-cases-release-dates-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-cases-release-dates-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['circleci', 'internal', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24', 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-court-cases-release-dates-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://court-cases-release-dates-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['circleci', 'internal', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24', 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} +hmpps-person-match-score +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-person-record-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-person-match-score-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-person-record-alerts-prod', 'alerts_slack_channel': '#hmpps-person-record-alerts'} + DEV: {'name': 'dev', 'namespace': 'hmpps-person-record-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-person-match-score-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-person-record-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-person-match-score-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-person-record-alerts-prod', 'alerts_slack_channel': '#hmpps-person-record-alerts'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-person-record-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-person-match-score-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + trivy_last_completed_scan_date: PROD: None DEV: 2025-02-20T07:35:12.132491549Z + + +hmpps-allocate-key-workers-ui +======================= +hmpps-auth +======================= + github_template_repo: PROD: DEV: None + + + Environment stage: + PROD: {'name': 'stage', 'namespace': 'hmpps-auth-stage', 'info_path': '/auth/info', 'health_path': '/auth/health', 'url': 'https://sign-in-stage.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-stage.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleRemoveById 920320\nSecRuleRemoveById 920300\nSecRuleRemoveById 920440\nSecRuleRemoveById 942110\nSecRuleRemoveById 913101\nSecRuleUpdateTargetById 931130 "!ARGS:/redirect_uri/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/jwtSession/"\nSecRuleUpdateTargetById 942450 "!REQUEST_COOKIES:/jwtSession/"\nSecRuleUpdateTargetById 930120 "!REQUEST_COOKIES:/jwtSession/"\nSecRuleUpdateTargetById 942210 "!REQUEST_COOKIES:/jwtSession/"\nSecRuleUpdateTargetById 942450 "!REQUEST_COOKIES:/savedrequest/"\nSecRuleUpdateTargetById 920450 "!REQUEST_HEADERS_NAMES:/accept-charset/" \nSecRuleUpdateTargetById 942200 "!ARGS:/query/"\nSecRuleUpdateTargetById 942430 "!ARGS:/query/"\nSecRuleUpdateTargetById 942480 "!ARGS:/query/"\nSecRuleUpdateTargetById 942450 "!ARGS:/state/"\nSecRuleUpdateTargetById 931130 "!ARGS:/registeredRedirectUriWithNewlines/"\nSecRuleUpdateTargetById 942430 "!ARGS:/registeredRedirectUriWithNewlines/"\nSecRuleUpdateTargetById 931130 "!ARGS:/url/"\nSecRuleUpdateTargetById 942440 "!ARGS:/refresh_token/"\nSecRuleUpdateTargetById 942430 "!ARGS:/code/"\nSecRuleUpdateTargetById 942440 "!ARGS:/code/"\nSecRuleUpdateTargetById 942260 "!ARGS:/newPassword/"\nSecRuleUpdateTargetById 942340 "!ARGS:/newPassword/"\nSecRuleUpdateTargetById 942260 "!ARGS:/confirmPassword/"\nSecRuleUpdateTargetById 942340 "!ARGS:/confirmPassword/"\nSecRuleUpdateTargetById 942130 "!ARGS:/clientSecret/"\nSecRuleUpdateTargetById 920230 "!ARGS:/password/"\nSecRuleUpdateTargetById 942130 "!ARGS:/password/"\nSecRuleUpdateTargetById 942440 "!ARGS:/password/"\nSecRuleUpdateTargetById 942450 "!ARGS:/password/"\nSecRuleUpdateTargetById 942190 "!ARGS:/password/"\nSecRuleUpdateTargetById 942330 "!ARGS:/password/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/returnTo/"\nSecRuleUpdateTargetById 942450 "!REQUEST_COOKIES:/returnTo/"\nSecRuleUpdateTargetById 930120 "!REQUEST_COOKIES:/returnTo/"\nSecRuleUpdateTargetById 942210 "!REQUEST_COOKIES:/returnTo/"\nSecRuleUpdateTargetById 942120 "!ARGS:/client_secret/"\nSecRuleUpdateTargetById 942300 "!ARGS:/client_secret/"\nSecRuleUpdateTargetById 942430 "!ARGS:/client_secret/"\nSecRuleUpdateTargetById 941340 "!ARGS:/client_secret/"\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT DELETE"\nSecDefaultAction "phase:2,pass,log,tag:github_team=haha"\nSecDefaultAction "phase:4,pass,log,tag:github_team=haha"\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'hmpps_tech_non_prod', 'alerts_slack_channel': '#hmpps_tech_alerts_non_prod'} + DEV: {'name': 'stage', 'namespace': 'hmpps-auth-stage', 'info_path': '/auth/info', 'health_path': '/auth/health', 'url': 'https://sign-in-stage.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-stage.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleRemoveById 920320\nSecRuleRemoveById 920300\nSecRuleRemoveById 920440\nSecRuleRemoveById 942110\nSecRuleRemoveById 913101\nSecRuleUpdateTargetById 931130 "!ARGS:/redirect_uri/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/jwtSession/"\nSecRuleUpdateTargetById 942450 "!REQUEST_COOKIES:/jwtSession/"\nSecRuleUpdateTargetById 930120 "!REQUEST_COOKIES:/jwtSession/"\nSecRuleUpdateTargetById 942210 "!REQUEST_COOKIES:/jwtSession/"\nSecRuleUpdateTargetById 942450 "!REQUEST_COOKIES:/savedrequest/"\nSecRuleUpdateTargetById 920450 "!REQUEST_HEADERS_NAMES:/accept-charset/" \nSecRuleUpdateTargetById 942200 "!ARGS:/query/"\nSecRuleUpdateTargetById 942430 "!ARGS:/query/"\nSecRuleUpdateTargetById 942480 "!ARGS:/query/"\nSecRuleUpdateTargetById 942450 "!ARGS:/state/"\nSecRuleUpdateTargetById 931130 "!ARGS:/registeredRedirectUriWithNewlines/"\nSecRuleUpdateTargetById 942430 "!ARGS:/registeredRedirectUriWithNewlines/"\nSecRuleUpdateTargetById 931130 "!ARGS:/url/"\nSecRuleUpdateTargetById 942440 "!ARGS:/refresh_token/"\nSecRuleUpdateTargetById 942430 "!ARGS:/code/"\nSecRuleUpdateTargetById 942440 "!ARGS:/code/"\nSecRuleUpdateTargetById 942260 "!ARGS:/newPassword/"\nSecRuleUpdateTargetById 942340 "!ARGS:/newPassword/"\nSecRuleUpdateTargetById 942260 "!ARGS:/confirmPassword/"\nSecRuleUpdateTargetById 942340 "!ARGS:/confirmPassword/"\nSecRuleUpdateTargetById 942130 "!ARGS:/clientSecret/"\nSecRuleUpdateTargetById 920230 "!ARGS:/password/"\nSecRuleUpdateTargetById 942130 "!ARGS:/password/"\nSecRuleUpdateTargetById 942440 "!ARGS:/password/"\nSecRuleUpdateTargetById 942450 "!ARGS:/password/"\nSecRuleUpdateTargetById 942190 "!ARGS:/password/"\nSecRuleUpdateTargetById 942330 "!ARGS:/password/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/returnTo/"\nSecRuleUpdateTargetById 942450 "!REQUEST_COOKIES:/returnTo/"\nSecRuleUpdateTargetById 930120 "!REQUEST_COOKIES:/returnTo/"\nSecRuleUpdateTargetById 942210 "!REQUEST_COOKIES:/returnTo/"\nSecRuleUpdateTargetById 942120 "!ARGS:/client_secret/"\nSecRuleUpdateTargetById 942300 "!ARGS:/client_secret/"\nSecRuleUpdateTargetById 942430 "!ARGS:/client_secret/"\nSecRuleUpdateTargetById 941340 "!ARGS:/client_secret/"\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT DELETE"\nSecDefaultAction "phase:2,pass,log,tag:github_team=haha"\nSecDefaultAction "phase:4,pass,log,tag:github_team=haha"\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'hmpps_tech_non_prod', 'alerts_slack_channel': '#hmpps_tech_alerts_non_prod'} + trivy_last_completed_scan_date: PROD: None DEV: 2025-02-20T05:44:54.758124721Z + + +pathfinder-and-delius +======================= +hmpps-one-plan-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-one-plan-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://one-plan-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-one-plan-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://one-plan-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-one-plan-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://one-plan-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-one-plan-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://one-plan-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-one-plan-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://one-plan-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alert'} + DEV: {'name': 'prod', 'namespace': 'hmpps-one-plan-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://one-plan-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} +manage-supervision-and-delius +======================= +hmpps-jobs-board-integration-api +======================= + api: PROD: False DEV: True + + + Environment dev: + PROD: None + DEV: {'name': 'dev', 'namespace': 'hmpps-jobs-board-integration-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://jobs-board-integration-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment preprod: + PROD: None + DEV: {'name': 'preprod', 'namespace': 'hmpps-jobs-board-integration-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://jobs-board-integration-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment prod: + PROD: None + DEV: {'name': 'prod', 'namespace': 'hmpps-jobs-board-integration-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://jobs-board-integration-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} + versions: PROD: {'dockerfile': {'base_image': 'eclipse-temurin:21-jre-jammy', 'rds_ca_cert': 'global-bundle.pem'}, 'helm_dependencies': {'generic-service': '3.8', 'generic-prometheus-alerts': '1.11'}} DEV: {} + + +approved-premises-and-delius +======================= +hmpps-incident-reporting-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-incident-reporting-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://incident-reporting-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-incident-reporting-dev', 'alerts_slack_channel': '#incident-reporting-service-dev'} + DEV: {'name': 'dev', 'namespace': 'hmpps-incident-reporting-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://incident-reporting-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-incident-reporting-dev', 'alerts_slack_channel': '#incident-reporting-service-dev'} +cas2-and-delius +======================= +token-verification-api +======================= + github_template_repo: PROD: DEV: None + + + Environment stage: + PROD: {'name': 'stage', 'namespace': 'hmpps-auth-stage', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-stage.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'stage', 'namespace': 'hmpps-auth-stage', 'info_path': '/info', 'health_path': '/health', 'url': 'https://token-verification-api-stage.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-stage.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_tech_non_prod', 'alerts_slack_channel': '#hmpps_tech_alerts_non_prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'token-verification-api-prod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'token-verification-api-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://token-verification-api.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_tech', 'alerts_slack_channel': '#hmpps_tech_alerts'} + Environment dev: + PROD: {'name': 'dev', 'namespace': 'token-verification-api-dev', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'token-verification-api-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://token-verification-api-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_tech_non_prod', 'alerts_slack_channel': '#hmpps_tech_alerts_non_prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'token-verification-api-preprod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'token-verification-api-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://token-verification-api-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_tech_non_prod', 'alerts_slack_channel': '#hmpps_tech_alerts_non_prod'} +assess-for-early-release-and-delius +======================= + Environment prod: + PROD: None + DEV: {'name': 'prod', 'namespace': 'hmpps-probation-integration-services-prod', 'info_path': None, 'health_path': None, 'url': 'https://assess-for-early-release-and-delius.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +manage-pom-cases-and-delius +======================= +hmpps-complexity-of-need +======================= +tier-to-delius +======================= +hmpps-welcome-people-into-prison-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-welcome-to-prison-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://welcome-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}, 'values-dev.yaml': {'generic-service': {'allowlist': False}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'move-a-prisoner-alerts-nonprod', 'alerts_slack_channel': '#move-a-prisoner-alerts-nonprod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-welcome-to-prison-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://welcome-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}, 'values-dev.yaml': {'generic-service': {'allowlist': False}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'move-a-prisoner-alerts-nonprod', 'alerts_slack_channel': '#move-a-prisoner-alerts-nonprod'} +hmpps-authorization-api +======================= + Environment stage: + PROD: {'name': 'stage', 'namespace': 'hmpps-auth-stage', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-stage.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'stage', 'namespace': 'hmpps-auth-stage', 'info_path': '/info', 'health_path': '/health', 'url': 'https://authorization-api-stage.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-stage.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_tech_non_prod', 'alerts_slack_channel': '#hmpps_tech_alerts_non_prod'} + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-auth-dev', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-auth-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://authorization-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_tech_non_prod', 'alerts_slack_channel': '#hmpps_tech_alerts_non_prod'} +effective-proposal-framework-and-delius +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-probation-integration-services-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://effective-proposal-framework-and-delius-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'ctrl-o': '5.2.17.96/27', 'groups': ['internal', 'unilink_staff'], 'ctrl-o-dev': '81.187.7.168/32'}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-probation-integration-services-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://effective-proposal-framework-and-delius-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'ctrl-o': '5.2.17.96/27', 'groups': ['internal', 'unilink_staff'], 'ctrl-o-dev': '81.187.7.168/32'}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-probation-integration-services-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://effective-proposal-framework-and-delius-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'ctrl-o': '5.2.17.96/27', 'groups': ['internal', 'unilink_staff'], 'ctrl-o-dev': '81.187.7.168/32'}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'hmpps-probation-integration-services-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://effective-proposal-framework-and-delius-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'ctrl-o': '5.2.17.96/27', 'groups': ['internal', 'unilink_staff'], 'ctrl-o-dev': '81.187.7.168/32'}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-probation-integration-services-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://effective-proposal-framework-and-delius.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'ctrl-o': '5.2.17.96/27', 'groups': ['internal', 'unilink_staff'], 'ctrl-o-dev': '81.187.7.168/32'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'hmpps-probation-integration-services-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://effective-proposal-framework-and-delius.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'ctrl-o': '5.2.17.96/27', 'groups': ['internal', 'unilink_staff'], 'ctrl-o-dev': '81.187.7.168/32'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +hmpps-probation-estate-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-probation-estate-dev', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-probation-estate-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-probation-estate-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-probation-estate-preprod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'hmpps-probation-estate-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-probation-estate-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-probation-estate-prod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'hmpps-probation-estate-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-probation-estate-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-probation-estate-prod-alerts', 'alerts_slack_channel': '#manage-a-workforce_live'} +hmpps-interventions-service +======================= + veracode_last_completed_scan_date: PROD: 2025-02-20T07:28:10.000Z DEV: 2025-02-17T07:27:20.000Z + + + veracode_results_url: PROD: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1140482:47092856 DEV: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1140482:46939969 + + + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-interventions-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-interventions-service-dev.apps.live-1.cloud-platform.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-interventions-dev', 'info_path': None, 'health_path': None, 'url': "https://{'host': 'hmpps-interventions-service-dev.apps.live-1.cloud-platform.service.justice.gov.uk'}", 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-interventions-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-interventions-service-preprod.apps.live-1.cloud-platform.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'hmpps-interventions-preprod', 'info_path': None, 'health_path': None, 'url': "https://{'host': 'hmpps-interventions-service-preprod.apps.live-1.cloud-platform.service.justice.gov.uk'}", 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-interventions-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-interventions-service.apps.live-1.cloud-platform.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'hmpps-interventions-prod', 'info_path': None, 'health_path': None, 'url': "https://{'host': 'hmpps-interventions-service.apps.live-1.cloud-platform.service.justice.gov.uk'}", 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +hmpps-remand-and-sentencing +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-remand-and-sentencing-dev', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-remand-and-sentencing-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://remand-and-sentencing-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-remand-and-sentencing-preprod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'hmpps-remand-and-sentencing-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://remand-and-sentencing-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-remand-and-sentencing-prod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'hmpps-remand-and-sentencing-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://remand-and-sentencing.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'ark-dom1-corsham': '194.33.196.0/24', 'ark-dom1-farnborough': '194.33.192.0/24'}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts', 'alerts_slack_channel': '#legacy-replacement-alerts'} +hmpps-manage-users +======================= + github_template_repo: PROD: DEV: None + + + Environment stage: + PROD: {'name': 'stage', 'namespace': 'hmpps-auth-stage', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-stage.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'stage', 'namespace': 'hmpps-auth-stage', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-users-stage.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-stage.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecDefaultAction "phase:2,pass,log,tag:github_team=haha"\nSecDefaultAction "phase:4,pass,log,tag:github_team=haha"\n{{ if .Values.ingress.modsecurity_audit_enabled -}}\nSecAuditEngine RelevantOnly\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\n{{ end -}}\nSecRuleRemoveById 920300\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/hmpps-session-dev/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/hmpps-session-preprod/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/hmpps-session-prod/"\nSecRuleUpdateTargetById 949110 "!REQUEST_COOKIES:/hmpps-session-dev/"\nSecRuleUpdateTargetById 949110 "!REQUEST_COOKIES:/hmpps-session-preprod/"\nSecRuleUpdateTargetById 949110 "!REQUEST_COOKIES:/hmpps-session-prod/"\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 950010 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 932300 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 932301 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 921200 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateTargetById 942100 "!ARGS" # disable libinjection testing on request args. to disable all SQLi testing, modify rules in the range 942100-942999\nSecRuleUpdateTargetById 942430 "!ARGS:returnTo"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps_tech_non_prod', 'alerts_slack_channel': '#hmpps_tech_alerts_non_prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-manage-users-prod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'hmpps-manage-users-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-users.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecDefaultAction "phase:2,pass,log,tag:github_team=haha"\nSecDefaultAction "phase:4,pass,log,tag:github_team=haha"\n{{ if .Values.ingress.modsecurity_audit_enabled -}}\nSecAuditEngine RelevantOnly\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\n{{ end -}}\nSecRuleRemoveById 920300\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/hmpps-session-dev/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/hmpps-session-preprod/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/hmpps-session-prod/"\nSecRuleUpdateTargetById 949110 "!REQUEST_COOKIES:/hmpps-session-dev/"\nSecRuleUpdateTargetById 949110 "!REQUEST_COOKIES:/hmpps-session-preprod/"\nSecRuleUpdateTargetById 949110 "!REQUEST_COOKIES:/hmpps-session-prod/"\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 950010 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 932300 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 932301 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 921200 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateTargetById 942100 "!ARGS" # disable libinjection testing on request args. to disable all SQLi testing, modify rules in the range 942100-942999\nSecRuleUpdateTargetById 942430 "!ARGS:returnTo"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps_tech', 'alerts_slack_channel': '#hmpps_tech_alerts'} + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-manage-users-dev', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-manage-users-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-users-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecDefaultAction "phase:2,pass,log,tag:github_team=haha"\nSecDefaultAction "phase:4,pass,log,tag:github_team=haha"\n{{ if .Values.ingress.modsecurity_audit_enabled -}}\nSecAuditEngine RelevantOnly\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\n{{ end -}}\nSecRuleRemoveById 920300\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/hmpps-session-dev/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/hmpps-session-preprod/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/hmpps-session-prod/"\nSecRuleUpdateTargetById 949110 "!REQUEST_COOKIES:/hmpps-session-dev/"\nSecRuleUpdateTargetById 949110 "!REQUEST_COOKIES:/hmpps-session-preprod/"\nSecRuleUpdateTargetById 949110 "!REQUEST_COOKIES:/hmpps-session-prod/"\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 950010 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 932300 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 932301 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 921200 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateTargetById 942100 "!ARGS" # disable libinjection testing on request args. to disable all SQLi testing, modify rules in the range 942100-942999\nSecRuleUpdateTargetById 942430 "!ARGS:returnTo"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps_tech_non_prod', 'alerts_slack_channel': '#hmpps_tech_alerts_non_prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-manage-users-preprod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'hmpps-manage-users-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-users-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecDefaultAction "phase:2,pass,log,tag:github_team=haha"\nSecDefaultAction "phase:4,pass,log,tag:github_team=haha"\n{{ if .Values.ingress.modsecurity_audit_enabled -}}\nSecAuditEngine RelevantOnly\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\n{{ end -}}\nSecRuleRemoveById 920300\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/hmpps-session-dev/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/hmpps-session-preprod/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/hmpps-session-prod/"\nSecRuleUpdateTargetById 949110 "!REQUEST_COOKIES:/hmpps-session-dev/"\nSecRuleUpdateTargetById 949110 "!REQUEST_COOKIES:/hmpps-session-preprod/"\nSecRuleUpdateTargetById 949110 "!REQUEST_COOKIES:/hmpps-session-prod/"\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 950010 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 932300 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 932301 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 921200 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateTargetById 942100 "!ARGS" # disable libinjection testing on request args. to disable all SQLi testing, modify rules in the range 942100-942999\nSecRuleUpdateTargetById 942430 "!ARGS:returnTo"\nSecAction \\\n "id:900000,\\\n phase:1,\\\n nolog,\\\n pass,\\\n t:none,\\\n setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps_tech_non_prod', 'alerts_slack_channel': '#hmpps_tech_alerts_non_prod'} +hmpps-manage-adjudications +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-manage-adjudications-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://manage-adjudications-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT DELETE"\n# Missing User Agent Header\nSecRuleRemoveById 920320\n', 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-manage-adjudications-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://manage-adjudications-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT DELETE"\n# Missing User Agent Header\nSecRuleRemoveById 920320\n', 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-manage-adjudications-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://manage-adjudications-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'home_office']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-manage-adjudications-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://manage-adjudications-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'home_office']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-manage-adjudications-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://manage-adjudications.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'home_office']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-manage-adjudications-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://manage-adjudications.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'home_office']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} +hmpps-developer-portal +======================= +hmpps-nomis-prisoner-api +======================= + latest_commit: PROD: {'sha': 'a57215a5f3a0ea816c14c08d83ef0326773562f1', 'date_time': '2025-02-19T15:45:03.000Z'} DEV: {'sha': '33dcf5720c07f910ca4cb9e60ffda8b1d470f3e9', 'date_time': '2025-02-20T09:53:10.000Z'} + + +hmpps-external-users-api +======================= +hmpps-audit-poc-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-audit-poc-dev', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-audit-poc-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://audit-poc-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + versions: PROD: {'circleci': {'hmpps_orb': '10'}} DEV: {'circleci': {'hmpps_orb': '10'}, 'dockerfile': {'base_image': 'eclipse-temurin:21-jre-jammy'}, 'helm_dependencies': {'generic-service': '3.8', 'generic-prometheus-alerts': '1.11'}} + + + trivy_last_completed_scan_date: PROD: 2025-02-19T08:59:09.466400091Z DEV: 2025-02-20T08:58:52.808736638Z + + +hmpps-identify-remand-periods +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-identify-remand-periods-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://identify-remand-periods-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-identify-remand-periods-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://identify-remand-periods-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} +dps-and-delius +======================= +hmpps-jobs-board-reporting-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-jobs-board-reporting-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-template-kotlin-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'NON_PROD_ALERTS_SEVERITY_LABEL', 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-jobs-board-reporting-dev', 'info_path': None, 'health_path': None, 'url': 'https://hmpps-template-kotlin-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'NON_PROD_ALERTS_SEVERITY_LABEL', 'alerts_slack_channel': None} +hmpps-electronic-monitoring-datastore-ui +======================= +prison-register +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-registers-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://prison-register-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'move-a-prisoner-alerts-nonprod', 'alerts_slack_channel': '#move-a-prisoner-alerts-nonprod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-registers-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://prison-register-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-registers-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://prison-register-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'move-a-prisoner-alerts-nonprod', 'alerts_slack_channel': '#move-a-prisoner-alerts-nonprod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-registers-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://prison-register-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +hmpps-ip-allowlist-group-assigning +======================= +hmpps-sentence-plan +======================= + Environment test: + PROD: {'name': 'test', 'namespace': 'hmpps-sentence-plan-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://sentence-plan-api-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'test', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-test.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-sentence-plan-notifications', 'alerts_slack_channel': None} + DEV: {'name': 'test', 'namespace': 'hmpps-sentence-plan-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://sentence-plan-api-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-test.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-sentence-plan-notifications', 'alerts_slack_channel': None} +nomis-api-terraform-application-insights +======================= +appointment-reminders-and-delius +======================= + Environment dev: + PROD: None + DEV: {'name': 'dev', 'namespace': 'hmpps-probation-integration-services-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://appointment-reminders-and-delius-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: None + DEV: {'name': 'preprod', 'namespace': 'hmpps-probation-integration-services-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://appointment-reminders-and-delius-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: None + DEV: {'name': 'prod', 'namespace': 'hmpps-probation-integration-services-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://appointment-reminders-and-delius.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + versions: PROD: {'helm_dependencies': {'generic-service': '3.2', 'generic-prometheus-alerts': '1.4'}} DEV: {} + + +dps-gradle-spring-boot +======================= + github_project_branch_protection_restricted_teams: PROD: ['dps-tech'] DEV: [] + + +hmpps-staff-lookup-service +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-staff-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-staff-lookup-service-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-tier', 'alerts_slack_channel': ''} + DEV: {'name': 'dev', 'namespace': 'hmpps-staff-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-staff-lookup-service-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-staff-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-staff-lookup-service-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-tier', 'alerts_slack_channel': ''} + DEV: {'name': 'preprod', 'namespace': 'hmpps-staff-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-staff-lookup-service-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-staff-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-staff-lookup-service.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-staff-prod-alerts', 'alerts_slack_channel': ''} + DEV: {'name': 'prod', 'namespace': 'hmpps-staff-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-staff-lookup-service.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-staff-prod-alerts', 'alerts_slack_channel': '#manage-a-workforce_live'} +hmpps-prisoner-location-api +======================= +send-legal-mail-to-prisons-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'send-legal-mail-to-prisons-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://send-legal-mail-api-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'groups': ['circleci', 'internal']}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-visits-send-legal-email-dev', 'alerts_slack_channel': '#send-legal-mail-alerts-nonprod'} + DEV: {'name': 'dev', 'namespace': 'send-legal-mail-to-prisons-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://send-legal-mail-api-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'groups': ['circleci', 'internal']}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-visits-send-legal-email-dev', 'alerts_slack_channel': '#send-legal-mail-alerts-nonprod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'send-legal-mail-to-prisons-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://send-legal-mail-api-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'groups': ['circleci', 'internal']}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-visits-send-legal-email-preprod', 'alerts_slack_channel': '#send-legal-mail-alerts-nonprod'} + DEV: {'name': 'preprod', 'namespace': 'send-legal-mail-to-prisons-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://send-legal-mail-api-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'groups': ['circleci', 'internal']}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-visits-send-legal-email-preprod', 'alerts_slack_channel': '#send-legal-mail-alerts-nonprod'} +ims-and-delius +======================= +hmpps-adjustments +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-adjustments-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://adjust-release-dates-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-adjustments-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://adjust-release-dates-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-adjustments-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://adjust-release-dates-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-adjustments-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://adjust-release-dates-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci', 'prisons', 'private_prisons'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + versions: PROD: {'circleci': {'hmpps_orb': '8'}, 'dockerfile': {'base_image': 'node:20.18-bookworm-slim'}} DEV: {'circleci': {'hmpps_orb': '8'}} + + +hmpps-managing-prisoner-apps-staff-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-managing-prisoner-apps-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://managing-prisoner-apps-staff-ui-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-launchpad-nonprod', 'alerts_slack_channel': ''} + DEV: {'name': 'dev', 'namespace': 'hmpps-managing-prisoner-apps-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://managing-prisoner-apps-staff-ui-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-launchpad-nonprod', 'alerts_slack_channel': ' #launchpad-alerts-nonprod'} +hdc-licences-and-delius +======================= +hmpps-connect-dps-shared-items-package +======================= +hmpps-mercury-submit-ui +======================= + Environment stage: + PROD: {'name': 'stage', 'namespace': 'hmpps-mercury-submit-test', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': None, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management,tag:namespace=hmpps-mercury-submit-test"\nSecRuleUpdateTargetById 930120 !REQUEST_COOKIES\nSecRuleUpdateTargetById 932160 !REQUEST_COOKIES\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942140, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: None + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-mercury-submit-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://submit-a-mercury-report-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {'generic-service': {'groups': ['circleci', 'internal'], 'moj-official-tgw-prod': '51.149.250.0/24', 'moj-official-tgw-preprod': '51.149.251.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management,tag:namespace=hmpps-mercury-submit-test"\nSecRuleUpdateTargetById 930120 !REQUEST_COOKIES\nSecRuleUpdateTargetById 932160 !REQUEST_COOKIES\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942140, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-mercury-submit-dev', 'info_path': None, 'health_path': None, 'url': 'https://submit-a-mercury-report-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-dev.yaml': {'generic-service': {'groups': ['circleci', 'internal'], 'moj-official-tgw-prod': '51.149.250.0/24', 'moj-official-tgw-preprod': '51.149.251.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=dps-soct-tech,tag:namespace=hmpps-mercury-submit-dev"\nSecRuleUpdateTargetById 930120 !REQUEST_COOKIES\nSecRuleUpdateTargetById 932160 !REQUEST_COOKIES\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942140, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-mercury-submit-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://submit-a-mercury-report-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management,tag:namespace=hmpps-mercury-submit-test"\nSecRuleUpdateTargetById 930120 !REQUEST_COOKIES\nSecRuleUpdateTargetById 932160 !REQUEST_COOKIES\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942140, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'hmpps-mercury-submit-preprod', 'info_path': None, 'health_path': None, 'url': 'https://submit-a-mercury-report-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management-restricted,tag:namespace=hmpps-mercury-submit-preprod"\nSecRuleUpdateTargetById 930120 !REQUEST_COOKIES\nSecRuleUpdateTargetById 932160 !REQUEST_COOKIES\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942140, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-mercury-submit-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://submit-a-mercury-report.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'prisoner_escort']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management,tag:namespace=hmpps-mercury-submit-test"\nSecRuleUpdateTargetById 930120 !REQUEST_COOKIES\nSecRuleUpdateTargetById 932160 !REQUEST_COOKIES\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942140, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'hmpps-mercury-submit-prod', 'info_path': None, 'health_path': None, 'url': 'https://submit-a-mercury-report.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'prisoner_escort']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management-restricted,tag:namespace=hmpps-mercury-submit-prod"\nSecRuleUpdateTargetById 930120 !REQUEST_COOKIES\nSecRuleUpdateTargetById 932160 !REQUEST_COOKIES\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942140, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} + trivy_last_completed_scan_date: PROD: None DEV: 2025-02-20T03:04:15.872289719Z + + +money-to-prisoners-emails +======================= +hmpps-risk-assessment-ui +======================= + Environment development: + PROD: {'name': 'development', 'namespace': 'hmpps-assessments-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://dev.hmpps-assessments.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'capita-vpn-1': '82.203.33.128/28', 'capita-vpn-2': '82.203.33.112/28', 'ark-nps-hmcts-ttp2': '194.33.192.0/25', 'ark-nps-hmcts-ttp4': '194.33.196.0/25'}}, 'values-development.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-assess-risks-and-needs', 'alerts_slack_channel': '#hmpps-assessments-dev'} + DEV: None + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-assessments-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://hmpps-assessments.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'capita-vpn-1': '82.203.33.128/28', 'capita-vpn-2': '82.203.33.112/28', 'ark-nps-hmcts-ttp2': '194.33.192.0/25', 'ark-nps-hmcts-ttp4': '194.33.196.0/25'}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'probation'], 'prp-dia-2': '194.33.216.0/23', 'prisma-access': '128.77.75.64/26'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-assess-risks-and-needs', 'alerts_slack_channel': '#hmpps-assessments-dev'} + DEV: {'name': 'prod', 'namespace': 'hmpps-assessments-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://hmpps-assessments.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal'], 'capita-vpn-1': '82.203.33.128/28', 'capita-vpn-2': '82.203.33.112/28', 'ark-nps-hmcts-ttp2': '194.33.192.0/25', 'ark-nps-hmcts-ttp4': '194.33.196.0/25'}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'probation'], 'prp-dia-2': '194.33.216.0/23', 'prisma-access': '128.77.75.64/26'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-assess-risks-and-needs', 'alerts_slack_channel': '#hmpps-assessments-dev'} +hmpps-person-on-probation-user-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-person-on-probation-user-service-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://person-on-probation-user-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-resettlement-passport-non-prod', 'alerts_slack_channel': '#resettlement_passport_alerts_non_prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-person-on-probation-user-service-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://person-on-probation-user-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-resettlement-passport-non-prod', 'alerts_slack_channel': '#resettlement_passport_alerts_non_prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-person-on-probation-user-service-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://person-on-probation-user-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-resettlement-passport-non-prod', 'alerts_slack_channel': '#resettlement_passport_alerts_non_prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-person-on-probation-user-service-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://person-on-probation-user-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-resettlement-passport-non-prod', 'alerts_slack_channel': '#resettlement_passport_alerts_non_prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-person-on-probation-user-service-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://person-on-probation-user-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-resettlement-passport-prod', 'alerts_slack_channel': '#resettlement_passport_alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-person-on-probation-user-service-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://person-on-probation-user-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-resettlement-passport-prod', 'alerts_slack_channel': '#resettlement_passport_alerts'} + trivy_last_completed_scan_date: PROD: 2025-02-19T09:59:19.765616385Z DEV: 2025-02-20T09:59:20.766481865Z + + +hmpps-github-discovery +======================= + github_template_repo: PROD: DEV: None + + +accredited-programmes-and-oasys +======================= +hmpps-manage-offences-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-manage-offences-api-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-offences-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'analytical-platform-1': '18.168.85.104/32', 'analytical-platform-2': '13.42.220.232/32', 'analytical-platform-3': '18.168.158.203/32', 'analytical-platform-4': '18.134.41.36/32', 'analytical-platform-5': '3.11.34.83/32', 'analytical-platform-6': '18.133.37.201/32'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-manage-offences-api-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-offences-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal'], 'analytical-platform-1': '18.168.85.104/32', 'analytical-platform-2': '13.42.220.232/32', 'analytical-platform-3': '18.168.158.203/32', 'analytical-platform-4': '18.134.41.36/32', 'analytical-platform-5': '3.11.34.83/32', 'analytical-platform-6': '18.133.37.201/32'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-manage-offences-api-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-offences-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal'], 'analytical-platform-1': '18.168.85.104/32', 'analytical-platform-2': '13.42.220.232/32', 'analytical-platform-3': '18.168.158.203/32', 'analytical-platform-4': '18.134.41.36/32', 'analytical-platform-5': '3.11.34.83/32', 'analytical-platform-6': '18.133.37.201/32'}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-manage-offences-api-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-offences-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal'], 'analytical-platform-1': '18.168.85.104/32', 'analytical-platform-2': '13.42.220.232/32', 'analytical-platform-3': '18.168.158.203/32', 'analytical-platform-4': '18.134.41.36/32', 'analytical-platform-5': '3.11.34.83/32', 'analytical-platform-6': '18.133.37.201/32'}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} +make-recall-decisions-and-delius +======================= +hmpps-hpa +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-historical-prisoner-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://hpa-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# team here grants access to the OpenSearch logs to delve into the cause of the blockage\nSecDefaultAction "phase:2,pass,log,tag:github_team=syscon-devs,tag:namespace={{ .Release.Namespace }}"\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT PATCH DELETE,setvar:tx.paranoia_level=3"\n# Searching for prisoners gives Invalid character in request (outside of printable chars below ascii 127) so remove\nSecRuleRemoveById 920272\n# Filtering on results gives HTTP Parameter Pollution as multiple parameters with same name\nSecRuleRemoveById 921180\n# Allow 1c in request cookie and csrf for SQL Injection Attack Detected via libinjection\nSecRuleUpdateTargetById 942100 "!REQUEST_COOKIES:/session.sig/"\nSecRuleUpdateTargetById 942100 "!ARGS:_csrf"\n# Allow -- in session cookie and csrf for SQL Comment Sequence Detected\nSecRuleUpdateTargetById 942440 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/session.sig/"\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'syscon-nonprod', 'alerts_slack_channel': '#syscon-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-historical-prisoner-dev', 'info_path': None, 'health_path': None, 'url': 'https://hpa-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# team here grants access to the OpenSearch logs to delve into the cause of the blockage\nSecDefaultAction "phase:2,pass,log,tag:github_team=syscon-devs,tag:namespace={{ .Release.Namespace }}"\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT PATCH DELETE,setvar:tx.paranoia_level=3"\n# Searching for prisoners gives Invalid character in request (outside of printable chars below ascii 127) so remove\nSecRuleRemoveById 920272\n# Filtering on results gives HTTP Parameter Pollution as multiple parameters with same name\nSecRuleRemoveById 921180\n# Allow 1c in request cookie and csrf for SQL Injection Attack Detected via libinjection\nSecRuleUpdateTargetById 942100 "!REQUEST_COOKIES:/session.sig/"\nSecRuleUpdateTargetById 942100 "!ARGS:_csrf"\n# Allow -- in session cookie and csrf for SQL Comment Sequence Detected\nSecRuleUpdateTargetById 942440 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/session.sig/"\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'syscon-nonprod', 'alerts_slack_channel': '#syscon-alerts-non-prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-historical-prisoner-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://hpa-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# team here grants access to the OpenSearch logs to delve into the cause of the blockage\nSecDefaultAction "phase:2,pass,log,tag:github_team=syscon-devs,tag:namespace={{ .Release.Namespace }}"\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT PATCH DELETE,setvar:tx.paranoia_level=3"\n# Searching for prisoners gives Invalid character in request (outside of printable chars below ascii 127) so remove\nSecRuleRemoveById 920272\n# Filtering on results gives HTTP Parameter Pollution as multiple parameters with same name\nSecRuleRemoveById 921180\n# Allow 1c in request cookie and csrf for SQL Injection Attack Detected via libinjection\nSecRuleUpdateTargetById 942100 "!REQUEST_COOKIES:/session.sig/"\nSecRuleUpdateTargetById 942100 "!ARGS:_csrf"\n# Allow -- in session cookie and csrf for SQL Comment Sequence Detected\nSecRuleUpdateTargetById 942440 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/session.sig/"\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'syscon-nonprod', 'alerts_slack_channel': '#syscon-alerts-non-prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-historical-prisoner-preprod', 'info_path': None, 'health_path': None, 'url': 'https://hpa-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# team here grants access to the OpenSearch logs to delve into the cause of the blockage\nSecDefaultAction "phase:2,pass,log,tag:github_team=syscon-devs,tag:namespace={{ .Release.Namespace }}"\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT PATCH DELETE,setvar:tx.paranoia_level=3"\n# Searching for prisoners gives Invalid character in request (outside of printable chars below ascii 127) so remove\nSecRuleRemoveById 920272\n# Filtering on results gives HTTP Parameter Pollution as multiple parameters with same name\nSecRuleRemoveById 921180\n# Allow 1c in request cookie and csrf for SQL Injection Attack Detected via libinjection\nSecRuleUpdateTargetById 942100 "!REQUEST_COOKIES:/session.sig/"\nSecRuleUpdateTargetById 942100 "!ARGS:_csrf"\n# Allow -- in session cookie and csrf for SQL Comment Sequence Detected\nSecRuleUpdateTargetById 942440 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/session.sig/"\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'syscon-nonprod', 'alerts_slack_channel': '#syscon-alerts-non-prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-historical-prisoner-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://hpa.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# team here grants access to the OpenSearch logs to delve into the cause of the blockage\nSecDefaultAction "phase:2,pass,log,tag:github_team=syscon-devs,tag:namespace={{ .Release.Namespace }}"\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT PATCH DELETE,setvar:tx.paranoia_level=3"\n# Searching for prisoners gives Invalid character in request (outside of printable chars below ascii 127) so remove\nSecRuleRemoveById 920272\n# Filtering on results gives HTTP Parameter Pollution as multiple parameters with same name\nSecRuleRemoveById 921180\n# Allow 1c in request cookie and csrf for SQL Injection Attack Detected via libinjection\nSecRuleUpdateTargetById 942100 "!REQUEST_COOKIES:/session.sig/"\nSecRuleUpdateTargetById 942100 "!ARGS:_csrf"\n# Allow -- in session cookie and csrf for SQL Comment Sequence Detected\nSecRuleUpdateTargetById 942440 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/session.sig/"\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'syscon', 'alerts_slack_channel': '#syscon-alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-historical-prisoner-prod', 'info_path': None, 'health_path': None, 'url': 'https://hpa.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': False, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\n# team here grants access to the OpenSearch logs to delve into the cause of the blockage\nSecDefaultAction "phase:2,pass,log,tag:github_team=syscon-devs,tag:namespace={{ .Release.Namespace }}"\n# Default is only GET HEAD POST OPTIONS so need to include PUT etc.\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT PATCH DELETE,setvar:tx.paranoia_level=3"\n# Searching for prisoners gives Invalid character in request (outside of printable chars below ascii 127) so remove\nSecRuleRemoveById 920272\n# Filtering on results gives HTTP Parameter Pollution as multiple parameters with same name\nSecRuleRemoveById 921180\n# Allow 1c in request cookie and csrf for SQL Injection Attack Detected via libinjection\nSecRuleUpdateTargetById 942100 "!REQUEST_COOKIES:/session.sig/"\nSecRuleUpdateTargetById 942100 "!ARGS:_csrf"\n# Allow -- in session cookie and csrf for SQL Comment Sequence Detected\nSecRuleUpdateTargetById 942440 "!ARGS:_csrf"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/session.sig/"\n# Change default denial to be a 406 so that we can tell easily that it is modsecurity doing the blocking\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'syscon', 'alerts_slack_channel': '#syscon-alerts'} +hmpps-audit-poc-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-audit-poc-dev', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-audit-poc-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://audit-poc-ui-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} +crime-portal-gateway +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'court-probation-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://crime-portal-gateway-dev.apps.live-1.cloud-platform.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'bsi-1': '54.37.241.156/30', 'bsi-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation_in_court_alerts_dev', 'alerts_slack_channel': '#probation_in_court_alerts_dev'} + DEV: {'name': 'dev', 'namespace': 'court-probation-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://crime-portal-gateway-dev.apps.live-1.cloud-platform.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'bsi-1': '54.37.241.156/30', 'bsi-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation_in_court_alerts_dev', 'alerts_slack_channel': '#probation_in_court_alerts_dev'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'court-probation-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://preprod.crime-portal-mirror-gateway.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'cgi-nle-env': '40.81.152.12/32', 'cgi-test-env': '51.140.207.121/32', 'cgi-new-test-env-1': '195.206.176.96/27', 'cgi-new-test-env-2': '195.206.178.96/27'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation_in_court_alerts_preprod', 'alerts_slack_channel': '#probation_in_court_alerts_preprod'} + DEV: {'name': 'preprod', 'namespace': 'court-probation-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://preprod.crime-portal-mirror-gateway.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'cgi-nle-env': '40.81.152.12/32', 'cgi-test-env': '51.140.207.121/32', 'cgi-new-test-env-1': '195.206.176.96/27', 'cgi-new-test-env-2': '195.206.178.96/27'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation_in_court_alerts_preprod', 'alerts_slack_channel': '#probation_in_court_alerts_preprod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'court-probation-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://crime-portal-mirror-gateway.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'cgi-prod-env': '40.81.159.83/32', 'cgi-prod-env-az1': '195.206.176.96/27', 'cgi-prod-env-az2': '195.206.178.96/27'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation_in_court_alerts_prod', 'alerts_slack_channel': '#probation_in_court_alerts_prod'} + DEV: {'name': 'prod', 'namespace': 'court-probation-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://crime-portal-mirror-gateway.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'cgi-prod-env': '40.81.159.83/32', 'cgi-prod-env-az1': '195.206.176.96/27', 'cgi-prod-env-az2': '195.206.178.96/27'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation_in_court_alerts_prod', 'alerts_slack_channel': '#probation_in_court_alerts_prod'} +offender-risk-profiler +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'offender-categorisation-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://offender-risk-profiler-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'dps-sed-alerts-nonprod', 'alerts_slack_channel': '#sed_nonprod_alerts'} + DEV: {'name': 'dev', 'namespace': 'offender-categorisation-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://offender-risk-profiler-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'dps-sed-alerts-nonprod', 'alerts_slack_channel': '#sed_nonprod_alerts'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'offender-categorisation-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://offender-risk-profiler-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'dps-sed-alerts-nonprod', 'alerts_slack_channel': '#sed_nonprod_alerts'} + DEV: {'name': 'preprod', 'namespace': 'offender-categorisation-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://offender-risk-profiler-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'dps-sed-alerts-nonprod', 'alerts_slack_channel': '#sed_nonprod_alerts'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'offender-categorisation-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://offender-risk-profiler.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'dps-sed-alerts-prod', 'alerts_slack_channel': '#dps_sed_alerts'} + DEV: {'name': 'prod', 'namespace': 'offender-categorisation-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://offender-risk-profiler.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'dps-sed-alerts-prod', 'alerts_slack_channel': '#dps_sed_alerts'} +manage-intelligence +======================= + Environment stage: + PROD: {'name': 'stage', 'namespace': 'hmpps-manage-intelligence-stage', 'info_path': None, 'health_path': None, 'url': 'https://manage-intelligence-stage.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-stage.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'petty_france_office365-1': '85.115.54.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management-restricted,tag:namespace=hmpps-manage-intelligence-stage"\n# Deny access from mobile devices\nSecRule REQUEST_HEADERS:User-Agent "iPhone|iPad|Android|BlackBerry|Opera Mini|IEMobile" \\\n "id:10001, \\\n phase:1, \\\n t:none, \\\n log, \\\n deny"\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=932120, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': 'digital-prison-service-prod', 'alerts_slack_channel': None} + DEV: {'name': 'stage', 'namespace': 'hmpps-manage-intelligence-stage', 'info_path': None, 'health_path': None, 'url': 'https://manage-intelligence-stage.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-stage.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'petty_france_office365-1': '85.115.54.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management-restricted,tag:namespace=hmpps-manage-intelligence-stage"\n# Deny access from mobile devices\nSecRule REQUEST_HEADERS:User-Agent "iPhone|iPad|Android|BlackBerry|Opera Mini|IEMobile" \\\n "id:10001, \\\n phase:1, \\\n t:none, \\\n log, \\\n deny"\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=932120, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': 'digital-prison-service-prod', 'alerts_slack_channel': None} + Environment dev: + PROD: {'name': 'dev', 'namespace': 'manage-intelligence-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-intelligence-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {'generic-service': {'groups': ['internal'], 'moj-official-tgw-prod': '51.149.250.0/24', 'moj-official-tgw-preprod': '51.149.251.0/24', 'moj-official-ark-c-expo-e': '51.149.249.0/29', 'moj-official-ark-f-expo-e': '51.149.249.32/29', 'moj-official-ark-c-vodafone': '194.33.248.0/29', 'moj-official-ark-f-vodafone': '194.33.249.0/29'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management,tag:namespace=manage-intelligence-dev"\n# Deny access from mobile devices\nSecRule REQUEST_HEADERS:User-Agent "iPhone|iPad|Android|BlackBerry|Opera Mini|IEMobile" \\\n "id:10001, \\\n phase:1, \\\n t:none, \\\n log, \\\n deny"\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=932120, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': 'intelligence-management-service-dev', 'alerts_slack_channel': '#ims_alerts_non_prod'} + DEV: None + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-manage-intelligence-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-intelligence-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'petty_france_office365-1': '85.115.54.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management-restricted,tag:namespace=hmpps-manage-intelligence-preprod"\n# Deny access from mobile devices\nSecRule REQUEST_HEADERS:User-Agent "iPhone|iPad|Android|BlackBerry|Opera Mini|IEMobile" \\\n "id:10001, \\\n phase:1, \\\n t:none, \\\n log, \\\n deny"\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=932120, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': 'intelligence-management-service-pre-prod', 'alerts_slack_channel': '#ims_alerts_non_prod'} + DEV: None + Environment test: + PROD: {'name': 'test', 'namespace': 'hmpps-manage-intelligence-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-intelligence-test.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'test', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-test.yaml': {'generic-service': {'groups': ['circleci', 'internal'], 'ithc-tester1': '54.37.241.156/30', 'ithc-tester2': '167.71.136.237/32', 'moj-official-tgw-prod': '51.149.250.0/24', 'moj-official-tgw-preprod': '51.149.251.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management,tag:namespace=hmpps-manage-intelligence-test"\n# Deny access from mobile devices\nSecRule REQUEST_HEADERS:User-Agent "iPhone|iPad|Android|BlackBerry|Opera Mini|IEMobile" \\\n "id:10001, \\\n phase:1, \\\n t:none, \\\n log, \\\n deny"\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=932120, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: None + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-manage-intelligence-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-intelligence.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons'], 'petty_france_office365-1': '85.115.54.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management-restricted,tag:namespace=hmpps-manage-intelligence-prod"\n# Deny access from mobile devices\nSecRule REQUEST_HEADERS:User-Agent "iPhone|iPad|Android|BlackBerry|Opera Mini|IEMobile" \\\n "id:10001, \\\n phase:1, \\\n t:none, \\\n log, \\\n deny"\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=932120, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': 'hmpps-manage-intelligence-multi-app-prod', 'alerts_slack_channel': '#ims_alerts'} + DEV: None + latest_commit: PROD: {'sha': 'b40bc9bd7ed4bcedb20a12335a0aafd0f92f454c', 'date_time': '2025-02-19T14:18:16.000Z'} DEV: {'sha': '6834d25c8e89562d2920765f8b39ab6bc3e54cfa', 'date_time': '2025-02-20T10:09:37.000Z'} + + + trivy_last_completed_scan_date: PROD: None DEV: 2025-02-20T03:44:38.530937363Z + + +hmpps-approved-premises-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-community-accommodation-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://approved-premises-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'probation'], 'palo-alto-prisma-access-egress': '128.77.75.64/26'}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: None + latest_commit: PROD: {'sha': '0407d6cd64843dc28cc32174ae6d5cd6c04de293', 'date_time': '2025-02-19T09:55:07.000Z'} DEV: {'sha': 'b37dec9c39290f3bdb516b7b6dbe541b18d59217', 'date_time': '2025-02-20T10:06:14.000Z'} + + +hmpps-manage-users-api +======================= + Environment stage: + PROD: {'name': 'stage', 'namespace': 'hmpps-auth-stage', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-stage.yaml': {'generic-service': {'hpa-iis-stage-1': '51.141.36.127/32', 'hpa-iis-stage-2': '51.141.34.169/32', 'hpa-iis-stage-3': '51.141.33.76/32', 'hpa-iis-stage-4': '51.141.38.101/32', 'hpa-iis-stage-5': '51.140.210.98/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'stage', 'namespace': 'hmpps-auth-stage', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-users-api-stage.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-stage.yaml': {'generic-service': {'hpa-iis-stage-1': '51.141.36.127/32', 'hpa-iis-stage-2': '51.141.34.169/32', 'hpa-iis-stage-3': '51.141.33.76/32', 'hpa-iis-stage-4': '51.141.38.101/32', 'hpa-iis-stage-5': '51.140.210.98/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_tech_non_prod', 'alerts_slack_channel': '#hmpps_tech_alerts_non_prod'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-manage-users-prod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'hpa-iis-prod-1': '51.141.12.82/32', 'hpa-iis-prod-2': '51.141.12.83/32', 'hpa-iis-prod-3': '51.141.12.84/32', 'hpa-iis-prod-4': '51.141.12.85/32', 'hpa-iis-prod-5': '51.140.210.97/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'hmpps-manage-users-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-users-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {'generic-service': {'hpa-iis-prod-1': '51.141.12.82/32', 'hpa-iis-prod-2': '51.141.12.83/32', 'hpa-iis-prod-3': '51.141.12.84/32', 'hpa-iis-prod-4': '51.141.12.85/32', 'hpa-iis-prod-5': '51.140.210.97/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_tech', 'alerts_slack_channel': '#hmpps_tech_alerts'} + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-manage-users-dev', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'hpa-iis-stage-1': '51.141.36.127/32', 'hpa-iis-stage-2': '51.141.34.169/32', 'hpa-iis-stage-3': '51.141.33.76/32', 'hpa-iis-stage-4': '51.141.38.101/32', 'hpa-iis-stage-5': '51.140.210.98/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-manage-users-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-users-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'hpa-iis-stage-1': '51.141.36.127/32', 'hpa-iis-stage-2': '51.141.34.169/32', 'hpa-iis-stage-3': '51.141.33.76/32', 'hpa-iis-stage-4': '51.141.38.101/32', 'hpa-iis-stage-5': '51.140.210.98/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_tech_non_prod', 'alerts_slack_channel': '#hmpps_tech_alerts_non_prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-manage-users-preprod', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'hpa-iis-preprod-1': '51.141.36.127/32', 'hpa-iis-preprod-2': '51.141.34.169/32', 'hpa-iis-preprod-3': '51.141.33.76/32', 'hpa-iis-preprod-4': '51.141.38.101/32', 'hpa-iis-preprod-5': '51.140.210.98/32'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'hmpps-manage-users-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-users-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'hpa-iis-preprod-1': '51.141.36.127/32', 'hpa-iis-preprod-2': '51.141.34.169/32', 'hpa-iis-preprod-3': '51.141.33.76/32', 'hpa-iis-preprod-4': '51.141.38.101/32', 'hpa-iis-preprod-5': '51.140.210.98/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps_tech_non_prod', 'alerts_slack_channel': '#hmpps_tech_alerts_non_prod'} +hmpps-prepare-a-case-e2e +======================= +hmpps-submit-ims-report +======================= + Environment stage: + PROD: {'name': 'stage', 'namespace': 'hmpps-manage-intelligence-stage', 'info_path': '/info', 'health_path': '/health', 'url': 'https://submit-information-report-stage.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-stage.yaml': {'generic-service': {'groups': ['internal']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management,tag:namespace=hmpps-manage-intelligence-test"\nSecRuleUpdateTargetById 930120 !REQUEST_COOKIES\nSecRuleUpdateTargetById 932160 !REQUEST_COOKIES\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942140, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': 'dps_alerts_non_prod', 'alerts_slack_channel': None} + DEV: {'name': 'stage', 'namespace': 'hmpps-manage-intelligence-stage', 'info_path': '/info', 'health_path': '/health', 'url': 'https://submit-information-report-stage.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-stage.yaml': {'generic-service': {'groups': ['internal']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management-restricted,tag:namespace=hmpps-manage-intelligence-stage"\nSecRuleUpdateTargetById 930120 !REQUEST_COOKIES\nSecRuleUpdateTargetById 932160 !REQUEST_COOKIES\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942140, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': 'dps_alerts_non_prod', 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-manage-intelligence-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://submit-information-report.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'digital_staff_and_mojo', 'prisons', 'private_prisons', 'prisoner_escort']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management,tag:namespace=hmpps-manage-intelligence-test"\nSecRuleUpdateTargetById 930120 !REQUEST_COOKIES\nSecRuleUpdateTargetById 932160 !REQUEST_COOKIES\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942140, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': 'dps_alerts', 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'hmpps-manage-intelligence-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://submit-information-report.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'digital_staff_and_mojo', 'prisons', 'private_prisons', 'prisoner_escort']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management-restricted,tag:namespace=hmpps-manage-intelligence-prod"\nSecRuleUpdateTargetById 930120 !REQUEST_COOKIES\nSecRuleUpdateTargetById 932160 !REQUEST_COOKIES\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942140, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': 'dps_alerts', 'alerts_slack_channel': None} + Environment dev: + PROD: {'name': 'dev', 'namespace': 'manage-intelligence-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://submit-information-report-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {'generic-service': {'groups': ['internal']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management,tag:namespace=hmpps-manage-intelligence-test"\nSecRuleUpdateTargetById 930120 !REQUEST_COOKIES\nSecRuleUpdateTargetById 932160 !REQUEST_COOKIES\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942140, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': 'dps_alerts_non_prod', 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'manage-intelligence-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://submit-information-report-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-dev.yaml': {'generic-service': {'groups': ['internal']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management,tag:namespace=manage-intelligence-dev"\nSecRuleUpdateTargetById 930120 !REQUEST_COOKIES\nSecRuleUpdateTargetById 932160 !REQUEST_COOKIES\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942140, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': 'dps_alerts_non_prod', 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-manage-intelligence-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://submit-information-report-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'digital_staff_and_mojo', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management,tag:namespace=hmpps-manage-intelligence-test"\nSecRuleUpdateTargetById 930120 !REQUEST_COOKIES\nSecRuleUpdateTargetById 932160 !REQUEST_COOKIES\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942140, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': 'dps_alerts_non_prod', 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'hmpps-manage-intelligence-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://submit-information-report-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'digital_staff_and_mojo', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management-restricted,tag:namespace=hmpps-manage-intelligence-preprod"\nSecRuleUpdateTargetById 930120 !REQUEST_COOKIES\nSecRuleUpdateTargetById 932160 !REQUEST_COOKIES\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942140, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': 'dps_alerts_non_prod', 'alerts_slack_channel': None} + Environment test: + PROD: {'name': 'test', 'namespace': 'hmpps-manage-intelligence-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://submit-information-report-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'test', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-test.yaml': {'generic-service': {'groups': ['internal', 'circleci']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management,tag:namespace=hmpps-manage-intelligence-test"\nSecRuleUpdateTargetById 930120 !REQUEST_COOKIES\nSecRuleUpdateTargetById 932160 !REQUEST_COOKIES\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942140, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': 'dps_alerts_non_prod', 'alerts_slack_channel': None} + DEV: {'name': 'test', 'namespace': 'hmpps-manage-intelligence-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://submit-information-report-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-test.yaml': {'generic-service': {'groups': ['internal', 'circleci']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecAuditEngine On\nSecAuditLog /var/log/nginx/error.log\nSecAuditLogType Serial\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-intelligence-management,tag:namespace=hmpps-manage-intelligence-test"\nSecRuleUpdateTargetById 930120 !REQUEST_COOKIES\nSecRuleUpdateTargetById 932160 !REQUEST_COOKIES\n# disable these false positives for POST requests; they are always authenticated\nSecRule REQUEST_METHOD "POST" \\\n "id:10000, \\\n phase:2, \\\n t:none, \\\n ctl:ruleRemoveByTag=platform-windows, \\\n ctl:ruleRemoveByTag=language-shell, \\\n ctl:ruleRemoveByTag=language-php, \\\n ctl:ruleRemoveById=921110, \\\n ctl:ruleRemoveById=921120, \\\n ctl:ruleRemoveById=930120, \\\n ctl:ruleRemoveById=941180, \\\n ctl:ruleRemoveById=941370, \\\n ctl:ruleRemoveById=942100, \\\n ctl:ruleRemoveById=942140, \\\n ctl:ruleRemoveById=942190, \\\n ctl:ruleRemoveById=942230, \\\n ctl:ruleRemoveById=942360, \\\n ctl:ruleRemoveById=949110, \\\n nolog, \\\n pass"\n', 'alert_severity_label': 'dps_alerts_non_prod', 'alerts_slack_channel': None} + trivy_last_completed_scan_date: PROD: None DEV: 2025-02-20T07:43:08.966080193Z + + +prison-education-and-delius +======================= +san-eleventy-test +======================= +hmpps-manage-intelligence-legacy-data-monorepo +======================= +james-typescript-test +======================= +hmpps-accredited-programmes-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-accredited-programmes-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://accredited-programmes-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=1"\n', 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-accredited-programmes-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://accredited-programmes-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=1"\n', 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-accredited-programmes-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://accredited-programmes-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=1"\n', 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-accredited-programmes-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://accredited-programmes-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=1"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-accredited-programmes-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://accredited-programmes.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': True, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=1"\n', 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'prod', 'namespace': 'hmpps-accredited-programmes-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://accredited-programmes.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-prod.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons']}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=1"\n', 'alert_severity_label': None, 'alerts_slack_channel': None} +make-recall-decision-api +======================= + veracode_last_completed_scan_date: PROD: 2025-02-19T12:00:16.000Z DEV: 2025-02-12T12:00:31.000Z + + + veracode_results_url: PROD: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1408679:47047763 DEV: https://analysiscenter.veracode.com/auth/index.jsp#ViewReportsResultSummary:77328:1408679:46766158 + + +hmpps-notifications-alerts-vsip +======================= +hmpps-adjustments-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-adjustments-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://adjustments-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'dev', 'namespace': 'hmpps-adjustments-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://adjustments-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-adjustments-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://adjustments-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-adjustments-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://adjustments-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'cymulate-1': '54.217.50.18/32', 'cymulate-2': '52.208.202.111/32', 'cymulate-3': '52.49.144.209/32', 'penetration-test-ip-1': '54.37.241.156/30', 'penetration-test-ip-2': '167.71.136.237/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'legacy-replacement-alerts-non-prod', 'alerts_slack_channel': '#legacy-replacement-alerts-non-prod'} + trivy_last_completed_scan_date: PROD: 2025-02-19T09:31:33.505706566Z DEV: 2025-02-20T09:31:34.353691296Z + + +hmpps-education-employment-api +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-education-employment-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://education-employment-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alert'} + DEV: {'name': 'prod', 'namespace': 'hmpps-education-employment-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://education-employment-api.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} +hmpps-load-testing-probation +======================= +hmpps-mercury-submit-service +======================= + Environment stage: + PROD: {'name': 'stage', 'namespace': 'hmpps-mercury-submit-test', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': None, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: None + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-mercury-submit-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://mercury-submit-service.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alert'} + DEV: {'name': 'prod', 'namespace': 'hmpps-mercury-submit-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://mercury-submit-service.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service', 'alerts_slack_channel': '#dps_alerts'} + trivy_last_completed_scan_date: PROD: None DEV: 2025-02-20T08:22:17.81055524Z + + +court-case-matcher +======================= +hmpps-manage-a-supervision-ui +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-manage-a-supervision-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-a-supervision-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'unilink_staff']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': '#probation-integration-notifications'} + DEV: {'name': 'dev', 'namespace': 'hmpps-manage-people-on-probation-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-people-on-probation-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': '#probation-integration-notifications'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'hmpps-manage-a-supervision-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-a-supervision-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'unilink_staff']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': '#probation-integration-notifications'} + DEV: {'name': 'preprod', 'namespace': 'hmpps-manage-people-on-probation-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-people-on-probation-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': '#probation-integration-notifications'} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-manage-a-supervision-prod', 'info_path': None, 'health_path': None, 'url': 'https://manage-a-supervision.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'unilink_staff']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': '#probation-integration-notifications'} + DEV: {'name': 'prod', 'namespace': 'hmpps-manage-people-on-probation-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://manage-people-on-probation.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'probation-integration-notifications', 'alerts_slack_channel': '#probation-integration-notifications'} + latest_commit: PROD: {'sha': 'a3fe731676eaa47a404dee25f7ab34368e25c58f', 'date_time': '2025-01-27T15:05:32.000Z'} DEV: {'sha': 'efd4d1526697a67d028736f93c1f3e7405b5bed6', 'date_time': '2025-02-19T16:47:53.000Z'} + + +hmpps-historical-prisoner-api +======================= +send-legal-mail-to-prisons +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'send-legal-mail-to-prisons-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://send-legal-mail-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'moj-official-tgw-prod': '51.149.250.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-visits-send-legal-email-dev', 'alerts_slack_channel': '#send-legal-mail-alerts-nonprod'} + DEV: {'name': 'dev', 'namespace': 'send-legal-mail-to-prisons-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://send-legal-mail-dev.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-dev.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'moj-official-tgw-prod': '51.149.250.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-visits-send-legal-email-dev', 'alerts_slack_channel': '#send-legal-mail-alerts-nonprod'} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'send-legal-mail-to-prisons-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://send-legal-mail-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'moj-official-tgw-prod': '51.149.250.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-visits-send-legal-email-preprod', 'alerts_slack_channel': '#send-legal-mail-alerts-nonprod'} + DEV: {'name': 'preprod', 'namespace': 'send-legal-mail-to-prisons-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://send-legal-mail-preprod.prison.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {}, 'values-preprod.yaml': {'generic-service': {'groups': ['internal', 'circleci'], 'moj-official-tgw-prod': '51.149.250.0/24'}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'hmpps-visits-send-legal-email-preprod', 'alerts_slack_channel': '#send-legal-mail-alerts-nonprod'} +prepare-a-case +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'court-probation-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://prepare-a-case-dev.apps.live-1.cloud-platform.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'court-probation-dev', 'info_path': None, 'health_path': '/health', 'url': 'https://prepare-a-case-dev.apps.live-1.cloud-platform.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'court-probation-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://prepare-a-case-preprod.apps.live-1.cloud-platform.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'preprod', 'namespace': 'court-probation-preprod', 'info_path': None, 'health_path': '/health', 'url': 'https://prepare-a-case-preprod.apps.live-1.cloud-platform.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: {'name': 'prod', 'namespace': 'court-probation-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://prepare-case-probation.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'prod', 'namespace': 'court-probation-prod', 'info_path': None, 'health_path': '/health', 'url': 'https://prepare-case-probation.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + latest_commit: PROD: {'sha': 'c9edd1b489402421b6a76041a24d9b7e23f355e0', 'date_time': '2024-12-16T13:10:09.000Z'} DEV: {'sha': '426798b9532e005e636fb83b55a07da9331b9090', 'date_time': '2025-01-29T16:07:01.000Z'} + + + versions: PROD: {'dockerfile': {'base_image': 'node:20.10-slim'}} DEV: {} + + +hmpps-non-associations +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-non-associations-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://non-associations-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prisons', 'private_prisons']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleRemoveById 920320\nSecRuleRemoveById 920300\nSecRuleRemoveById 920440\nSecRuleRemoveById 942110\nSecRuleRemoveById 913101\nSecRuleUpdateTargetById 931130 "!ARGS:/redirect_uri/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/jwtSession/"\nSecRuleUpdateTargetById 942450 "!REQUEST_COOKIES:/jwtSession/"\nSecRuleUpdateTargetById 930120 "!REQUEST_COOKIES:/jwtSession/"\nSecRuleUpdateTargetById 942210 "!REQUEST_COOKIES:/jwtSession/"\nSecRuleUpdateTargetById 920450 "!REQUEST_HEADERS_NAMES:/accept-charset/"\nSecRuleUpdateTargetById 931130 "!ARGS:/registeredRedirectUriWithNewlines/"\nSecRuleUpdateTargetById 942430 "!ARGS:/registeredRedirectUriWithNewlines/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/returnTo/"\nSecRuleUpdateTargetById 942450 "!REQUEST_COOKIES:/returnTo/"\nSecRuleUpdateTargetById 930120 "!REQUEST_COOKIES:/returnTo/"\nSecRuleUpdateTargetById 942210 "!REQUEST_COOKIES:/returnTo/"\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT DELETE"\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-non-associations"\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'hmpps-non-associations-dev', 'alerts_slack_channel': '#non-associations-dev'} + DEV: {'name': 'dev', 'namespace': 'hmpps-non-associations-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://non-associations-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['digital_staff_and_mojo', 'moj_cloud_platform', 'prisons', 'private_prisons']}}, 'values-dev.yaml': {'generic-service': {'allowlist': None}}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine On\nSecRuleRemoveById 920320\nSecRuleRemoveById 920300\nSecRuleRemoveById 920440\nSecRuleRemoveById 942110\nSecRuleRemoveById 913101\nSecRuleUpdateTargetById 931130 "!ARGS:/redirect_uri/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/jwtSession/"\nSecRuleUpdateTargetById 942450 "!REQUEST_COOKIES:/jwtSession/"\nSecRuleUpdateTargetById 930120 "!REQUEST_COOKIES:/jwtSession/"\nSecRuleUpdateTargetById 942210 "!REQUEST_COOKIES:/jwtSession/"\nSecRuleUpdateTargetById 920450 "!REQUEST_HEADERS_NAMES:/accept-charset/"\nSecRuleUpdateTargetById 931130 "!ARGS:/registeredRedirectUriWithNewlines/"\nSecRuleUpdateTargetById 942430 "!ARGS:/registeredRedirectUriWithNewlines/"\nSecRuleUpdateTargetById 942440 "!REQUEST_COOKIES:/returnTo/"\nSecRuleUpdateTargetById 942450 "!REQUEST_COOKIES:/returnTo/"\nSecRuleUpdateTargetById 930120 "!REQUEST_COOKIES:/returnTo/"\nSecRuleUpdateTargetById 942210 "!REQUEST_COOKIES:/returnTo/"\nSecAction "id:900200,phase:1,nolog,pass,t:none,setvar:tx.allowed_methods=GET HEAD POST OPTIONS PUT DELETE"\nSecDefaultAction "phase:2,pass,log,tag:github_team=hmpps-non-associations"\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\n', 'alert_severity_label': 'hmpps-non-associations-dev', 'alerts_slack_channel': '#non-associations-dev'} +calculate-journey-variable-payments +======================= +hmpps-uof-data-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'use-of-force-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-uof-data-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'move-a-prisoner-dev-private', 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'use-of-force-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-uof-data-api-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment preprod: + PROD: {'name': 'preprod', 'namespace': 'use-of-force-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-uof-data-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'digital-prison-service-dev', 'alerts_slack_channel': '#dps_alerts_non_prod'} + DEV: {'name': 'preprod', 'namespace': 'use-of-force-preprod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://hmpps-uof-data-api-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': True, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +hmpps-prisoner-to-nomis-update +======================= + Environment prod: + PROD: {'name': 'prod', 'namespace': 'hmpps-prisoner-to-nomis-update-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://prisoner-to-nomis-update.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'syscon', 'alerts_slack_channel': '#syscon-alerts'} + DEV: {'name': 'prod', 'namespace': 'hmpps-prisoner-to-nomis-update-prod', 'info_path': '/info', 'health_path': '/health', 'url': 'https://prisoner-to-nomis-update.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +hmpps-strengths-based-needs-assessments-api +======================= + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-strengths-based-needs-assessments-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://api.strengths-based-needs-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'neil-test': '51.155.102.238/32', 'capita-dev': '51.104.16.30/31', 'captia-further': '172.167.141.40/32', 'joel-app-sec-1': '100.64.10.206/32', 'joeal-app-sec-2': '86.134.133.78/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-strengths-based-needs-assessments', 'alerts_slack_channel': '#hmpps-strengths-based-needs-assessments-alerts'} + DEV: {'name': 'dev', 'namespace': 'hmpps-strengths-based-needs-assessments-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://api.strengths-based-needs-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {'generic-service': {'neil-test': '51.155.102.238/32', 'capita-dev': '51.104.16.30/31', 'captia-further': '172.167.141.40/32', 'joel-app-sec-1': '100.64.10.206/32', 'joeal-app-sec-2': '86.134.133.78/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-strengths-based-needs-assessments', 'alerts_slack_channel': '#hmpps-strengths-based-needs-assessments-alerts'} + Environment test: + PROD: {'name': 'test', 'namespace': 'hmpps-strengths-based-needs-assessments-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://api.strengths-based-needs-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'test', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-test.yaml': {'generic-service': {'neil-test': '51.155.102.238/32', 'capita-dev': '51.104.16.30/31', 'nat-gw-one': '35.178.209.113/31', 'nat-gw-two': '3.8.51.207/31', 'nat-gw-three': '35.177.252.54/31', 'oasys-box-t2': '10.26.12.211/32', 'krupal-appsec': '80.195.27.199/32', 'captia-further': '172.167.141.40/32', 'mp-nat-egress-one': '13.43.9.198/32', 'mp-nat-egress-two': '13.42.163.245/32', 'mp-nat-egress-three': '18.132.208.127/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-strengths-based-needs-assessments', 'alerts_slack_channel': '#hmpps-strengths-based-needs-assessments-alerts'} + DEV: {'name': 'test', 'namespace': 'hmpps-strengths-based-needs-assessments-test', 'info_path': '/info', 'health_path': '/health', 'url': 'https://api.strengths-based-needs-test.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml-': {'generic-service': {'groups': ['internal']}}, 'values-test.yaml': {'generic-service': {'neil-test': '51.155.102.238/32', 'capita-dev': '51.104.16.30/31', 'nat-gw-one': '35.178.209.113/31', 'nat-gw-two': '3.8.51.207/31', 'nat-gw-three': '35.177.252.54/31', 'oasys-box-t2': '10.26.12.211/32', 'krupal-appsec': '80.195.27.199/32', 'captia-further': '172.167.141.40/32', 'mp-nat-egress-one': '13.43.9.198/32', 'mp-nat-egress-two': '13.42.163.245/32', 'mp-nat-egress-three': '18.132.208.127/32', 'capita-developers-vms-one': '85.115.52.180/32', 'capita-developers-vms-six': '85.115.54.200/29', 'capita-developers-vms-two': '85.115.52.200/29', 'capita-developers-vms-five': '85.115.54.180/32', 'capita-developers-vms-four': '85.115.53.200/29', 'capita-developers-vms-three': '85.115.53.180/32'}}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': True, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': 'SecRuleEngine DetectionOnly\nSecRuleUpdateActionById 949110 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecRuleUpdateActionById 959100 "t:none,deny,status:406,logdata:%{SERVER_NAME}"\nSecAction "id:900000,phase:1,nolog,pass,t:none,setvar:tx.paranoia_level=2"\n', 'alert_severity_label': 'hmpps-strengths-based-needs-assessments', 'alerts_slack_channel': '#hmpps-strengths-based-needs-assessments-alerts'} +manage-supervision-and-oasys +======================= +sentence-plan-and-oasys +======================= + Environment preprod: + PROD: None + DEV: {'name': 'preprod', 'namespace': 'hmpps-probation-integration-services-preprod', 'info_path': None, 'health_path': None, 'url': 'https://sentence-plan-and-oasys-preprod.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'preprod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-preprod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + Environment prod: + PROD: None + DEV: {'name': 'prod', 'namespace': 'hmpps-probation-integration-services-prod', 'info_path': None, 'health_path': None, 'url': 'https://sentence-plan-and-oasys.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'prod', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': False, 'ip_allow_list': {'values.yaml': {}, 'values-prod.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} +hmpps-ip-allowlists +======================= + github_template_repo: PROD: DEV: None + + +create-and-vary-a-licence +======================= + Environment test1: + PROD: {'name': 'test1', 'namespace': 'create-and-vary-a-licence-test1', 'info_path': '/info', 'health_path': '/health', 'url': 'https://create-and-vary-a-licence-test1.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'test', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'probation'], 'hmp-parc-1': '217.161.76.162/32', 'hmp-parc-2': '217.161.76.154/32'}}, 'values-test1.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'cvl-alerts-non-prod', 'alerts_slack_channel': '#cvl_alerts_non_prod'} + DEV: {'name': 'test1', 'namespace': 'create-and-vary-a-licence-test1', 'info_path': '/info', 'health_path': '/health', 'url': 'https://create-and-vary-a-licence-test1.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'probation'], 'hmp-parc-1': '217.161.76.162/32', 'hmp-parc-2': '217.161.76.154/32'}}, 'values-test1.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'cvl-alerts-non-prod', 'alerts_slack_channel': '#cvl_alerts_non_prod'} + Environment test2: + PROD: {'name': 'test2', 'namespace': 'create-and-vary-a-licence-test2', 'info_path': '/info', 'health_path': '/health', 'url': 'https://create-and-vary-a-licence-test2.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'test', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'probation'], 'hmp-parc-1': '217.161.76.162/32', 'hmp-parc-2': '217.161.76.154/32'}}, 'values-test2.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'cvl-alerts-non-prod', 'alerts_slack_channel': '#cvl_alerts_non_prod'} + DEV: {'name': 'test2', 'namespace': 'create-and-vary-a-licence-test2', 'info_path': '/info', 'health_path': '/health', 'url': 'https://create-and-vary-a-licence-test2.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'stage', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal', 'prisons', 'private_prisons', 'probation'], 'hmp-parc-1': '217.161.76.162/32', 'hmp-parc-2': '217.161.76.154/32'}}, 'values-test2.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'cvl-alerts-non-prod', 'alerts_slack_channel': '#cvl_alerts_non_prod'} +hmpps-mercury-submit-ui-testsuite +======================= + trivy_last_completed_scan_date: PROD: None DEV: 2025-02-20T05:12:22.769086111Z + + +hmpps-template-kotlin +======================= + github_template_repo: PROD: DEV: None + + + Environment dev: + PROD: {'name': 'dev', 'namespace': 'hmpps-templates-dev', 'info_path': None, 'health_path': None, 'url': None, 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': None, 'ip_allow_list_enabled': None, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': None, 'modsecurity_enabled': None, 'modsecurity_audit_enabled': None, 'modsecurity_snippet': None, 'alert_severity_label': None, 'alerts_slack_channel': None} + DEV: {'name': 'dev', 'namespace': 'hmpps-templates-dev', 'info_path': '/info', 'health_path': '/health', 'url': 'https://template-kotlin-dev.hmpps.service.justice.gov.uk', 'cluster': 'live.cloud-platform.service.justice.gov.uk', 'type': 'dev', 'monitor': True, 'active_agencies': None, 'swagger_docs': '/swagger-ui.html', 'ip_allow_list_enabled': True, 'ip_allow_list': {'values.yaml': {'generic-service': {'groups': ['internal']}}, 'values-dev.yaml': {}}, 'include_in_subject_access_requests': False, 'modsecurity_enabled': False, 'modsecurity_audit_enabled': False, 'modsecurity_snippet': None, 'alert_severity_label': 'NON_PROD_ALERTS_SEVERITY_LABEL', 'alerts_slack_channel': None} +hmpps-jobs-board-api +======================= +court-case-and-delius +======================= diff --git a/github_component_discovery.py b/github_component_discovery.py new file mode 100644 index 0000000..3daff42 --- /dev/null +++ b/github_component_discovery.py @@ -0,0 +1,120 @@ +#!/usr/bin/env python +"""Github discovery - queries the github API for info about hmpps services and stores the results in the service catalogue + +Required environment variables +------------------------------ + +Alertmanager +- ALERTMANAGER_ENDPOINT: Alertmanager API endpoint + +Github (Credentials for Discovery app that has access to the repositories) +- GITHUB_APP_ID: Github App ID +- GITHUB_APP_INSTALLATION_ID: Github App Installation ID +- GITHUB_APP_PRIVATE_KEY: Github App Private Key + +Service Catalogue +- SERVICE_CATALOGUE_API_ENDPOINT: Service Catalogue API endpoint +- SERVICE_CATALOGUE_API_KEY: Service + +- SLACK_BOT_TOKEN: Slack Bot Token + +- CIRCLECI_API_ENDPOINT: CircleCI API endpoint +- CIRCLECI_TOKEN: CircleCI API token + +Optional environment variables +- SLACK_NOTIFY_CHANNEL: Slack channel for notifications +- SLACK_ALERT_CHANNEL: Slack channel for alerts +- LOG_LEVEL: Log level (default: INFO) + +""" + +import os +import logging +import argparse + +# Classes for the various parts of the script +# from classes.health import HealthServer +from classes.service_catalogue import ServiceCatalogue +from classes.github import GithubSession +from classes.alertmanager import AlertmanagerData +from classes.circleci import CircleCI + +# Components +import processes.components as components + +# Set maximum number of concurrent threads to run, try to avoid secondary github api limits. +max_threads = 10 +log_level = os.environ.get('LOG_LEVEL', 'INFO').upper() + + +class Services: + def __init__(self, sc_params, gh_params, am_params, cc_params, log): + self.sc = ServiceCatalogue(sc_params, log) + self.gh = GithubSession(gh_params, log) + self.am = AlertmanagerData(am_params, log) + self.cc = CircleCI(cc_params, log_level) + self.log = log + + +########################################################################################################### +# Single component discovery +########################################################################################################### +def main(): + logging.basicConfig( + format='[%(asctime)s] %(levelname)s %(threadName)s %(message)s', level=log_level + ) + log = logging.getLogger(__name__) + + parser = argparse.ArgumentParser(description='Process a component.') + parser.add_argument('component_name', help='The name of the component') + args = parser.parse_args() + component_name = args.component_name + + # service catalogue parameters + sc_params = { + 'url': os.getenv('SERVICE_CATALOGUE_API_ENDPOINT'), + 'key': os.getenv('SERVICE_CATALOGUE_API_KEY'), + 'filter': os.getenv('SC_FILTER', ''), + } + + # Github parameters + gh_params = { + 'app_id': int(os.getenv('GITHUB_APP_ID')), + 'app_installation_id': int(os.getenv('GITHUB_APP_INSTALLATION_ID')), + 'app_private_key': os.getenv('GITHUB_APP_PRIVATE_KEY'), + } + + cc_params = { + 'url': os.getenv( + 'CIRCLECI_API_ENDPOINT', + 'https://circleci.com/api/v1.1/project/gh/ministryofjustice/', + ), + 'token': os.getenv('CIRCLECI_TOKEN'), + } + + am_params = { + 'url': os.getenv( + 'ALERTMANAGER_ENDPOINT', + 'http://monitoring-alerts-service.cloud-platform-monitoring-alerts:8080/alertmanager/status', + ) + } + + services = Services(sc_params, gh_params, am_params, cc_params, log) + + component = services.sc.get_record(services.sc.components_get, 'name', component_name) + log.debug(f'Component: {component}') + if component: + log.info(f'Processing component {component_name}...') + processed_components = components.process_sc_component( + component, + components.get_bootstrap_projects(services), + services, + force_update=True, + ) + log.info(f'Processed component: {processed_components}') + else: + log.error(f'Component {component_name} not found') + + +if __name__ == '__main__': + main() diff --git a/github_discovery.py b/github_discovery.py index e982537..67d1272 100644 --- a/github_discovery.py +++ b/github_discovery.py @@ -1,1166 +1,207 @@ #!/usr/bin/env python -'''Github discovery - queries the github API for info about hmpps services and stores the results in the service catalogue''' -import os -import http.server -import socketserver -import threading -import logging -import tempfile -from time import sleep -from datetime import datetime, timedelta, timezone -from base64 import b64decode -import re -import json -import yaml -import github -import requests -from dockerfile_parse import DockerfileParser -from slack_sdk import WebClient -from slack_sdk.errors import SlackApiError -import base64 -import jwt -from github import Github, Auth -from github.GithubException import UnknownObjectException - -SC_API_ENDPOINT = os.getenv('SERVICE_CATALOGUE_API_ENDPOINT') -SC_API_TOKEN = os.getenv('SERVICE_CATALOGUE_API_KEY') -GITHUB_APP_ID = int(os.getenv('GITHUB_APP_ID')) -GITHUB_APP_INSTALLATION_ID = int(os.getenv('GITHUB_APP_INSTALLATION_ID')) -GITHUB_APP_PRIVATE_KEY = os.getenv('GITHUB_APP_PRIVATE_KEY') -REFRESH_INTERVAL_HOURS = int(os.getenv('REFRESH_INTERVAL_HOURS', '6')) -CIRCLECI_TOKEN = os.getenv('CIRCLECI_TOKEN') -CIRCLECI_API_ENDPOINT = os.getenv( - 'CIRCLECI_API_ENDPOINT', - 'https://circleci.com/api/v1.1/project/gh/ministryofjustice/', -) -SLACK_BOT_TOKEN = os.getenv('SLACK_BOT_TOKEN') - -# Set maximum number of concurrent threads to run, try to avoid secondary github api limits. -MAX_THREADS = 10 -LOG_LEVEL = os.environ.get('LOG_LEVEL', 'INFO').upper() - -# limit results for testing/dev -# See strapi filter syntax https://docs.strapi.io/dev-docs/api/rest/filters-locale-publication -# Example filter string = '&filters[name][$contains]=example' -SC_FILTER = os.getenv('SC_FILTER', '') -SC_PAGE_SIZE = 10 -SC_PAGINATION_PAGE_SIZE = f'&pagination[pageSize]={SC_PAGE_SIZE}' -# Example Sort filter -# SC_SORT='&sort=updatedAt:asc' -SC_SORT = '' -SC_ENDPOINT = f'{SC_API_ENDPOINT}/v1/components?populate=environments,latest_commit{SC_FILTER}{SC_PAGINATION_PAGE_SIZE}{SC_SORT}' -SC_ENDPOINT_TEAMS = f'{SC_API_ENDPOINT}/v1/github-teams' -SC_ENDPOINT_COMPONENTS = f'{SC_API_ENDPOINT}/v1/components' -SC_PRODUCT_FILTER = os.getenv( - 'SC_PRODUCT_FILTER', - '&fields[0]=slack_channel_id&fields[1]=slack_channel_name&fields[2]=p_id&fields[3]=name', -) -SC_PRODUCT_ENDPOINT = f'{SC_API_ENDPOINT}/v1/products?populate=environments{SC_PRODUCT_FILTER}{SC_PAGINATION_PAGE_SIZE}{SC_SORT}' -SC_PRODUCT_UPDATE_ENDPOINT = f'{SC_API_ENDPOINT}/v1/products' -ALERTMANAGER_ENDPOINT = os.getenv('ALERTMANAGER_ENDPOINT','http://monitoring-alerts-service.cloud-platform-monitoring-alerts:8080/alertmanager/status') -alertmanager_json_data = '' - -class HealthHttpRequestHandler(http.server.SimpleHTTPRequestHandler): - def do_GET(self): - self.send_response(200) - self.send_header('Content-type', 'text/plain') - self.end_headers() - self.wfile.write(bytes('UP', 'utf8')) - return - -def generate_jwt(): - private_key = b64decode(GITHUB_APP_PRIVATE_KEY).decode('ascii') - now = datetime.utcnow() - payload = { - 'iat': now, - 'exp': now + timedelta(minutes=10), - 'iss': GITHUB_APP_ID - } - token = jwt.encode(payload, private_key, algorithm='RS256') - return token - -def get_access_token(jwt_token): - headers = { - 'Authorization': f'Bearer {jwt_token}', - 'Accept': 'application/vnd.github.v3+json' - } - response = requests.post( - f'https://api.github.com/app/installations/{GITHUB_APP_INSTALLATION_ID}/access_tokens', - headers=headers - ) - response.raise_for_status() - return response.json()['token'] - -def update_sc_component(c_id, data): - try: - log.debug(data) - x = requests.put( - f'{SC_API_ENDPOINT}/v1/components/{c_id}', - headers=sc_api_headers, - json={'data': data}, - timeout=10, - ) - if x.status_code == 200: - log.info(f'Successfully updated component id {c_id}: {x.status_code}') - else: - log.info( - f'Received non-200 response from service catalogue for component id {c_id}: {x.status_code} {x.content}' - ) - except Exception as e: - log.error(f'Error updating component in the SC: {e}') - -def update_sc_product(p_id, data): - try: - log.debug(data) - x = requests.put( - f'{SC_PRODUCT_UPDATE_ENDPOINT}/{p_id}', - headers=sc_api_headers, - json={'data': data}, - timeout=10, - ) - if x.status_code == 200: - log.info(f'Successfully updated product id {p_id}: {x.status_code}') - else: - log.info( - f'Received non-200 response from service catalogue for product id {p_id}: {x.status_code} {x.content}' - ) - except Exception as e: - log.error(f'Error updating product in the SC: {e}') +"""Github discovery - queries the github API for info about hmpps services and stores the results in the service catalogue -def get_file_yaml(repo, path): - try: - file_contents = repo.get_contents(path) - contents = b64decode(file_contents.content).decode().replace('\t', ' ') - yaml_contents = yaml.safe_load(contents) - return yaml_contents - except github.UnknownObjectException: - log.debug(f'404 File not found {repo.name}:{path}') - except Exception as e: - log.error(f'Error getting yaml file: {e}') +Optional parameters: +-f, --force: Force update of the service catalogue +Required environment variables +------------------------------ -def get_file_json(repo, path): - try: - file_contents = repo.get_contents(path) - json_contents = json.loads(b64decode(file_contents.content)) - return json_contents - except github.UnknownObjectException: - log.debug(f'404 File not found {repo.name}:{path}') - except Exception as e: - log.error(f'Error getting json file: {e}') +Alertmanager +- ALERTMANAGER_ENDPOINT: Alertmanager API endpoint +Github (Credentials for Discovery app that has access to the repositories) +- GITHUB_APP_ID: Github App ID +- GITHUB_APP_INSTALLATION_ID: Github App Installation ID +- GITHUB_APP_PRIVATE_KEY: Github App Private Key -def get_file_plain(repo, path): - try: - file_contents = repo.get_contents(path) - plain_contents = b64decode(file_contents.content).decode() - return plain_contents - except github.UnknownObjectException: - log.debug(f'404 File not found {repo.name}:{path}') - return False - except Exception as e: - log.error(f'Error getting contents from file: {e}') +Service Catalogue +- SERVICE_CATALOGUE_API_ENDPOINT: Service Catalogue API endpoint +- SERVICE_CATALOGUE_API_KEY: Service +- SLACK_BOT_TOKEN: Slack Bot Token -def test_endpoint(url, endpoint): - headers = {'User-Agent': 'hmpps-service-discovery'} - try: - r = requests.get( - f'{url}{endpoint}', headers=headers, allow_redirects=False, timeout=10 - ) - # Test if json is returned - if r.json() and r.status_code != 404: - log.debug(f'Found endpoint: {url}{endpoint} ') - return True - except Exception: - log.debug(f'Could not connect to endpoint: {url}{endpoint} ') - return False - - -def test_swagger_docs(url): - headers = {'User-Agent': 'hmpps-service-discovery'} - try: - r = requests.get( - f'{url}/swagger-ui.html', headers=headers, allow_redirects=False, timeout=10 - ) - # Test for 302 redirect) - if r.status_code == 302 and ( - '/swagger-ui/index.html' in r.headers['Location'] - or 'api-docs/index.html' in r.headers['Location'] - ): - log.debug(f'Found swagger docs: {url}/swagger-ui.html') - return True - except Exception: - log.debug(f"Couldn't connect: {url}/swagger-ui.html") - return False +- CIRCLECI_API_ENDPOINT: CircleCI API endpoint +- CIRCLECI_TOKEN: CircleCI API token +Optional environment variables +- SLACK_NOTIFY_CHANNEL: Slack channel for notifications +- SLACK_ALERT_CHANNEL: Slack channel for alerts +- LOG_LEVEL: Log level (default: INFO) -def test_subject_access_request_endpoint(url): - headers = {'User-Agent': 'hmpps-service-discovery'} - try: - r = requests.get( - f'{url}/v3/api-docs', headers=headers, allow_redirects=False, timeout=10 - ) - if r and r.status_code == 200: - try: - if r.json()['paths']['/subject-access-request']: - log.debug(f'Found SAR endpoint at: {url}/v3/api-docs') - return True - except KeyError: - log.debug('No SAR endpoint found.') - return False - except TimeoutError: - log.debug(f"ERROR - Timed out connecting to: {url}/v3/api-docs") - return False - except Exception: - log.debug(f"ERROR- Couldn't connect: {url}/v3/api-docs") - return False - - -def get_sc_id(match_type, match_field, match_string): - try: - r = requests.get( - f'{SC_API_ENDPOINT}/v1/{match_type}?filters[{match_field}][$eq]={match_string}', - headers=sc_api_headers, - timeout=10, - ) - if r.status_code == 200 and r.json()['data']: - sc_id = r.json()['data'][0]['id'] - log.info( - f'Successfully found ID {sc_id}, matching type/field/string: {match_type}/{match_field}/{match_string}' - ) - return sc_id - log.info( - f'Could not find ID, matching type/field/string: {match_type}/{match_field}/{match_string}' - ) - return False - except Exception as e: - log.error(f'Error getting ID from SC: {e} - {r.status_code} {r.content}') - return False - - -# This method is to find the values defined for allowlist in values*.yaml files under helm_deploy folder of each project. -# This methods read all the values files under helm_deploy folder and create a dictionary object of allowlist for each environment -# including the default values. - - -def fetch_values_for_allowlist_key(yaml_data, key): - values = {} - if isinstance(yaml_data, dict): - if key in yaml_data: - if isinstance(yaml_data[key], dict): - values.update(yaml_data[key]) - else: - values[key] = yaml_data[key] - for k, v in yaml_data.items(): - if isinstance(v, (dict, list)): - child_values = fetch_values_for_allowlist_key(v, key) - if child_values: - values.update({k: child_values}) - elif isinstance(yaml_data, list): - for item in yaml_data: - child_values = fetch_values_for_allowlist_key(item, key) - if child_values: - values.update(child_values) - - return values - - -# This method read the value stored in dictionary passed to it checks if the ip allow list is present or not and returns boolean +""" +import os +import logging -def is_ipallowList_enabled(yaml_data): - ip_allow_list_enabled = False - if isinstance(yaml_data, dict): - for value in yaml_data.values(): - if isinstance(value, dict) and value: - ip_allow_list_enabled = True - return ip_allow_list_enabled +# Classes for the various parts of the script +# from classes.health import HealthServer +from classes.service_catalogue import ServiceCatalogue +from classes.github import GithubSession +from classes.slack import Slack +from classes.alertmanager import AlertmanagerData +from classes.circleci import CircleCI +# Components +import processes.products as products +import processes.components as components -def get_trivy_scan_json_data(project_name): - log.debug(f'Getting trivy scan data for {project_name}') - circleci_headers = { - 'Circle-Token': CIRCLECI_TOKEN, - 'Content-Type': 'application/json', - 'Accept': 'application/json', +# Set maximum number of concurrent threads to run, try to avoid secondary github api limits. +max_threads = 10 +log_level = os.environ.get('LOG_LEVEL', 'INFO').upper() + + +class Services: + def __init__(self, sc_params, gh_params, am_params, cc_params, slack_params, log): + self.slack = Slack(slack_params, log) + self.sc = ServiceCatalogue(sc_params, log) + self.gh = GithubSession(gh_params, log) + self.am = AlertmanagerData(am_params, log) + self.cc = CircleCI(cc_params, log_level) + self.log = log + + +# def create_summary(services, processed_components, processed_products, processed_teams): +def create_summary(services, processed_components, processed_products): + # Summarize the items based on the attributes + + def summarize_processed_components(items, item_type, attributes): + summary = f'\n\n{item_type.upper()} SUMMARY\n{"=" * (len(item_type) + 8)}\n' + summary += f'{len(items)} {item_type.lower()}(s) processed\n' + for attr, desc in attributes.items(): + filtered_items = [item for item in items if item[1].get(attr)] + summary += f'- {len(filtered_items)} {desc}\n' + if filtered_items and 'update' not in desc and 'add' not in desc: + for item in filtered_items: + summary += f' {item[0]}\n' + summary += '\n' + return summary + + def summarize_processed_products(qty, item_type): + summary = f'\n\n{item_type.upper()} SUMMARY\n{"=" * (len(item_type) + 8)}\n' + summary += f'{qty} {item_type.lower()}(s) processed\n' + return summary + + component_attributes = { + 'env_changed': 'had an environment configuration update', + 'main_changed': 'had a main branch update', + 'update_error': 'with update errors', + 'not_found': 'not found / not accessible in Github', + 'app_disabled': 'requiring Github App to be enabled', + 'branch_protection_disabled': 'with branch protection disabled', + 'archived': 'archived (monitoring disabled)', + 'env_added': 'environment(s) added', + 'env_updated': 'environment(s) updated', + 'env_error': 'environment(s) encountered errors', } - project_url = f'{CIRCLECI_API_ENDPOINT}{project_name}' - output_json_content = {} - try: - response = requests.get(project_url, headers=circleci_headers, timeout=30) - for build_info in response.json(): - workflows = build_info.get('workflows', {}) - workflow_name = workflows.get('workflow_name', {}) - job_name = build_info.get('workflows', {}).get('job_name') - if workflow_name == 'security' and job_name == 'hmpps/trivy_latest_scan': - latest_build_num = build_info['build_num'] - artifacts_url = f'{project_url}/{latest_build_num}/artifacts' - break - log.debug(f'Getting artifact URLs from CircleCI') - response = requests.get(artifacts_url, headers=circleci_headers, timeout=30) - - artifact_urls = response.json() - output_json_url = next( - ( - artifact['url'] - for artifact in artifact_urls - if 'results.json' in artifact['url'] - ), - None, - ) - if output_json_url: - log.debug(f'Fetching artifacts from CircleCI data') - # do not use DEBUG logging for this request - logging.getLogger("urllib3").setLevel(logging.INFO) - response = requests.get( - output_json_url, headers=circleci_headers, timeout=30 - ) - logging.getLogger("urllib3").setLevel(LOG_LEVEL) - output_json_content = response.json() - return output_json_content - - except Exception as e: - log.debug(f'Error: {e}') - -def get_slack_channel_name_by_id(slack_channel_id): - log.debug(f'Getting Slack Channel Name for id {slack_channel_id}') - slack_channel_name = None - try: - slack_channel_name = slack_client.conversations_info(channel=slack_channel_id)[ - 'channel' - ]['name'] - except SlackApiError as e: - if 'channel_not_found' in str(e): - log.info( - f'Unable to update Slack channel name - {slack_channel_id} not found or private' - ) - else: - log.error(f'Slack error: {e}') - log.debug(f'Slack channel name for {slack_channel_id} is {slack_channel_name}') - return slack_channel_name + # team_attributes = { + # 'terraform_managed': 'teams are terraform managed', + # 'team_updated': 'team(s) updated', + # 'team_added': 'team(s) added', + # 'team_failure': 'teams that encountered errors', + # } -def get_alertmanager_data(): - try: - response = requests.get(ALERTMANAGER_ENDPOINT, verify=False) - if response.status_code == 200: - alertmanager_data = response.json() - config_data = alertmanager_data['config'] - formatted_config_data = config_data["original"].replace('\\n', '\n') - yaml_config_data = yaml.safe_load(formatted_config_data) - json_config_data = json.loads(json.dumps(yaml_config_data)) - return json_config_data - else: - log.error(f"Alertmanager Error: {response.status_code}") - return None - except requests.exceptions.SSLError as e: - log.error(f"Alertmanager SSL Error: {e}") - return None - except requests.exceptions.RequestException as e: - log.error(f"Alertmanager Request Error: {e}") - return None - except json.JSONDecodeError as e: - log.error(f"Alertmanager JSON Decode Error: {e}") - return None - -def find_channel_by_severity_label(alert_severity_label): - # Find the receiver name for the given severity - receiver_name = '' - if alertmanager_json_data is None: - return '' - - for route in alertmanager_json_data['route']['routes']: - if route['match'].get('severity') == alert_severity_label: - receiver_name = route['receiver'] - break - # Find the channel for the receiver name - if receiver_name: - for receiver in alertmanager_json_data['receivers']: - if receiver['name'] == receiver_name: - slack_configs = receiver.get('slack_configs', []) - if slack_configs: - return slack_configs[0].get('channel') - else : - log.info(f"ERROR - No slack_configs found for alert severity label {alert_severity_label}, receiver {receiver_name}") - return 'NO_CHANNEL_FOUND' - -def process_components(data): - log.info(f'Processing batch of {len(data)} components...') - for component in data: - # Wait until the API limit is reset if we are close to the limit - while core_rate_limit.remaining < 100: - time_delta = datetime.now() - core_rate_limit.reset - time_to_reset = time_delta.total_seconds() - log.info(f'Github API rate limit {core_rate_limit}') - log.info( - f'Backing off for {time_to_reset} second, to avoid github API limits.' - ) - sleep(time_to_reset) - - t_repo = threading.Thread(target=process_repo, kwargs=component, daemon=True) - - # Apply limit on total active threads, avoid github secondary API rate limit - while threading.active_count() > (MAX_THREADS - 1): - log.debug( - f'Active Threads={threading.active_count()}, Max Threads={MAX_THREADS}' - ) - sleep(10) - - t_repo.start() - component_name = component['attributes']['name'] - log.info(f'Started thread for {component_name}') - -def process_repo(**component): - allow_list_key = 'allowlist' - c_name = component['attributes']['name'] - log.info(f'Processing component: {c_name}') - c_id = component['id'] - github_repo = component['attributes']['github_repo'] - part_of_monorepo = component['attributes']['part_of_monorepo'] - project_dir = ( - (component['attributes']['path_to_project'] or c_name) - if part_of_monorepo - else '.' + summary = summarize_processed_components( + processed_components, 'component', component_attributes ) - helm_dir = ( - component['attributes']['path_to_helm_dir'] or f'{project_dir}/helm_deploy' - ) - - # Get github repo data and default branch to compare file based changes - try: - repo = gh.get_repo(f'ministryofjustice/{github_repo}') - except Exception as e: - log.error(f'ERROR - with ministryofjustice/{c_name}, check github app has permissions to see it or repo removed. {e}') - return - - default_branch = None - try: - default_branch = repo.get_branch(repo.default_branch) - except Exception as e: - log.error(f'ERROR - {c_name} unable to get default branch.') - if default_branch: - current_commit = { - 'sha': default_branch.commit.sha, - 'date_time': default_branch.commit.commit.committer.date.isoformat(), - } - - # Empty data dict gets populated along the way, and finally used in PUT request to service catalogue - data = {} - helm_envs = {} - environments = [] - versions_data = {} - old_bootstrap_project = False - trivy_scan_summary = {} - if c_name in bootstrap_projects: - project_bootstrap_data = bootstrap_projects[c_name] - old_bootstrap_project = True - - # CircleCI config - cirlcleci_config = get_file_yaml(repo, '.circleci/config.yml') - if cirlcleci_config: - try: - trivy_scan_json = get_trivy_scan_json_data(c_name) - trivy_scan_date = trivy_scan_json.get('CreatedAt') - trivy_scan_summary.update( - {'trivy_scan_json': trivy_scan_json, 'trivy_scan_date': trivy_scan_date} - ) - # Add trivy scan result to final data dict. - data.update( - {'trivy_scan_summary': trivy_scan_summary.get('trivy_scan_json')} - ) - data.update( - { - 'trivy_last_completed_scan_date': trivy_scan_summary.get( - 'trivy_scan_date' - ) - } - ) - except Exception: - log.debug('Unable to get trivy scan results') - - try: - cirleci_orbs = cirlcleci_config['orbs'] - for key, value in cirleci_orbs.items(): - if 'ministryofjustice/hmpps' in value: - hmpps_orb_version = value.split('@')[1] - versions_data.update({'circleci': {'hmpps_orb': hmpps_orb_version}}) - log.debug(f'hmpps orb version: {hmpps_orb_version}') - except Exception: - log.debug('No hmpps orb version found') - - try: - helm_deploy = repo.get_contents(helm_dir, default_branch.commit.sha) - except Exception as e: - helm_deploy = False - log.debug(f'helm_deploy folder: {e}') - try: - repo_env_list = repo.get_environments() - except Exception as e: - log.debug(f'helm_deploy folder: {e}') - existing_envs = component['attributes']['environments'] - stored_commit_data = component['attributes']['latest_commit'] + summary += summarize_processed_products(processed_products, 'product') + # summary += summarize_processed_items(processed_teams, 'team', team_attributes) - # Compare the current commit SHA with the stored SHA - if stored_commit_data and stored_commit_data.get('sha') != current_commit['sha'] or (not existing_envs and repo_env_list.totalCount > 0): - log.info(f'Repo {github_repo} has changed since last github discovery update.') - # Helm charts - if helm_deploy: - helm_commits = repo.get_commits(path=helm_dir) - latest_helm_dir_commit = helm_commits[0] if helm_commits.totalCount > 0 else None - - env_lookup = {env['name']: env for env in existing_envs} - helm_values_data = {} - if latest_helm_dir_commit: - latest_helm_dir_commit_sha = latest_helm_dir_commit.sha # Extracting the SHA value - # Compare the current commit SHA with the stored SHA for the directory - if stored_commit_data and stored_commit_data.get('sha') != latest_helm_dir_commit_sha: - log.info(f'Directory {helm_dir} in repo {github_repo} has changed.') - # Process the changed data - helm_chart = ( - get_file_yaml(repo, f'{helm_dir}/{c_name}/Chart.yaml') - or get_file_yaml(repo, f'{helm_dir}/Chart.yaml') - or {} - ) - if 'dependencies' in helm_chart: - helm_dep_versions = {} - for item in helm_chart['dependencies']: - helm_dep_versions.update({item['name']: item['version']}) - versions_data.update({'helm_dependencies': helm_dep_versions}) + services.slack.notify(summary) + services.log.info(summary) - helm_environments = [] - helm_values_data = {} - ip_allow_list_data = {} - ip_allow_list = {} - for file in helm_deploy: - if file.name.startswith('values-'): - env = re.match('values-([a-z0-9-]+)\\.y[a]?ml', file.name)[1] - helm_values_data[env] = get_file_yaml(repo, f'{helm_dir}/{file.name}') - helm_environments.append(env) - # HEAT-223 Start : Read and collate data for IPallowlist from all environment specific values.yaml files. - ip_allow_list[file] = fetch_values_for_allowlist_key(get_file_yaml(repo, f'{helm_dir}/{file.name}'), allow_list_key) - ip_allow_list_data.update({file.name: ip_allow_list[file]}) - # HEAT-223 End : Read and collate data for IPallowlist from all environment specific values.yaml files. - - helm_default_values = ( - get_file_yaml(repo, f'{helm_dir}/{c_name}/values.yaml') - or get_file_yaml(repo, f'{helm_dir}/values.yaml') - or {} - ) - - if helm_default_values: - ip_allow_list_default = fetch_values_for_allowlist_key(helm_default_values, allow_list_key) - # Try to get the container image - try: - container_image = helm_default_values['image']['repository'] - data.update({'container_image': container_image}) - except KeyError: - pass - try: - container_image = helm_default_values['generic-service']['image'][ - 'repository' - ] - data.update({'container_image': container_image}) - except KeyError: - pass - # Try to get the productID - try: - product_id = helm_default_values['generic-service']['productId'] - sc_product_id = get_sc_id('products', 'p_id', product_id) - if sc_product_id: - data.update({'product': sc_product_id}) - except KeyError: - pass - - # Get modsecurity data, if enabled. - modsecurity_enabled_default = None - modsecurity_audit_enabled_default = None - modsecurity_snippet_default = None - default_alert_severity_label = None - try: - modsecurity_enabled_default = helm_default_values['generic-service']['ingress']['modsecurity_enabled'] - except KeyError: - pass - - try: - modsecurity_audit_enabled_default = helm_default_values['generic-service']['ingress']['modsecurity_audit_enabled'] - except KeyError: - pass - - try: - modsecurity_snippet_default = helm_default_values['generic-service']['ingress']['modsecurity_snippet'] - except KeyError: - pass - - try: - default_alert_severity_label = helm_default_values['generic-prometheus-alerts']['alertSeverity'] - except KeyError: - pass - - # helm env values files, extract useful values - - for env in helm_environments: - allow_list_values = {} - e = {} - - # environment type can be dev, test, stage, preprod, prod - if env.lower() == 'staging' or env.lower() == 'uat' or env.lower() == 'stage' or env.lower() == 'test': - env_type = 'stage' - elif env.lower() == 'demo': - env_type = 'test' - elif env.lower() == 'dev' or env.lower() == 'development': - env_type = 'dev' - elif env.lower() == 'preprod' or env.lower() == 'preproduction': - env_type = 'preprod' - elif env.lower() == 'production' or env.lower() == 'prod': - env_type = 'prod' - - populate_env_data = False - if env in env_lookup: # Update existing environment - env_id = env_lookup[env]['id'] - e.update({'id': env_id}) - populate_env_data = True - elif old_bootstrap_project: - pb_namespace = None - if env_type == 'dev': - if 'circleci_project_k8s_namespace' in project_bootstrap_data: - pb_namespace = project_bootstrap_data['circleci_project_k8s_namespace'] - pb_env_name = 'dev' - else: - if 'circleci_project_k8s_namespaces' in project_bootstrap_data: - for c in project_bootstrap_data['circleci_context_k8s_namespaces']: - if 'env_type' in c: - pb_namespace=c['namespace'] - pb_env_name=c['env_name'] - break - if pb_namespace: - e.update({'name': pb_env_name, 'type': env_type}) - e.update({'namespace': pb_namespace}) - ns_id = get_sc_id('namespaces', 'name', pb_namespace) - if ns_id: - e.update({'ns': ns_id}) - populate_env_data = True - else: - e.update({'name': env, 'type': env_type}) - try: - log.info(f'Creating new environment {env} for {c_name}') - repo_env_set = {env.name for env in repo_env_list} - if env in repo_env_set or env_type in repo_env_set: - repo_env_data = repo.get_environment(env) - env_vars = repo_env_data.get_variables() - for var in env_vars: - if var.name == 'KUBE_NAMESPACE': - kube_namespace = var.value - e.update({'namespace': kube_namespace}) - populate_env_data = True - ns_id = get_sc_id('namespaces', 'name', kube_namespace) - if ns_id: - e.update({'ns': ns_id}) - except Exception as e: - log.error(f'Error with ministryofjustice/{c_name}, unable to get environments variable KUBE_NAMESPACE. {e}') - if populate_env_data: - values = helm_values_data[env] - if values: - # Ingress hostname - try: - host = values['generic-service']['ingress']['host'] - helm_envs.update({env: {'host': host}}) - log.debug(f'{env} ingress host: {host}') - except KeyError: - pass - # Ingress alternative location - try: - host = values['generic-service']['ingress']['hosts'][-1] - helm_envs.update({env: {'host': host}}) - log.debug(f'{env} ingress host: {host}') - except KeyError: - pass - # Ingress alternative location - try: - host = values['ingress']['host'] - helm_envs.update({env: {'host': host}}) - log.debug(f'{env} ingress host: {host}') - except KeyError: - pass - # Ingress alternative location - try: - host = values['ingress']['hosts'][-1]['host'] - helm_envs.update({env: {'host': host}}) - log.debug(f'{env} ingress host: {host}') - except KeyError: - pass - # Container image alternative location - try: - container_image = values['image']['repository'] - data.update({'container_image': container_image}) - except KeyError: - pass - try: - container_image = values['generic-service']['image']['repository'] - data.update({'container_image': container_image}) - except KeyError: - pass - - env_url = f'https://{helm_envs[env]["host"]}' - if env_url: - e.update({'url': env_url}) - health_path = '/health' - info_path = '/info' - # Hack for hmpps-auth non standard endpoints - if 'sign-in' in env_url: - health_path = '/auth/health' - info_path = '/auth/info' - if test_endpoint(env_url, health_path): - e.update({'health_path': health_path}) - if test_endpoint(env_url, info_path): - e.update({'info_path': info_path}) - # Test for API docs - and if found also test for SAR endpoint. - if test_swagger_docs(env_url): - e.update({'swagger_docs': '/swagger-ui.html'}) - data.update({'api': True, 'frontend': False}) - if test_subject_access_request_endpoint(env_url): - e.update({'include_in_subject_access_requests': True}) - else: - e.update({'include_in_subject_access_requests': False}) - - try: - ip_allow_list_env = ip_allow_list_data[f'values-{env}.yaml'] - allow_list_values.update( - { - f'values-{env}.yaml': ip_allow_list_env, - 'values.yaml': ip_allow_list_default, - } - ) - e.update( - { - 'ip_allow_list': allow_list_values, - 'ip_allow_list_enabled': is_ipallowList_enabled(allow_list_values), - } - ) - except KeyError: - pass - - # Get modsecurity data - modsecurity_enabled_env = None - modsecurity_audit_enabled_env = None - modsecurity_snippet_env = None - try: - modsecurity_enabled_env = values['generic-service']['ingress']['modsecurity_enabled'] - except KeyError: - pass - try: - modsecurity_audit_enabled_env = values['generic-service']['ingress']['modsecurity_audit_enabled'] - except KeyError: - pass - try: - modsecurity_snippet_env = values['generic-service']['ingress']['modsecurity_snippet'] - except KeyError: - pass - if modsecurity_enabled_env is None and modsecurity_enabled_default: - e.update({'modsecurity_enabled': True}) - elif modsecurity_enabled_env: - e.update({'modsecurity_enabled': True}) - else: - e.update({'modsecurity_enabled': False}) - - if ( - modsecurity_audit_enabled_env is None - and modsecurity_audit_enabled_default - ): - e.update({'modsecurity_audit_enabled': True}) - elif modsecurity_enabled_env: - e.update({'modsecurity_audit_enabled': True}) - else: - e.update({'modsecurity_audit_enabled': False}) - - if modsecurity_snippet_env is None and modsecurity_snippet_default: - e.update({'modsecurity_snippet': modsecurity_snippet_default}) - elif modsecurity_snippet_env: - e.update({'modsecurity_snippet': modsecurity_snippet_env}) - else: - e.update({'modsecurity_snippet': None}) - # build_image_tag in environment is populated by hmpps-health-ping - - # Alert severity label - alert_severity_label = None - try: - alert_severity_label = values['generic-prometheus-alerts']['alertSeverity'] - except KeyError: - pass - if not alert_severity_label and default_alert_severity_label: - alert_severity_label = default_alert_severity_label - - if alert_severity_label: - channel = find_channel_by_severity_label(alert_severity_label) - if channel is not None: - e.update({'alert_severity_label': alert_severity_label}) - e.update({'alerts_slack_channel': channel}) - else: - log.info(f"ERROR - For Alert severity label {alert_severity_label} channel not found for {c_name} in {env}") - else: - log.info(f"ERROR - Alert severity label not found for {c_name} in {env}") - - environments.append(e) - else: - log.debug(f'Component {c_name} environment {env} not found in github or SC. Skipping.....') - else: - log.info(f'Directory {helm_dir} in repo {github_repo} has not changed.') - else: - log.info(f'No commits found for directory {helm_dir} in repo {github_repo}.') - # End of helm chart processing - - # App insights cloud_RoleName - if repo.language == 'Kotlin' or repo.language == 'Java': - app_insights_config = get_file_json( - repo, f'{project_dir}/applicationinsights.json' - ) - if app_insights_config: - app_insights_cloud_role_name = app_insights_config['role']['name'] - data.update({'app_insights_cloud_role_name': app_insights_cloud_role_name}) - - if repo.language == 'JavaScript' or repo.language == 'TypeScript': - package_json = get_file_json(repo, f'{project_dir}/package.json') - try: - if package_json['name']: - app_insights_cloud_role_name = package_json['name'] - if re.match(r'^[a-zA-Z0-9-_]+$', app_insights_cloud_role_name): - data.update( - {'app_insights_cloud_role_name': app_insights_cloud_role_name} - ) - except KeyError: - log.info(f'ERROR - No app insights cloud role name found in package.json for {c_name}') - pass - - # Gradle config - build_gradle_config_content = False - if repo.language == 'Kotlin' or repo.language == 'Java': - build_gradle_kts_config = get_file_plain(repo, 'build.gradle.kts') - build_gradle_config_content = build_gradle_kts_config - # Try alternative location for java projects - if not build_gradle_config_content: - build_gradle_java_config = get_file_plain(repo, 'build.gradle') - build_gradle_config_content = build_gradle_java_config - - if build_gradle_config_content: - try: - regex = "id\\(\\'uk.gov.justice.hmpps.gradle-spring-boot\\'\\) version \\'(.*)\\'( apply false)?$" - hmpps_gradle_spring_boot_version = re.search( - regex, build_gradle_config_content, re.MULTILINE - )[1] - log.debug( - f'Found hmpps gradle-spring-boot version: {hmpps_gradle_spring_boot_version}' - ) - versions_data.update( - { - 'gradle': { - 'hmpps_gradle_spring_boot': hmpps_gradle_spring_boot_version - } - } - ) - except TypeError: - pass - - # Parse Dockerfile - try: - file_contents = repo.get_contents(f'{project_dir}/Dockerfile') - dockerfile = DockerfileParser(fileobj=tempfile.NamedTemporaryFile()) - dockerfile.content = b64decode(file_contents.content) - - docker_data = {} - if re.search(r'rds-ca-2019-root\.pem', dockerfile.content, re.MULTILINE): - docker_data.update({'rds_ca_cert': 'rds-ca-2019-root.pem'}) - if re.search(r'global-bundle\.pem', dockerfile.content, re.MULTILINE): - docker_data.update({'rds_ca_cert': 'global-bundle.pem'}) - - try: - # Get list of parent images, and strip out references to 'base' - parent_images = list( - filter(lambda i: i != 'base', dockerfile.parent_images) - ) - # Get the last element in the array, which should be the base image of the final stage. - base_image = parent_images[-1] - docker_data.update({'base_image': base_image}) - log.debug(f'Found Dockerfile base image: {base_image}') - except Exception as e: - log.error(f'Error parent/base image from Dockerfile: {e}') - - if docker_data: - versions_data.update({'dockerfile': docker_data}) - - except github.UnknownObjectException: - log.info(f'404 File not found {repo.name}:Dockerfile') - except Exception as e: - log.error(f'Error parsing Dockerfile: {e}') - - else: - log.info(f'Repo {github_repo} has not changed, file based changes ignored.') - - # If no environment data is discovered above, and if environment data has been - # manually added to the SC, ensure we just pass the existing data to the SC update. - if not environments: - environments = component['attributes']['environments'] - - # Add Environments to final data dict - data.update({'environments': environments}) - - # Add versions to final data dict. - data.update({'versions': versions_data}) - - # Below code is for updating the service catalogue with the latest data which does not affect repo sha changes - data.update({'language': repo.language}) - data.update({'description': repo.description}) - data.update({'github_project_visibility': repo.visibility}) - data.update({'github_repo': repo.name}) - data.update({'latest_commit': { - 'sha': default_branch.commit.sha, - 'date_time': default_branch.commit.commit.committer.date.isoformat(), - }}) - - # GitHub teams access, branch protection etc. - branch_protection_restricted_teams = [] - teams_write = [] - teams_admin = [] - teams_maintain = [] - try: - branch_protection = default_branch.get_protection() - branch_protection_teams = branch_protection.get_team_push_restrictions() or [] - for team in branch_protection_teams: - branch_protection_restricted_teams.append(team.slug) - except Exception as e: - log.error(f'Unable to get branch protection {repo.name}: {e}') - - teams = repo.get_teams() - for team in teams: - team_permissions = team.get_repo_permission(repo) - if team_permissions.admin: - teams_admin.append(team.slug) - elif team_permissions.maintain: - teams_maintain.append(team.slug) - elif team_permissions.push: - teams_write.append(team.slug) - data.update({'github_project_teams_admin': teams_admin}) - log.debug(f'teams_admin: {teams_admin}') - data.update({'github_project_teams_maintain': teams_maintain}) - log.debug(f'teams_maintain: {teams_maintain}') - data.update({'github_project_teams_write': teams_write}) - log.debug(f'teams_write: {teams_write}') - if branch_protection_restricted_teams: - data.update({'github_project_branch_protection_restricted_teams': branch_protection_restricted_teams}) - log.debug(f'ERROR - branch_protection_restricted_teams: {branch_protection_restricted_teams}') - else: - log.info(f'No branch protection restricted teams found for {github_repo}') - - # Get enforce_admin details from branch protection - enforce_admins = False - try: - enforce_admins = branch_protection.enforce_admins - data.update({'github_enforce_admins_enabled': enforce_admins}) - log.debug(f'github_enforce_admins_enabled: {enforce_admins}') - except Exception as e: - log.error(f'ERROR - Unable to get enforce_admins {github_repo}.') - - # Github topics - topics = repo.get_topics() - data.update({'github_topics': topics}) - # Update component with all results in data dict. - update_sc_component(c_id, data) - - -# This does the same as the component update process, but with the product API -def process_repo_product(**product): +def main(): + logging.basicConfig( + format='[%(asctime)s] %(levelname)s %(threadName)s %(message)s', level=log_level + ) + log = logging.getLogger(__name__) - p_name = product['attributes']['name'] - p_id = product['id'] + #### Use the -f parameter to force an update regardless of environment / main branch changes + force_update = False + if '-f' in os.sys.argv or '--force' in os.sys.argv: + force_update = True - log.info(f'Processing product: {p_name}') + #### Create resources #### - # Empty data dict gets populated along the way, and finally used in PUT request to service catalogue - data = {} + # service catalogue parameters + sc_params = { + 'url': os.getenv('SERVICE_CATALOGUE_API_ENDPOINT'), + 'key': os.getenv('SERVICE_CATALOGUE_API_KEY'), + 'filter': os.getenv('SC_FILTER', ''), + } - # Update Slack Channel name if necessary: - p_slack_channel_id = product['attributes']['slack_channel_id'] - p_slack_channel_name = product['attributes']['slack_channel_name'] - if p_slack_channel_id != '': - slack_channel_name = get_slack_channel_name_by_id(p_slack_channel_id) - if slack_channel_name and p_slack_channel_name != slack_channel_name: - data.update({'slack_channel_name': slack_channel_name}) + # Github parameters + gh_params = { + 'app_id': int(os.getenv('GITHUB_APP_ID')), + 'app_installation_id': int(os.getenv('GITHUB_APP_INSTALLATION_ID')), + 'app_private_key': os.getenv('GITHUB_APP_PRIVATE_KEY'), + } - if data: - # Update product with all results in data dict. - update_sc_product(p_id, data) + slack_params = { + 'token': os.getenv('SLACK_BOT_TOKEN'), + 'notify_channel': os.getenv('SLACK_NOTIFY_CHANNEL', ''), + 'alert_channel': os.getenv('SLACK_ALERT_CHANNEL', ''), + } -def startHttpServer(): - handler_object = HealthHttpRequestHandler - with socketserver.TCPServer(('', 8080), handler_object) as httpd: - httpd.serve_forever() + cc_params = { + 'url': os.getenv( + 'CIRCLECI_API_ENDPOINT', + 'https://circleci.com/api/v1.1/project/gh/ministryofjustice/', + ), + 'token': os.getenv('CIRCLECI_TOKEN'), + } -def process_products(data): - log.info(f'Processing batch of {len(data)} products...') - for product in data: - t_repo = threading.Thread( - target=process_repo_product, kwargs=product, daemon=True + am_params = { + 'url': os.getenv( + 'ALERTMANAGER_ENDPOINT', + 'http://monitoring-alerts-service.cloud-platform-monitoring-alerts:8080/alertmanager/status', ) + } - # Slack rate limits in esoteric ways. Hopefully 10 threads is fine - # https://api.slack.com/apis/rate-limits#tiers - while threading.active_count() > (MAX_THREADS - 1): - log.debug( - f'Active Threads={threading.active_count()}, Max Threads={MAX_THREADS}' - ) - sleep(5) - - t_repo.start() - product_name = product['attributes']['name'] - p_id = product['attributes']['p_id'] - log.info(f'Started thread for {p_id} ({product_name})') - + services = Services(sc_params, gh_params, am_params, cc_params, slack_params, log) -################# Main functions ################# + # Send some alerts if there are service issues + if not services.am.json_config_data: + services.slack.alert('*Github Discovery*: Unable to connect to Alertmanager') -if __name__ == '__main__': - logging.basicConfig(format='[%(asctime)s] %(levelname)s %(threadName)s %(message)s', level=LOG_LEVEL) - log = logging.getLogger(__name__) - sc_api_headers = { - 'Authorization': f'Bearer {SC_API_TOKEN}', - 'Content-Type': 'application/json', - 'Accept': 'application/json', - } + if not services.cc.test_connection(): + services.slack.alert('*Github Discovery failed*: Unable to connect to CircleCI') + raise SystemExit() - # Test connection to Service Catalogue - try: - r = requests.head( - f'{SC_API_ENDPOINT}/_health', headers=sc_api_headers, timeout=10 + if not services.sc.connection_ok: + services.slack.alert( + '*Github Discovery failed*: Unable to connect to the Service Catalogue' ) - log.info(f'Successfully connected to the Service Catalogue. {r.status_code}') - except Exception as e: - log.critical('Unable to connect to the Service Catalogue.') - raise SystemExit(e) from e - - # Test auth and connection to github - try: - jwt_token = generate_jwt() - access_token = get_access_token(jwt_token) # Token is valid only for 30 mins so we need to re-authenticate every 30 mins - auth = Auth.Token(access_token) - gh = Github(auth=auth, pool_size=50) - org=gh.get_organization('ministryofjustice') - rate_limit = gh.get_rate_limit() - core_rate_limit = rate_limit.core - log.info(f'Github API: {rate_limit}') - except Exception as e: - log.critical('Unable to connect to the github API.') - raise SystemExit(e) from e + raise SystemExit() - # Test auth and connection to Slack - try: - log.debug(f'Connecting to Slack with token ending {SLACK_BOT_TOKEN[:-4]}') - slack_client = WebClient(token=SLACK_BOT_TOKEN) - test_api = slack_client.api_test() - log.info('Successfully conected to Slack.') - except Exception as e: - log.critical('Unable to connect to Slack.') - raise SystemExit(e) from e + if not services.gh.org: + services.slack.alert('*Github Discovery*: Unable to connect to Github') + raise SystemExit() - # Main loop - while True: - # Start health endpoint. - httpHealth = threading.Thread(target=startHttpServer, daemon=True) - httpHealth.start() + # Since we're running this on a schedule, this is of no further use to us + # Start health endpoint. + # health_server = HealthServer() + # httpHealth = threading.Thread(target=health_server.start, daemon=True) + # httpHealth.start() - # Get projects.json from bootstrap repo for namespaces data - bootstrap_repo = gh.get_repo('ministryofjustice/hmpps-project-bootstrap') - bootstrap_projects_json = get_file_json(bootstrap_repo, 'projects.json') - bootstrap_projects = {} - for p in bootstrap_projects_json: - bootstrap_projects.update({p['github_repo_name']: p}) - # Get alertmanager data - alertmanager_json_data = get_alertmanager_data() - - # Process components - log.info(SC_ENDPOINT) - try: - r = requests.get(SC_ENDPOINT, headers=sc_api_headers, timeout=10) - log.debug(r) - if r.status_code == 200: - j_meta = r.json()['meta']['pagination'] - log.debug(f'Got result page: {j_meta["page"]} from SC') - j_data = r.json()['data'] - process_components(j_data) - else: - raise Exception( - f'Received non-200 response from Service Catalogue: {r.status_code}' - ) + log.info('Batch processing components') + processed_components = components.batch_process_sc_components( + services, max_threads, force_update + ) - # Loop over the remaining pages and return one at a time - num_pages = j_meta['pageCount'] - for p in range(2, num_pages + 1): - page = f'&pagination[page]={p}' - r = requests.get( - f'{SC_ENDPOINT}{page}', headers=sc_api_headers, timeout=10 - ) - if r.status_code == 200: - j_meta = r.json()['meta']['pagination'] - log.debug(f'Got result page: {j_meta["page"]} from SC') - j_data = r.json()['data'] - process_components(j_data) - else: - raise Exception( - f'Received non-200 response from Service Catalogue: {r.status_code}' - ) + # Process products + log.info('Batch processing products...') + processed_products = products.batch_process_sc_products(services, max_threads) - except Exception as e: - log.error( - f'Problem with Service Catalogue API while processing components. {e}' - ) + # # Process Teams - carried out in a separate script now + # log.info('Processing teams...') + # processed_teams = github_teams.process_github_teams(services) - # Process products - log.info(SC_PRODUCT_ENDPOINT) - try: - r = requests.get(SC_PRODUCT_ENDPOINT, headers=sc_api_headers, timeout=10) - log.debug(r) - if r.status_code == 200: - j_meta = r.json()['meta']['pagination'] - log.debug(f'Got result page: {j_meta["page"]} from SC') - j_data = r.json()['data'] - process_products(j_data) - else: - raise Exception( - f'Received non-200 response from Service Catalogue: {r.status_code}' - ) + # create_summary(services, processed_components, processed_products, processed_teams) + create_summary(services, processed_components, processed_products) - # Loop over the remaining pages and return one at a time - num_pages = j_meta['pageCount'] - for p in range(2, num_pages + 1): - page = f'&pagination[page]={p}' - r = requests.get( - f'{SC_PRODUCT_ENDPOINT}{page}', headers=sc_api_headers, timeout=10 - ) - if r.status_code == 200: - j_meta = r.json()['meta']['pagination'] - log.debug(f'Got result page: {j_meta["page"]} from SC') - j_data = r.json()['data'] - process_products(j_data) - else: - raise Exception( - f'Received non-200 response from Service Catalogue: {r.status_code}' - ) - except Exception as e: - log.error( - f'Problem with Service Catalogue API while processing products. {e}' - ) - log.info(f'All done - sleeping for {REFRESH_INTERVAL_HOURS} hours') - sleep((REFRESH_INTERVAL_HOURS * 60 * 60)) - log.info('Waking up...') - try: - jwt_token = generate_jwt() - access_token = get_access_token(jwt_token) # Token is valid only for 10 mins so we need to re-authenticate every 10 mins - auth = Auth.Token(access_token) - gh = Github(auth=auth, pool_size=50) - org=gh.get_organization('ministryofjustice') - rate_limit = gh.get_rate_limit() - core_rate_limit = rate_limit.core - log.info(f'Github API: {rate_limit}') - except Exception as e: - log.critical('Unable to connect to the github API.') - raise SystemExit(e) from e +if __name__ == '__main__': + main() diff --git a/github_teams_discovery.py b/github_teams_discovery.py index f3d9558..1ea07a5 100644 --- a/github_teams_discovery.py +++ b/github_teams_discovery.py @@ -1,307 +1,78 @@ #!/usr/bin/env python -'''Github discovery - queries the github API for info about hmpps services and stores the results in the service catalogue''' +"""Github discovery - queries the github API for info about hmpps services and stores the results in the service catalogue""" + import os -import http.server -import socketserver -import threading import logging -import re -from time import sleep -from base64 import b64decode -import base64 -from datetime import datetime, timedelta -import requests -from github import Github, Auth -import jwt -from requests.exceptions import SSLError - -SC_API_ENDPOINT = os.getenv('SERVICE_CATALOGUE_API_ENDPOINT') -SC_API_TOKEN = os.getenv('SERVICE_CATALOGUE_API_KEY') -GITHUB_APP_ID = int(os.getenv('GITHUB_APP_ID')) -GITHUB_APP_INSTALLATION_ID = int(os.getenv('GITHUB_APP_INSTALLATION_ID')) -GITHUB_APP_PRIVATE_KEY = os.getenv('GITHUB_APP_PRIVATE_KEY') -REFRESH_INTERVAL_HOURS = int(os.getenv('REFRESH_INTERVAL_HOURS', '6')) -LOG_LEVEL = os.environ.get('LOG_LEVEL', 'INFO').upper() -SC_FILTER = os.getenv('SC_FILTER', '') -SC_ENDPOINT_COMPONENTS = f'{SC_API_ENDPOINT}/v1/components' -SC_PAGE_SIZE = 10 -SC_PAGINATION_PAGE_SIZE = f'&pagination[pageSize]={SC_PAGE_SIZE}' -SC_ENDPOINT_TEAMS = f'{SC_API_ENDPOINT}/v1/github-teams' -SC_ENDPOINT_COMPONENTS = f'{SC_API_ENDPOINT}/v1/components' - -class HealthHttpRequestHandler(http.server.SimpleHTTPRequestHandler): - def do_GET(self): - self.send_response(200) - self.send_header('Content-type', 'text/plain') - self.end_headers() - self.wfile.write(bytes('UP', 'utf8')) - return - -def startHttpServer(): - handler_object = HealthHttpRequestHandler - with socketserver.TCPServer(('', 8080), handler_object) as httpd: - httpd.serve_forever() - -def generate_jwt(): - private_key = b64decode(GITHUB_APP_PRIVATE_KEY).decode('ascii') - now = datetime.utcnow() - payload = { - 'iat': now, - 'exp': now + timedelta(minutes=10), - 'iss': GITHUB_APP_ID - } - token = jwt.encode(payload, private_key, algorithm='RS256') - return token - -def get_access_token(jwt_token): - headers = { - 'Authorization': f'Bearer {jwt_token}', - 'Accept': 'application/vnd.github.v3+json' - } - response = requests.post( - f'https://api.github.com/app/installations/{GITHUB_APP_INSTALLATION_ID}/access_tokens', - headers=headers - ) - response.raise_for_status() - return response.json()['token'] - -def fetch_sc_github_teams_data(): - all_sc_teams_data = [] - try: - r = requests.get(SC_ENDPOINT_TEAMS, headers=sc_api_headers, timeout=10) - except Exception as e: - log.error(f"Error getting team in the SC: {e}") - return None - - if r.status_code == 200: - j_meta = r.json()["meta"]["pagination"] - log.debug(f"Got result page: {j_meta['page']} from SC") - all_sc_teams_data.extend(r.json()["data"]) - else: - raise Exception(f"Received non-200 response from Service Catalogue: {r.status_code}") - return None - - # Loop over the remaining pages and collect all data - num_pages = j_meta['pageCount'] - for p in range(2, num_pages + 1): - page = f"&pagination[page]={p}" - r = requests.get(f"{SC_ENDPOINT_TEAMS}{page}", headers=sc_api_headers, timeout=10) - if r.status_code == 200: - log.debug(f"Got result page: {p} from SC") - all_sc_teams_data.extend(r.json()["data"]) - else: - raise Exception(f"Received non-200 response from Service Catalogue: {r.status_code}") - return None - log.info(f"Number of github team records in SC: {len(all_sc_teams_data)}") - return all_sc_teams_data - -def fetch_sc_components_data(): - all_sc_components_data = [] - try: - r = requests.get(SC_ENDPOINT_COMPONENTS, headers=sc_api_headers, timeout=10) - except Exception as e: - log.error(f"Error getting components from SC: {e}") - return None - - if r.status_code == 200: - j_meta = r.json()["meta"]["pagination"] - log.debug(f"Got result page: {j_meta['page']} from SC") - all_sc_components_data.extend(r.json()["data"]) - else: - raise Exception(f"Received non-200 response from Service Catalogue: {r.status_code}") - return None - - # Loop over the remaining pages and collect all data - num_pages = j_meta['pageCount'] - for p in range(2, num_pages + 1): - page = f"&pagination[page]={p}" - r = requests.get(f"{SC_ENDPOINT_TEAMS}{page}", headers=sc_api_headers, timeout=10) - if r.status_code == 200: - log.debug(f"Got result page: {p} from SC") - all_sc_components_data.extend(r.json()["data"]) - else: - raise Exception(f"Received non-200 response from Service Catalogue: {r.status_code}") - return None - log.info(f"Number of components records in SC: {len(all_sc_components_data)}") - return all_sc_components_data -def fetch_gh_github_teams_data(): - teams_contents = teamrepo.get_contents('terraform/teams.tf') - teams_data = base64.b64decode(teams_contents.content).decode('utf-8') - teams_json_data= extract_teams(teams_data) - log.info(f'Found {len(teams_json_data)} teams in the terraform file') - return teams_json_data +from processes import github_teams +from classes.github import GithubSession +from classes.service_catalogue import ServiceCatalogue +from classes.slack import Slack -def find_github_team(team_name): - for item in sc_teams_json_data: - if item['attributes'].get('team_name') == team_name: - return item - return None -def extract_teams(terraform_content): - parent_teams_pattern = re.compile(r'parent_teams\s*=\s*\[(.*?)\]', re.DOTALL) - sub_teams_pattern = re.compile(r'sub_teams\s*=\s*\[(.*?)\]', re.DOTALL) - team_pattern = re.compile(r'\{\s*name\s*=\s*"([^"]+)"\s*parent\s*=\s*"([^"]+)"\s*description\s*=\s*"([^"]+)"\s*\}') +class Services: + def __init__(self, sc_params, gh_params, slack_params, log): + self.sc = ServiceCatalogue(sc_params, log) + self.gh = GithubSession(gh_params, log) + self.slack = Slack(slack_params, log) + self.log = log - parent_teams_match = parent_teams_pattern.search(terraform_content) - sub_teams_match = sub_teams_pattern.search(terraform_content) - parent_teams = [] - sub_teams = [] - - if parent_teams_match: - parent_teams_content = parent_teams_match.group(1) - parent_teams = team_pattern.findall(parent_teams_content) - - if sub_teams_match: - sub_teams_content = sub_teams_match.group(1) - sub_teams = team_pattern.findall(sub_teams_content) - - combined_teams = parent_teams + sub_teams - # Convert to JSON format - teams_json = [ - { - "name": team[0], - "parent": team[1], - "description": team[2] - } - for team in combined_teams - ] - log.info(f'Number of teams in terraform file: {len(teams_json)}') - return teams_json - - -def find_all_teams_ref_in_sc(sc_teams_json_data): - components = fetch_sc_components_data() - combined_teams = set() - for component in components: - attributes = component.get('attributes', {}) - combined_teams.update(attributes.get('github_project_teams_write', []) or []) - combined_teams.update(attributes.get('github_project_teams_admin', []) or []) - combined_teams.update(attributes.get('github_project_teams_maintain', []) or []) - return combined_teams +def summarize_processed_teams(processed_teams): + item_type = 'Github Teams' + summary = f'\n\n{item_type.upper()} SUMMARY\n{"=" * (len(item_type) + 8)}\n' + team_attributes = { + 'terraform_managed': 'teams are terraform managed', + 'team_updated': 'team(s) updated', + 'team_added': 'team(s) added', + 'team_failure': 'teams that encountered errors', + } + for attr, desc in team_attributes.items(): + filtered_items = [item for item in processed_teams if item[1].get(attr)] + summary += f'- {len(filtered_items)} {desc}\n' + # if filtered_items: + # for item in filtered_items: + # summary += f' {item[0]}\n' + # summary += '\n' + return summary + + +def main(): + sc_params = { + 'url': os.getenv('SERVICE_CATALOGUE_API_ENDPOINT'), + 'key': os.getenv('SERVICE_CATALOGUE_API_KEY'), + 'filter': os.getenv('SC_FILTER', ''), + } -def process_teams(): - tf_team_names = [team["name"] for team in tf_teams_json_data] - combined_team_names = set(tf_team_names).union(all_repo_ref_gh_teams) - for team in combined_team_names: - insert_github_team(team, tf_team_names) - return None + # Github parameters + gh_params = { + 'app_id': int(os.getenv('GITHUB_APP_ID')), + 'app_installation_id': int(os.getenv('GITHUB_APP_INSTALLATION_ID')), + 'app_private_key': os.getenv('GITHUB_APP_PRIVATE_KEY'), + } -def insert_github_team(team_name, tf_team_names): - try: - gh_team = org.get_team_by_slug(team_name) - except Exception as e: - log.error(f"Error getting team {team_name} from github: {e}") - return None - c_team = find_github_team(team_name) - check_team = c_team.get('attributes', {}) if c_team else {} - c_team_id = c_team.get('id', None) if c_team else None - team_id = gh_team.id - team_description = gh_team.description - parent_team_name= gh_team.parent.name if gh_team.parent else None - members = [member.login for member in org.get_team(team_id).get_members()] - if any(team_name == tf_team for tf_team in tf_team_names): - terraform_managed = True - else: - terraform_managed = False - team_data = { - 'github_team_id': team_id, - 'team_name': team_name, - 'parent_team_name': parent_team_name, - 'team_desc': gh_team.description.replace('• This team is managed by Terraform, see https://github.com/ministryofjustice/hmpps-github-teams - DO NOT UPDATE MANUALLY!', '') if gh_team.description else '', - 'members': members, - 'terraform_managed': terraform_managed, + slack_params = { + 'token': os.getenv('SLACK_BOT_TOKEN'), + 'notify_channel': os.getenv('SLACK_NOTIFY_CHANNEL', ''), + 'alert_channel': os.getenv('SLACK_ALERT_CHANNEL', ''), } - if c_team_id: - # Update the team in SC - try: - x = requests.put( - f'{SC_API_ENDPOINT}/v1/github-teams/{c_team_id}', - headers=sc_api_headers, - json={'data': team_data}, - timeout=10, - ) - log.info(f'Successfully updated team {team_name}: {x.status_code}') - except requests.exceptions.Timeout as timeout_error: - log.error(f"Timeout error occurred: {timeout_error}") - except SSLError as ssl_error: - log.error(f"SSL error occurred: {ssl_error}") - except requests.exceptions.RequestException as req_error: - log.error(f"Request error occurred: {req_error}") - else: - # Create the team in SC - try: - x = requests.post( - f'{SC_API_ENDPOINT}/v1/github-teams', - headers=sc_api_headers, - json={'data': team_data}, - timeout=10, - ) - log.info(f'Successfully added team {team_name}: {x.status_code}') - except requests.exceptions.Timeout as timeout_error: - log.error(f"Timeout error occurred: {timeout_error}") - except SSLError as ssl_error: - log.error(f"SSL error occurred: {ssl_error}") - except requests.exceptions.RequestException as req_error: - log.error(f"Request error occurred: {req_error}") - return None -if __name__ == '__main__': - logging.basicConfig( - format='[%(asctime)s] %(levelname)s %(threadName)s %(message)s', level=LOG_LEVEL + format='[%(asctime)s] %(levelname)s %(threadName)s %(message)s', + level=os.getenv('LOG_LEVEL', 'INFO').upper(), ) log = logging.getLogger(__name__) - sc_api_headers = { - 'Authorization': f'Bearer {SC_API_TOKEN}', - 'Content-Type': 'application/json', - 'Accept': 'application/json', - } - # Test connection to Service Catalogue - try: - r = requests.head( - f'{SC_API_ENDPOINT}/_health', headers=sc_api_headers, timeout=10 - ) - log.info(f'Successfully connected to the Service Catalogue. {r.status_code}') - except Exception as e: - log.critical('Unable to connect to the Service Catalogue.') - raise SystemExit(e) from e - + services = Services(sc_params, gh_params, slack_params, log) -# Test auth and connection to github - try: - jwt_token = generate_jwt() - access_token = get_access_token(jwt_token) # Token is valid only for 10 mins so we need to re-authenticate every 10 mins - auth = Auth.Token(access_token) - gh = Github(auth=auth, pool_size=50) - org=gh.get_organization('ministryofjustice') - rate_limit = gh.get_rate_limit() - core_rate_limit = rate_limit.core - log.info(f'Github API: {rate_limit}') - except Exception as e: - log.critical('Unable to connect to the github API.') - raise SystemExit(e) from e - - # Start health endpoint. - httpHealth = threading.Thread(target=startHttpServer, daemon=True) - httpHealth.start() + log.info('Processing teams...') + processed_teams = github_teams.process_github_teams(services) + log.info('Finished processing teams.') - # Get the github teams data from SC - log.info('Retrieving Github teams data ...') - sc_teams_json_data = fetch_sc_github_teams_data() - # Get the github teams refenered in admin, manintain and write teams from SC - all_repo_ref_gh_teams=find_all_teams_ref_in_sc(sc_teams_json_data) - # Get the data from GH for the teams - log.info('Retrieving Github teams data for organisation ...') - teamrepo = gh.get_repo('ministryofjustice/hmpps-github-teams') - org_gh_teams = org.get_teams() - - # Get the data from GH for teams from terraform files - log.info('Retrieving Github teams terraform data...') - tf_teams_json_data = fetch_gh_github_teams_data() + summary = summarize_processed_teams(processed_teams) + services.slack.notify(summary) + services.log.info(summary) - log.info('Processing teams...') - process_teams() - log.info('Finished processing teams.') \ No newline at end of file + +if __name__ == '__main__': + main() diff --git a/helm_deploy/hmpps-github-discovery/Chart.yaml b/helm_deploy/hmpps-github-discovery/Chart.yaml index 6c90cb7..a6fbb82 100644 --- a/helm_deploy/hmpps-github-discovery/Chart.yaml +++ b/helm_deploy/hmpps-github-discovery/Chart.yaml @@ -4,9 +4,6 @@ description: A Helm chart for Kubernetes name: hmpps-github-discovery version: 0.2.0 dependencies: - - name: generic-service - version: "2.8" - repository: https://ministryofjustice.github.io/hmpps-helm-charts - name: generic-prometheus-alerts version: 1.3.2 repository: https://ministryofjustice.github.io/hmpps-helm-charts diff --git a/helm_deploy/hmpps-github-discovery/templates/_discovery_cron_job_envs.tpl b/helm_deploy/hmpps-github-discovery/templates/_discovery_cron_job_envs.tpl index 0b4d721..0e81950 100644 --- a/helm_deploy/hmpps-github-discovery/templates/_discovery_cron_job_envs.tpl +++ b/helm_deploy/hmpps-github-discovery/templates/_discovery_cron_job_envs.tpl @@ -1,6 +1,7 @@ {{- define "discoveryCronJob.envs" -}} -{{- if .discoveryCronJob.namespace_secrets -}} +{{- if or .discoveryCronJob.namespace_secrets .discoveryCronJob.env -}} env: +{{- if .discoveryCronJob.namespace_secrets -}} {{- range $secret, $envs := .discoveryCronJob.namespace_secrets }} {{- range $key, $val := $envs }} - name: {{ $key }} @@ -10,5 +11,12 @@ env: name: {{ $secret }}{{ if hasSuffix "?" $val }} optional: true{{ end }} {{- end }} {{- end }} +{{- end }} +{{- if .discoveryCronJob.env -}} +{{- range $key, $val := .discoveryCronJob.env }} + - name: {{ $key }} + value: {{ quote $val }} +{{- end }} +{{- end }} {{- end -}} {{- end -}} diff --git a/helm_deploy/hmpps-github-discovery/templates/github-discovery-cron-job.yaml b/helm_deploy/hmpps-github-discovery/templates/github-discovery-cron-job.yaml new file mode 100644 index 0000000..4b1f508 --- /dev/null +++ b/helm_deploy/hmpps-github-discovery/templates/github-discovery-cron-job.yaml @@ -0,0 +1,37 @@ +{{- if .Values.discoveryCronJob.enabled -}} + +--- +apiVersion: batch/v1 +kind: CronJob +metadata: + name: hmpps-github-discovery +spec: + schedule: "{{ .Values.cron.github_discovery_schedule }}" + concurrencyPolicy: Forbid + failedJobsHistoryLimit: 5 + startingDeadlineSeconds: 600 + successfulJobsHistoryLimit: 5 + jobTemplate: + spec: + backoffLimit: 0 # Set to 0 to prevent retries after job failure - API Rate limit is 15000 per hour so reties will not solve the issue + ttlSecondsAfterFinished: 345600 + template: + spec: + containers: + - name: github-discovery + image: ghcr.io/ministryofjustice/hmpps-github-discovery + command: ["python", "-u", "/app/github_discovery.py"] + env: + - name: PATH + value: "/home/appuser/.local:/usr/local/bin:$PATH" + securityContext: + capabilities: + drop: + - ALL + runAsNonRoot: true + allowPrivilegeEscalation: false + seccompProfile: + type: RuntimeDefault + {{- include "discoveryCronJob.envs" .Values | nindent 14 }} + restartPolicy: Never +{{- end }} diff --git a/helm_deploy/hmpps-github-discovery/templates/github-discovery-full-cron-job.yaml b/helm_deploy/hmpps-github-discovery/templates/github-discovery-full-cron-job.yaml new file mode 100644 index 0000000..3936341 --- /dev/null +++ b/helm_deploy/hmpps-github-discovery/templates/github-discovery-full-cron-job.yaml @@ -0,0 +1,37 @@ +{{- if .Values.discoveryCronJob.enabled -}} + +--- +apiVersion: batch/v1 +kind: CronJob +metadata: + name: hmpps-github-discovery +spec: + schedule: "{{ .Values.cron.github_discovery_full }}" + concurrencyPolicy: Forbid + failedJobsHistoryLimit: 5 + startingDeadlineSeconds: 600 + successfulJobsHistoryLimit: 5 + jobTemplate: + spec: + backoffLimit: 0 # Set to 0 to prevent retries after job failure - API Rate limit is 15000 per hour so reties will not solve the issue + ttlSecondsAfterFinished: 345600 + template: + spec: + containers: + - name: github-discovery + image: ghcr.io/ministryofjustice/hmpps-github-discovery + command: ["python", "-u", "/app/github_discovery.py", '-f'] + env: + - name: PATH + value: "/home/appuser/.local:/usr/local/bin:$PATH" + securityContext: + capabilities: + drop: + - ALL + runAsNonRoot: true + allowPrivilegeEscalation: false + seccompProfile: + type: RuntimeDefault + {{- include "discoveryCronJob.envs" .Values | nindent 14 }} + restartPolicy: Never +{{- end }} diff --git a/helm_deploy/hmpps-github-discovery/templates/discovery-cron-job.yaml b/helm_deploy/hmpps-github-discovery/templates/teams-discovery-cron-job.yaml similarity index 90% rename from helm_deploy/hmpps-github-discovery/templates/discovery-cron-job.yaml rename to helm_deploy/hmpps-github-discovery/templates/teams-discovery-cron-job.yaml index 9dd1fb6..011f61a 100644 --- a/helm_deploy/hmpps-github-discovery/templates/discovery-cron-job.yaml +++ b/helm_deploy/hmpps-github-discovery/templates/teams-discovery-cron-job.yaml @@ -4,11 +4,9 @@ apiVersion: batch/v1 kind: CronJob metadata: - name: github-teams-discovery - labels: - {{- include "app.labels" . | nindent 4 }} + name: hmpps-github-discovery-teams spec: - schedule: "20 */6 * * *" + schedule: "{{ .Values.cron.github_teams_discovery }}" concurrencyPolicy: Forbid failedJobsHistoryLimit: 5 startingDeadlineSeconds: 600 diff --git a/helm_deploy/hmpps-github-discovery/values.yaml b/helm_deploy/hmpps-github-discovery/values.yaml index 3d6808e..0e05df7 100644 --- a/helm_deploy/hmpps-github-discovery/values.yaml +++ b/helm_deploy/hmpps-github-discovery/values.yaml @@ -1,67 +1,12 @@ --- -generic-service: - nameOverride: hmpps-github-discovery - - replicaCount: 1 - - image: - repository: ghcr.io/ministryofjustice/hmpps-github-discovery - tag: xxx # override at deployment time - port: 8080 - - ingress: - enabled: false - - # Due to a bug cant disable/override the sub chart. - # https://github.com/helm/helm/pull/12162 - # Have implemented a basic http health endpoint, until this bug is fixed. - #livenessProbe: null - #readinessProbe: null - - livenessProbe: - httpGet: - path: /ping - port: 8080 - initialDelaySeconds: 10 - periodSeconds: 10 - timeoutSeconds: 5 - failureThreshold: 5 - - readinessProbe: - httpGet: - path: /ping - port: 8080 - initialDelaySeconds: 10 - periodSeconds: 10 - timeoutSeconds: 5 - failureThreshold: 5 - - # Environment variables to load into the deployment - env: - REFRESH_INTERVAL: "7200" - LOG_LEVEL: debug - - # Pre-existing kubernetes secrets to load as environment variables in the deployment. - # namespace_secrets: - # [name of kubernetes secret]: - # [name of environment variable as seen by app]: [key of kubernetes secret to load] - - namespace_secrets: - hmpps-github-discovery: - SERVICE_CATALOGUE_API_ENDPOINT: "SERVICE_CATALOGUE_API_ENDPOINT" - SERVICE_CATALOGUE_API_KEY: "SERVICE_CATALOGUE_API_KEY" - GITHUB_APP_ID: "GITHUB_APP_ID" - GITHUB_APP_INSTALLATION_ID: "GITHUB_APP_INSTALLATION_ID" - GITHUB_APP_PRIVATE_KEY: "GITHUB_APP_PRIVATE_KEY" - CIRCLECI_TOKEN: "CIRCLECI_TOKEN" - CIRCLECI_API_ENDPOINT: "CIRCLECI_API_ENDPOINT" - SLACK_BOT_TOKEN: "SLACK_BOT_TOKEN" - generic-prometheus-alerts: targetApplication: hmpps-github-discovery discoveryCronJob: - enabled: true + image: + repository: ghcr.io/ministryofjustice/hmpps-github-discovery + port: 8080 + tag: xxx # override at deployment time namespace_secrets: hmpps-github-discovery: SERVICE_CATALOGUE_API_ENDPOINT: "SERVICE_CATALOGUE_API_ENDPOINT" @@ -73,5 +18,4 @@ discoveryCronJob: CIRCLECI_API_ENDPOINT: "CIRCLECI_API_ENDPOINT" SLACK_BOT_TOKEN: "SLACK_BOT_TOKEN" -cron: - github_teams_discovery_schedule: "20 */6 * * *" + diff --git a/helm_deploy/values-dev.yaml b/helm_deploy/values-dev.yaml index 28c3ad6..426934f 100644 --- a/helm_deploy/values-dev.yaml +++ b/helm_deploy/values-dev.yaml @@ -1,14 +1,16 @@ --- # Per environment values which override defaults in hmpps-github-discovery/values.yaml -generic-service: +generic-prometheus-alerts: + alertSeverity: hmpps-sre-alerts-nonprod + +discoveryCronJob: + enabled: false env: - REFRESH_INTERVAL_HOURS: "2" LOG_LEVEL: debug + SC_FILTER: "SC_FILTER" - namespace_secrets: - hmpps-github-discovery: - SC_FILTER: "SC_FILTER" - -generic-prometheus-alerts: - alertSeverity: hmpps-sre-alerts-dev +# cron: +# github_teams_discovery: "20 2 * * *" +# github_discovery: "45 */6 * * *" +# github_discovery_full: "45 2 * * *" diff --git a/helm_deploy/values-prod.yaml b/helm_deploy/values-prod.yaml index 321aea5..d35400d 100644 --- a/helm_deploy/values-prod.yaml +++ b/helm_deploy/values-prod.yaml @@ -1,10 +1,14 @@ --- # Per environment values which override defaults in hmpps-github-discovery/values.yaml +generic-prometheus-alerts: + alertSeverity: hmpps-sre-alerts-prod -generic-service: +discoveryCronJob: + enabled: true env: - REFRESH_INTERVAL_HOURS: "2" LOG_LEVEL: info -generic-prometheus-alerts: - alertSeverity: hmpps-sre-alerts-prod \ No newline at end of file +cron: + github_teams_discovery: "20 */6 * * *" + github_discovery: "45 0,4-22/2 * * *" + github_discovery_full: "45 2 * * *" diff --git a/includes/environments.py b/includes/environments.py new file mode 100644 index 0000000..9bfe643 --- /dev/null +++ b/includes/environments.py @@ -0,0 +1,194 @@ +# Environment specific functions +# This will prepare data to be updated in the environment table +# as well as returning data to be added to the component table (to be deprecated) +from includes.utils import update_dict, env_mapping, get_existing_env_config + + +################################################################################################ +# get_environments +# This function will get the environments associated with a component +# from the bootstrap projects json file and Github repo environments +################################################################################################ +def get_environments(component, repo, bootstrap_projects, services): + log = services.log + sc = services.sc + + component_name = component['attributes']['name'] # for short + envs = {} # using a dictionary to avoid duplicates + + log.debug(f'Getting environments for {component_name} from bootstrap/Github') + # Check bootstrap first + if project := bootstrap_projects.get(component['attributes']['github_repo']): + log.debug(f'Found bootstrap project data for {component_name} - {project}') + if 'circleci_project_k8s_namespace' in project: + log.debug(f'Found CircleCI dev namespace for{component_name}') + update_dict( + envs, + 'dev', + { + 'type': 'dev', + 'namespace': project['circleci_project_k8s_namespace'], + 'ns': sc.get_id( + 'namespaces', 'name', project['circleci_project_k8s_namespace'] + ), + }, + ) + if 'circleci_context_k8s_namespaces' in project: + for circleci_env in project['circleci_context_k8s_namespaces']: + log.debug( + f'Found CircleCI environment {circleci_env["env_name"]} and namespace {circleci_env["namespace"]} for {component_name}' + ) + if env_type := env_mapping.get(circleci_env.get('env_type')): + update_dict( + envs, + circleci_env['env_name'], + { + 'type': env_type, + 'namespace': circleci_env['namespace'], + 'ns': sc.get_id('namespaces', 'name', circleci_env['namespace']), + }, + ) + + # Then check Github - these environments take precedence since they're newer + repo_envs = repo.get_environments() + if ( + repo_envs.totalCount < 10 + ): # workaround for a repo that has hundreds of environments + for repo_env in repo_envs: + log.debug( + f'Found environment {repo_env.name} in Github for {component_name} in {repo.name}' + ) + env_vars = None + try: + env_vars = repo_env.get_variables() + except Exception as e: + log.debug(f'Unable to get environment variables for {repo_env.name}: {e}') + + # there are some non-standard environments in some of the repos + # so only process the ones that map to the env_mapping list + if env_vars: + if env_type := env_mapping.get(repo_env.name): + # default settings + namespace = None + ns_id = None + for ( + var + ) in env_vars: # We should populate these for all namespaces where possible + if var.name == 'KUBE_NAMESPACE': + log.info(f'Found namespace {var.value} for {component_name}') + namespace = var.value + ns_id = sc.get_id('namespaces', 'name', var.value) + + update_dict( + envs, + repo_env.name, + { + 'type': env_type, + 'namespace': namespace, + 'ns': ns_id, + }, + ) + if envs: + # there's some data that is not populated by Github Discovery, for example + # the build_image_tag, so loop through the environments and get them + for env in envs: + log.debug(f'Updating non-discovery fields for environment {env}') + if build_image_tag := get_existing_env_config( + component, env, 'build_image_tag', services + ): + envs[env]['build_image_tag'] = build_image_tag + log.debug(f'Added build_image_tag {build_image_tag} to environment {env}') + log.info( + f'Environments found in bootstrap/Github for {component_name}: {len(envs)}' + ) + + return envs + + +################################################################################################### +# process_environments +# This is the main function to process environments based on data from the helm chart +# combined with bootstrap projects json file and Github repo environments +# It returns the environment as a list of dictionaries to be added to the component table +# It also updates the environment table with the environment data, associating it with a component. +################################################################################################### +def process_environments( + component, repo, helm_environments, bootstrap_projects, services +): + sc = services.sc + log = services.log + + component_name = component['attributes']['name'] + log.debug(f'Processing environments for {component_name}') + env_flags = {} + + # This is the final result that will be returned - it's a list of dictionaries + # since that's how Service Catalogue expects it. + component_env_data = [] + + # Other environment information - get_environments + # ################################################ + + # Populate other component environment data (not from helm) + # This can come from two places: + # - the bootstrap projects list (old-style CircleCI) + # - the repository (new-style Github Actions) + # + # Fields within environments that are updated in this section: + # - namespace + # - ns_id + + if environment_data := get_environments( + component, repo, bootstrap_projects, services + ): + log.debug(f'Found environments from bootstrap/Github: {environment_data}') + # The helm environments are used as the primary source of truth for environments + # since they define the enviroments to which the app can be deployed. + for helm_env in helm_environments: + for k, v in environment_data.items(): + if helm_env == k: + log.debug(f'Found environment {k} in helm environments') + log.debug(f'Environment data: {v}') + helm_environments[helm_env].update(v) + break + + # Time to process the environment table first so we can get the env_id: + for env in helm_environments: + # only process the environments that have a valid type + if not helm_environments[env].get('type') or not helm_environments[env].get( + 'namespace' + ): + log.info(f'Skipping environment {env} as it has no type') + else: + # Prepare the environment record with the basic data + environment_record = helm_environments[env] + # Link the environment record with the component record + component_id = sc.get_id('components', 'name', component_name) + environment_record['component'] = component_id + # Add the environment name to the environment record + environment_record['name'] = f'{component_name}-{env}' + # Check to see if the environment record exists in the environment table + # With the name formatted as 'component_name-environment_name' + if env_id := sc.get_id('environments', 'name', f'{component_name}-{env}'): + # Update the environment in the environment table if anything has changed + log.info(f'Updating environment {env} in the environment table') + log.debug(f'Environment_record: {environment_record}') + if sc.update(sc.environments, env_id, environment_record): + env_flags['env_updated'] = True + else: + env_flags['env_error'] = True + else: + # Create the environment in the environment table + log.info(f'Environment not found - adding {env} to the environment table') + log.debug(f'Environment data: {environment_record}') + if sc.add(sc.environments, environment_record): + env_flags['env_added'] = True + else: + env_flags['env_error'] = True + + # Then prepare the environment for the components table to be returned and added + helm_environments[env]['name'] = env + component_env_data.append(helm_environments[env]) + + log.debug(f'Component environment data to be added: {component_env_data}') + return component_env_data, env_flags diff --git a/includes/helm.py b/includes/helm.py new file mode 100644 index 0000000..f75ad29 --- /dev/null +++ b/includes/helm.py @@ -0,0 +1,350 @@ +import re +import includes.utils as utils +from includes.utils import update_dict, env_mapping, get_existing_env_config + + +def get_helm_dirs(repo, component, log): + component_name = component['attributes']['name'] + + component_project_dir = ( + component['attributes'].get('path_to_project', component_name) + if component['attributes'].get('part_of_monorepo') + else '.' + ) + helm_dir = ( + component['attributes'].get('path_to_helm_dir') + or f'{component_project_dir}/helm_deploy' + ) + log.debug(f'helm_dir for {component_name} is {helm_dir}') + + try: + helm_deploy_dir = repo.get_contents( + helm_dir, ref=repo.get_branch(repo.default_branch).commit.sha + ) + except Exception as e: + helm_deploy_dir = None + log.warning(f'Unable to load the helm_deploy folder for {component_name}: {e}') + return (helm_dir, helm_deploy_dir) + + +def get_envs_from_helm(component, repo, services): + log = services.log + helm_environments = [] + helm_dirs = get_helm_dirs(repo, component, log) + helm_dir, helm_deploy_dir = helm_dirs + if helm_deploy_dir: + for helm_file in helm_deploy_dir: + if helm_file.name.startswith('values-'): + env = re.match('values-([a-z0-9-]+)\\.y[a]?ml', helm_file.name)[1] + helm_environments.append(env) + return helm_environments + + +def get_info_from_helm(component, repo, services): + gh = services.gh + am = services.am + log = services.log + sc = services.sc + + # Shortcuts to make it easier to read + component_name = component['attributes']['name'] + + data = {} + + helm_environments = [] + # environments is returned from helm as a dictionary + + helm_dirs = get_helm_dirs(repo, component, log) + helm_dir, helm_deploy_dir = helm_dirs + if helm_deploy_dir: + # variables used for implementation of findind IP allowlist in helm values files + allow_list_key = 'allowlist' + ip_allow_list_data = {} + ip_allow_list = {} + + # Read in the environments from the helm deployment directory + + for helm_file in helm_deploy_dir: + if helm_file.name.startswith('values-'): + env = re.match('values-([a-z0-9-]+)\\.y[a]?ml', helm_file.name)[1] + helm_environments.append(env) + + # HEAT-223 Start : Read and collate data for IPallowlist from all environment specific values.yaml files. + ip_allow_list[helm_file] = utils.fetch_yaml_values_for_key( + gh.get_file_yaml(repo, f'{helm_dir}/{helm_file.name}'), + allow_list_key, + ) + if ip_allow_list[helm_file]: + ip_allow_list_data[helm_file.name] = ip_allow_list[helm_file] + # HEAT-223 End : Read and collate data for IPallowlist from all environment specific values.yaml files. + + # Helm chart dependencies + helm_chart = ( + gh.get_file_yaml(repo, f'{helm_dir}/{component_name}/Chart.yaml') + or gh.get_file_yaml(repo, f'{helm_dir}/Chart.yaml') + or {} + ) + if 'dependencies' in helm_chart: + helm_dep_versions = {} + for item in helm_chart['dependencies']: + helm_dep_versions.update({item['name']: item['version']}) + update_dict(data, 'versions', {'helm_dependencies': helm_dep_versions}) + + # DEFAULT VALUES SECTION + # ---------------------- + # Default values for modsecurity and alert_severity_label - clear these out in case theres's nothing set + mod_security_defaults = {} + alert_severity_label_default = None + ip_allow_list_default = {} + # Get the default values chart filename (including yml versions) + helm_default_values = ( + gh.get_file_yaml( + repo, f'{helm_dir}/{component["attributes"]["name"]}/values.yaml' + ) + or gh.get_file_yaml( + repo, f'{helm_dir}/{component["attributes"]["name"]}/values.yml' + ) + or gh.get_file_yaml(repo, f'{helm_dir}/values.yaml') + or gh.get_file_yaml(repo, f'{helm_dir}/values.yml') + or {} + ) + + # Get the default values from the helm chart - and only proceed if there is one + + if helm_default_values: + ip_allow_list_default = utils.fetch_yaml_values_for_key( + helm_default_values, allow_list_key + ) + + # Try to get the container image + try: + container_image = helm_default_values['image']['repository'] + data['container_image'] = container_image + except KeyError: + pass + try: + container_image = helm_default_values['generic-service']['image']['repository'] + data['container_image'] = container_image + except KeyError: + pass + + # Try to get the productID + try: + helm_product_id = helm_default_values['generic-service']['productId'] + # If the service catalogue product ID already exists (there is no reason why it shouldn't), use that instead + # TODO: use the product_id from the repository variables? + if ( + sc_product_id := component.get('attributes', {}) + .get('product', {}) + .get('data', {}) + .get('id', {}) + ): + data['product'] = sc_product_id + else: + data['product'] = sc.get_id('products', 'p_id', helm_product_id) + except KeyError: + pass + + # Get modsecurity data defaults, if enabled. + for mod_security_type in [ + 'modsecurity_enabled', + 'modsecurity_audit_enabled', + 'modsecurity_snippet', + ]: + mod_security_defaults[mod_security_type] = ( + helm_default_values.get('generic-service', {}) + .get('ingress', {}) + .get(mod_security_type, None) + ) + alert_severity_label_default = helm_default_values.get( + 'generic-prometheus-alerts', {} + ).get('alertSeverity', None) + + # Shortcut dictionary to update helm data + helm_envs = {} + + for env in helm_environments: + # Environment type first of all: + update_dict(helm_envs, env, {'type': env_mapping.get(env.lower(), None)}) + + # Monitor environment + if repo.archived: + # If the repo is archived, then monitoring should be automatically set to False + update_dict(helm_envs, env, {'monitor': False}) + + # Get the values.yaml file for the environment + values = gh.get_file_yaml( + repo, f'{helm_dir}/values-{env}.yaml' + ) or gh.get_file_yaml(repo, f'{helm_dir}/values-{env}.yml') + if values: + # generic service->ingress->host(s) + if 'generic-service' in values: + if ingress_dict := values['generic-service'].get('ingress'): + if 'host' in ingress_dict: + update_dict(helm_envs, env, {'url': f'https://{ingress_dict["host"]}'}) + elif 'hosts' in ingress_dict: + update_dict( + helm_envs, env, {'url': f'https://{ingress_dict["hosts"][-1]}'} + ) + # ingress->host(s) + elif 'ingress' in values: + if 'host' in values['ingress']: + update_dict(helm_envs, env, {'url': f'https://{values["ingress"]["host"]}'}) + elif 'hosts' in values['ingress']: + update_dict( + helm_envs, env, {'url': f'https://{values["ingress"]["hosts"][-1]}'} + ) + + # Container image alternative location + if 'image' in values: + # image->repository + if container_image := values['image'].get('repository'): + data['container_image'] = container_image + # generic-service->image->repository + elif 'generic-service' in values and 'image' in values['generic-service']: + if container_image := values['generic-service']['image']['repository']: + data['container_image'] = container_image + + # Modsecurity settings + for mod_security_type in [ + ('modsecurity_enabled', False), + ('modsecurity_audit_enabled', False), + ('modsecurity_snippet', None), + ]: # default to this + if 'generic-service' in values and 'ingress' in values['generic-service']: + if mod_security_env_enabled := values['generic-service']['ingress'].get( + mod_security_type[0] + ): + log.debug( + f'Updating {mod_security_type[0]} to environment value: {mod_security_env_enabled}' + ) + update_dict( + helm_envs, + env, + {mod_security_type[0]: mod_security_env_enabled}, + ) + elif mod_security_defaults.get(mod_security_type[0]): + log.debug( + f'Updating {mod_security_type[0]} to default value: {mod_security_defaults[mod_security_type[0]]}' + ) + update_dict( + helm_envs, + env, + {mod_security_type[0]: mod_security_defaults[mod_security_type[0]]}, + ) + else: # default either to false or None + update_dict(helm_envs, env, {mod_security_type[0]: mod_security_type[1]}) + + # Alert severity label + existing_alertmanager_config = { + 'alert_severity_label': get_existing_env_config( + component, env, 'alert_severity_label', services + ), + 'alerts_slack_channel': get_existing_env_config( + component, env, 'alerts_slack_channel', services + ), + } + + if 'generic-prometheus-alerts' in values: + if alert_severity_label := values['generic-prometheus-alerts'].get( + 'alertSeverity' + ): + update_dict( + helm_envs, + env, + {'alert_severity_label': alert_severity_label}, + ) + if alerts_slack_channel := am.find_channel_by_severity_label( + alert_severity_label + ): + update_dict( + helm_envs, + env, + {'alerts_slack_channel': alerts_slack_channel}, + ) + else: # revert to previous saved values to avoid blanking it out + update_dict(helm_envs, env, existing_alertmanager_config) + elif alert_severity_label_default: + log.warning( + f'Warning: Alert severity label not found for {component_name} in {env} - attempting to set default' + ) + update_dict( + helm_envs, + env, + {'alert_severity_label': alert_severity_label_default}, + ) + if alerts_slack_channel := am.find_channel_by_severity_label( + alert_severity_label_default + ): + update_dict( + helm_envs, + env, + {'alerts_slack_channel': alerts_slack_channel}, + ) + else: # revert to previous saved values to avoid blanking it out + update_dict(helm_envs, env, existing_alertmanager_config) + else: + log.warning( + f'WARNING - Default alert severity label not found for {component_name}' + ) + update_dict(helm_envs, env, existing_alertmanager_config) + + # Health paths using the host name: + if env_host := helm_envs[env].get('url'): + env_url = f'{env_host}' + health_path = '/health' + info_path = '/info' + # Hack for hmpps-auth non standard endpoints + if 'sign-in' in env_url: + health_path = '/auth/health' + info_path = '/auth/info' + if utils.test_endpoint(env_url, health_path, log): + update_dict(helm_envs, env, {'health_path': health_path}) + if utils.test_endpoint(env_url, info_path, log): + update_dict(helm_envs, env, {'info_path': info_path}) + # Test for API docs - and if found also test for SAR endpoint. + if utils.test_swagger_docs(env_url, log): + update_dict(helm_envs, env, {'swagger_docs': '/swagger-ui.html'}) + data['api'] = True + data['frontend'] = False + if utils.test_subject_access_request_endpoint(env_url, log): + update_dict( + helm_envs, + env, + {'include_in_subject_access_requests': True}, + ) + else: + update_dict( + helm_envs, + env, + {'include_in_subject_access_requests': False}, + ) + + if ip_allow_list_env := ip_allow_list_data.get(f'values-{env}.yaml'): + values_filename = f'values-{env}.yaml' + allow_list_values = { + f'{values_filename}': ip_allow_list_env, + 'values.yaml-': ip_allow_list_default, + } + else: + allow_list_values = { + f'values-{env}.yaml': {}, + 'values.yaml': ip_allow_list_default, + } + + update_dict( + helm_envs, + env, + { + 'ip_allow_list': allow_list_values, + 'ip_allow_list_enabled': utils.is_ipallowList_enabled(allow_list_values), + }, + ) + + # Need to add the helm data to the main data list of environments + if helm_envs: + update_dict(data, 'environments', helm_envs) + # End of helm environment checks + + log.debug(f'Helm data for {component_name}: {data}') + return data diff --git a/includes/teams.py b/includes/teams.py new file mode 100644 index 0000000..d925628 --- /dev/null +++ b/includes/teams.py @@ -0,0 +1,66 @@ +import re + + +def fetch_gh_github_teams_data(gh, teamrepo, log): + try: + teams_data = gh.get_file_plain(teamrepo, 'terraform/teams.tf') + except Exception as e: + log.error(f'Error fetching teams data from Github - {e}') + return [] + + teams_json_data = extract_tf_teams(teams_data) + log.info(f'Found {len(teams_json_data)} teams in the terraform file') + + parent_teams_pattern = re.compile(r'parent_teams\s*=\s*\[(.*?)\]', re.DOTALL) + sub_teams_pattern = re.compile(r'sub_teams\s*=\s*\[(.*?)\]', re.DOTALL) + team_pattern = re.compile( + r'\{\s*name\s*=\s*"([^"]+)"\s*parent\s*=\s*"([^"]+)"\s*description\s*=\s*"([^"]+)"\s*\}' + ) + + parent_teams_match = parent_teams_pattern.search(teams_data) + sub_teams_match = sub_teams_pattern.search(teams_data) + + parent_teams = [] + sub_teams = [] + + if parent_teams_match: + parent_teams_content = parent_teams_match.group(1) + parent_teams = team_pattern.findall(parent_teams_content) + + if sub_teams_match: + sub_teams_content = sub_teams_match.group(1) + sub_teams = team_pattern.findall(sub_teams_content) + + combined_teams = parent_teams + sub_teams + # Convert to JSON format + teams_json = [ + {'name': team[0], 'parent': team[1], 'description': team[2]} + for team in combined_teams + ] + log.info(f'Number of teams in terraform file: {len(teams_json)}') + return teams_json + + +def extract_tf_teams(terraform_content): + parent_teams_pattern = re.compile(r'parent_teams\s*=\s*\[(.*?)\]', re.DOTALL) + sub_teams_pattern = re.compile(r'sub_teams\s*=\s*\[(.*?)\]', re.DOTALL) + team_pattern = re.compile( + r'\{\s*name\s*=\s*"([^"]+)"\s*parent\s*=\s*"([^"]+)"\s*description\s*=\s*"([^"]+)"\s*\}' + ) + + parent_teams_match = parent_teams_pattern.search(terraform_content) + sub_teams_match = sub_teams_pattern.search(terraform_content) + + parent_teams = [] + sub_teams = [] + + if parent_teams_match: + parent_teams_content = parent_teams_match.group(1) + parent_teams = team_pattern.findall(parent_teams_content) + + if sub_teams_match: + sub_teams_content = sub_teams_match.group(1) + sub_teams = team_pattern.findall(sub_teams_content) + + combined_teams = parent_teams + sub_teams + return combined_teams diff --git a/includes/utils.py b/includes/utils.py new file mode 100644 index 0000000..7fe8567 --- /dev/null +++ b/includes/utils.py @@ -0,0 +1,164 @@ +import requests +from dockerfile_parse import DockerfileParser +import tempfile +import re + +# Mapping of environment names to the values used in the service discovery URLs +env_mapping = { + 'staging': 'stage', + 'uat': 'stage', + 'stage': 'stage', + 'test': 'stage', + 'demo': 'test', + 'dev': 'dev', + 'development': 'dev', + 'preprod': 'preprod', + 'preproduction': 'preprod', + 'production': 'prod', + 'prod': 'prod', +} + + +# Cheeky little function to update a dictionary or add a new record if there isn't one +def update_dict(this_dict, key, sub_dict): + if key not in this_dict: + this_dict[key] = {} + this_dict[key].update(sub_dict) + + +# Various endoint tests +def test_endpoint(url, endpoint, log): + headers = {'User-Agent': 'hmpps-service-discovery'} + try: + r = requests.get( + f'{url}{endpoint}', headers=headers, allow_redirects=False, timeout=10 + ) + # Test if json is returned + if r.json() and r.status_code != 404: + log.debug(f'Found endpoint: {url}{endpoint} ') + return True + except Exception as e: + log.debug(f'Could not connect to endpoint {url}{endpoint} - {e}') + return False + + +def test_swagger_docs(url, log): + headers = {'User-Agent': 'hmpps-service-discovery'} + try: + r = requests.get( + f'{url}/swagger-ui.html', headers=headers, allow_redirects=False, timeout=10 + ) + # Test for 302 redirect) + if r.status_code == 302 and ( + '/swagger-ui/index.html' in r.headers['Location'] + or 'api-docs/index.html' in r.headers['Location'] + ): + log.debug(f'Found swagger docs: {url}/swagger-ui.html') + return True + except Exception as e: + log.debug(f"Couldn't connect to {url}/swagger-ui.html - {e}") + return False + + +def test_subject_access_request_endpoint(url, log): + headers = {'User-Agent': 'hmpps-service-discovery'} + try: + r = requests.get( + f'{url}/v3/api-docs', headers=headers, allow_redirects=False, timeout=10 + ) + if r.status_code == 200: + try: + if r.json()['paths']['/subject-access-request']: + log.debug(f'Found SAR endpoint at: {url}/v3/api-docs') + return True + except KeyError: + log.debug('No SAR endpoint found.') + return False + except TimeoutError: + log.debug(f'Timed out connecting to: {url}/v3/api-docs') + return False + except Exception as e: + log.debug(f"Couldn't connect to {url}/v3/api-docs: {e}") + return False + + +# This method is to find the values defined for allowlist in values*.yaml files under helm_deploy folder of each project. +# This methods read all the values files under helm_deploy folder and create a dictionary object of allowlist for each environment +# including the default values. + + +def fetch_yaml_values_for_key(yaml_data, key): + values = {} + if isinstance(yaml_data, dict): + if key in yaml_data: + if isinstance(yaml_data[key], dict): + values.update(yaml_data[key]) + else: + values[key] = yaml_data[key] + for k, v in yaml_data.items(): + if isinstance(v, (dict, list)): + child_values = fetch_yaml_values_for_key(v, key) + if child_values: + values.update({k: child_values}) + elif isinstance(yaml_data, list): + for item in yaml_data: + child_values = fetch_yaml_values_for_key(item, key) + if child_values: + values.update(child_values) + + return values + + +# This method read the value stored in dictionary passed to it checks if the ip allow list is present or not and returns boolean +def is_ipallowList_enabled(yaml_data): + ip_allow_list_enabled = False + if isinstance(yaml_data, dict): + for value in yaml_data.values(): + if isinstance(value, dict) and value: + ip_allow_list_enabled = True + return ip_allow_list_enabled + + +def get_dockerfile_data(dockerfile_contents, log): + dockerfile = DockerfileParser(fileobj=tempfile.NamedTemporaryFile()) + dockerfile.content = dockerfile_contents + + docker_data = {} + if re.search(r'rsds-ca-2019-root\.pem', dockerfile.content, re.MULTILINE): + docker_data['rds_ca_cert'] = 'rds-ca-2019-root.pem' + if re.search(r'global-bundle\.pem', dockerfile.content, re.MULTILINE): + docker_data['rds_ca_cert'] = 'rds-ca-2019-root.pem' + + try: + # Get list of parent images, and strip out references to 'base' + parent_images = list(filter(lambda i: i != 'base', dockerfile.parent_images)) + # Get the last element in the array, which should be the base image of the final stage. + base_image = parent_images[-1] + docker_data['base_image'] = base_image + log.debug(f'Found Dockerfile base image: {base_image}') + except Exception as e: + log.error(f'Error parent/base image from Dockerfile: {e}') + return docker_data + + +################################################################################################ +# get_existing_env_config +# This function will get the config value from the component environment +# to prevent it being overwritten by blank entries +def get_existing_env_config(component, env_name, config, services): + config_value = None + log = services.log + if envs := component['attributes'].get('environments'): + env_data = next( + (env for env in envs if env.get('name') == env_name), + {}, + ) + if config_value := env_data.get(config): + log.debug(f'Existing config: {config}, {config_value}') + else: + log.debug(f'No existing value found for {config}') + + return config_value + + +################################################################################################ diff --git a/processes/components.py b/processes/components.py new file mode 100644 index 0000000..793dc8a --- /dev/null +++ b/processes/components.py @@ -0,0 +1,466 @@ +import threading +import os +import re +import json +from time import sleep +from datetime import datetime, timezone + +from classes.service_catalogue import ServiceCatalogue +from classes.github import GithubSession +from classes.circleci import CircleCI +from classes.alertmanager import AlertmanagerData +from classes.slack import Slack + +# Standalone functions +from includes import helm as helm +from includes.utils import update_dict, get_dockerfile_data +from includes import environments as environments + + +log_level = os.environ.get('LOG_LEVEL', 'INFO').upper() +max_threads = 10 + + +class Services: + def __init__(self, sc_params, gh_params, am_params, cc_params, slack_params, log): + self.sc = ServiceCatalogue(sc_params, log) + self.gh = GithubSession(gh_params, log) + self.am = AlertmanagerData(am_params, log) + self.cc = CircleCI(cc_params, log) + self.slack = Slack(slack_params, log) + self.log = log + + +def get_bootstrap_projects(services): + gh = services.gh + log = services.log + # Get projects.json from bootstrap repo for namespaces data + bootstrap_repo = gh.get_org_repo('hmpps-project-bootstrap') + log.info(f'Getting projects.json from {bootstrap_repo.name}') + bootstrap_projects_json = services.gh.get_file_json(bootstrap_repo, 'projects.json') + # Convert the project lists to a dictionary for easier lookup + bootstrap_projects = {} + for p in bootstrap_projects_json: + bootstrap_projects.update({p['github_repo_name']: p}) + return bootstrap_projects + + +# Repo functions - teams and branch protection +def get_repo_teams_info(repo, branch_protection, component_flags, log): + data = {} + branch_protection_restricted_teams = [] + teams_write = [] + teams_admin = [] + teams_maintain = [] + + if not component_flags['app_disabled']: + if not component_flags['branch_protection_disabled']: + try: + branch_protection_teams = branch_protection.get_team_push_restrictions() or [] + for team in branch_protection_teams: + branch_protection_restricted_teams.append(team.slug) + except Exception as e: + log.error(f'Unable to get branch protection {repo.name}: {e}') + component_flags['app_disabled'] = True + + try: + teams = repo.get_teams() + for team in teams: + team_permissions = team.get_repo_permission(repo) + if team_permissions.admin: + teams_admin.append(team.slug) + elif team_permissions.maintain: + teams_maintain.append(team.slug) + elif team_permissions.push: + teams_write.append(team.slug) + + data['github_project_teams_admin'] = teams_admin + data['github_project_teams_maintain'] = teams_maintain + data['github_project_teams_write'] = teams_write + data['github_project_branch_protection_restricted_teams'] = ( + branch_protection_restricted_teams + ) + + enforce_admins = branch_protection.enforce_admins + data['github_enforce_admins_enabled'] = enforce_admins + + except Exception as e: + log.error(f'Unable to get teams/admin information {repo.name}: {e}') + component_flags['app_disabled'] = True + + return data + + +def get_repo_properties(repo, default_branch): + return { + 'language': repo.language, + 'description': f'{"[ARCHIVED] " if repo.archived and "ARCHIVED" not in repo.description else ""}{repo.description}', + 'github_project_visibility': repo.visibility, + 'github_repo': repo.name, + 'latest_commit': { + 'sha': default_branch.commit.sha, + 'date_time': default_branch.commit.commit.committer.date.isoformat(), + }, + } + + +# This is the main function that processes each component in turn +# 1. Get Github repo data that may change without a commit +# 2. For all components that have a different commit to the SC, get Github repo data that may have changed +# 2a. Then get ancillary stuff like Helm data, alertmanager data, security scan results etc + + +def process_independent_component(component, services): + gh = services.gh + log = services.log + component_name = component['attributes']['name'] + github_repo = component['attributes']['github_repo'] + + data = {} + component_flags = { + 'app_disabled': False, + 'branch_protection_disabled': False, + } + + try: + repo = gh.get_org_repo(f'{github_repo}') + default_branch = repo.get_branch(repo.default_branch) + branch_protection = default_branch.get_protection() + data.update(get_repo_properties(repo, default_branch)) + data.update(get_repo_teams_info(repo, branch_protection, component_flags, log)) + except Exception as e: + if 'Branch not protected' in f'{e}': + component_flags['branch_protection_disabled'] = True + else: + log.error( + f'ERROR accessing ministryofjustice/{repo.name}, check github app has permissions to see it. {e}' + ) + component_flags['app_disabled'] = True + + try: + data['github_topics'] = repo.get_topics() + except Exception as e: + log.warning(f'Unable to get topics for {repo.name}: {e}') + + if re.search( + r'([fF]rontend)|(-ui)|(UI)|([uU]ser\s[iI]nterface)', + f'{component_name} {repo.description}', + ): + log.debug("Detected 'frontend|-ui' keyword, setting frontend flag.") + data['frontend'] = True + + if repo.archived: + log.debug('Repo is archived') + component_flags['archived'] = True + + log.debug( + f'Processed main branch independent components for {component_name}\ndata: {data}' + ) + return data, component_flags + + +def process_changed_component(component, repo, services): + gh = services.gh + cc = services.cc + log = services.log + + # Shortcuts to make it easier to read + component_name = component['attributes']['name'] + component_project_dir = ( + (component['attributes']['path_to_project'] or component_name) + if component['attributes']['part_of_monorepo'] + else '.' + ) + + # Reset the data ready for updating + data = {} # dictionary to hold all the updated data for the component + + # Information from Helm config + ################################ + + # This will return information about: + # - Helm environments + # - Helm chart version + # - Environment configurations: + # - Alertmanager configuration + # - Endpoint URLs + + log.debug(f'Getting information for {component_name} from Helm config') + if helm_data := helm.get_info_from_helm(component, repo, services): + log.debug(f'Found Helm data for record id {component_name} - {helm_data}') + data.update(helm_data) + + log.debug( + f'Finished getting information from helm for {component_name}\ndata: {data}' + ) + + # Information from CircleCI data + ################################ + + if cirlcleci_config := gh.get_file_yaml(repo, '.circleci/config.yml'): + # Trivy Scan summary - this will be superceded by hmpps-trivy-discovery + try: + if trivy_scan_json := cc.get_trivy_scan_json_data(component_name): + # Add trivy scan result to final data dictionary + data['trivy_scan_summary'] = trivy_scan_json + data['trivy_last_completed_scan_date'] = trivy_scan_json.get('CreatedAt') + except Exception: + log.debug('Unable to get CircleCI trivy scan results') + + # CircleCI Orb version + update_dict(data, 'versions', cc.get_circleci_orb_version(cirlcleci_config)) + + else: + # Placeholder for GH Trivy scan business + log.debug('No CircleCI config found') + + # App insights cloud_RoleName + if repo.language == 'Kotlin' or repo.language == 'Java': + app_insights_config = gh.get_file_json( + repo, f'{component_project_dir}/applicationinsights.json' + ) + if app_insights_config: + app_insights_cloud_role_name = app_insights_config['role']['name'] + data['app_insights_cloud_role_name'] = app_insights_cloud_role_name + + if repo.language == 'JavaScript' or repo.language == 'TypeScript': + package_json = gh.get_file_json(repo, f'{component_project_dir}/package.json') + if package_json: + if app_insights_cloud_role_name := package_json.get('name'): + if re.match(r'^[a-zA-Z0-9-_]+$', app_insights_cloud_role_name): + data['app_insights_cloud_role_name'] = app_insights_cloud_role_name + + # Gradle config + build_gradle_config_content = False + if repo.language == 'Kotlin' or repo.language == 'Java': + build_gradle_kts_config = gh.get_file_plain(repo, 'build.gradle.kts') + build_gradle_config_content = build_gradle_kts_config + # Try alternative location for java projects + if not build_gradle_config_content: + build_gradle_java_config = gh.get_file_plain(repo, 'build.gradle') + build_gradle_config_content = build_gradle_java_config + + if build_gradle_config_content: + try: + regex = "id\\(\\'uk.gov.justice.hmpps.gradle-spring-boot\\'\\) version \\'(.*)\\'( apply false)?$" + hmpps_gradle_spring_boot_version = re.search( + regex, build_gradle_config_content, re.MULTILINE + )[1] + log.debug( + f'Found hmpps gradle-spring-boot version: {hmpps_gradle_spring_boot_version}' + ) + update_dict( + data, + 'versions', + {'gradle': {'hmpps_gradle_spring_boot': hmpps_gradle_spring_boot_version}}, + ) + except TypeError: + pass + + # Parse Dockerfile + if dockerfile_contents := gh.get_file_plain( + repo, f'{component_project_dir}/Dockerfile' + ): + if docker_data := get_dockerfile_data(dockerfile_contents, log): + update_dict(data, 'versions', {'dockerfile': docker_data}) + # All done with the branch dependent components + + log.debug( + f'Finished getting other repo information for {component_name}\ndata: {data}' + ) + return data + + +########################################################################################################### +# Main component processing function +########################################################################################################### +# This is the core function that will be run in a thread for each component +# It will: +# - Get the latest commit from the SC +# - Run the process_independent_component function to get the data that can change +# without a commit/environment change +# - Compare the latest commit with the latest Github commit +# - If they are different, run the process_changed_component function +# - Update the SC with the new data +# - If there are any errors, set flags to indicate what went wrong +# - Return the flags for the component + + +def process_sc_component(component, bootstrap_projects, services, force_update=False): + sc = services.sc + gh = services.gh + log = services.log + + # Empty data dict gets populated along the way, and finally used in PUT request to service catalogue + data = {} + component_flags = {} + component_name = component['attributes']['name'] + log.info(f'Processing component: {component_name}') + + # Get the latest commit from the SC + log.debug(f'Getting latest commit from SC for {component_name}') + if latest_commit := component['attributes'].get('latest_commit'): + if sha := latest_commit.get('sha'): + sc_latest_commit = sha + else: + sc_latest_commit = None + log.debug(f'Latest commit in SC for {component_name} is {sc_latest_commit}') + repo = gh.get_org_repo(f'{component["attributes"]["github_repo"]}') + if repo: + gh_latest_commit = repo.get_branch(repo.default_branch).commit.sha + log.debug(f'Latest commit in Github for {component_name} is {gh_latest_commit}') + + log.info(f'Processing main branch independent components for: {component_name}') + # Get the fields that aren't updated by a commit to main + independent_components, component_flags = process_independent_component( + component, services + ) + + data.update(independent_components) + + # Logic to check if the branch specific components need to be processed + current_envs = helm.get_envs_from_helm(component, repo, services) + + log.debug(f'Current environments for {component_name}: {current_envs}') + # Get the environments from the service catalogue + sc_envs = component['attributes']['environments'] + log.debug(f'Environments in Service catalogue for {component_name}: {sc_envs}') + + # Check if the environments have changed + if set(env for env in current_envs) != set(env['name'] for env in sc_envs): + component_flags['env_changed'] = True + log.info(f'Environments have changed for {component_name}') + else: + component_flags['env_changed'] = False + + # Check if the commit has changed: + if sc_latest_commit and sc_latest_commit != gh_latest_commit: + component_flags['main_changed'] = True + log.info(f'Main commit has changed for {component_name}') + else: + component_flags['main_changed'] = False + + ########################################################################################################### + # Anything after this point is only processed if the repo has been updated (component_flags will have data) + ########################################################################################################### + if not ( + component_flags['main_changed'] or component_flags['env_changed'] or force_update + ): + log.info(f'No main branch or environment changes for {component_name}') + else: + # process_changed_component function returns a dictionary of further changed fields + log.info(f'Processing changed components for: {component_name}') + data.update(process_changed_component(component, repo, services)) + + ########################################################################################################### + # Processing the environment data - updating the Environments table with information from above + # Which is basically the environments from the helm charts + ########################################################################################################### + component_env_data = [] + # Some environment data may already have been populated from helm + # It will need to be combined with environments found in bootstrap/Github + # Then updated in components (once it's been turned into a list) + if helm_environments := data.get('environments'): + log.debug( + f'Helm environment data for {component_name}: {json.dumps(helm_environments, indent=2)}' + ) + else: + helm_environments = {} + component_env_data, env_flags = environments.process_environments( + component, repo, helm_environments, bootstrap_projects, services + ) + # only update the environment if there is data in there + # since Service Catalogue doesn't like an empty list + if component_env_data: + data['environments'] = component_env_data + log.debug( + f'Final environment data for {component_name}: {json.dumps(data["environments"], indent=2)}' + ) + else: # if there's no data, remove the environments key + if data.get('environments'): + del data['environments'] + # Add environment flags to the component flags, since they're related + for each_flag in env_flags: + component_flags[each_flag] = env_flags[each_flag] + + # Update component with all results in data dictionary + if not sc.update(sc.components, component['id'], data): + log.error(f'Error updating component {component_name}') + component_flags['update_error'] = True + + else: # if the repo doesn't exist + component_flags['not_found'] = True + + return component_flags + + +########################################################################################################### +# Main batch dispatcher - this is the process that's called by github_discovery +########################################################################################################### +def batch_process_sc_components(services, max_threads, force_update=False): + log = services.log + sc = services.sc + + processed_components = [] + + bootstrap_projects = get_bootstrap_projects(services) + + components = sc.get_all_records(sc.components_get) + + log.info(f'Processing batch of {len(components)} components...') + + threads = [] + component_count = 0 + for component in components: + component_count += 1 + # Wait until the API limit is reset if we are close to the limit + cur_rate_limit = services.gh.get_rate_limit() + log.info( + f'{component_count}/{len(components)} - preparing to process {component["attributes"]["name"]} ({int(component_count / len(components) * 100)}% complete)' + ) + log.info( + f'Github API rate limit {cur_rate_limit.remaining} / {cur_rate_limit.limit} remains - resets at {cur_rate_limit.reset}' + ) + while cur_rate_limit.remaining < 500: + cur_rate_limit = services.gh.get_rate_limit() + time_delta = cur_rate_limit.reset - datetime.now(timezone.utc) + time_to_reset = time_delta.total_seconds() + if int(time_to_reset) > 10 and cur_rate_limit.remaining < 500: + log.info( + f'Backing off for {time_to_reset + 10} seconds, to avoid github API limits.' + ) + sleep( + int(time_to_reset + 10) + ) # Add a second to avoid irritating fractional settings + + # Mini function to process the component and store the result + # because the threading needs to target a function + def process_component_and_store_result( + component, bootstrap_projects, services, force_update + ): + result = process_sc_component( + component, bootstrap_projects, services, force_update + ) + processed_components.append((component['attributes']['name'], result)) + + # Create a thread for each component + t_repo = threading.Thread( + target=process_component_and_store_result, + args=(component, bootstrap_projects, services, force_update), + daemon=True, + ) + threads.append(t_repo) + + # Apply limit on total active threads, avoid github secondary API rate limit + while threading.active_count() > (max_threads - 1): + log.debug(f'Active Threads={threading.active_count()}, Max Threads={max_threads}') + sleep(10) + + t_repo.start() + log.info(f'Started thread for component {component["attributes"]["name"]}') + + # wait until all the threads are finished + for t in threads: + t.join() + + return processed_components diff --git a/processes/github_teams.py b/processes/github_teams.py new file mode 100644 index 0000000..52979c8 --- /dev/null +++ b/processes/github_teams.py @@ -0,0 +1,85 @@ +#!/usr/bin/env python +"""Github discovery - queries the github API for info about hmpps services and stores the results in the service catalogue""" + +import os +import logging +from classes.github import GithubSession +from classes.service_catalogue import ServiceCatalogue + +import includes.teams as teams + +log_level = os.environ.get('LOG_LEVEL', 'INFO').upper() + + +class Services: + def __init__(self, sc_params, gh_params, log): + self.sc = ServiceCatalogue(sc_params, log) + self.gh = GithubSession(gh_params, log) + self.log = log + + +def process_github_teams(services): + log = services.log + sc = services.sc + gh = services.gh + + processed_teams = [] + + # Get the github teams data from SC + log.info('Retrieving Github teams data ...') + sc_teams = sc.get_all_records(sc.github_teams) + # Get the github teams refenered in admin, manintain and write teams from SC + log.info('Getting Github teams references in components') + all_repo_ref_gh_teams = sc.find_all_teams_ref_in_sc() + + # Get the data from GH for teams from terraform files + log.info('Retrieving Github teams terraform data...') + tf_teamrepo = gh.get_org_repo('hmpps-github-teams') + tf_teams = teams.fetch_gh_github_teams_data(gh, tf_teamrepo, log) + tf_team_names = [team['name'] for team in tf_teams] + + combined_team_names = set(tf_team_names).union(all_repo_ref_gh_teams) + for team_name in combined_team_names: + team_flags = {} + gh_team = gh.org.get_team_by_slug(team_name) + + if any(team_name == tf_team for tf_team in tf_team_names): + terraform_managed = True + team_flags['terraform_managed'] = True + else: + terraform_managed = False + team_data = { + 'github_team_id': gh_team.id, + 'team_name': team_name, + 'team_description': gh_team.description, + 'terraform_managed': terraform_managed, + 'members': [member.login for member in gh.org.get_team(gh_team.id).get_members()], + } + + log.debug(f'team_data: {team_data}') + # Looks wthin Service Catalogue Github Teams for a matching team_name + log.debug(f'Looking for {team_name} in the service catalogue..') + if sc_team := next( + (team for team in sc_teams if team['attributes'].get('team_name') == team_name), + None, + ): + # Update the team in SC if anything has changed + for key in team_data: + if key in sc_team and team_data[key] != sc_team[key]: + log.info(f'Updating team {team_name} in the service catalogue') + if sc.update(sc.github_teams, sc_team.get('id'), team_data): + team_flags['team_updated'] = True + else: + team_flags['team_failure'] = True + break + + # Create the team in SC + else: + log.info(f'Team not found - adding {team_name} to the service catalogue') + if sc.add(sc.github_teams, team_data): + team_flags['team_added'] = True + else: + team_flags['team_failure'] = True + + processed_teams.append((team_name, team_flags)) + return processed_teams diff --git a/processes/products.py b/processes/products.py new file mode 100644 index 0000000..c5389a5 --- /dev/null +++ b/processes/products.py @@ -0,0 +1,98 @@ +import logging +import threading +import os +from time import sleep +from classes.slack import Slack +from classes.service_catalogue import ServiceCatalogue + +log_level = os.environ.get('LOG_LEVEL', 'INFO').upper() +max_threads = 10 + + +class Services: + def __init__(self, sc_params, slack_params, log): + self.sc = ServiceCatalogue(sc_params, log) + self.slack = Slack(slack_params, log) + self.log = log + + +# Processes Service Catalogue products +def process_sc_product(product, services): + sc = services.sc + slack = services.slack + log = services.log + + log.info(f'Processing product: {product["attributes"]["name"]}') + + # Empty data dict gets populated along the way, and finally used in PUT request to service catalogue + data = {} + + # Update Slack Channel name if necessary: + p_slack_channel_id = product['attributes']['slack_channel_id'] + p_slack_channel_name = product['attributes']['slack_channel_name'] + if p_slack_channel_id != '': + if slack_channel_name := slack.get_slack_channel_name_by_id(p_slack_channel_id): + if p_slack_channel_name != slack_channel_name: + data['slack_channel_name'] = slack_channel_name + + if data: + # Update product with all results in data dict. + sc.update(sc.product, product['id'], data) + + +def batch_process_sc_products(services, max_threads=10): + sc = services.sc + log = services.log + threads = [] + + products = sc.get_all_records(sc.products_get) + log.info(f'Processing batch of {len(products)} products...') + for product in products: + t_repo = threading.Thread( + target=process_sc_product, args=(product, services), daemon=True + ) + + # Slack rate limits in esoteric ways. Hopefully 10 threads is fine + # https://api.slack.com/apis/rate-limits#tiers + while threading.active_count() > (max_threads - 1): + log.debug(f'Active Threads={threading.active_count()}, Max Threads={max_threads}') + sleep(5) + threads.append(t_repo) + + t_repo.start() + log.info( + f'Started thread for product {product["attributes"]["p_id"]} ({product["attributes"]["name"]})' + ) + + for t in threads: + t.join() + return len(products) + + +def main(): + logging.basicConfig( + format='[%(asctime)s] %(levelname)s %(threadName)s %(message)s', level=log_level + ) + log = logging.getLogger(__name__) + + # service catalogue parameters from environment variables + sc_params = { + 'sc_api_endpoint': os.getenv('SERVICE_CATALOGUE_API_ENDPOINT'), + 'sc_api_token': os.getenv('SERVICE_CATALOGUE_API_KEY'), + 'sc_filter': os.getenv('SC_FILTER', ''), + } + + # slack parameters from environment variables + slack_params = { + 'slack_bot_token': os.getenv('SLACK_BOT_TOKEN'), + } + services = Services(sc_params, slack_params, log) + + log.info('Processing products...') + qty = batch_process_sc_products(services, max_threads) + log.info(f'Finished processing {qty} products.') + return qty + + +if __name__ == '__main__': + main() diff --git a/requirements.txt b/requirements.txt index 1dc5fd9..99d6aea 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,5 @@ requests==2.32.3 -PyGithub==1.59.1 +PyGithub==2.5.0 pyyaml==6.0.1 dockerfile-parse==2.0.1 slack_sdk==3.31.0 diff --git a/utilities/compare-dev-prod.py b/utilities/compare-dev-prod.py new file mode 100644 index 0000000..d0ad74f --- /dev/null +++ b/utilities/compare-dev-prod.py @@ -0,0 +1,111 @@ +# Classes for the various parts of the script +from classes.service_catalogue import ServiceCatalogue +import os +import logging + + +def compare_attributes(prod_attributes, dev_attributes, log=None): + if log is None: + log = logging.getLogger(__name__) + differences = [] + + # Get the union of keys from both dictionaries + all_keys = set(prod_attributes.keys()).union(set(dev_attributes.keys())) + + for key in all_keys: + prod_value = prod_attributes.get(key) + dev_value = dev_attributes.get(key) + + if isinstance(prod_value, dict): + if prod_value.get('id'): + prod_value.pop('id') + if isinstance(dev_value, dict): + if dev_value.get('id'): + dev_value.pop('id') + + ignored_keys = { + 'product', + 'updatedAt', + 'veracode_results_summary', + 'trivy_scan_summary', + } + if prod_value != dev_value and key not in ignored_keys: + differences.append({'key': key, 'prod_value': prod_value, 'dev_value': dev_value}) + + return differences + + +def main(): + logging.basicConfig(format='%(message)s', level='INFO') + log = logging.getLogger(__name__) + + # service catalogue parameters + sc_dev_params = { + 'url': os.getenv('SERVICE_CATALOGUE_DEV_API_ENDPOINT'), + 'key': os.getenv('SERVICE_CATALOGUE_DEV_API_KEY'), + 'filter': os.getenv('SC_FILTER', ''), + } + + sc_prod_params = { + 'url': os.getenv('SERVICE_CATALOGUE_PROD_API_ENDPOINT'), + 'key': os.getenv('SERVICE_CATALOGUE_PROD_API_KEY'), + 'filter': os.getenv('SC_FILTER', ''), + } + + sc_prod = ServiceCatalogue(sc_prod_params) + sc_dev = ServiceCatalogue(sc_dev_params) + + prod_data = sc_prod.get_all_records(sc_prod.components_get) + dev_data = sc_dev.get_all_records(sc_dev.components_get) + + for component in prod_data: + prod_attributes = component['attributes'] + dev_attributes = [ + x['attributes'] + for x in dev_data + if x['attributes']['name'] == prod_attributes['name'] + ][0] + log.info(f'{prod_attributes["name"]}') + log.info('=======================') + differences = compare_attributes(prod_attributes, dev_attributes) + for diff in differences: + if diff['key'] == 'environments': + prod_env_names = {env['name'] for env in diff['prod_value']} + dev_env_names = {env['name'] for env in diff['dev_value']} + all_env_names = prod_env_names.union(dev_env_names) + + for env_name in all_env_names: + prod_env = next( + (env for env in diff['prod_value'] if env['name'] == env_name), None + ) + dev_env = next( + (env for env in diff['dev_value'] if env['name'] == env_name), None + ) + for key in ['build_image_tag', 'id']: + if prod_env: + prod_env.pop(key, None) + if dev_env: + dev_env.pop(key, None) + + # Hack for different IP allowlist types + if prod_env and dev_env: + if not prod_env.get('ip_allow_list'): + prod_env['ip_allow_list'] = dev_env['ip_allow_list'] + if not prod_env.get('ip_allow_list_enabled') and not dev_env.get( + 'ip_allow_list_enabled' + ): + prod_env['ip_allow_list_enabled'] = dev_env['ip_allow_list_enabled'] + + if prod_env != dev_env: + log.info(f' Environment {env_name}:') + log.info(f' PROD: {prod_env}') + log.info(f' DEV: {dev_env}') + else: + log.info( + f' {diff["key"]}: PROD: {diff["prod_value"]} DEV: {diff["dev_value"]}' + ) + log.info('\n') + + +if __name__ == '__main__': + main() diff --git a/utilities/populate_tag.py b/utilities/populate_tag.py new file mode 100644 index 0000000..b1af206 --- /dev/null +++ b/utilities/populate_tag.py @@ -0,0 +1,86 @@ +# Classes for the various parts of the script +from classes.service_catalogue import ServiceCatalogue +import os +import logging +import json + + +def main(): + logging.basicConfig(format='%(message)s', level='INFO') + log = logging.getLogger(__name__) + + # service catalogue parameters + sc_dev_params = { + 'url': os.getenv('SERVICE_CATALOGUE_DEV_API_ENDPOINT'), + 'key': os.getenv('SERVICE_CATALOGUE_DEV_API_KEY'), + 'filter': os.getenv('SC_FILTER', ''), + } + + sc_prod_params = { + 'url': os.getenv('SERVICE_CATALOGUE_PROD_API_ENDPOINT'), + 'key': os.getenv('SERVICE_CATALOGUE_PROD_API_KEY'), + 'filter': os.getenv('SC_FILTER', ''), + } + + sc_prod = ServiceCatalogue(sc_prod_params) + sc_dev = ServiceCatalogue(sc_dev_params) + + prod_components = sc_prod.get_all_records(sc_prod.components_get) + dev_components = sc_dev.get_all_records(sc_dev.components_get) + dev_environments = sc_dev.get_all_records(sc_dev.environments) + + for component in prod_components: + log.info(f'Getting environment data for {component.get("attributes").get("name")}') + prod_attributes = component['attributes'] + if environments := prod_attributes.get('environments'): + for env in environments: + if build_image_tag := env.get('build_image_tag'): + log.info( + f'Copying build image tag {build_image_tag} from prod to dev for {component.get("attributes").get("name")}' + ) + dev_component = next( + ( + c + for c in dev_components + if c['attributes']['name'] == component['attributes']['name'] + ), + None, + ) + if dev_component: + dev_attributes = dev_component.get('attributes') + # Do the components first + if dev_environments := dev_attributes.get('environments'): + for dev_env in dev_environments: + if dev_env.get('name') == env.get('name'): + dev_env['build_image_tag'] = build_image_tag + log.info(f'Updated build image tag for {dev_env.get("name")}') + log.debug( + f'component environment data is now: {json.dumps(dev_environments, indent=2)}' + ) + log.info('updating dev component') + sc_dev.update( + sc_dev.environments, + dev_component['id'], + {'environments': dev_environments}, + ) + # Then do the environment tables + if dev_env_links := dev_attributes.get('envs').get('data'): + for dev_env in dev_env_links: + if dev_env_data := sc_dev.get_record( + sc_dev.environments, 'id', dev_env['id'] + ): + dev_env_data['build_image_tag'] = build_image_tag + log.debug( + f'envs environment data for {dev_env_data.get("attributes").get("name")} is now: {json.dumps(dev_env_data, indent=2)}' + ) + log.info('updating dev env') + sc_dev.update( + sc_dev.environments, + dev_env_data['id'], + {'build_image_tag': build_image_tag}, + ) + log.info('\n') + + +if __name__ == '__main__': + main() diff --git a/utilities/prod-to-local.py b/utilities/prod-to-local.py new file mode 100644 index 0000000..a2489b8 --- /dev/null +++ b/utilities/prod-to-local.py @@ -0,0 +1,139 @@ +from classes.service_catalogue import ServiceCatalogue +import os +import json +import logging + +log_level = os.environ.get('LOG_LEVEL', 'INFO').upper() +logging.basicConfig( + format='[%(asctime)s] %(levelname)s %(threadName)s %(message)s', level=log_level +) +log = logging.getLogger(__name__) + +# service catalogue parameters +sc_in_params = { + 'url': os.getenv('SC_API_PROD_ENDPOINT'), + 'key': os.getenv('SC_API_PROD_KEY'), + 'filter': os.getenv('SC_FILTER', ''), +} + +# service catalogue parameters +sc_out_params = { + 'url': os.getenv('SC_API_LOCAL_ENDPOINT'), + 'key': os.getenv('SC_API_LOCAL_KEY'), + 'filter': os.getenv('SC_FILTER', ''), +} + + +sc_in = ServiceCatalogue(sc_in_params) +sc_out = ServiceCatalogue(sc_out_params) + +# github_teams = sc_in.get_all_records('github-teams') + +tables = [ + 'service-areas', + 'product-sets', + ( + 'products', + sc_in.products_get, + # Links to other table + [ + ('product_set', 'product-sets'), + ('service_area', 'service-areas'), + ('team', 'teams'), + ], + # Subcomponents + ['parent'], + ), + ( + 'namespaces', + 'namespaces?populate[0]=elasticache_cluster&populate[1]=pingdom_check&populate[2]=rds_instance', + [], + ['elasticache_cluster', 'pingdom_check', 'rds_instance'], + ), + 'teams', + ( + 'components', + sc_in.components_get, + [('product', 'products')], + ['environments', 'latest_commit'], + ), +] +for table in tables: + subtables = [] + subcomponents = [] + if isinstance(table, tuple): + in_table = table[0] + query = table[1] + subtables = table[2] + subcomponents = table[3] + else: + in_table = table + query = table + + records = sc_in.get_all_records(query) + + for record in records: + log.debug(f'Dealing with {in_table} record: {json.dumps(record, indent=2)}') + # Subtables + for subtable in subtables: + log.debug(f'Looking for links in {subtable}') + subtable_link = subtable[0] + subtable_name = subtable[1] + # replace the subtable with just the ID + subtable_record_id = None + if subtable_data := record['attributes'].get(subtable_link): + log.debug(f'Found subtable data in {subtable_link}: {subtable_data}') + if subtable_data.get('data'): + if subtable_attributes := subtable_data['data'].get('attributes'): + if subtable_record_name := subtable_attributes.get('name'): + subtable_record_id = sc_out.get_id( + f'{subtable_name}', 'name', subtable_record_name + ) + log.debug( + f'Record ID found in {subtable_name} for {subtable_record_name}: {subtable_record_id}' + ) + else: + log.info(f'No attributes found in {subtable_link}: {subtable_data}') + record['attributes'][subtable_link] = subtable_record_id + # Subcomponents + for subcomponent in subcomponents: + subcomponent_link = subcomponent + subcomponent_name = record['attributes'].get(subcomponent) + if isinstance(subcomponent_name, dict): + record['attributes'][subcomponent_link] = None + if subcomponent_data := subcomponent_name.get('data'): + if subcomponent_id := sc_out.get_id( + f'{in_table}', 'name', subcomponent_data['attributes']['name'] + ): + log.debug( + f'Record ID found in {in_table} for {subcomponent_name}: {subcomponent_id}' + ) + record['attributes'][subcomponent_link] = subcomponent_id + else: + updated_subcomponent = [] # need to do something tricky here + log.debug(f'Subcomponent time - {subcomponent_name}') + log.debug(f'Attributes: {record["attributes"]}') + for each_element in record['attributes'][subcomponent]: + each_element.pop('id') + if subcomponent == 'environments': # add the namespace ID if possible + if namespace_name := each_element.get('namespace'): + if namespace_id := sc_out.get_id('namespaces', 'name', namespace_name): + each_element['ns'] = namespace_id + updated_subcomponent.append(each_element) + record['attributes'][subcomponent] = updated_subcomponent + log.debug(f'Updated {subcomponent} is {updated_subcomponent}') + # Update the record + log.debug(f'{in_table}:\n{json.dumps(record, indent=2)}') + if existing_id := sc_out.get_id(in_table, 'name', record['attributes']['name']): + sc_out.update(in_table, existing_id, record['attributes']) + else: + sc_out.add(in_table, record['attributes']) + +records = sc_in.get_all_records('github-teams') +for record in records: + if existing_id := sc_out.get_id( + 'github-teams', 'team_name', record['attributes']['team_name'] + ): + sc_out.update('github-teams', existing_id, record['attributes']) + else: + sc_out.add('github-teams', record['attributes'])