Skip to the content.

Architectural Decision Records (ADRs)

This directory contains the Architectural Decision Records (ADRs) for the OpenShift Agent-Based Installer Helper project. This utility provides automation and configuration management to simplify the usage of the OpenShift Agent-Based Installer.

What is an ADR?

An Architectural Decision Record (ADR) is a document that captures an important architectural decision made along with its context and consequences. It provides a record of what was decided, why it was decided, and how it impacts the project.

ADR Format

Each ADR follows a consistent format:

Index

Active ADRs

  1. ADR-001: Agent-based Installation Approach
    • Documents the foundational approach using OpenShift Agent-Based Installer
    • Covers connected and disconnected scenarios
    • Details platform support (baremetal, vsphere, none)
  2. ADR-002: Advanced Networking Configurations
    • Details network architecture and configuration options
    • Covers bonding, VLANs, and SR-IOV support
    • Provides NMState configuration examples
  3. ADR-003: Ansible-based Automation
    • Establishes automation strategy using Ansible
    • Documents declarative vs manual approaches
    • Details template management and configuration
  4. ADR-004: Disconnected Installation Support
    • Comprehensive disconnected environment support
    • Registry mirroring and certificate management
    • Proxy and update service configuration
  5. ADR-005: ISO Creation and Asset Management
    • Automated ISO generation process
    • Standardized asset organization
    • Post-installation instructions handling
  6. ADR-006: Testing and Execution Environment
    • Comprehensive testing framework
    • Dependency management
    • Environment validation strategy
  7. ADR-007: Virtual Infrastructure Testing
    • KVM/QEMU virtualization platform decisions
    • Resource allocation strategies
    • Network configuration approach
    • BMC emulation implementation
  8. ADR-008: BMC Management and Automation
    • BMC management through Redfish
    • Infrastructure configuration automation
    • Deployment and monitoring tools
    • System integration approaches
  9. ADR-009: Testing Infrastructure and ISO Management
    • ISO creation automation
    • Testing framework architecture
    • Environment management
    • Monitoring and control systems
  10. ADR-010: Manifest Generation and Template Management
    • Centralized manifest generation
    • Template organization strategy
    • Configuration management approach
    • Platform-specific customization
  11. ADR-011: Identity Management Integration
    • FreeIPA integration strategy
    • DNS management automation
    • Certificate lifecycle management
    • Authentication and authorization approach
  12. ADR-012: Deployment Patterns and Reference Configurations
    • Standardized deployment patterns
    • Network configuration templates
    • Platform-specific examples
    • Scale and architecture variations
  13. ADR-013: End-to-End Testing Framework
    • Environment management framework
    • Testing components and validation
    • Test execution orchestration
    • Infrastructure setup and cleanup

Categories

Installation Strategy

Networking

Automation & Installation

Infrastructure & Testing

Configuration & Identity Management

Reference Architecture

Testing Framework

ADR States

ADRs can have the following states:

Contributing

When creating a new ADR:

  1. Copy the template from an existing ADR
  2. Use the next available number in sequence
  3. Follow the established format
  4. Update this index with the new ADR
  5. Link related ADRs together