Uploaded image for project: 'OpenShift Cloud'
  1. OpenShift Cloud
  2. OCPCLOUD-2647

Implement CAPI to MAPI Machine conversion

XMLWordPrintable

    • Icon: Story Story
    • Resolution: Unresolved
    • Icon: Normal Normal
    • None
    • None
    • CLOUD Sprint 261, CLOUD Sprint 263, CLOUD Sprint 262

      Background

      To enable CAPI MachineSets to still mirror MAPI MachineSets accurately, and to enable MAPI MachineSets to be implemented by CAPI MachineSets in the future, we need to implement a way to convert CAPI Machines back into MAPI Machines.

      These steps assume that the CAPI Machine is authoritative, or, that there is no MAPI Machines.

      Behaviours

      • If no Machine exists in MAPI
        • But the CAPI Machine is owned, and that owner exists in MAPI
          • Create a MAPI Machine to mirror the CAPI Machine
          • MAPI Machines should set authority to CAPI on create
      • If a MAPI Machine exists
        • Convert infrastructure template from InfraMachine to providerSpec
        • Update spec and status fields of MAPI Machine to reflect CAPI Machine
      •  On failures
        • Set Synchronized condition to False and report error on MAPI resource
      • On success
        • Set Synchronized condition to True on MAPI resource
        • Set status.synchronizedGeneration to match the auth resource generation

      Steps

      • Implement conversion based on the behaviours outlined above using the CAPI to MAPI conversion library

      Stakeholders

      • Cluster Infra

      Definition of Done

      • When a CAPI MachineSet scales up and is mirrored in MAPI, the CAPI Machine gets mirrored into MAPI
      • Docs
      • <Add docs requirements for this card>
      • Testing
      • <Explain testing that will be added>

              rh-ee-tbarberb Theo Barber-Bany
              joelspeed Joel Speed
              Milind Yadav Milind Yadav
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated: