Commit graph

982 commits

Author SHA1 Message Date
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
regexowl
d26cecdedb Wizard: Remove aspect ratio for chart
This removes the aspect ratio for chart and sets `maintainAspectRatio` to false.

The aspect ratio was causing problems with the annotation plugin, rendering the currentDate annotation line in a wrong place for some windows sizes.
2024-02-09 17:56:34 +01:00
regexowl
948f8ae3ab Wizard: Fix dates in Release Lifecycle text on the Review step
This updates the dates shown in the description text for the Release lifecycle on the Review step.
2024-02-09 15:07:13 +01:00
mgold1234
07cfaf2ccf feat(HMS-3566) V2Wizrd: fix titles at aws step 2024-02-09 11:47:18 +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
61abf24644 V2Wizard: fix ReleaseLifecycle component in the Review step
this commit fix https://github.com/RedHatInsights/image-builder-frontend/issues/1615
add the relevant data to release lifeCycle at review step
2024-02-07 08:40:24 +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
Anna Vítová
1be52727c7 feat(HMS-3390): Add delete button in the dropdown menu to delete a blueprint 2024-02-01 10:48:11 +01:00
Anna Vítová
04e02b9426 api: update image builder api via npm run api 2024-02-01 10:48:11 +01:00
Jakub Rusz
22d8eb6634 Fix osbuild pages url
It's now lowercase.
2024-01-31 12:11:04 +01:00
mgold1234
854d87c2f2 Resolve Controlled Component Error by Initializing with Empty Strings
This commit fixes the "A component is changing an uncontrolled input to be controlled" error in React components by ensuring input values are consistently initialized as strings. Previously, values initialized as undefined led to inconsistencies in controlled component behavior. By initializing with empty strings or using value={someValue ?? ''}, we ensure that input components remain controlled throughout their lifecycle, complying with React's expectations for controlled components and enhancing overall component stability.
2024-01-30 10:58:48 +01:00
Jakub Rusz
d6773fbae1 Update architecture url 2024-01-29 10:20:43 +01:00
regexowl
c9e124b8c1 test: Enable tests
This enables test for the Repositories step.
2024-01-26 14:04:56 +01:00
regexowl
c2363e3046 test: Add content test suite to V2Wizard
This adds disabled CreateImageWizard.content.test.tsx test suite to the V2Wizard.
2024-01-26 14:04:56 +01:00
regexowl
8a178f5b7d V2Wizard: Add components to the Repositories step skeleton
This adds needed components to the Repositories step skeleton.
2024-01-26 14:04:56 +01:00
regexowl
3c441425bb V2Wizard: Add checkRepositoriesAvailability
This adds checkRepositoriesAvailability.ts to a newly created `utilities` folder.
2024-01-26 14:04:56 +01:00
regexowl
7fe7919dfa V2Wizard: Add Repositories step to the Wizard
This adds Content as a step and Repositories as a substep to the Wizard.
2024-01-26 14:04:56 +01:00
regexowl
e854ee390c V2Wizard: Create a folder for Repositories step
This creates a new folder for the Repositories step and copies over all needed files:
- Repositories.tsx
- RepositoriesStatus.tsx
- RepositoryUnavailable.tsx
2024-01-26 14:04:56 +01:00
regexowl
7c40ca1b77 test: Enable blueprint description test
This enables a description check in the V2Wizard testing suite.
2024-01-25 16:30:32 +01:00
regexowl
27b4e226d0 ESLint: Add no-debugging-utils rule
This adds `testing-library/no-debugging-utils` rule to output an error when a debugging statement was left over in the code.
2024-01-25 15:23:57 +01:00
regexowl
269293e181 test: Remove debugging statement and change getBy query to findBy
This removes a leftover debugging statement and changes `getBy` query to an awaited async `findBy` as this was causing problems in the test when the checked component wasn't immediately available.
2024-01-25 14:57:09 +01:00
regexowl
6d6e9305d6 Wizard: Temporarily disable Recreate for images with custom repositories
This temporarily disables recreating images containing custom repos.

Changes were marked with "Temporarily disable" and "REMOVE" comments to make the revert easier.
2024-01-25 14:52:27 +01:00
regexowl
0435a50d4d Wizard: Temporarily disable custom packages search
This temporarily disables custom packages search and adds an alert to the step.
2024-01-25 14:34:29 +01:00
regexowl
28468c7af6 test: Disable repositories tests
This disables all tests testing behaviour of the Repositories step.

All instances were marked with the "Temporarily disable" comment to make the complete revert easier in the future.
2024-01-25 13:53:27 +01:00
regexowl
d9d4cb02e4 test: Re-enable content testing suite
This renames CreateImageWizard.content to CreateImageWizard.content.test.js, re-enabling the testing suite.
2024-01-25 13:53:27 +01:00
dependabot[bot]
f081ca78b0 V2Wizard: add Details step to wizrd2
this commit add Details step to v2Wizard
2024-01-25 12:48:25 +01:00
Amir
017f5bfb51 feat(HMS-3391): add blueprint onclick handler 2024-01-25 09:28:34 +01:00
lucasgarfield
0f75f4862a Tests: Disable repository related tests
Disable tests related to custom repos temporarily while that feature is
unavailable.
2024-01-24 21:13:09 +01:00
lucasgarfield
48da0a79ec Wizard: Enable unavailable message for repositories
Repositories will be unavailable for the next few days.
2024-01-24 21:13:09 +01:00
lucasgarfield
531369276c ImagesTable: Add error state
It is important we have an error state for times that we may need to
bring the image builder service down for whatever reason.
2024-01-24 20:09:42 +01:00
mgold1234
c4e1709de8 V2Wizard: add oscap to wizard2
This adds the OpenSCAP step to the V2Wizard,
adds new values to the wizardSlice and enables relevant tests in the `CreateImageWizard.test.tsx` test suite
2024-01-24 13:36:04 +01:00
lucasgarfield
46ac78b1de api: update image builder api via npm run api
There have been some recent updates to the /experimental/ routes related
to blueprints, this commit pulls them in.
2024-01-22 15:31:33 +01:00
lucasgarfield
819863835b LandingPage: Hotfix to remove exposed blueprint buttons
Commit bae6435fd9 adds scaffolding for the
blueprint table. Blueprint features should be hidden behind experimental
flags. The new buttons related to creating blueprints and rebuilding
images in the header were not hidden behind the experimental flag, this
commit fixes that and does so.

bae6435fd9 also changed the header title
from "Image Builder" to "Images". This change has been a long time
coming - it is being left in for now. We may want to revisit the copy in
the popovers to align it as the term "Image Builder" is still being used
in those.
2024-01-22 10:06:40 +01:00
Amir
c2e7c34d6e feat(HMS-3386): add blueprints initial layout 2024-01-19 17:20:21 +01:00
regexowl
0982cbe8db test: Update tests
After bumping redux from 4.2.1 to 5.0.1 and @reduxjs/toolkit from 1.9.5 to 2.0.1 some tests started to fail. Added async logic solves the issue.
2024-01-19 10:23:02 +01:00
regexowl
fdad6adb92 deps: Bump redux and @reduxjs/toolkit
This bumps redux from version 4.2.1 to 5.0.1 and @reduxjs/toolkit from 1.9.5 to 2.0.1
2024-01-19 10:23:02 +01:00
regexowl
2a9fcd7470 Wizard: Indicate disabled packages
When a package is added to the chosen packages it stays in the list of available packages, but gets disabled as an option.

This adds a visual indication in a form of greyed out name of the package.
2024-01-19 09:47:46 +01:00
regexowl
f90718815b test: Replace .getBy queries by awaited .findBy
Components sometimes render slower than tests run which causes failures when the test suite expects elements that did not finish their rendering yet.

This should help to prevent most of possible problems with the rendering speed.
2024-01-17 17:19:57 +01:00
regexowl
7b61700c06 V2Wizard: Enable tests for the Registration step
This re-enables all the tests that are checking the behavior of the Registration step.
2024-01-17 09:33:13 +01:00
regexowl
360984df7c V2Wizard: Add components to the Registration step
This migrates all the needed components from Javascript and DDF to Typescript and RTK.

New slices were added for registration type and activation key.

Disabling the "Next" button should work correctly now.
2024-01-17 09:33:13 +01:00
regexowl
9ce438295d V2Wizard: Create a folder for Registration step and copy needed components
This created a new folder for the Registration step and copies components that will be needed:
- ActivationKeyInformation.tsx
- ActivationKeys.tsx
- Registration.tsx
- RegistrationKeyInformation.tsx
2024-01-17 09:33:13 +01:00
lucasgarfield
d26a7658db V2Wizard: Fix wizard initializeWizard action
Fixes #1552.

The wizardSlice's initializeWizard action was not working because when it
was passed to `dispatch()` as an argument it was missing the `()`...
oops!

It also needs to be dispatched inside of a useEffect hook with an empty
dependency array so that it is only dispatched once, when the wizard
opens.
2024-01-16 17:23:22 +01:00
regexowl
55686cc844 V2Wizard: Improve validators
Follow up to https://github.com/RedHatInsights/image-builder-frontend/pull/1548

This cleans up implementation for the AWS account ID ad GCP e-mail validators.
2024-01-15 17:37:28 +01:00
lucasgarfield
3ed2192358 V2Wizard: Enable GCP tests
All tests passing except when required to move to registration step as
it has not been implemented yet.
2024-01-15 16:42:28 +01:00
lucasgarfield
ce23667833 V2Wizard: Add datatest-id support to <ValidatedTextInput>
Adds a `dataTestId` prop to the `<ValidatedTextInput>`.
2024-01-15 16:42:28 +01:00