Code repositories
Getting the code
Almost all HOCS code is open-source and publicly available on GitHub. This page lists the GitHub repos and a GitHub PR filter.
Core components
hocs-audit
Receives audit event messages from an SQS queue for persistent storage.
hocs-case-creator
Reads a message containing a JSON payload from an AWS SQS Queue, and creates a cases with associated data.
hocs-casework
Handles interactions with reference data specific to cases.
hocs-data 🔒️ (to be deprecated)
The CS schema.
hocs-data-wcs 🔒️ (to be deprecated)
The WCS schema.
hocs-docs
Handles interactions with documents stored in S3, document conversion, and virus scanning.
hocs-docs-converter
Accepts any document as a parameter and returns a .pdf
document.
hocs-info-service
Handles various reference data interactions.
hocs-notify
Sends emails to users based on system events.
hocs-outbound-proxy
A transparent proxy using Squid, to be used in conjunction with kubernetes network policies, traffic is limited to whitelisted domains.
hocs-search
Serves the search functionality through the use of elasticsearch
/ opensearch
.
hocs-templates
Handles templates stored in S3 for use within caseworking functions.
hocs-workflow
Handles interactions with the workflow engine, powered by Camunda.
UI components
hocs-frontend
React application and NodeJS Server for server rendered dynamic forms.
hocs-management-ui
React application for performing management utility functions.
Utility components
hocs
Contains documentation (this site) and bash scripts. Launch services locally via Docker Compose from hocs
repo.
hocs-casework-search-indexer
Reindexs all data in hocs-casework to the hocs-search elasticsearch
index.
hocs-toolbox
Tools to interact with an environment’s databases.
hocs-queue-tool
A utility to manage and purge queues - both SQS and DLQ.
Testing
hocs-serenity-automation
Automated Cucumber-JVM test pack for DECS built on the Serenity BDD framework
Deployment repos
hocs-deployments-notprod 🔒
Controls deployments to notprod environments.
hocs-deployments-prod 🔒
Controls deployments to prod environments.
hocs-deployments-base
A base for deployment helmfile projects.
Infrastructure
hocs-base-image
Minimal docker image for JVM based DECS services.
hocs-ci-infrastructure
Referenced by other repos to provide centrally configured, consistent and reusable CI pipeline components.
sas-github-workflows
Contains a set of centrally configured, consistent and reusable CI pipeline components.
hocs-helm-charts
Common place for helm charts used by the HOCS service.
hocs-helm-kubectl
Docker image for CI/CD pipelines on DECS.
match-label-action
Action that fails a GitHub job if specified labels are not present within Pull Requests.
semver-calculate-action
Action that identifies the latest SemVer tag and increments it.
semver-tag-action
Action that tags a commit with a valid SemVer tag.
update-helmfile-action
Action to update a version yaml file with the latest tagged semantic version of the repository.
Schemas
hocs-ukvi-complaint-schema
The JSON schema for the UKVI Complaints Management complaint schema.
hocs-migration-schema
The JSON schema for the case migration.
### Testing
hocs-serenity-automation
Test pack used for automation testing.
GitHub Pull Request filter
See all PRs with a GitHub PR filter. The filter has the rule:
is:open repo:UKHomeOffice/hocs repo:UKHomeOffice/hocs-audit repo:UKHomeOffice/hocs-case-creator repo:UKHomeOffice/hocs-casework repo:UKHomeOffice/hocs-data repo:UKHomeOffice/hocs-data-wcs repo:UKHomeOffice/hocs-docs repo:UKHomeOffice/hocs-docs-converter repo:UKHomeOffice/hocs-info-service repo:UKHomeOffice/hocs-notify repo:UKHomeOffice/hocs-search repo:UKHomeOffice/hocs-templates repo:UKHomeOffice/hocs-workflow repo:UKHomeOffice/hocs-frontend repo:UKHomeOffice/hocs-management-ui repo:UKHomeOffice/hocs-casework-search-indexer repo:UKHomeOffice/hocs-toolbox repo:UKHomeOffice/hocs-queue-tool repo:UKHomeOffice/hocs-deployments-notprod repo:UKHomeOffice/hocs-deployments-prod repo:UKHomeOffice/hocs-deployments-base repo:UKHomeOffice/hocs-base-image repo:UKHomeOffice/hocs-ci-infrastructure repo:UKHomeOffice/sas-github-workflows repo:UKHomeOffice/hocs-helm-charts repo:UKHomeOffice/hocs-helm-kubectl repo:UKHomeOffice/match-label-action repo:UKHomeOffice/semver-calculate-action repo:UKHomeOffice/semver-tag-action repo:UKHomeOffice/update-helmfile-action repo:UKHomeOffice/hocs-ukvi-complaint-schema repo:UKHomeOffice/hocs-migration-schema