Commit graph

295 commits

Author SHA1 Message Date
lucasgarfield
7c5a040ad7 V1Wizard: Change qcow search param to qcow2 (HMS-3684)
This commit changes the optional search param `target=qcow` to be
`target=qcow2` so it is in alignment with the UI.
2024-03-20 17:29:51 +01:00
regexowl
76fba98773 V1Wizard: Add search parameter for target selection (HMS-3684)
Add an optional search parameter to the V1Wizard like so:

`/insights/image-builder/imagewizard?target=iso`
or
`/insights/image-builder/imagewizard?target=qcow`

This results in wizard being opened and iso or qcow target being pre-selected. The Insights assistant chat bot will make use of this feature.
2024-03-20 17:29:51 +01:00
Gianluca Zuccarelli
0971ebf43c wizard/oscap: masked services customization
Add masked services as a customization option, since disabling systemd
units when the package isn't installed breaks the image build.
2024-03-19 10:59:31 +01:00
Anna Vítová
a3a7ea88c5 feat(HMS-3401): Add blueprints sidebar pagination 2024-03-18 10:06:05 +01:00
Simon Steinbeiss
ad25c6bcb7 V2 Wizard: Add search parameter for arch selection
Add an optional search parameter to the wizard like so:

/insights/image-builder/imagewizard?arch=aarch64

This results in the wizard being opened and 'aarch64' being pre-selected as the architecture.
The Insights assistant chat bot and our websites (access.redhat.com and
developers.redhat.com) will make use of this feature.

Relates to HMS-3684
2024-03-15 12:22:07 +01:00
Simon Steinbeiss
9020392969 V1 Wizard: Add search parameter for arch selection
Add an optional search parameter to the wizard like so:

/insights/image-builder/imagewizard?arch=aarch64

This results in the wizard being opened and 'aarch64' being pre-selected as the architecture.
The Insights assistant chat bot and our websites (access.redhat.com and
developers.redhat.com) will make use of this feature.

Relates to HMS-3684
2024-03-15 09:08:57 +01:00
Ondrej Ezr
aa6b9789a7 Blueprint: Empty state action to link
Convert Empty state action to a link and add test for it.
2024-03-13 13:29:46 +01:00
mgold1234
430ea83df0 V2 Wizard: Add File System Configuration Step (HMS-2781)
The FSC step is added to the wizard and takes full advantage of Redux
for state management.

This is still a work in progress.

Supported features:
1. Select partition mountpoint prefix (e.g. /var, /home)
2. Edit partition mountpoint suffix (e.g. /home/videogames)
3. Change displayed units (KiB, MiB, GiB)

Supported but buggy features:
1. Edit partition size

Unsupported features:
1. Add partitions
2. Remove partitions
3. Validation
2024-03-08 18:14:33 +01:00
Ondrej Ezr
b68eb896ea test: use common function to select blueprints 2024-03-07 17:19:32 +01:00
Ondrej Ezr
9b5f3631d1 Blueprints: filter composes by blueprint version
Refs: HMS-3412
2024-03-07 17:19:32 +01:00
lucasgarfield
6af38141be V2 Wizard Tests: Add tests for release and architecture
Adds tests that ensure the blueprint request is generated correctly for
all releases (rhel 8 & 9, centos 8 & 9) and for both architectures
(x86_64 and aarch64).
2024-03-07 17:03:20 +01:00
regexowl
07ec85f526 test: Increase timeout for CreateImageWizard test
The "Step Details image name invalid for more than 63 chars" is often timing out. The timeout was already increased in V2, this makes the same change for V1.
2024-03-06 10:40:57 +01:00
lucasgarfield
d204d4c5dc Blueprints Table: Clear selection button now a <Button>
As per discussion with UX, change the `Clear selection` card to a button
(link variant).
2024-03-06 10:34:22 +01:00
lucasgarfield
baddf66273 Test: rename create-image-action data-testid
The data-testid for the Create image button in the empty state has been
renamed from create-image-action has been renamed to create-image-action-empty-state.

The test `renders EmptyState child component` started failing after changing
isBeta() from false to true in the useChrome() mocking function.

It was failing because the findBy query selector was able to find two
components with this data-testid, which was truly the case - the Create
Image button in the table header, and the Create Image button in the
empty state.

I have no explanation for why this test wasn't failing before.
2024-03-05 19:27:46 +01:00
lucasgarfield
d6016519e5 Test: useChrome() mocks isBeta() returns true
The previous commit adjusts the necessary feature flags to expose the
new blueprints table and V2 wizard in stage-preview.

This causes tests where isBeta() == false to fail. This commit changes
the relevant useChrome() mocks such that isBeta() returns true.
2024-03-05 19:27:46 +01:00
Anna Vítová
5813fdaf10 feat(HMS-3686): Update position of blueprint buttons 2024-03-05 13:49:31 +01:00
Amir
97b7aa6bfd fix(HMS-3704): hiding blueprint out of sync alert 2024-03-04 18:11:10 +01:00
lucasgarfield
25a5ff7772 V2Wizard/Test: Add docstring to preparePathname helper
preparePathname() is called by the render() test helper function, this
commit adds a docstring (JSDoc format) with examples to document how it
works.
2024-03-04 16:43:55 +01:00
lucasgarfield
ad5d2007bb V2 Wizard: Add search parameter for release selection (HMS-3684)
Adding an optional search parameter to the V2 wizard like so:

/insights/image-builder/imagewizard?release=rhel8

results in the wizard being opened and RHEL 8 being pre-selected as the release.

The Insights assistant chat bot will make use of this feature.

The render() test utility function had to be updated to accept an
optional searchParams argument.
2024-03-04 16:43:55 +01:00
regexowl
c60e45cd4d test: Remove "Click through all"
This removes the "Click through all" test as it will be replaces by testing the requests for separate customisations.
2024-03-04 16:33:24 +01:00
Amir
a911c02780 Blueprints: add blueprint's images empty state 2024-03-04 15:36:06 +01:00
Amir
45d50b2440 Blueprints: Add blueprint editing 2024-03-04 14:48:32 +01:00
regexowl
9629a7259d test: Await testTile function
The `testTile` function was improperly awaited, causing problems with tests that followed.
2024-03-01 17:33:08 +01:00
lucasgarfield
3493772672 V1 Wizard: Add search parameter for release selection
Adding an optional search parameter to the wizard like so:

/insights/image-builder/imagewizard?release=rhel8

results in the wizard being opened and RHEL 8 being pre-selected as the
release.

The Insights assistant chat bot will make use of this feature.
2024-03-01 17:33:08 +01:00
regexowl
2bed43645d V2Wizard/test: Fix bug on registration step and enable tests
This fixes a bug on the registration step which made the text "Connect to Red Hat Insights" not to get rendered when registering with rhc.

All registration tests were also enabled in CreateImageWizard.test.tsx
2024-03-01 10:49:43 +01:00
regexowl
2bb8da190b test: Re-enable part of AWS tests
This re-enables the rest of AWS tests in CreateImageWizard.test.tsx
2024-03-01 10:22:11 +01:00
lucasgarfield
e923cccd41 V2Wizard/Repositories: Add payload_repositories to request and test it
Previously the V2 Wizard's request mapper was only adding the
custom_repositories field. We also need to add a nearly duplicate
payload_repositories field due to how the image-builder API works...
which is admittedly not intuitive.

Tests are also added to ensure that requests are generated correctly
when using the custom repositories feature.
2024-03-01 10:02:52 +01:00
regexowl
08563b9dfa V2Wizard/test: Add autofocus to radios and enable Keyboard accessibility tests
This adds `autoFocus` attribute to radios on AWS, Azure and GCP step.

The Keyboard accessibility tests have been re-enabled.
2024-03-01 09:38:47 +01:00
lucasgarfield
ed61f17d58 V2Wizard/Packages: Add tests for requests
Adds tests that verify using the custom packages step to add a custom
package results in a correctly generated API request.
2024-02-29 14:37:46 +01:00
regexowl
8b224a0327 V2Wizard: Remove bulk select and refresh button from the Packages step
This removes bulk select and a refresh button from the Packages step and updates tests accordingly.
2024-02-29 12:39:09 +01:00
regexowl
11cedba1af test: Re-align CreateImageWizard.test tests
The tests in the suite were improperly nested, this fixes the problem.
2024-02-29 11:19:24 +01:00
regexowl
161e9c05f0 test: Remove @ts-ignore comments
This removes `@ts-ignore` instances in the Azure test suite.
2024-02-28 18:19:57 +01:00
regexowl
2c6c326677 V2Wizard: Add packages to the Review step
This adds packages counter and a table of packages in a popover to the Review step.

The name of the field was also updated to "Additional packages".
2024-02-28 17:17:00 +01:00
regexowl
4c80ab4ad7 test: Adjust original CreateImageWizard tests according to fixture changes
The packages fixtures for content sources have "-sources" added to their name. This updates the tests accordingly.
2024-02-28 17:17:00 +01:00
regexowl
97d4ad7cc8 test: Enable packages tests
This re-enables previously disabled test for the Packages step.
2024-02-28 17:17:00 +01:00
Ondrej Ezr
627f953dfc feat(HMS-3341): pass module_hotfixes flag to compose request 2024-02-28 12:41:20 +01:00
mgold1234
174e37531c V2Wizard: add unit test to Azure step 2024-02-28 12:10:00 +01:00
Anna Vítová
45194fa225 feat(HMS-3515): Change blueprint cards to be clickable 2024-02-27 18:21:41 +01:00
regexowl
61c575c42e test: Up timeout for 'image name invalid for more than 63 chars'
This increases the timeout of 'image name invalid for more than 63 chars' to 20000.
2024-02-22 12:55:29 +01:00
regexowl
97170fb98f test: Re-enable repositories step
This reverts:
- https://github.com/osbuild/image-builder-frontend/pull/1593
2024-02-19 20:54:45 +01:00
lucasgarfield
d4c9534ecc V2Wizard/Details: Add request assertion tests
Adds tests to verify requets for images with names and descriptions are
formulated correctly.

Test functions shared/common to multiple steps were extracted to the
test utilities.
2024-02-15 13:10:34 +01:00
lucasgarfield
ef7582a8ff V2Wizard/Tests: Add new helper function interceptBlueprintRequest
The logic for spying on an API request has been extracted into a new
reusable helper function to make writing tests that need to perform
request assertions easier.
2024-02-15 13:10:34 +01:00
Thomas Lavocat
f83fd51468 wizard/oscap: kernel and services customizations
This commit ports the work done on 40b1d4de to the V1 wizard.
2024-02-15 11:30:21 +01:00
lucasgarfield
8c31e6f54f V2Wizard/Registration: Add request assertion tests
We need to start using `undefined` as the default state for when a value
has not been defined. Previously we had used things like `’’` for string
typed values. But this causes problems later when generating the request
we send to image-builder. Using `undefined` is explicit and will make
generating the requests much easier (as we don’t need to check for `’’`,
determine the intent, and convert it to undefined if necessary).
Explicit is better than implicit.

With that in mind, tests have been added to ensure that the correct
request is sent to the API for every option on the Registration step.
This is facilitated using a new `spyOnRequest()` function. In the
future, we will have similar tests for the rest of the steps.

A few other minor things:

1. We need to get the `store` using `useStore()`
for when we later call `store.getState()` because the tests use a different
store that is configured in the renderer than the one we were importing.

2. In the wizardSlice, a new type RegistrationType is added that provides
additional type safety instead of using `string`.
2024-02-14 17:01:52 +01:00
mgold1234
40b1d4de57 v2Wizrd: add kernel and services data
this commit adds kernel arguments and enabled/disabled services to Oscap step.
and also add to Review step, add some tests to kernel and services as well.
2024-02-12 17:12:26 +01:00
Amir
74f71f2dca Blueprints: Add handler for creating new blueprint 2024-02-12 15:12:14 +01:00
Amir
97a75e0465 feat(HMS-3392): add blueprint's version in image table 2024-02-08 07:35:18 +01:00
Amir
13ca8e868d feat(HMS-3431): add a blueprint build images 2024-02-07 17:58:13 +01:00
mgold1234
c80e933c2c V2Wizard: Create a folder for Review step and copy review component and enable tests
This created a new folder for the Review step and copies components that will be needed:
- ReviewStep.tsx
- ReviewStepTables.tsx
- ReviewStepTextLists.tsx
2024-02-06 14:16:16 +01:00
Ondrej Ezr
c447244c8a Blueprints: add Blueprints filtering
Enables Blueprints filtering.
Given this is a server side filtering, it also ads Debounce hook.
This hook enables delay the API request to save server roundtrips.

Refs HMS-3389
2024-02-02 14:52:46 +01:00