We encountered a number of bugs with the previous implementation where
going to the next or previous step and returning to the AWS step
resulted in incorrectly displayed information about the selected source,
etc...
All state that needs to be available during the entire wizard life cycle
has been moved to RTK.
This commit addresses warnings related to the react-hooks/exhaustive-deps rule.
It resolves these warnings by adding the missing dependencies to the useEffect hook.
The `<ReleaseSelect>` component now uses RTK instead of DDF. Some
additional small changes were necessary due to Typescript - in
particular, we use a Map() to store the releases (in order to ensure
they appear in the correct order) and .tsconfig had to be modified to
allow iteration over the Map() object.
The components for the architecture select, centos acknowledgement,
release select, and target environement have been copied and converted
to Typescript files. When these files are modified in future commits,
the result will be a clean diff where all changes made are obvious.
Before, in the Oscap step, the drop down select menu was only listing profile_ids
Now, it shows the profiles names. When the user selects one, the details about the
profile are displayed under the selection, improving user experience.
FIXES# HMS-3087
Previously a Skeleton component was used as a placeholder for an AMI when the build was still pending.
This removes the Skeleton and returns undefined rendering the AMI as empty.
The "Activation keys page" link on the Registration step previously led to prod from both prod and stage envs.
This fixes the problem and ensures that the button in stage links to the activation key management in stage and the prod one to prod.
This adds an alert to the File system configuration step that informs about newly disables `/usr` sub-directories.
It can be removed in two weeks after all the images with possible erroneous mount points are removed.
Sub-directories for `/usr` prefix are no longer supported in file system configuration. This replaces the possible erroneous path with a valid one so the user is not able to send an invalid image request via Recreate action.
The updated mountpoint policy merged in osbuild-composer upstream does
not allow sub-directories of `/usr` to be placed on a separate
partition. There are other changes, but this fix prevents users from
making an obvious error during image creation, until the updated policy
is reflected in the UI.
Related to https://issues.redhat.com/browse/COMPOSER-2030
Signed-off-by: Tomáš Hozza <thozza@redhat.com>
Bring in a review step in the wizard. The purpose is to incrementally
develop it while new steps are added to the mix. This way the Wizard
gets to be integration testable from the early beginning.
Right now the review step is only showing information about the Image
Output step. Even though the Image Output step contains data about the
target environment, these information are going to need the Target
Environment step to be developed in order to be fully shown.
Port the image output step to the new wizard v2.
This is also the first step in the new redesigned wizard and this commit
message is an opportunity to detail a bit the organisation of it:
The code is organised as followed:
- CreateImageWizard is the root and contains all the code associated
with the PF wizard. (i.e Wizard and WizardStep).
- Each step has its code under the step/ sub directory.
- The step directory is named after the step (i.e ImageOutput for the
Image Output step
- At the root of the step directory there is a file which contains the
code of the step (i.e ImageOutput.tsx).
- The main component of the step can access many subcomponents and they
have to be stored alongside it in its directory.
State management:
- The state management is only done with react use states, prop drilling
and state lifting. This is to ensure simplicity as it makes the wizard
- If necessary in the future, there might be needs for context and
reducers, but it's quite not the case RN. And using them come at the
cost of making exploring the code harder.
- CreateImageWizard will declare all the states