Commit graph

1112 commits

Author SHA1 Message Date
lucasgarfield
8049f95d82 V2 Wizard: Fix edit mode initialization for custom file systems
Properly initializes wizard state in edit mode when custom file system
is in use.
2024-04-30 15:13:50 +02:00
lucasgarfield
61b23216f4 V2 Wizard: OpenSCAP edit tests
Edit mode is now fully tested and working for OpenSCAP profiles. A
handler for the PUT request was added and the fixtures were updated to
support this.

`EditImageWizard.tsx`: Previously we dispatched `initializeWizard()`
while waiting for the blueprintDetails to load. This meant that the
state was incorrect (empty) while the blueprintDetails request was
in flight.

`requestMapper.tsx`: Correctly populate state in edit mode if the
blueprint contains a custom file system – previously custom mountpoints
were dropped and automatic mode was selected.

`spyOnRequest()`: Differentiate between request types (e.g. GET, PUT)
for the same endpoint.
2024-04-30 15:13:50 +02:00
Florian Schüller
c1d6053083 ImagesTable: show detailed time when hovering over the "Updated" column 2024-04-30 10:55:06 +02:00
regexowl
baf58829eb ESLint: Make no-unused-vars rule stricter
This switches the `no-unused-vars` from warning to error and fixes the errors this caused.
2024-04-30 10:48:55 +02:00
regexowl
6e9091fab1 V2Wizard: Consistent capitalisation
This converts all headings and subheadings to sentence case for the sake of consistency.
2024-04-29 16:55:29 +02:00
regexowl
0c1af145c1 test: Add tests to check reseting public cloud states
This adds happy path tests that check whether the public cloud states get reset after the public cloud was removed from targets.
2024-04-29 15:35:59 +02:00
regexowl
f2daa9c358 V2Wizard: Reinitialize AWS/Azure/GCP after deselecting target
Fixes #1555

This reinitializes the state of AWS/Azure/GCP target after it's tile was deselected. This way the state for the target won't be hanging there.
2024-04-29 15:35:59 +02:00
regexowl
6494070a40 test: Replace image installer with guest image in happy path tests
This replaces 'image-installer' target with 'guest-image' in happy path tests which allows proper testing of FSC functionality. File system customisations are not applied to bare metal - installer images.
2024-04-29 11:57:30 +02:00
regexowl
ec8cf1c8b9 test: Add test for checking ISO only / more targets FSC options
This adds two tests that check whether the "Manually configure partitions" options is hidden on ISO only target and shown when combined with another target.
2024-04-29 11:57:30 +02:00
regexowl
a4eeab7156 V2Wizard: Remove manual partitioning for ISO only images
This hides the "Manually configure partitions" option from the FSC step for blueprints which have only ISO selected as a target.

There is already an alert in place for cases when ISO is combined with another target.
2024-04-29 11:57:30 +02:00
regexowl
ff2d629fc6 V2Wizard: Show packages only with a search term
Fixes #2012

Packages from custom repos stayed in the table upon clearing the search input. This show the results only when searchTerm is not empty.
2024-04-26 16:45:37 +02:00
regexowl
e9d28498e1 constants: Move URLs to constants
Fixes #1923

This moves all URLs from code to constants.
2024-04-26 15:54:46 +02:00
lucasgarfield
bb91840eef V2 Wizard: Fix snapshot_date field
The snapshot_date in the image_request must be a date. snapshot_date is
an optional field and if no snapshot is used, the field should be
undefined. Previously it was an empty string and this caused image
builder to return a code 400 with message "Snapshot date is not in
DateOnly (yyyy-mm-dd) format".
2024-04-26 15:03:17 +02:00
Ondrej Ezr
7246cfbd16 WizardV2: pass module_hotfixes to the request 2024-04-26 13:59:20 +02:00
Florian Schüller
88e67b3e4c BlueprintsSideBar: reset pagination on "View all" 2024-04-26 12:18:17 +02:00
regexowl
7d92d8ef71 ImagesTable: Update empty state for blueprint without images
This updates empty state for blueprints without images as per recent mocks.
2024-04-26 09:30:00 +02:00
regexowl
35b14b8de7 ImagesTable: Update empty state for Blueprints
This adds an empty state for blueprint table when there are no blueprints created.

Changes are gated behind experimental flag and preview so that the original ImagesTable isn't affected.
2024-04-26 09:20:04 +02:00
Andrew Dewar
3231b324f0 HMS-3796: Add snapshot date selection to wizard 2024-04-25 14:45:50 +02:00
regexowl
47a2653a9f V2Wizard: Deduplicate minimum size popover and set width
This sets a maximum width to the minimum size popover. Also moved code to a reusable component.
2024-04-25 12:14:43 +02:00
regexowl
99da1e2957 V2Wizard: Fix padding and size of <HelpIcon> button
This updates padding around the popover button on OpenSCAP step and makes all `<HelpIcon>` icons the default size so it's consistent throughout the Wizard.
2024-04-25 12:08:39 +02:00
regexowl
0846e4d975 V2Wizard: Convert index.js to .tsx
Fixes #1768

This converts index.js in V2Wizard to .tsx.
2024-04-25 11:56:25 +02:00
regexowl
100c5f7809 V2Wizard: Disable stig and stig_gui
Fixes #1971

This disables stig and stig_gui profiles which are currently broken.
2024-04-25 11:48:41 +02:00
regexowl
b6041d2022 V2Wizard: Add masked services to the "Disabled services" code block
Fixes #1985

This concatenates masked service to the disabled services so both get rendered in the "Disabled service" code block.

Test to check this was also added.
2024-04-25 11:40:17 +02:00
regexowl
45be93db11 test: Add debounce to tests
Extra await with longer time out was added to a test to accomodate searchTerm debounce.
2024-04-25 11:32:47 +02:00
regexowl
b80d0fa3ae V2Wizard: Debounce package search
This debounces package search so it doesn't overwhelm content API with two requests for every character.
2024-04-25 11:32:47 +02:00
regexowl
575fe0a91f Blueprints: Move debounce wait time to a constant
This moves debounce wait time to a constant so it's reusable throughout the code base.
2024-04-25 11:32:47 +02:00
regexowl
3b7a1338ec test: Add unleash flag mocking to the tests
The functionality is currently gated behind an unleash flag. This adds the mocked flag to the tests.
2024-04-25 11:22:08 +02:00
regexowl
473d750145 V2Wizard: Gate package recommendations
This gates package recommendations behind an unleash flag and preview.

The flag is `image-builder.pkgrecs.enabled`.
2024-04-25 11:22:08 +02:00
regexowl
6f6784df2d test: Add package recommendations to the happy path test
This adds unit tests for package recommendations to the `Packages.test.tsx`, testing the happy path for:
- adding single recommendation
- adding all recommendations
- removing a recommendation
2024-04-25 11:22:08 +02:00
regexowl
371588e9a2 test: Add tests for package recommendations
This updates the handlers and fixtures and adds a simple unit test testing that recommendations get rendered correctly and it's possible to add them to the blueprint.
2024-04-25 11:22:08 +02:00
regexowl
648300ffb4 V2Wizard: Add Package recommendation to the Packages step
This adds an expandable with package recommendations to the Packages step.

The recommendations are populated when two or more packages are selected.
2024-04-25 11:22:08 +02:00
regexowl
6de7645be5 API: Update imageBuilder API schema
This updates the imageBuilder API schema.
2024-04-25 11:22:08 +02:00
regexowl
2431d176ac V2Wizard: Fix padding around registration options
This updates the padding around registration options.
2024-04-25 10:05:45 +02:00
Ondrej Ezr
ff75d36203 WizardV2: fix details validation on Edit 2024-04-24 18:37:55 +02:00
regexowl
7124a6e2e6 V2Wizard: Update copy on empty state
This updates copy on empty state when no packages are found with "Available" and "Included repos" toggled.

Copy on "Selected" and "Other repos" was also updated.
2024-04-24 17:43:56 +02:00
regexowl
817a813107 V2Wizard: Fix VMware popovers
The popovers for VMware sphere types were not buttons. This caused weird behaviour with "ban" cursor when disabled and not opening popover when enabled.
2024-04-24 13:48:37 +02:00
regexowl
74db28de8a V2Wizard: Re-use activation popover for Review step
I was bothered by the organization's id in Activation key popover not being separated by an empty line. While adding it I've noticed we duplicated the component on Review step. Cleaned up the code a bit and got rid of a useEffect.
2024-04-24 13:38:06 +02:00
regexowl
c0459cb975 V2Wizard: Add a specific empty state for "Other" toggle
This adds an empty state specific for "Other repos" toggle.
2024-04-24 11:05:52 +02:00
regexowl
8dd9d32475 V2Wizard: Add "Look under included" empty state
This adds a new empty state to the "Other toggle" for "Selected" packages which will inform user, that their added packages are under "Included repos".
2024-04-24 09:28:57 +02:00
regexowl
02ca8140c4 V2Wizard: Show selected packages in included repos
Previously when a package from an other repo was selected, it was still shown under "Other repos" toggle.

As a recommended repository gets added together with the package, it should be shown under "Included repos".
2024-04-24 09:28:57 +02:00
Ondrej Ezr
fb48d59399 ImagesTable: old images alert position 2024-04-23 18:30:28 +02:00
regexowl
562fb0df08 V2Wizard: Update wording on empty state
This updates the wording and buttons for empty state.
2024-04-23 17:04:04 +02:00
regexowl
00cf55f4f0 sharedComponents: Align buttons in header
The buttons in imageBuilderHeader were stacked under the title. This makes them align next to the header title.
2024-04-23 14:32:56 +02:00
lucasgarfield
ddca8d7430 V2 Wizard: Disable back on first step (HMS-2781)
Disables the back button on the first step of the wizard. Disabling the
back button (as opposed to hiding it) is how the wizard works in the
Patternfly official examples.
2024-04-23 14:23:59 +02:00
regexowl
4189e9f31d V2Wizard: Remove "Recreate" option for expired images
This replaces the "Recreate" option for expired imaged with a disabled download link.

The change is gated behind experimental mode so V1 imagesTable composes are not affected.
2024-04-23 13:39:50 +02:00
lucasgarfield
0d6f3ca8d2 V2 Wizard: Add Blueprints title to sidebar (HMS-2781)
Added Blueprints title to align with mocks.
2024-04-23 12:11:11 +02:00
lucasgarfield
1607fda162 V2 Wizard: Add Azure tests (HMS-2781)
Adds tests to verify that building an Azure image using either sources
or manually entering the required info results in a correctly generated
request.
2024-04-23 11:58:42 +02:00
lucasgarfield
1367de0684 V2 Wizard: Add AWS tests (HMS-2781)
Adds tests to verify that building an AWS image using either sources or
an account id results in a correctly generated request.
2024-04-23 10:40:31 +02:00
lucasgarfield
a1bdcaa54f V2 Wizard: Fix OpenSCAP step
OpenSCAP profile info is now correctly loaded into the state and
verified to be in the final request with tests.

I modified the fixtures for the OpenSCAP profiles. My changes ensure we
have a Venn-diagram like overlap when changing from one profile to
another where one package is the same, one package is removed, and one
package is added. The same is true for the services and partitions. For
kernel args it is not so important as that is just a string (as opposed
to an array), so it is enough to be different.

I was able to eliminate a useEffect by replacing it with a lazy query
trigger function. Setting the second arg `preferCacheValue` to `true`
means that a request is only made if cached data is not available.

I modified the Redux reducers a bit to add some additional safety.

`changeFileSystemPartitionMode` is now responsible for initializing the
partitions field in the state by adding the root partition – previously
this was done in the components themselves by dispatching
`addPartition`. This reducer can always be safely dispatched – if the
mode is ‘manual’, dispatching it with a payload of ‘manual’ will not
result in any changes to the state.

`addPackage` is also safer now. When a package is added, the list of
packages is checked. If there is a package with an identical name, the
new package overwrites the previous package. This is useful because the
description may be different for the same package – for instance, when
adding an OpenSCAP package, we use a custom description (‘this package
required by OpenSCAP’).
2024-04-23 10:02:03 +02:00
regexowl
af5d99324d V2Wizard: Update wording on repo removal modal in Edit mode
This updates wording on a repo removal modal in Edit mode as per UX feedback.
2024-04-22 13:43:06 +02:00