Uploaded image for project: 'FlightPath'
  1. FlightPath
  2. FLPATH-2979

Design ADR for X2A converter's REST API

XMLWordPrintable

    • Icon: Story Story
    • Resolution: Done
    • Icon: Major Major
    • None
    • None
    • None

      Description

      Develop and finalize an Architecture Decision Record (ADR) that defines the end-to-end integration flow between the RHDH X2A Frontend plugin and the X2A tool. This document will serve as the technical blueprint for the execution environment, security model, and API interactions.

      Required Steps (ADR Content)

      • Define Migration Lifecycle: Document the requirements for the Init, Analyze, Migrate, and Publish phases, including all input/output repositories and artifact types.
      • Architect X2A REST API: Design a new service that wraps access to the Kubernetes API, a local job metadata database, and target Git repositories.
      • Specify Job Execution Model: Formalize the use of ephemeral Kubernetes job resources and determine the strategy for state synchronization if a job fails or is deleted.
      • Design Artifact & Log Strategy: Define how logs are streamed from the K8s API and how artifacts (migration plans and Ansible sources) are persisted in target Git repositories.
      • Formalize Security & RBAC: Determine the security model, including RHDH RBAC integration, service account privileges for K8s API access, and shared-secret authentication for tool-to-API callbacks.
      • Establish API Endpoints: Outline the required REST endpoints, such as run job, getJobStatus, getJobLog, and the collectArtifacts callback.

      Acceptance Criteria

      • The ADR document is finalized and covers all highlighted topics including security and source repository handling.
      • The integration flow between the RHDH frontend and the ephemeral X2A job environment is clearly mapped.
      • Stakeholders have reviewed and agreed upon the proposed architecture for the MVP.

              mlibra@redhat.com Marek Libra
              rh-ee-eshalev Elai Shalev
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: