Skip to main content

Rules & Standards

Rules, standards, and best practices for working with the UIS platform. These rules are used by both human developers and AI assistants.

Rule Guides

Provisioning Rules

How to deploy and manage infrastructure on Kubernetes using UIS patterns. Covers shell script + Ansible separation, cluster testing with kubectl run, progress feedback, error handling, and Helm repository management.

Kubernetes Deployment Rules

Mandatory patterns for the automated deployment system. Covers directory structure, script requirements, dependency ordering, namespace standards, and health checks.

Ingress & Networking Rules

Traefik IngressRoute standards, multi-domain routing with HostRegexp, Authentik authentication middleware, DNS architecture, and CSP security patterns.

Secrets Management Rules

The template + gitignore pattern for secrets, variable substitution with ${VARIABLE}, security verification, namespace organization, and rotation procedures.

Git Workflow Rules

Feature branch workflow, pull request requirements, code review standards, commit message conventions, and branch management.

Development Workflow Rules

Standards for working with the codebase — path conventions, file operations, command execution (host vs. container), and Kubernetes operations.

Naming Conventions Rules

Naming patterns for manifests (sequential numbering 000–999), files, Kubernetes resources, namespaces, labels, scripts, and Ansible playbooks.

Documentation Standards

Writing consistent documentation — structure, formatting, code blocks, cross-references, and keeping docs synchronized with code.

Quick Start by Role

New to UIS? Start with Git Workflow, then Development Workflow, then Naming Conventions.

Deploying services? Read Provisioning Rules and Kubernetes Deployment Rules.

Configuring access? Read Ingress & Networking Rules and Secrets Management Rules.

Contributing

Add new rules when recurring anti-patterns are discovered or new deployment patterns are established. Each rule should include correct and incorrect examples, background explanation, and links to working code.