Compare commits

..

2290 commits

Author SHA1 Message Date
robojerk
080513ad6d did stuff 2025-08-26 11:15:33 -07:00
Michal Gold
7391652e17 Wizard: Replace deprecated innerRef with ref in RegionsSelect MenuToggle
Replace `innerRef` prop with standard React `ref` prop in MenuToggle component
2025-08-21 19:42:39 +00:00
Gianluca Zuccarelli
9a17373234 Hooks: extract auth.getUser to its own hook
This code was being called in multiple places and was causing issues
with the on-prem frontend. Extract the logic to a single hook and only
get the `userData` for the hosted frontend.
2025-08-21 16:12:09 +00:00
schutzbot
d7f844b8b6 Post release version bump
[skip ci]
2025-08-21 15:34:33 +00:00
Gianluca Zuccarelli
859b7cace8 Wizard: on-prem aws region in edit
The AWS region was getting reset when going into edit mode for a blueprint.
This was because the request wasn't being properly mapped back to the correct
state.
2025-08-21 13:45:26 +00:00
Gianluca Zuccarelli
3a83a14720 BlueprintCard: fix name truncation
This might be an issue with the pf6 truncate component. Since we're not
really using the popover, we can just use vanilla js to truncate the
string rather than use the Truncate component. We can match the
behaviour of the component by also splitting on 24 characters.

https://github.com/patternfly/patternfly-react/issues/11964
2025-08-21 13:44:58 +00:00
Anna Vítová
e61cb99f1b Launch: implement guidance for Azure (HMS-9003)
This commit adds launch modal for guiding users through launching an
Azure instance from their image. As the launch service will be decommissioned,
the flag shall be turned on, the code will later be cleaned up and the
Provisioning wizard removed.
2025-08-21 12:02:20 +00:00
Michal Gold
a5aa15cbcb Wizard: Resolve row reordering issue on selection and expansion
- Fix issue when clicking the expandable arrow or selecting a package checkbox in the Packages step it caused unexpected row reordering.
- Updated sorting logic to ensure that selecting a package with a specific stream groups all related module streams together at the top.
- Ensured that rows expand in place and selection does not affect row position.
- Add unit test as well
2025-08-21 10:17:06 +00:00
Gianluca Zuccarelli
44c3674072 devDeps: Bump msw from 2.10.4 to 2.10.5
This bumps msw from 2.10.4 to 2.10.5
2025-08-21 10:05:42 +00:00
Anna Vítová
4d783537fb Launch: implement guidance for Oracle (HMS-9004)
This commit adds launch modal for guiding users through launching a Oracle instance from their image. It provides a link to Oracle's cloud and a link for importing the image on the user's side.
2025-08-21 07:42:26 +00:00
Gianluca Zuccarelli
0b96c64c93 devDeps: Bump typescript deps
This bumps @typescript-eslint/eslint-plugin and
@typescript-eslint/parser from 8.40.0 to 8.40.0.
These need to be bumped in tandem.
2025-08-20 19:52:49 +00:00
dependabot[bot]
0d917c3cd8 build(deps-dev): bump @types/node from 24.1.0 to 24.3.0
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 24.1.0 to 24.3.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-version: 24.3.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-20 15:56:27 +00:00
Sanne Raymaekers
957700adcc .gitlab-ci.yml: switch to rhel-10.1 nightly 2025-08-20 12:32:43 +00:00
Sanne Raymaekers
fa0560ac4d playwright: wait until distro and arch have been initialized
On-prem the distro and architecture are set after the wizard has been
opened. This triggers a reload of the image types and makes the tests
very flaky.
2025-08-20 12:32:43 +00:00
Sanne Raymaekers
0e7f5d9e7b plans: add gating tests
This tmt[0] test runs the playwright tests as gating tests. Having the
gating tests upstream avoids duplication across fedora and centos
dist-git repositories, and running them upstream should keep them in
working order.

Only add x86_64 for now, the aarch runners seem to be a bit too slow.

[0]: https://tmt.readthedocs.io/en/stable/index.html
2025-08-20 12:32:43 +00:00
schutzbot
e0dd33fdc9 Post release version bump
[skip ci]
2025-08-20 08:35:04 +00:00
dependabot[bot]
b0393a5f4f build(deps-dev): bump typescript-eslint from 8.38.0 to 8.40.0
Bumps [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) from 8.38.0 to 8.40.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.40.0/packages/typescript-eslint)

---
updated-dependencies:
- dependency-name: typescript-eslint
  dependency-version: 8.40.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-19 14:46:01 +00:00
Anna Vítová
a9d2ba59a8 Launch: implement guidance for GCP (HMS-9004)
This commit adds launch modal for guiding users through launching a GCP
instance from their image. This commit also adds unique image name in
the command in the clipboard. That way, users can rebuild the image more
times without worrying about duplicate names. This guidance should be as
helpful to users as possible, so even if they are able to create their
own image name here, we chose it for them for the sake of simplicity.
2025-08-19 09:24:45 +00:00
Katarina Sieklova
af19251f17 build(deps): bump @redhat-cloud-services/frontend-components-notifications from 6.1.3 to 6.1.5 2025-08-18 17:55:45 +00:00
Anna Vítová
090544c333 Launch: implement guidance for AWS (HMS-9002)
This commit adds launch modal for guiding users through launching an AWS
instance from their image. As the launch service will be decommissioned,
the flag shall be turned on, the code will later be cleaned up and the
Provisioning wizard removed.
2025-08-18 15:57:58 +00:00
dependabot[bot]
4b188a0393 build(deps): bump @sentry/webpack-plugin from 4.1.0 to 4.1.1
Bumps [@sentry/webpack-plugin](https://github.com/getsentry/sentry-javascript-bundler-plugins) from 4.1.0 to 4.1.1.
- [Release notes](https://github.com/getsentry/sentry-javascript-bundler-plugins/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript-bundler-plugins/blob/main/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript-bundler-plugins/compare/4.1.0...4.1.1)

---
updated-dependencies:
- dependency-name: "@sentry/webpack-plugin"
  dependency-version: 4.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 10:09:28 +00:00
dependabot[bot]
63f55c7408 build(deps-dev): bump eslint from 9.32.0 to 9.33.0
Bumps [eslint](https://github.com/eslint/eslint) from 9.32.0 to 9.33.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.32.0...v9.33.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 9.33.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 07:54:24 +00:00
dependabot[bot]
bc3288a83e build(deps-dev): bump eslint-plugin-prettier from 5.5.3 to 5.5.4
Bumps [eslint-plugin-prettier](https://github.com/prettier/eslint-plugin-prettier) from 5.5.3 to 5.5.4.
- [Release notes](https://github.com/prettier/eslint-plugin-prettier/releases)
- [Changelog](https://github.com/prettier/eslint-plugin-prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/eslint-plugin-prettier/compare/v5.5.3...v5.5.4)

---
updated-dependencies:
- dependency-name: eslint-plugin-prettier
  dependency-version: 5.5.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 07:54:05 +00:00
regexowl
3e5c5dca76 devDeps: Bump typescript deps
This bumps @typescript-eslint/eslint-plugin and @typescript-eslint/parser from 8.39.0 to 8.39.1

These need to be bumped in tandem.
2025-08-17 10:09:21 +00:00
regexowl
04f0528701 devDeps: Bump stylelint deps
This bumps stylelint-config-recommended-scss from 15.0.1 to 16.0.0 and stylelint from 16.23.0 to 16.23.1, these need to be bumped together
2025-08-17 09:46:42 +00:00
red-hat-konflux[bot]
3e2e9dcaa6 chore(deps): update konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-08-17 09:46:00 +00:00
Katarina Sieklova
54e413f459 Wizard: fix overflowing bp name
Truncate the name of a bp if it's too long and does not fit the Blueprint card on landing page. Not sure truncating is what we want tho.

Fixes #3034
2025-08-15 07:35:46 +00:00
dependabot[bot]
f6f6e58449 build(deps): bump @patternfly/patternfly from 6.3.0 to 6.3.1
Bumps [@patternfly/patternfly](https://github.com/patternfly/patternfly) from 6.3.0 to 6.3.1.
- [Release notes](https://github.com/patternfly/patternfly/releases)
- [Changelog](https://github.com/patternfly/patternfly/blob/main/release.config.js)
- [Commits](https://github.com/patternfly/patternfly/compare/v6.3.0...v6.3.1)

---
updated-dependencies:
- dependency-name: "@patternfly/patternfly"
  dependency-version: 6.3.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-15 06:25:42 +00:00
Michal Gold
bf77501eea Wizard: Display customized policy rules in review summary
Previously, when a user selected a compliance policy with tailored rules,
the review page always showed the default profile customizations instead
of the policy-specific customizations.

Root cause: OscapProfileInformation component was only using the profile
endpoint (/oscap/{distribution}/{profile}/customizations) which returns
base profile rules, not the policy endpoint
(/oscap/{policy}/{distribution}/policy_customizations) which returns
customized rules.

Changes:
- Add useGetOscapCustomizationsForPolicyQuery export to backendApi
- Implement dual data fetching in OscapProfileInformation:
  * Profile endpoint: for description and reference ID
  * Policy endpoint: for customized packages, services, kernel args

Fixes the compliance policy customization display bug where edited
policy rules were not reflected in the image build summary.

Add unit tests for compliance policy customizations

Fix profile description title
2025-08-14 19:42:19 +00:00
dependabot[bot]
42b16bafd8 build(deps): bump @patternfly/react-core from 6.3.0 to 6.3.1
Bumps [@patternfly/react-core](https://github.com/patternfly/patternfly-react) from 6.3.0 to 6.3.1.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.3.0...@patternfly/react-core@6.3.1)

---
updated-dependencies:
- dependency-name: "@patternfly/react-core"
  dependency-version: 6.3.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-14 14:05:46 +00:00
Lucas Garfield
04adcc133c Wizard: add AAP step 2025-08-14 11:28:49 +00:00
Gianluca Zuccarelli
11e352440f Wizard: hide some review items for cockpit frontend
Hide some of the steps in the review step that aren't applicable to the
cockpit frontend.
2025-08-14 08:41:48 +00:00
dependabot[bot]
122c481c09 build(deps): bump @sentry/webpack-plugin from 4.0.2 to 4.1.0
Bumps [@sentry/webpack-plugin](https://github.com/getsentry/sentry-javascript-bundler-plugins) from 4.0.2 to 4.1.0.
- [Release notes](https://github.com/getsentry/sentry-javascript-bundler-plugins/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript-bundler-plugins/blob/main/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript-bundler-plugins/compare/4.0.2...4.1.0)

---
updated-dependencies:
- dependency-name: "@sentry/webpack-plugin"
  dependency-version: 4.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-13 16:30:54 +00:00
Katarina Sieklova
c930621316 Wizard: clean up unit tests
Did a little cleanup of the goToReviewStep functions, and the infinite clickNext calls.
2025-08-13 15:34:18 +00:00
Gianluca Zuccarelli
cedb4f07bd test: increase timeout for satellite registration
The test started to flake because the test was starting to run longer
than the timeout that was initially set.
2025-08-13 14:32:42 +00:00
Gianluca Zuccarelli
0c47c4b165 workflows: add api generation workflow
Add a workflow to re-generate api changes on a cronjob that runs every day.
2025-08-13 14:32:42 +00:00
dependabot[bot]
223d11b691 build(deps-dev): bump eslint-plugin-testing-library from 7.6.3 to 7.6.6
Bumps [eslint-plugin-testing-library](https://github.com/testing-library/eslint-plugin-testing-library) from 7.6.3 to 7.6.6.
- [Release notes](https://github.com/testing-library/eslint-plugin-testing-library/releases)
- [Changelog](https://github.com/testing-library/eslint-plugin-testing-library/blob/main/.releaserc.json)
- [Commits](https://github.com/testing-library/eslint-plugin-testing-library/compare/v7.6.3...v7.6.6)

---
updated-dependencies:
- dependency-name: eslint-plugin-testing-library
  dependency-version: 7.6.6
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-12 15:18:51 +00:00
dependabot[bot]
62d18b2a38 build(deps): bump @redhat-cloud-services/frontend-components-utilities
Bumps [@redhat-cloud-services/frontend-components-utilities](https://github.com/RedHatInsights/frontend-components) from 7.0.2 to 7.0.3.
- [Release notes](https://github.com/RedHatInsights/frontend-components/releases)
- [Changelog](https://github.com/RedHatInsights/frontend-components/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RedHatInsights/frontend-components/compare/@redhat-cloud-services/frontend-components-utilities-7.0.2...@redhat-cloud-services/frontend-components-utilities-7.0.3)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-utilities"
  dependency-version: 7.0.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-11 12:37:45 +00:00
dependabot[bot]
df405033d5 build(deps): bump @patternfly/react-code-editor from 6.3.0 to 6.3.1
Bumps [@patternfly/react-code-editor](https://github.com/patternfly/patternfly-react) from 6.3.0 to 6.3.1.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-code-editor@6.3.0...@patternfly/react-code-editor@6.3.1)

---
updated-dependencies:
- dependency-name: "@patternfly/react-code-editor"
  dependency-version: 6.3.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-11 08:13:33 +00:00
red-hat-konflux[bot]
771abb8bc9 Update Konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-08-10 14:25:22 +00:00
dependabot[bot]
dea68f8b5c build(deps-dev): bump @patternfly/react-icons from 6.3.0 to 6.3.1
Bumps [@patternfly/react-icons](https://github.com/patternfly/patternfly-react) from 6.3.0 to 6.3.1.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-icons@6.3.0...@patternfly/react-icons@6.3.1)

---
updated-dependencies:
- dependency-name: "@patternfly/react-icons"
  dependency-version: 6.3.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-10 12:26:25 +00:00
dependabot[bot]
f668d295a6 build(deps): bump @redhat-cloud-services/frontend-components
Bumps [@redhat-cloud-services/frontend-components](https://github.com/RedHatInsights/frontend-components) from 6.1.1 to 7.0.3.
- [Release notes](https://github.com/RedHatInsights/frontend-components/releases)
- [Changelog](https://github.com/RedHatInsights/frontend-components/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RedHatInsights/frontend-components/compare/@redhat-cloud-services/frontend-components-6.1.1...@redhat-cloud-services/frontend-components-7.0.3)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components"
  dependency-version: 7.0.3
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-10 11:39:08 +00:00
Michal Gold
0af6a0324f Test: Fix race conditions in coverage tests with proper await handling
Add waitFor() for CentOS Stream 8 warning dismissal check
Add await to activation key dropdown interactions
Fixes test failures that only occurred during coverage runs due to timing delays

The changes address timing issues where UI elements don't update fast enough during coverage test runs, which are slower due to code instrumentation.
2025-08-07 14:52:37 +00:00
regexowl
eee1f78d27 Wizard: Fix lint warnings and snapshot button behaviour
This fixes lint warnings for Review step and updates behaviour of the snapshot button.

The button for reviewing repeatable build was permanently disabled, now it should be disabled only when there are no snapshotable repositories selected. The content of snapshot popover has updated rendering of states.
2025-08-07 12:08:39 +00:00
Michal Gold
d66f54a847 Wizard: Add FIPS mode support for OpenSCAP and compliance profiles (HMS-8919)
Automatically enable FIPS mode when:

User selects OpenSCAP profile with FIPS enabled (e.g., DISA STIG)
User selects compliance profile with FIPS enabled and not customized off

- Add FIPS checkbox in openscap step
- Display FIPS status in review step
- Add unit tests to FIPS checkbox feature
This ensures security compliance for profiles that require FIPS mode
without manual user intervention.
2025-08-07 11:47:17 +00:00
regexowl
3461c908fb devDeps: Bump typescript deps
This bumps @typescript-eslint/parser and @typescript-eslint/eslint-plugin from version 8.38.0 to 8.39.0

The dependencies need to be bumped in tandem.
2025-08-07 08:23:28 +00:00
Gianluca Zuccarelli
b08fee11bc devDeps: fix npm vulnerabilities
npm was complaining about some high-severity vulnerabilities. Fix these
by running `npm audit fix`
2025-08-07 07:50:47 +00:00
dependabot[bot]
e5de087810 build(deps): bump @redhat-cloud-services/frontend-components-utilities
Bumps [@redhat-cloud-services/frontend-components-utilities](https://github.com/RedHatInsights/frontend-components) from 6.1.1 to 7.0.2.
- [Release notes](https://github.com/RedHatInsights/frontend-components/releases)
- [Changelog](https://github.com/RedHatInsights/frontend-components/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RedHatInsights/frontend-components/compare/@redhat-cloud-services/frontend-components-utilities-6.1.1...@redhat-cloud-services/frontend-components-utilities-7.0.2)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-utilities"
  dependency-version: 7.0.2
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-07 06:36:41 +00:00
dependabot[bot]
0c46f052a8 build(deps-dev): bump sass from 1.89.2 to 1.90.0
Bumps [sass](https://github.com/sass/dart-sass) from 1.89.2 to 1.90.0.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.89.2...1.90.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-version: 1.90.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-07 06:35:43 +00:00
regexowl
904e4cccea Wizard: Update public cloud logo links
Assets were renamed, this updates naming and fixes logos.
2025-08-06 15:18:04 +00:00
regexowl
c868fe5d41 Wizard: Fix some lint warnings
This resolves lint warnings in `Components/CreateImageWizard`, warnings in `/steps` and `/utilities` sub-directories still need addressing.
2025-08-06 12:13:24 +00:00
regexowl
676ffc9b3a Blueprints: Fix lint warnings
This fixes lint warnings within `Components/Blueprints/.`
2025-08-06 12:13:24 +00:00
regexowl
30f4cdd9c3 ImagesTable: Fix lint warnings
This fixes lint warnings in `/ImagesTable/.`
2025-08-06 12:13:24 +00:00
schutzbot
8209bfe62c Post release version bump
[skip ci]
2025-08-06 08:41:17 +00:00
dependabot[bot]
2098ede032 build(deps): bump @patternfly/react-table from 6.3.0 to 6.3.1
Bumps [@patternfly/react-table](https://github.com/patternfly/patternfly-react) from 6.3.0 to 6.3.1.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-table@6.3.0...@patternfly/react-table@6.3.1)

---
updated-dependencies:
- dependency-name: "@patternfly/react-table"
  dependency-version: 6.3.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-06 07:05:53 +00:00
regexowl
bb345c0e4f ESLint: All the single quotes 2025-08-05 13:56:59 +00:00
regexowl
eafcd200ae ESLint: Set trailingComma to all and run lint fix 2025-08-05 13:56:59 +00:00
regexowl
e9025e460c src: Run lint autofix 2025-08-05 13:56:59 +00:00
regexowl
4c098db796 Move prettier config to ESLint config
ESLint was not enforcing prettier rules defined in `.prettierrc`, this plugs prettier in and moves the rules to ESLint config so all lint settings are in one place.
2025-08-05 13:56:59 +00:00
regexowl
2bea0bd50b Wizard: Update kernel argument validation regex
There are special characters missing from the validation regex.
2025-08-05 12:52:39 +00:00
regexowl
894d2a4d76 Wizard: Fix registration validation for Satellite on edit
When editing a blueprint with Satellite registration the "Save changes" button was disabled due to registration validation failing with "No activation key selected". Activation key is not required for Satellite.
2025-08-05 12:50:14 +00:00
dependabot[bot]
68b2f74a97 build(deps): bump @redhat-cloud-services/frontend-components-notifications
Bumps [@redhat-cloud-services/frontend-components-notifications](https://github.com/RedHatInsights/frontend-components) from 6.1.1 to 6.1.3.
- [Release notes](https://github.com/RedHatInsights/frontend-components/releases)
- [Changelog](https://github.com/RedHatInsights/frontend-components/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RedHatInsights/frontend-components/compare/@redhat-cloud-services/frontend-components-notifications-6.1.1...@redhat-cloud-services/frontend-components-notifications-6.1.3)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-notifications"
  dependency-version: 6.1.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-05 11:57:50 +00:00
dependabot[bot]
35c9f32cf8 build(deps-dev): bump @eslint/js from 9.31.0 to 9.32.0
Bumps [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) from 9.31.0 to 9.32.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/commits/v9.32.0/packages/js)

---
updated-dependencies:
- dependency-name: "@eslint/js"
  dependency-version: 9.32.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-05 11:35:15 +00:00
red-hat-konflux[bot]
7269b0c7db chore(deps): update build-tools digest to b496d0a
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-08-05 06:40:36 +00:00
Michal Gold
88dd0880c8 Wizard: Add tooltip explaining password visibility in edit mode
When editing a blueprint, password fields show an eye icon that appears
clickable but is actually disabled for security reasons (passwords cannot
be retrieved from the backend). This creates confusing UX where users
expect the icon to work but it doesn't respond.

This change adds a tooltip that appears when hovering over the disabled
eye button, explaining that "Passwords cannot be viewed when editing a
blueprint for security reasons."

The fix wraps the disabled button in a span element to ensure the tooltip
triggers properly, as disabled buttons don't receive mouse events.

Also adds unit test to verify the tooltip functionality

Fixes #3303

🤖 Generated with AI
2025-08-04 14:06:13 +00:00
dependabot[bot]
4f250ee637 build(deps-dev): bump stylelint from 16.22.0 to 16.23.0
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.22.0 to 16.23.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.22.0...16.23.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-version: 16.23.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-04 07:07:40 +00:00
Michal Gold
acc79e149c Wizard: Add FIPS state management infrastructure
- Add fips field to wizardState type with enabled boolean property
- Add fips configuration to initialState with default value false
- Add selectFips selector to access FIPS state from store
- Add changeFips reducer action to update FIPS enabled state

This provides the Redux state management foundation for FIPS mode
configuration. UI components and wizard steps will be added separately.
2025-08-04 07:04:46 +00:00
dependabot[bot]
3b8b2ad240 build(deps-dev): bump @currents/playwright from 1.15.2 to 1.15.3
Bumps [@currents/playwright](https://github.com/currents-dev/currents-playwright-changelog) from 1.15.2 to 1.15.3.
- [Changelog](https://github.com/currents-dev/currents-playwright-changelog/blob/main/CHANGELOG.md)
- [Commits](https://github.com/currents-dev/currents-playwright-changelog/commits)

---
updated-dependencies:
- dependency-name: "@currents/playwright"
  dependency-version: 1.15.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-04 07:04:28 +00:00
dependabot[bot]
9f526faa65 build(deps-dev): bump eslint-plugin-playwright from 2.2.1 to 2.2.2
Bumps [eslint-plugin-playwright](https://github.com/playwright-community/eslint-plugin-playwright) from 2.2.1 to 2.2.2.
- [Release notes](https://github.com/playwright-community/eslint-plugin-playwright/releases)
- [Changelog](https://github.com/playwright-community/eslint-plugin-playwright/blob/main/CHANGELOG.md)
- [Commits](https://github.com/playwright-community/eslint-plugin-playwright/compare/v2.2.1...v2.2.2)

---
updated-dependencies:
- dependency-name: eslint-plugin-playwright
  dependency-version: 2.2.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-04 07:03:25 +00:00
Klara Simickova
0acedb913c Revert "playwright: Add duration to test account creation request"
This reverts commit 1096c6d4fb.
2025-08-03 09:53:02 +00:00
regexowl
327e1cd48f src: Fix useChrome import, update mock, solve some lint warnings
This fixes the way we're importing `useChrome` in some places. The mock was also updated to reflect the changes. This resolves several lint warnings.
2025-08-01 10:03:39 +00:00
Ondřej Budai
1bfc830147 remove as much edge mgmt code as possible
We no longer include the edge mgmt federated module so let's remove
all remaining traces of the integration.
2025-08-01 09:00:02 +00:00
regexowl
fdaf5129c8 playwright: Update required Oscap packages
Follow up to https://github.com/osbuild/image-builder-crc/pull/1659.

This updates test to check required Oscap packages to match updated set.
2025-08-01 08:41:26 +00:00
regexowl
64e5744d8c Wizard: Remove RHEL betas from release options
This removes RHEL betas from release menu and cleans up the code in several places.
2025-07-31 13:40:21 +00:00
Katarina Sieklova
90c2c65ebe Wizard: disable adding empty user tabs
When creating an empty user, the "+" sign gets hidden, and only pops back up if at least user name, psswd, or ssh key is filed out.

Fixes #3114
2025-07-31 11:09:40 +00:00
dependabot[bot]
9943f54cd9 build(deps-dev): bump eslint-plugin-testing-library from 7.6.0 to 7.6.3
Bumps [eslint-plugin-testing-library](https://github.com/testing-library/eslint-plugin-testing-library) from 7.6.0 to 7.6.3.
- [Release notes](https://github.com/testing-library/eslint-plugin-testing-library/releases)
- [Changelog](https://github.com/testing-library/eslint-plugin-testing-library/blob/main/.releaserc.json)
- [Commits](https://github.com/testing-library/eslint-plugin-testing-library/compare/v7.6.0...v7.6.3)

---
updated-dependencies:
- dependency-name: eslint-plugin-testing-library
  dependency-version: 7.6.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-31 10:19:31 +00:00
dependabot[bot]
d94834e25f build(deps-dev): bump eslint from 9.30.1 to 9.32.0
Bumps [eslint](https://github.com/eslint/eslint) from 9.30.1 to 9.32.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.30.1...v9.32.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 9.32.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-31 10:18:50 +00:00
dependabot[bot]
9efdd82771 build(deps): bump @sentry/webpack-plugin from 4.0.1 to 4.0.2
Bumps [@sentry/webpack-plugin](https://github.com/getsentry/sentry-javascript-bundler-plugins) from 4.0.1 to 4.0.2.
- [Release notes](https://github.com/getsentry/sentry-javascript-bundler-plugins/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript-bundler-plugins/blob/main/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript-bundler-plugins/compare/4.0.1...4.0.2)

---
updated-dependencies:
- dependency-name: "@sentry/webpack-plugin"
  dependency-version: 4.0.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-31 10:18:43 +00:00
regexowl
1096c6d4fb playwright: Add duration to test account creation request
There were some changes in Ethel recently, duration currently seems to be a required field. Ethel team works on a fix.

Default value for duration is 1 year so I've set it to that.
2025-07-31 09:36:11 +00:00
regexowl
d5321bb078 Wizard: Remove alert from OpenSCAP step
Information about required packages, services and kernel arguments is back on the step. Meaning we can remove the alert as per UX recommendation.
2025-07-30 08:14:12 +00:00
dependabot[bot]
8cf161d4e5 build(deps-dev): bump @testing-library/jest-dom from 6.6.3 to 6.6.4
Bumps [@testing-library/jest-dom](https://github.com/testing-library/jest-dom) from 6.6.3 to 6.6.4.
- [Release notes](https://github.com/testing-library/jest-dom/releases)
- [Changelog](https://github.com/testing-library/jest-dom/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/jest-dom/compare/v6.6.3...v6.6.4)

---
updated-dependencies:
- dependency-name: "@testing-library/jest-dom"
  dependency-version: 6.6.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-30 07:01:25 +00:00
dependabot[bot]
98b890206b build(deps): bump @redhat-cloud-services/frontend-components-utilities
Bumps [@redhat-cloud-services/frontend-components-utilities](https://github.com/RedHatInsights/frontend-components) from 6.1.0 to 6.1.1.
- [Release notes](https://github.com/RedHatInsights/frontend-components/releases)
- [Changelog](https://github.com/RedHatInsights/frontend-components/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RedHatInsights/frontend-components/compare/@redhat-cloud-services/frontend-components-utilities-6.1.0...@redhat-cloud-services/frontend-components-utilities-6.1.1)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-utilities"
  dependency-version: 6.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-30 06:29:25 +00:00
dependabot[bot]
8d656b766c build(deps-dev): bump @testing-library/dom from 10.4.0 to 10.4.1
Bumps [@testing-library/dom](https://github.com/testing-library/dom-testing-library) from 10.4.0 to 10.4.1.
- [Release notes](https://github.com/testing-library/dom-testing-library/releases)
- [Changelog](https://github.com/testing-library/dom-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/dom-testing-library/compare/v10.4.0...v10.4.1)

---
updated-dependencies:
- dependency-name: "@testing-library/dom"
  dependency-version: 10.4.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-30 06:29:13 +00:00
Anna Vítová
ceec85209c Playwright: OSCAP basic test not altering things added by OSCAP 2025-07-29 15:46:56 +00:00
Anna Vítová
cfa8cbcb28 Compliance: refactor handleKernelAppend duplicate 2025-07-29 15:46:56 +00:00
Anna Vítová
96da1817df Compliance: refactor handlePartitions duplicate 2025-07-29 15:46:56 +00:00
Anna Vítová
9da490ad52 Compliance: refactor handleServices duplicate 2025-07-29 15:46:56 +00:00
Anna Vítová
128abcb98f Compliance: refactor handlePackages duplicate 2025-07-29 15:46:56 +00:00
Anna Vítová
c026102dd3 Compliance: refactor clearPackage duplicate 2025-07-29 15:46:56 +00:00
regexowl
d5877b256c test: Add test for failing fetching of target environments
This adds a test to check that the appropriate alert gets rendered.
2025-07-29 14:53:43 +00:00
regexowl
730554dc84 Wizard: Add fetch and error state or target environments
This renders an empty state with a spinner when fetching target environments and alert when there's an issue.
2025-07-29 14:53:43 +00:00
red-hat-konflux[bot]
09febf8061 chore(deps): update build-tools digest to 37ab5d0
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-07-29 10:09:19 +00:00
dependabot[bot]
8524e8e374 build(deps): bump @patternfly/react-core from 6.1.0 to 6.3.0
Bumps [@patternfly/react-core](https://github.com/patternfly/patternfly-react) from 6.1.0 to 6.3.0.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.1.0...@patternfly/react-core@6.3.0)

---
updated-dependencies:
- dependency-name: "@patternfly/react-core"
  dependency-version: 6.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-29 10:07:27 +00:00
dependabot[bot]
a8f21a7a90 build(deps): bump @unleash/proxy-client-react from 5.0.0 to 5.0.1
Bumps [@unleash/proxy-client-react](https://github.com/Unleash/unleash-proxy-react) from 5.0.0 to 5.0.1.
- [Release notes](https://github.com/Unleash/unleash-proxy-react/releases)
- [Changelog](https://github.com/Unleash/proxy-client-react/blob/main/Changelog.md)
- [Commits](https://github.com/Unleash/unleash-proxy-react/compare/v5.0.0...v5.0.1)

---
updated-dependencies:
- dependency-name: "@unleash/proxy-client-react"
  dependency-version: 5.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-29 09:31:27 +00:00
dependabot[bot]
e52b43bdb7 build(deps): bump @redhat-cloud-services/frontend-components-notifications
Bumps [@redhat-cloud-services/frontend-components-notifications](https://github.com/RedHatInsights/frontend-components) from 6.1.0 to 6.1.1.
- [Release notes](https://github.com/RedHatInsights/frontend-components/releases)
- [Changelog](https://github.com/RedHatInsights/frontend-components/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RedHatInsights/frontend-components/compare/@redhat-cloud-services/frontend-components-notifications-6.1.0...@redhat-cloud-services/frontend-components-notifications-6.1.1)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-notifications"
  dependency-version: 6.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-29 08:38:48 +00:00
regexowl
2c3efe4c04 Wizard: Resolve FSC lint warnings
This resolves lint warnings for File System Configuration step.
2025-07-29 08:16:27 +00:00
regexowl
ad5ea22da8 Update API
This adds changes from `npm api`.
2025-07-29 07:58:00 +00:00
regexowl
9f3ad99037 test: Remove delay for .upload user method
This sets delay to null for `uploadFile` helper, meaning there's no delay for the `.upload` user method now.
2025-07-28 10:59:46 +00:00
dependabot[bot]
f4e872548c build(deps): bump @sentry/webpack-plugin from 4.0.0 to 4.0.1
Bumps [@sentry/webpack-plugin](https://github.com/getsentry/sentry-javascript-bundler-plugins) from 4.0.0 to 4.0.1.
- [Release notes](https://github.com/getsentry/sentry-javascript-bundler-plugins/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript-bundler-plugins/blob/main/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript-bundler-plugins/compare/4.0.0...4.0.1)

---
updated-dependencies:
- dependency-name: "@sentry/webpack-plugin"
  dependency-version: 4.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-28 09:49:39 +00:00
dependabot[bot]
5b7b8daa4d build(deps): bump @redhat-cloud-services/frontend-components
Bumps [@redhat-cloud-services/frontend-components](https://github.com/RedHatInsights/frontend-components) from 6.1.0 to 6.1.1.
- [Release notes](https://github.com/RedHatInsights/frontend-components/releases)
- [Changelog](https://github.com/RedHatInsights/frontend-components/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RedHatInsights/frontend-components/compare/@redhat-cloud-services/frontend-components-6.1.0...@redhat-cloud-services/frontend-components-6.1.1)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components"
  dependency-version: 6.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-28 08:59:20 +00:00
regexowl
67a0f86dde ESLint: Set no-unused-vars rule to error
This rule should output error instead of just a warning.
2025-07-28 08:55:24 +00:00
dependabot[bot]
4d051eecde build(deps-dev): bump eslint-plugin-playwright from 2.2.0 to 2.2.1
Bumps [eslint-plugin-playwright](https://github.com/playwright-community/eslint-plugin-playwright) from 2.2.0 to 2.2.1.
- [Release notes](https://github.com/playwright-community/eslint-plugin-playwright/releases)
- [Changelog](https://github.com/playwright-community/eslint-plugin-playwright/blob/main/CHANGELOG.md)
- [Commits](https://github.com/playwright-community/eslint-plugin-playwright/compare/v2.2.0...v2.2.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-playwright
  dependency-version: 2.2.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-28 07:44:53 +00:00
Gianluca Zuccarelli
661fd29a5e playwright: add timeout for cockpit tests
Playwright at times is making assertions before the osbuild-worker file is loaded.
This is causing some flakiness in the tests, adding a timeout before some of the
assertions should hopefully remove some of the flakiness.
2025-07-25 09:47:56 +00:00
dependabot[bot]
6bf800d4d9 build(deps-dev): bump @patternfly/react-icons from 6.1.0 to 6.3.0
Bumps [@patternfly/react-icons](https://github.com/patternfly/patternfly-react) from 6.1.0 to 6.3.0.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-icons@6.1.0...@patternfly/react-icons@6.3.0)

---
updated-dependencies:
- dependency-name: "@patternfly/react-icons"
  dependency-version: 6.3.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-25 08:42:30 +00:00
dependabot[bot]
825e3beac1 build(deps-dev): bump @types/node from 24.0.13 to 24.1.0
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 24.0.13 to 24.1.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-version: 24.1.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-25 06:28:31 +00:00
Michal Gold
6f9a34c972 profileSelector: Prevent wizard refresh on Enter key in OpenSCAP profile selector
Added event.preventDefault() in onKeyDown handler to stop default form
submission behavior when hitting Enter in the typeahead filter.
Also implemented auto-selection of single filtered results on Enter.
2025-07-24 10:27:34 +00:00
regexowl
42d96edd00 test: Remove typing delay for locale test
`Step Locale - unknown option is disabled` was quite flaky recently. Removing typing delay from the userEvent actions should solve the issue.
2025-07-24 08:43:24 +00:00
dependabot[bot]
b8dc0e60c9 build(deps): bump axios from 1.10.0 to 1.11.0
Bumps [axios](https://github.com/axios/axios) from 1.10.0 to 1.11.0.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.10.0...v1.11.0)

---
updated-dependencies:
- dependency-name: axios
  dependency-version: 1.11.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-24 07:43:43 +00:00
dependabot[bot]
5c1f9dbbdd build(deps): bump @patternfly/react-code-editor from 6.1.0 to 6.3.0
Bumps [@patternfly/react-code-editor](https://github.com/patternfly/patternfly-react) from 6.1.0 to 6.3.0.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-code-editor@6.1.0...@patternfly/react-code-editor@6.3.0)

---
updated-dependencies:
- dependency-name: "@patternfly/react-code-editor"
  dependency-version: 6.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-24 06:42:38 +00:00
Gianluca Zuccarelli
3d39065ad0 README: update api generation
Since our codegen tool supports pulling in OpenAPI schemas from a url,
we no longer download the OpenAPI schema files. Update the README to
reflect the changes.
2025-07-23 10:23:12 +00:00
Gianluca Zuccarelli
f86f81d6d5 api: remove pull command
The api config supports pulling in the openapi schema's via a url, so there isn't a
need to pull this in manually and just run the code generation.

We also need to remove the `openshift-virt` target since this was removed from
image-builder-crc.
2025-07-23 10:23:12 +00:00
Gianluca Zuccarelli
690b71636a playwright: fix cockpit cloud provider test
The test was a bit flaky, move the worker file check to the end of
the test since it appears that we might be trying to read the file
before it has been created.
2025-07-23 08:58:26 +00:00
Gianluca Zuccarelli
a6eadbffac playwright: add an aws upload test
Create a blueprint configured for AWS and make sure it shows up in
the images table when it is built.
2025-07-23 08:58:26 +00:00
Gianluca Zuccarelli
8af4181ae9 store/cockpitApi: refactor /compose endpoint
The on-prem `/compose` endpoint needs to know about two different
compose requests. The image-builder-crc compose request gets saved to
the frontend's local storage. While a different request gets sent to
osbuild's cloudapi. This commit tidy's up and refactors the code in the
/compose endpoint in the cockpit api.
2025-07-23 08:58:26 +00:00
Gianluca Zuccarelli
3a9e3aa200 requestMapper: add region to aws upload type
The on-prem backend needs the aws region in order to upload the ami
target to aws. In order to do this, we use some specific cockpit types
that contain the region field, meaning that requests to image-builder-crc
should be unchanged. This is essentialy the wiring commit to get this
functionality into the `/composes` endpoint for on-prem.
2025-07-23 08:58:26 +00:00
Gianluca Zuccarelli
4339420cb8 Wizard: add region selector for on-prem AWS
We need to be able to select the region for AWS targets in the frontend
image builder. This commit adds the field to the wizard, but doesn't
wire this up to the api call just yet.
2025-07-23 08:58:26 +00:00
Gianluca Zuccarelli
fe5abaeb45 Table: fix the image table status for on prem aws uploads
We need to make some minor tweaks to get this to show properly for the
on-prem frontend.
2025-07-23 08:58:26 +00:00
Gianluca Zuccarelli
c88171da19 cockpit: add cockpit image request types
Update the types to include some cockpit specific fields to the
image requests. We could also update the image-builder-crc api
openapi specs, but this would need further discussion
2025-07-23 08:58:26 +00:00
Gianluca Zuccarelli
2f765a1d4b multi: fix analytics for on-prem
This commit fixes some more analytics calls happening in the on-prem
frontend.
2025-07-23 08:58:26 +00:00
Gianluca Zuccarelli
2ce62d4ef0 store/cockpitApi: enable aws image types 2025-07-23 08:58:26 +00:00
Gianluca Zuccarelli
253317497e CreateImageWizard: hide aws sources for on-prem
For now just allow manual entry of the aws account id, since we aren't
able to configure sources on-premise yet (if ever).
2025-07-23 08:58:26 +00:00
dependabot[bot]
8dd82d5801 build(deps): bump @sentry/webpack-plugin from 3.6.1 to 4.0.0
Bumps [@sentry/webpack-plugin](https://github.com/getsentry/sentry-javascript-bundler-plugins) from 3.6.1 to 4.0.0.
- [Release notes](https://github.com/getsentry/sentry-javascript-bundler-plugins/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript-bundler-plugins/blob/main/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript-bundler-plugins/compare/3.6.1...4.0.0)

---
updated-dependencies:
- dependency-name: "@sentry/webpack-plugin"
  dependency-version: 4.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-23 08:37:17 +00:00
schutzbot
33d3a02ee5 Post release version bump
[skip ci]
2025-07-23 08:40:00 +00:00
dependabot[bot]
1621042a08 build(deps): bump @patternfly/react-table from 6.1.0 to 6.3.0
Bumps [@patternfly/react-table](https://github.com/patternfly/patternfly-react) from 6.1.0 to 6.3.0.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-table@6.1.0...@patternfly/react-table@6.3.0)

---
updated-dependencies:
- dependency-name: "@patternfly/react-table"
  dependency-version: 6.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-23 07:04:59 +00:00
dependabot[bot]
786b334573 build(deps): bump @patternfly/patternfly from 6.1.0 to 6.3.0
Bumps [@patternfly/patternfly](https://github.com/patternfly/patternfly) from 6.1.0 to 6.3.0.
- [Release notes](https://github.com/patternfly/patternfly/releases)
- [Changelog](https://github.com/patternfly/patternfly/blob/main/release.config.js)
- [Commits](https://github.com/patternfly/patternfly/compare/v6.1.0...v6.3.0)

---
updated-dependencies:
- dependency-name: "@patternfly/patternfly"
  dependency-version: 6.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-23 06:50:20 +00:00
dependabot[bot]
c67eefbe25 build(deps): bump form-data from 4.0.1 to 4.0.4
Bumps [form-data](https://github.com/form-data/form-data) from 4.0.1 to 4.0.4.
- [Release notes](https://github.com/form-data/form-data/releases)
- [Changelog](https://github.com/form-data/form-data/blob/master/CHANGELOG.md)
- [Commits](https://github.com/form-data/form-data/compare/v4.0.1...v4.0.4)

---
updated-dependencies:
- dependency-name: form-data
  dependency-version: 4.0.4
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-22 13:42:19 +00:00
regexowl
520b94099e Wizard: Fix stuck page for package search
Fixes #3381

This resets the paging to page 1 when search term is updated.
2025-07-22 11:33:36 +00:00
regexowl
4fe4872be4 devDeps: Bump msw from 2.10.3 to 2.10.4
This bumps msw from 2.10.3 to 2.10.4
2025-07-22 10:51:34 +00:00
regexowl
f40e67a98a devDeps: Bump typecript deps
This bumps @typescript-eslint/eslint-plugin and @typescript-eslint/parser to version 8.38.0, the dependencies need to be bumped together.
2025-07-22 08:53:06 +00:00
dependabot[bot]
69751cba1a build(deps): bump @sentry/webpack-plugin from 3.5.0 to 3.6.1
Bumps [@sentry/webpack-plugin](https://github.com/getsentry/sentry-javascript-bundler-plugins) from 3.5.0 to 3.6.1.
- [Release notes](https://github.com/getsentry/sentry-javascript-bundler-plugins/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript-bundler-plugins/blob/main/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript-bundler-plugins/compare/3.5.0...3.6.1)

---
updated-dependencies:
- dependency-name: "@sentry/webpack-plugin"
  dependency-version: 3.6.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-22 08:05:40 +00:00
dependabot[bot]
06a5db21e0 build(deps-dev): bump typescript-eslint from 8.37.0 to 8.38.0
Bumps [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) from 8.37.0 to 8.38.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.38.0/packages/typescript-eslint)

---
updated-dependencies:
- dependency-name: typescript-eslint
  dependency-version: 8.38.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-22 07:16:24 +00:00
dependabot[bot]
016cf0b4f3 build(deps-dev): bump @vitejs/plugin-react from 4.6.0 to 4.7.0
Bumps [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) from 4.6.0 to 4.7.0.
- [Release notes](https://github.com/vitejs/vite-plugin-react/releases)
- [Changelog](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite-plugin-react/commits/plugin-react@4.7.0/packages/plugin-react)

---
updated-dependencies:
- dependency-name: "@vitejs/plugin-react"
  dependency-version: 4.7.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 10:30:04 +00:00
dependabot[bot]
654458c12d build(deps-dev): bump stylelint from 16.21.1 to 16.22.0
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.21.1 to 16.22.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.21.1...16.22.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-version: 16.22.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 09:59:35 +00:00
red-hat-konflux[bot]
49fef039c0 chore(deps): update konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-07-21 09:27:02 +00:00
regexowl
e657b88bfc src: Fix status text color
The `className` for text color was changed in PF6, this updates it in relevant places.
2025-07-21 07:54:20 +00:00
dependabot[bot]
cdca105c97 build(deps-dev): bump typescript-eslint from 8.35.1 to 8.37.0
---
updated-dependencies:
- dependency-name: typescript-eslint
  dependency-version: 8.37.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-18 11:17:15 +00:00
dependabot[bot]
78ea07d777 build(deps): bump on-headers and compression
---
updated-dependencies:
- dependency-name: on-headers
  dependency-version: 1.1.0
  dependency-type: indirect
- dependency-name: compression
  dependency-version: 1.8.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-18 10:50:48 +00:00
dependabot[bot]
c550ba1ae8 build(deps-dev): bump @typescript-eslint/parser from 8.36.0 to 8.37.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.36.0 to 8.37.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.37.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-version: 8.37.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-18 10:26:08 +00:00
Katarina Sieklova
d03f41f160 Wizard: Make the blueprint name unclickable after filtering
Fixes #3419
2025-07-17 14:06:48 +00:00
regexowl
0373a55f8c dependabot: Lower limit for number of open PRs
We no longer have dependency bumps "stuck" in the limbo. Let's lower the limit again as we're not overwhelmed by new dependabot PRs.
2025-07-17 12:59:03 +00:00
dependabot[bot]
eeae4f9467 build(deps-dev): bump @currents/playwright from 1.15.1 to 1.15.2
---
updated-dependencies:
- dependency-name: "@currents/playwright"
  dependency-version: 1.15.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-17 06:49:37 +00:00
dependabot[bot]
4c04f2dc54 build(deps-dev): bump eslint-plugin-testing-library from 7.5.4 to 7.6.0
Bumps [eslint-plugin-testing-library](https://github.com/testing-library/eslint-plugin-testing-library) from 7.5.4 to 7.6.0.
- [Release notes](https://github.com/testing-library/eslint-plugin-testing-library/releases)
- [Changelog](https://github.com/testing-library/eslint-plugin-testing-library/blob/main/.releaserc.json)
- [Commits](https://github.com/testing-library/eslint-plugin-testing-library/compare/v7.5.4...v7.6.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-testing-library
  dependency-version: 7.6.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-17 06:42:45 +00:00
dependabot[bot]
10ff517ab0 build(deps-dev): bump @eslint/js from 9.30.1 to 9.31.0
Bumps [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) from 9.30.1 to 9.31.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/commits/v9.31.0/packages/js)

---
updated-dependencies:
- dependency-name: "@eslint/js"
  dependency-version: 9.31.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-16 07:32:01 +00:00
regexowl
25a5f140d8 ESLint: Add rule to sort imports alphabetically
The `import/order` rule isn't enough to sort import within a single import group alphabetically.

This adds `sort-imports` rule that handles the sorting within groups.
2025-07-15 16:52:45 +00:00
regexowl
91b2cc2d10 ESLint: Add rule for duplicate imports
We had decent amount of import groups split into several imports, this adds a rule to output error when there's a duplicate import.
2025-07-15 16:52:45 +00:00
regexowl
a0fe3644c3 src: Remove more data-testids
As using `data-testid`s in tests is an anti-pattern, this removes more of them and replaces them with appropriate locators in the tests.
2025-07-15 16:51:29 +00:00
regexowl
0ea874abc6 Wizard: Fix dropdown behaviour on "Enter"
The page refreshed when pressing "Enter" while in the dropdown input. This fixes the behaviour.

If the dropdown's closed, "Enter" will open the options, if there's an input value that perfectly matches one of the activation keys, it gets selected.

The order of functions was also slightly cleaned up so they're all in one place after `useEffect`s.
2025-07-15 14:41:52 +00:00
regexowl
2406d14304 Wizard: Update activation keys dropdown
This updates key dropdown's helper text to match recent mocks.

Also checked other criteria:
- the input is clearable
- current selection is marked with a check in the list of options
2025-07-15 14:41:52 +00:00
Katarina Sieklova
c2e94100db Wizard: bring back invlaid group testing in users 2025-07-15 13:47:37 +00:00
Florian Schüller
ccfdb49db2 CreateImageWizard: Implement user-friendly error messages
Puts the error messages in one place - LabelInput.tsx
2025-07-15 13:47:37 +00:00
regexowl
3f35101f68 Migrate ESLint to v 9.x
This bumps needed dependencies and migrates previously used ESLint configs to the new flat config schema.
2025-07-15 13:39:36 +00:00
regexowl
10a40aaec4 Wizard: Move org ID into a copy-able field
This moves the org ID into a copy-able field and updates the permanent info as per mocks.

The popover that previously included the org ID is removed from mocks.
2025-07-15 13:27:46 +00:00
Gianluca Zuccarelli
c9d721ea52 playwright: add a test for cockpit cloud config
SSIA
2025-07-15 12:38:52 +00:00
Gianluca Zuccarelli
0b0171bb87 cloudConfig: add a popover for creds path
Add a popover to give more information on the aws credentials
path.
2025-07-15 12:38:52 +00:00
Gianluca Zuccarelli
1ed4380bfc cloudConfig: restart worker on submit
Restart osbuild-composer and the worker after updating the config, this
is a necessary step for osbuild-composer to register the changes.
2025-07-15 12:38:52 +00:00
Gianluca Zuccarelli
5afe1c1fc1 cloudConfig: save the aws configs
Save the AWS config modifications to the `osbuild-worker.toml` file.
2025-07-15 12:38:52 +00:00
Gianluca Zuccarelli
ca6c59bfb8 store/cockpitApi: add worker config mutation
Add an endpoint to update the worker config.
2025-07-15 12:38:52 +00:00
Gianluca Zuccarelli
09df007eb9 test/mocks: add cockpit modify
Add the `modify` file function which performs atomic modifications to a
file.
2025-07-15 12:38:52 +00:00
Gianluca Zuccarelli
c55706b931 cockpitApi: create worker config file
Create the `osbuild-worker.toml` file if it doesn't exist already.
2025-07-15 12:38:52 +00:00
Gianluca Zuccarelli
afcc0126e4 cloudConfig: toggle aws config
This is still a wip since the form fields aren't yet disabled when the
config toggle is set to off.
2025-07-15 12:38:52 +00:00
Gianluca Zuccarelli
73ffb97414 cloudConfig: error component
Add an error component to improve the UI when there is an issue reading
the `osbuild-worker.toml` file.
2025-07-15 12:38:52 +00:00
Gianluca Zuccarelli
ecc1c2c8cd cockpitApi: get worker config
Add a query to load the `/etc/osbuild-worker/osbuild-worker.toml` config
and use this to set the state of the `cloudConfig` store slice.
2025-07-15 12:38:52 +00:00
Gianluca Zuccarelli
d7945a458a cockpitApi: add worker config types
Create a few types to help stick to conventions and tidy up the code.
2025-07-15 12:38:52 +00:00
Gianluca Zuccarelli
87647f8854 cloudConfig: configure the footer
Setup the footer for the AWS config step.
2025-07-15 12:38:52 +00:00
Gianluca Zuccarelli
9d2c798376 cloudConfig: add aws config fields 2025-07-15 12:38:52 +00:00
Gianluca Zuccarelli
1e545af0c7 cloudConfigSlice: add new slice 2025-07-15 12:38:52 +00:00
regexowl
719ee1a024 README: Remove information about deprecated insights proxy
The insights proxy has been deprecated for a long time.
2025-07-15 08:34:39 +00:00
red-hat-konflux[bot]
146a9131b4 chore(deps): update build-tools digest to 07aeb0d
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-07-15 06:42:40 +00:00
Lucas Garfield
fd474dace0 PackageRecommendations: Add modelVersion to analytics tracking
Previous commit 852d24e5 added modelVersion to the API response and mentioned
adding it to analytics tracking, but only added the distribution field to
the analytics events. This commit completes the implementation by adding
modelVersion to both package recommendation analytics events:

- "Package Recommendations Shown" event now includes modelVersion
- "Recommended Package Added" event now includes modelVersion

This enables proper tracking of which recommendation models are being used
and their effectiveness.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-14 15:47:21 +00:00
regexowl
b6e9fef70b Wizard: Change WSL file extension
This updates WSL file extension from `.tar.gz` to `.wsl`
2025-07-14 14:02:03 +00:00
regexowl
10a67ca6e3 README: Re-structure, add info for external developers
This re-organizes the structure of the README so the parts are better grouped by topic.

Information for external developers was also added (VPN required for service development).
2025-07-14 10:03:42 +00:00
red-hat-konflux[bot]
d0aa6d733e chore(deps): update konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-07-14 09:05:23 +00:00
dependabot[bot]
a2da15b9d2 build(deps-dev): bump @types/node from 24.0.12 to 24.0.13
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 24.0.12 to 24.0.13.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-version: 24.0.13
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-11 07:18:31 +00:00
dependabot[bot]
6beae64f60 build(deps-dev): bump eslint-plugin-testing-library from 7.5.3 to 7.5.4
Bumps [eslint-plugin-testing-library](https://github.com/testing-library/eslint-plugin-testing-library) from 7.5.3 to 7.5.4.
- [Release notes](https://github.com/testing-library/eslint-plugin-testing-library/releases)
- [Changelog](https://github.com/testing-library/eslint-plugin-testing-library/blob/main/.releaserc.json)
- [Commits](https://github.com/testing-library/eslint-plugin-testing-library/compare/v7.5.3...v7.5.4)

---
updated-dependencies:
- dependency-name: eslint-plugin-testing-library
  dependency-version: 7.5.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-11 07:17:59 +00:00
dependabot[bot]
3e115228e4 build(deps-dev): bump @redhat-cloud-services/tsc-transform-imports
Bumps @redhat-cloud-services/tsc-transform-imports from 1.0.24 to 1.0.25.

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/tsc-transform-imports"
  dependency-version: 1.0.25
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-11 06:59:40 +00:00
dependabot[bot]
c17b54c68c build(deps-dev): bump @currents/playwright from 1.14.1 to 1.15.1
Bumps [@currents/playwright](https://github.com/currents-dev/currents-playwright-changelog) from 1.14.1 to 1.15.1.
- [Changelog](https://github.com/currents-dev/currents-playwright-changelog/blob/main/CHANGELOG.md)
- [Commits](https://github.com/currents-dev/currents-playwright-changelog/commits)

---
updated-dependencies:
- dependency-name: "@currents/playwright"
  dependency-version: 1.15.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-11 06:54:01 +00:00
regexowl
74817d87de devDeps: Bump msw from 2.10.2 to 2.10.3
This bumps msw from 2.10.2 to 2.10.3
2025-07-10 10:38:05 +00:00
dependabot[bot]
0bf939f2d0 build(deps-dev): bump eslint-plugin-import from 2.31.0 to 2.32.0
Bumps [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) from 2.31.0 to 2.32.0.
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.31.0...v2.32.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-version: 2.32.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-10 07:13:13 +00:00
dependabot[bot]
9ffbf67c42 build(deps-dev): bump @types/node from 24.0.10 to 24.0.12
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 24.0.10 to 24.0.12.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-version: 24.0.12
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-10 06:22:32 +00:00
schutzbot
8c4e8d4fab Post release version bump
[skip ci]
2025-07-09 08:37:19 +00:00
regexowl
bb9c5620ee Wizard: Show error with duplicated values
This show an error when user imports duplicate values to a `<LabelInput>` field.
2025-07-09 08:07:28 +00:00
Simon Steinbeiss
a92d087014 Drop Edge Management federated module (HMS-8637) 2025-07-09 07:03:34 +00:00
dependabot[bot]
33b374b3a0 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.35.1 to 8.36.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.36.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-version: 8.36.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-08 12:22:21 +00:00
dependabot[bot]
94bcb9672f build(deps-dev): bump @typescript-eslint/parser from 8.35.1 to 8.36.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.35.1 to 8.36.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.36.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-version: 8.36.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-08 10:49:59 +00:00
dependabot[bot]
875b8a150d build(deps-dev): bump @babel/core from 7.27.7 to 7.28.0
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.27.7 to 7.28.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.28.0/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-version: 7.28.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-07 10:03:50 +00:00
dependabot[bot]
8abeb4f53b build(deps-dev): bump stylelint from 16.21.0 to 16.21.1
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.21.0 to 16.21.1.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.21.0...16.21.1)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-version: 16.21.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-07 08:50:53 +00:00
dependabot[bot]
5c93300927 build(deps-dev): bump @babel/preset-env from 7.27.2 to 7.28.0
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.27.2 to 7.28.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.28.0/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-version: 7.28.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-07 07:10:47 +00:00
red-hat-konflux[bot]
9f8b271b7d chore(deps): update konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-07-07 06:51:36 +00:00
CD Cabrera
9a29eeb28d fix: hms-8708 landing page sticky header 2025-07-04 08:23:56 +00:00
regexowl
3f1a80fbe2 Run actions with Node 22
The github actions were previously ran with Node 20, this bumps them to Node 22.

README was also updated to reflect currently used version of Node.
2025-07-03 14:45:48 +00:00
regexowl
855f1430ad api: Update pull.sh, regenerate schemas and fix errors
This adds missing schema links to the `pull.sh` script, pulls new schema definitions, re-generates schemas and updates the code where needed.
2025-07-03 10:01:15 +00:00
regexowl
0b1abb57b9 Remove devel dockerfile and update README
Since local fullstack deployment is being done via https://github.com/osbuild/osbuild-getting-started, we can get rid of the original dockerile.

README was also updated to no longer point to the `devel` folder as it just points you to the same repository. osbuild-getting-started is mentioned in the "Backend development" section.
2025-07-03 09:28:59 +00:00
regexowl
6521a46bb1 Wizard: Replace deprecated Modals with non-deprecated ones
The schema for `Modal` component changed between PF5 and PF6, this updates the modals to their non-deprecated version.
2025-07-03 09:19:22 +00:00
regexowl
caa678ebeb Wizard: Replace VMware radios with checkboxes
This replaces previously used VMware radios with checkboxes, allowing the user to select both VMware vSphere targets at the same time.
2025-07-03 09:15:05 +00:00
regexowl
ea93498ef2 Remove IQE scripts and configs
Since we're no longer testing via IQE, we can say bye bye to the `pr_check.sh` script and `iqe-trigger-integration.yml`.
2025-07-03 09:06:08 +00:00
Lucas Garfield
5d6c6dc58b BlueprintCard: Make hand cursor appear on hover
This commit fixes an issue where if both isClickable and isSelectable
are passed to a card in Patternfly 6, the hand cursor no longer appears
on hover and it is not obvious the card is clickable.

Co-Author: Gianluca Zuccarelli <gzuccare@redhat.com>
2025-07-03 06:52:30 +00:00
regexowl
bf952c5c7a devDeps: Bump @typescript-eslint
This bumps @typescript-eslint/eslint-plugin and @typescript-eslint/parser from 8.34.1 to 8.35.1, the deps need to be bumped in tandem.
2025-07-02 10:12:41 +00:00
regexowl
6ae8b3e740 Wizard: Hide Kernel step for WSL
This hides Kernel step for WSL targets only and adds an alert with info that the customization will not be added to the WSL images if more targets are selected.
2025-07-02 10:12:01 +00:00
Dominik Vagner
eaead88a78 Fix: package search bug with RH repos in template
This fixes a bug inside of the package search step where packages from
additional (not the 2 default ones) RH repos were not coming up when
searching. This only happens when using a content template as that's
currently the only way to add more RH repos.
2025-07-02 08:28:37 +00:00
dependabot[bot]
8d106499fd build(deps-dev): bump @babel/preset-typescript from 7.27.0 to 7.27.1
Bumps [@babel/preset-typescript](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-typescript) from 7.27.0 to 7.27.1.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.1/packages/babel-preset-typescript)

---
updated-dependencies:
- dependency-name: "@babel/preset-typescript"
  dependency-version: 7.27.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-02 07:48:34 +00:00
dependabot[bot]
2c29290212 build(deps-dev): bump @types/node from 24.0.4 to 24.0.10
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 24.0.4 to 24.0.10.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-version: 24.0.10
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-02 07:08:16 +00:00
regexowl
9367bb4b28 Wizard: Remove repository column from packages table
This removes the column with repository information from package table as it could be confusing and misleading.
2025-07-02 06:39:20 +00:00
dependabot[bot]
6a62e71ec8 build(deps-dev): bump sass from 1.88.0 to 1.89.2
Bumps [sass](https://github.com/sass/dart-sass) from 1.88.0 to 1.89.2.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.88.0...1.89.2)

---
updated-dependencies:
- dependency-name: sass
  dependency-version: 1.89.2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-01 12:27:24 +00:00
dependabot[bot]
779c50762f build(deps): bump @redhat-cloud-services/frontend-components
Bumps [@redhat-cloud-services/frontend-components](https://github.com/RedHatInsights/frontend-components) from 6.0.4 to 6.1.0.
- [Release notes](https://github.com/RedHatInsights/frontend-components/releases)
- [Changelog](https://github.com/RedHatInsights/frontend-components/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RedHatInsights/frontend-components/compare/@redhat-cloud-services/frontend-components-6.0.4...@redhat-cloud-services/frontend-components-6.1.0)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components"
  dependency-version: 6.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-01 11:29:24 +00:00
regexowl
02cafcc29a devDeps: Bump eslint-plugin-testing-library
This bumps eslint-plugin-testing-library from 7.2.2 to 7.5.3 and updates a test to pass linter check.
2025-07-01 10:41:45 +00:00
dependabot[bot]
9350d4ee6b build(deps): bump @redhat-cloud-services/frontend-components-notifications
Bumps [@redhat-cloud-services/frontend-components-notifications](https://github.com/RedHatInsights/frontend-components) from 5.0.4 to 6.1.0.
- [Release notes](https://github.com/RedHatInsights/frontend-components/releases)
- [Changelog](https://github.com/RedHatInsights/frontend-components/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RedHatInsights/frontend-components/compare/@redhat-cloud-services/frontend-components-notifications-5.0.4...@redhat-cloud-services/frontend-components-notifications-6.1.0)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-notifications"
  dependency-version: 6.1.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-01 10:14:30 +00:00
regexowl
1f34e95469 Wizard: Hide FSC step for WSL targets
This hides FSC step when only WSL target is selected.
2025-07-01 09:47:09 +00:00
Gianluca Zuccarelli
e8d46dd716 deps: migrate fec/notifications
The frontend component library decoupled notifications from redux.
Dispatching notifications via the notifications middleware was replaced
by a new `useAddNotifications` hook.

We mostly used the notifications middleware outside of React Components
in our `enhancedImageBuilderApi` store for mutation events. I created a
wrapper around the RTK hooks that uses the `useAddNotification` hook
and created a directory for the new hooks.

In other places, where we were using the notification dispatcher inside
React components, I replaced the call with the new hook.

[1] b1d4973144/packages/notifications/doc/migration.md

bump @redhat-cloud-services/frontend-components-notifications

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-notifications"
  dependency-version: 6.0.2
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Co-authored-by: dependabot[bot] <support@github.com>
Assisted-by: cursor ide for generalizing the `useMutationWithNotification`
hook.
2025-07-01 09:17:38 +00:00
dependabot[bot]
77e0f5d6bf build(deps-dev): bump @babel/core from 7.27.4 to 7.27.7
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.27.4 to 7.27.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.7/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-version: 7.27.7
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-01 08:42:40 +00:00
regexowl
eafb9ea0f3 Playwright: Update login
The login screen was recently changed, this updates the tests to reflect it.
2025-07-01 07:49:10 +00:00
Michal Gold
852d24e568 PackageRecommendations: Add distribution to package recommendations
- Add required distribution field to RecommendPackageRequest
- Add modelVersion field to RecommendationsResponse
- Update frontend to send RHEL major version to API
- Add analytics tracking for distribution and modelVersion

Enables version-specific package recommendations and model usage tracking.
2025-06-30 12:51:40 +00:00
regexowl
6cefc6c199 Wizard: Render labels for all FSC table columns
This adds column names for the Suffix and Unit columns that were previously not labeled.
2025-06-30 12:41:07 +00:00
Gianluca Zuccarelli
eca4e55c67 workflows: split out dev checks into jobs
Split out the dev checks into multiple jobs, the benefit of this is that it
will be easier to see which check is failing and why.
2025-06-30 09:24:02 +00:00
Gianluca Zuccarelli
9247ea6196 workflows: split out unit tests
Split out the unit tests into their own action. This decouples the unit tests
from the other tests. This means the gitlab schutzbot tests don't have to
wait until the unit tests are completed before they are triggered. This
also a step towards splitting out the tests so it is more obvious to see
which step is failing and why.
2025-06-30 09:24:02 +00:00
Dominik Vagner
e05079330b Wizard: add EPEL 10 support
This adds support for EPEL 10 repository. Changes the way of getting
the correct EPEL version for RHEL distribution to be more future proof.
2025-06-30 08:43:32 +00:00
dependabot[bot]
12024b08c6 build(deps-dev): bump stylelint from 16.18.0 to 16.21.0
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.18.0 to 16.21.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.18.0...16.21.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-version: 16.21.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-30 07:29:27 +00:00
red-hat-konflux[bot]
d7c2202b11 Update Konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-06-30 07:07:29 +00:00
regexowl
fc874422de test: Add templates/:uuid mock handler
This adds a mock handler for the templates/:uuid end point to resolve following warning in the test output:
```
[MSW] Error: intercepted a request without a matching request handler:
  • GET /api/content-sources/v1/templates/c40e221b-93d6-4f7e-a704-f3041b8d75c3
```
2025-06-27 15:27:29 +00:00
regexowl
2894858838 Wizard: Deduplicate ManageRepositoriesButton
This moves the `ManageRepositoriesButton` component to its own file and deduplicates it in the code base.

Tooltip for Upload repositories was also fixed and is now readable again.
2025-06-27 14:28:27 +00:00
Tom Koscielniak
0319c81b41 playwright: Add check to ensure test is authenticated
In order to fix the flakiness in cockpit plugin tests introduced by the single login, the tests need a check if they are authenticated at the start of their execution and relog in case the session expired.
2025-06-27 12:53:37 +00:00
regexowl
0597541af2 Manually revert "Fedora-services: add support for fedora env"
This reverts #2984 as Fedora service frontend is not being currently actively maintained.
2025-06-27 14:15:05 +02:00
regexowl
969497e722 Wizard: Parse locale codes to readable options
This parses options in the Languages dropdown to human readable form like so:
'en_US.UTF-8' -> 'English - United States (en_US.UTF-8)'
2025-06-27 11:45:26 +02:00
regexowl
839559d42c test: Add mock handler for repository_parameters
This adds mock handler for newly used `repository_parameters` end point, ensuring the warning about missing handler is not being printed to test output when runnning `npm run test`.
2025-06-27 11:11:51 +02:00
dependabot[bot]
4ead145e38 build(deps-dev): bump @types/node from 24.0.3 to 24.0.4
---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-version: 24.0.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-27 10:33:33 +02:00
dependabot[bot]
35485fc163 build(deps-dev): bump @vitejs/plugin-react from 4.4.1 to 4.6.0
---
updated-dependencies:
- dependency-name: "@vitejs/plugin-react"
  dependency-version: 4.6.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-27 09:10:17 +02:00
Florian Schüller
2d8da339e7 cockpit/README.md: initial version 2025-06-26 15:46:31 +01:00
schutzbot
f6b1971760 Post release version bump
[skip ci]
2025-06-25 08:39:24 +00:00
regexowl
2f2f40c4b7 devDeps: Bump @typescript-eslint/eslint-plugin and @typescript-eslint/parser
The dependencies need to be bumped in tandem, both went from 8.34.0 to 8.34.1
2025-06-24 15:25:58 +00:00
Katarina Sieklova
2f034dffd8 Wizard: organize steps components into the "components" folders 2025-06-24 14:09:36 +00:00
regexowl
1ea1c2de8c Wizard: Add packages, kernel and services to Oscap step
This adds the information about profile packages, kernel arguments and services to the profile info list.
2025-06-24 12:12:54 +00:00
regexowl
47aace0c5f devDeps: Bump vitest and @vitest/coverage-v8
This bumps vitest and @vitest/coverage-v8 as they need to be updated in tandem. Both versions went from 3.1.2 to 3.2.4
2025-06-24 11:43:23 +00:00
regexowl
c98659fbd7 Wizard: Show release chart on review step for RHEL 9 as well
Follow up to #3338

Since we're showing the release lifecycle for RHEL 9 now we should probably show it also on the Review step.
2025-06-24 11:09:28 +00:00
regexowl
b9fdb9946a Wizard: Update recommendations description
Turn statements around, first explain the functionality and then specify that recommendations are not dependencies.
2025-06-24 10:03:15 +00:00
Katarina Sieklova
981b62d7b0 Wizard: conflicting packages
Disable a package if it's a conflicting module stream or if it's a non-modular package whose base name is already covered by an enabled module stream.
Disable a module if anouther package with the same name was selected.
Fixes #3274
2025-06-24 07:38:33 +00:00
Katarina Sieklova
3e4ee6891d Wizard: fix filtering of OpenSCAP profiles
Fixes #3273
2025-06-24 07:16:32 +00:00
Katarina Sieklova
064aa172a0 Wizard: add Filesystem customization test 2025-06-24 07:14:56 +00:00
Gianluca Zuccarelli
7f06002b26 Wizard: hide other repos for on-prem
There is no way of configuring 3rd party repos for on-prem as of yet,
we should hide this tab from the users.

Fixes: HMS-6135
2025-06-24 06:53:31 +00:00
regexowl
1a65c0c3d4 Wizard: Update package recommendations description
This adds more information to the recommended packages expandable to highlight that:
- all needed dependencies will be included by default
- recommendations are optional and based on choices of other users
2025-06-24 06:40:14 +00:00
dependabot[bot]
434960e0fc build(deps): bump @redhat-cloud-services/frontend-components-utilities
Bumps [@redhat-cloud-services/frontend-components-utilities](https://github.com/RedHatInsights/frontend-components) from 6.0.2 to 6.1.0.
- [Release notes](https://github.com/RedHatInsights/frontend-components/releases)
- [Changelog](https://github.com/RedHatInsights/frontend-components/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RedHatInsights/frontend-components/compare/@redhat-cloud-services/frontend-components-utilities-6.0.2...@redhat-cloud-services/frontend-components-utilities-6.1.0)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-utilities"
  dependency-version: 6.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-24 06:31:38 +00:00
dependabot[bot]
0d65220826 build(deps-dev): bump @currents/playwright from 1.13.2 to 1.14.1
Bumps [@currents/playwright](https://github.com/currents-dev/currents-playwright-changelog) from 1.13.2 to 1.14.1.
- [Changelog](https://github.com/currents-dev/currents-playwright-changelog/blob/main/CHANGELOG.md)
- [Commits](https://github.com/currents-dev/currents-playwright-changelog/commits)

---
updated-dependencies:
- dependency-name: "@currents/playwright"
  dependency-version: 1.14.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-24 06:31:21 +00:00
red-hat-konflux[bot]
626ebaa3c7 chore(deps): update konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-06-23 14:26:40 +00:00
regexowl
874f5dd040 Wizard: Fix target env cards clickability
The cards are now broken, this should make them selectable again.
2025-06-20 08:55:32 +00:00
dependabot[bot]
6eaf2f9862 build(deps-dev): bump chart.js from 4.4.9 to 4.5.0
Bumps [chart.js](https://github.com/chartjs/Chart.js) from 4.4.9 to 4.5.0.
- [Release notes](https://github.com/chartjs/Chart.js/releases)
- [Commits](https://github.com/chartjs/Chart.js/compare/v4.4.9...v4.5.0)

---
updated-dependencies:
- dependency-name: chart.js
  dependency-version: 4.5.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-20 06:36:00 +00:00
regexowl
4b411c9a27 test: Update tests to reflect changes in chart visibility 2025-06-19 14:30:33 +00:00
Simon Steinbeiss
f44afe2723 Wizard: Show lifecycle information for RHEL9
Since we want to nudge customers to default to RHEL 10, it may make
sense to show them the shorter lifecycle of RHEL 9 when they select it.
2025-06-19 14:30:33 +00:00
Tom Koscielniak
2a611e9704 playwright: Add handler for new intercom notifications
Adds handler for the new intercom popup notifications that trigger OpenScap window. Also adds noWaitAfter for the click action to fix flakiness.
2025-06-19 14:26:03 +00:00
Tom Koscielniak
b499dfcf93 playwright: Add single login for all tests
Add a single login for all tests in the form of a global setup. This commit also removes the login from all tests and replaces it with navigation to landing page and revamps the popup closing logic from being applied in logging step  into a separate fixture.
2025-06-19 14:26:03 +00:00
Gianluca Zuccarelli
78bb1e118b multiple: fix act errors in the tests
This also helps reduce noise in the test output.
2025-06-19 13:53:49 +00:00
Gianluca Zuccarelli
c2998306cf multiple: fix selectable card onChange
The `onChange` event for the selectable cards needed to be placed
inside the `selectableActions` of the `CardHeader`. Since the
`onChange` action was not implemented we were getting warnings
in the test output for that a component was changing an uncontrolled
input to controlled.
2025-06-19 13:53:49 +00:00
Gianluca Zuccarelli
bac647ded6 multiple: fix selectable card actions
The Card component needs an aria-label when the card is selectable. Since this was
not set, a warning error was polluting the test output.

Fixes #3319
2025-06-19 13:53:49 +00:00
Gianluca Zuccarelli
16e5bdbe3a Wizard: fix state change on render
A setState action was occuring in during render in the customStatusNavItem
component of the CreateImageWizard. We just needed to wrap this setState
call in a useEffect hook. I also renamed the component to CustomStatusNavItem
for React component naming conventions.

See: https://reactjs.org/link/setstate-in-render
2025-06-19 13:53:49 +00:00
regexowl
66ed82a531 test: Update mocked cockpit release 2025-06-19 13:13:08 +00:00
regexowl
1d3967a585 test: Add test fixtures and update tests where needed
Mock fixtures for RHEL 10 were missing, meaning the tests were unable to fetch mocked data and failed.
2025-06-19 13:13:08 +00:00
regexowl
cdd10a01ff Wizard: Add rhel9 query parameter
We've been previously setting RHEL 9 as default, meaning there was no specific quer parameter for it.
2025-06-19 13:13:08 +00:00
Simon Steinbeiss
5545ce4027 Wizard: Adjust distribution sorting for RHEL 10
Since RHEL 10 is the new default, the sort order should reflect that.
2025-06-19 13:13:08 +00:00
Simon Steinbeiss
362bfd393b Wizard: Make RHEL 10 the default distribution 2025-06-19 13:13:08 +00:00
Michal Gold
df5388dae8 Repositories: fix architecture/version display to use readable names from API
- Add listRepositoryParameters endpoint to contentSources API
- Display human-readable names instead of technical labels
- Fix inconsistency between Image Builder and Repositories service display
- Resolve "any" vs "Any" capitalization issue -
https://github.com/osbuild/image-builder-frontend/issues/3008
2025-06-19 10:27:56 +00:00
regexowl
b59a729656 sharedComponents: Rename "Create blueprint" button
This renames the button to "Create image blueprint" to make the relationship between images and blueprints clearer.
2025-06-18 14:12:47 +00:00
regexowl
0ce28044b8 Konflux: Migrate apply-tags from 0.1 to 0.2 2025-06-18 11:48:42 +00:00
red-hat-konflux[bot]
b7860f33fc Update Konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-06-18 11:48:42 +00:00
Tomáš Hozza
07f500b94a GHA: enable the stale action to delete its saved state
It turns out that the stale action is not able to delete its saved
state due to missing permissions. As a result, it was not processing
issues and PRs, that have been processed once, for almost a month.

The error in the job log was:
```
Warning: Error delete _state: [403] Resource not accessible by integration
```

The fix is to add `actions: write` to the action permissions

Signed-off-by: Tomáš Hozza <thozza@redhat.com>
2025-06-18 11:45:20 +00:00
Katarina Sieklova
76320925a0 Wizard: change order of the systemd services 2025-06-18 11:24:36 +00:00
Anna Vítová
235d853f42 fix: replace hardcoded paths for satellite 2025-06-18 11:21:54 +00:00
Anna Vítová
a4ac280350 fix: replace hardcoded paths for firstboot svc 2025-06-18 11:21:54 +00:00
Anna Vítová
47d526cf5c fix: replace hardcoded paths for firstboot 2025-06-18 11:21:54 +00:00
Anna Vítová
9189a20e57 Wizard: add constants for fb paths 2025-06-18 11:21:54 +00:00
Anna Vítová
4667f6b0ac Wizard: cleanup request mapper 2025-06-18 11:21:54 +00:00
Anna Vítová
cd137fb055 Tets: add Kernel customizations test 2025-06-18 08:52:06 +00:00
regexowl
9478958085 Wizard: Fix wizard height
This adds a style to make sure the Wizard takes up the entire height of the page also in Firefox.
2025-06-18 08:06:52 +00:00
Katarina Sieklova
564c5461d4 Wizard: edit tests related to Compliance step 2025-06-18 07:25:00 +00:00
Katarina Sieklova
0cfe3dde30 Wizard: Fix "None" options in Selects for policies and Oscap profiles 2025-06-18 07:25:00 +00:00
Gianluca Zuccarelli
50d88e5949 AppCockpit: add dark mode helper
Import the cockpit-dark-theme helper from the cockpit project. This detects
when dark mode is enabled and automatically applies the correct styles.
2025-06-18 06:37:51 +00:00
Gianluca Zuccarelli
cb08466734 Makefile: update cockpit ref
To enable dark mode in cockpit we need to update the ref since both cockpit and
the image-builder frontend have been updated to PF6. The old ref was still from
before cockpit was migrated to PF6 and so the incorrect classes were being added.
2025-06-18 06:37:51 +00:00
regexowl
139dd367fe Manually revert "Wizard: temporarily disable OCI"
This reverts commit efed39d, manual revert was needed as the tile were migrated to cards in the meantime.
2025-06-17 12:33:05 +00:00
dependabot[bot]
2f8b550408 build(deps-dev): bump @types/node from 22.15.1 to 24.0.3
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.15.1 to 24.0.3.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-version: 24.0.3
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-17 10:01:49 +00:00
regexowl
31d259e988 devDeps: Bump msw from 2.7.5 to 2.10.2
This bumps msw from 2.7.5 to 2.10.2
2025-06-17 09:55:15 +00:00
dependabot[bot]
798d994ad0 build(deps-dev): bump stylelint-config-recommended-scss
Bumps [stylelint-config-recommended-scss](https://github.com/stylelint-scss/stylelint-config-recommended-scss) from 14.1.0 to 15.0.1.
- [Release notes](https://github.com/stylelint-scss/stylelint-config-recommended-scss/releases)
- [Changelog](https://github.com/stylelint-scss/stylelint-config-recommended-scss/blob/master/CHANGELOG.md)
- [Commits](https://github.com/stylelint-scss/stylelint-config-recommended-scss/compare/v14.1.0...v15.0.1)

---
updated-dependencies:
- dependency-name: stylelint-config-recommended-scss
  dependency-version: 15.0.1
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-17 09:48:58 +00:00
regexowl
8e504a527b Wizard: Make popover button independent on tab
Previously when the Included/Other repos popover button was clicked the tab changed as well. This makes the popover button independent on the selected tab.
2025-06-17 08:51:13 +00:00
regexowl
d6acce47a2 Wizard: Fix release dropdown's maxWidth
This applies the styling and removes `Warning: Unsupported style property max-width. Did you mean maxWidth?` from the test output.
2025-06-17 07:51:34 +00:00
regexowl
cb8c8a3d5c Wizard: Remove unused styling
We don't use the `Tile` component anymore. I believe we can remove this styling.
2025-06-17 07:50:25 +00:00
Gianluca Zuccarelli
c59cde1ab9 ImagesTable: fix main section alignment
With the change to PF6 the list of items in the table section was not
padded properly, we can fix this by wrapping the code in a `PageSection`
component.
2025-06-16 11:40:36 +00:00
regexowl
b465920b18 src: Remove image-builder.users.enabled flag
The Users customization is available in production now, the flag is no longer used.
2025-06-16 11:26:03 +00:00
regexowl
3312beb6e7 devDeps: Bump @typescript-eslint/eslint-plugin and @typescript-eslint/parser
The dependencies need to be bumped in tandem, both went from 8.32.1 to 8.34.0
2025-06-16 11:16:48 +00:00
regexowl
8f0c53138e Wizard: Sort activation keys list
This sorts the activation keys list by name.

The `sortFn` function was also updated to handle undefined values.
2025-06-16 10:54:13 +00:00
dependabot[bot]
4e19ccc5e9 build(deps-dev): bump brace-expansion from 1.1.11 to 1.1.12
Bumps [brace-expansion](https://github.com/juliangruber/brace-expansion) from 1.1.11 to 1.1.12.
- [Release notes](https://github.com/juliangruber/brace-expansion/releases)
- [Commits](https://github.com/juliangruber/brace-expansion/compare/1.1.11...v1.1.12)

---
updated-dependencies:
- dependency-name: brace-expansion
  dependency-version: 1.1.12
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-16 10:49:34 +00:00
dependabot[bot]
54b6877f95 build(deps-dev): bump @babel/core from 7.26.10 to 7.27.4
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.26.10 to 7.27.4.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.4/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-version: 7.27.4
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-12 14:01:34 +00:00
Gianluca Zuccarelli
7f5013ef07 ReviewStep: fix alignment
Patternfly6 handles the grid for description lists slightly differntly
to Patternfly5. Add custom css to change the behaviour to match PF5 and
get the items in the review step to align properly
2025-06-12 13:29:58 +00:00
Gianluca Zuccarelli
1ba0f33240 ImageTable: fix blueprint list cards
The blueprint cards were missing their borders, making it unclear when
the item was selected or not.
2025-06-12 13:29:58 +00:00
Gianluca Zuccarelli
4932ba6909 Wizard: remove public clouds if none available
Fixes HMS-6136
2025-06-12 13:29:58 +00:00
Gianluca Zuccarelli
84bc0f92a0 cockpit: fix fonts
The fonts weren't getting loaded properly and cockpit was falling back
to `Helvetica`. This was particularly noticeable on the `ReviewStep` of
the `CreateImageWizard`.
2025-06-12 13:29:58 +00:00
Gianluca Zuccarelli
e7bf1d3540 cockpit: page section wrapper for entrypoint
Wrap the AppCockpit entrypoint in `Page` & `PageSection` wrappers so
that it is more consistent with other cockpit elements.
2025-06-12 13:29:58 +00:00
Gianluca Zuccarelli
40fe892dbf sharedComponents: tidy up image-builder-header
This commit simplifies and tidies up the shared ImageBuilderHeader
component by removing some of the `Flex` and `FlexItem` components.
Instead we can use the `actionComponents` from the `PageHeader`
component which takes care of some of the flex logic for us.
2025-06-12 13:29:58 +00:00
Gianluca Zuccarelli
3dd67c8f39 CloudStatus: disable analytics for on-prem
Analytics was enabled for on-prem which broke the images table. This
commit disables the analytics for the on-prem frontend.
2025-06-12 13:29:58 +00:00
Sanne Raymaekers
c29cee781f .github: run test workflows on merge_group
Make sure they work with merge queues.
2025-06-11 14:08:11 +00:00
Anna Vítová
2b37ee998e Blueprints: disable analytics for on-prem delete
Analytics broke on prem deletion of the blueprint.
2025-06-11 15:36:57 +02:00
Sanne Raymaekers
34c3dc614d .tekton: support merge queues
This lets konflux listen for push events to merge queue branches.

See https://konflux-ci.dev/docs/patterns/github-merge-queues/.
2025-06-11 14:33:46 +02:00
schutzbot
56b22eee53 Post release version bump
[skip ci]
2025-06-11 08:36:31 +00:00
dependabot[bot]
d7cd3ae285 build(deps): bump @sentry/webpack-plugin from 3.4.0 to 3.5.0
Bumps [@sentry/webpack-plugin](https://github.com/getsentry/sentry-javascript-bundler-plugins) from 3.4.0 to 3.5.0.
- [Release notes](https://github.com/getsentry/sentry-javascript-bundler-plugins/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript-bundler-plugins/blob/main/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript-bundler-plugins/compare/3.4.0...3.5.0)

---
updated-dependencies:
- dependency-name: "@sentry/webpack-plugin"
  dependency-version: 3.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-10 12:12:58 +02:00
red-hat-konflux[bot]
6b7d2cef3b Update Konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-06-10 11:28:47 +02:00
Lucas Garfield
9243d96646 Wizard: Fix overflow issues
The in-page wizard should have its footer fixed/sticky at the bottom of
the page with the main body area scrollable if necessary. This is the
default Patternfly behavior.

Currently, the entire wizard grows to fill its parent container. Setting
the overflow property in its parent div, which has the .chr-render class
defined by Insights Chrome, to overflow solves the issue and causes the
wizard to behave as it should.

The Insights Chrome team is hesitant to make this change in Insights
Chrome as it could break other apps layouts, and suggested using
Javascript to accomplish this:
https://github.com/RedHatInsights/insights-chrome/pull/3117#discussion_r2129045341
2025-06-09 06:47:49 -05:00
Anna Vítová
85d8850dce Wizard: remove else after return in firstboot 2025-06-09 13:19:55 +02:00
Anna Vítová
548a87bb44 Wizard: remove else after return in filesystem table 2025-06-09 13:19:55 +02:00
Anna Vítová
6ec6f33fda Wizard: fix datepicker reset glitch (MS-8610)
If the reset button is clicked, there is a glitch that shows error state
for a moment. This commit removes the glitch by setting the snapshot
date even for invalid values, and removes the workaround that was
previously added.
2025-06-09 12:20:23 +02:00
Gianluca Zuccarelli
a93a163afb CreateImageWizard: reusable TargetEnv card
Create a re-usable component for the Target Enviromnent cards. This
helps dry up the code a bit and should make it easier to edit going
forward.
2025-06-06 16:28:37 +02:00
Gianluca Zuccarelli
4668ed71ab CreateImageWizard: switch tiles to cards
Tiles are being deprecated in PatternFly. This commit switches from
tiles to cards for the Target Environments in the CreateImageWizard.

The keyboard test had to be removed since cards don't have a keydown
event.
2025-06-06 16:28:37 +02:00
Katarina Sieklova
362e5f7ca6 Wizard: indicate which user tab contains error
Fixes: #3097

Added exclamation marks to the tabs where the user contains error.
2025-06-05 17:45:59 +02:00
Katarina Sieklova
310f7a05cf Wizard: edit validation of port format in the Firewall step
Fixes #3269
2025-06-05 16:18:25 +02:00
Tom Koscielniak
42d7379a6c playwright: Cleanup fails gracefully if no BP is created
If no blueprint was created, the cleanup function fails gracefully without throwing error. Also includes a fix for a missing navigation to the IB landing page.
2025-06-05 14:17:18 +02:00
Anna Vítová
b98239bfe4 docs: Update docs to reflect current cockpit state 2025-06-03 19:36:00 +02:00
Anna Vítová
d4eced47c4 Makefile: fix install for first time users 2025-06-03 19:36:00 +02:00
Katarina Sieklova
3093310a6c Wizard: edit the timezone filter to fix whitespaces 2025-06-03 16:41:21 +02:00
Katarina Sieklova
6c244ba09e Wizard: fix filtering of Timezone
Fixes #3264
2025-06-03 16:41:21 +02:00
Gianluca Zuccarelli
72d09a09da schutzbot: fix update github status f42
There seems to be a change in behaviour from Fedora 41 to Fedora 42.
When a script is executed remotely a non-interactive session is created.
However, the user session with noTTY in Fedora F42 is picked up by the
`who`, `w` & `users` commands.

Since we run a remote script that checks for logged in users with the
`who` command, the `update_github_status.sh` script blocks and creates
an endless loop. This happens because the session only closes once the
remote script has finished executing.

The fix is a bit ugly, but we can filter this session out by checking
for user sessions that don't have a terminal device `?`.
2025-05-29 09:55:52 -05:00
regexowl
15b4aa01f9 dependabot: Temporarily increase PR limit
This increases the limit for open dependabot pull requests from 3 to 5. We currently have two bumps that will require manual bumping/migrations, leaving us with little room for any other dependencies.
2025-05-29 13:28:11 +02:00
regexowl
45b6a034db Wizard: Override max-width for release select 2025-05-28 09:08:52 -05:00
regexowl
93d994affa Blueprints: Make blueprint cards selectable
Highlighting the card on select got broken during the migration. This fixes the issue.
2025-05-28 09:08:52 -05:00
regexowl
7039db2585 Wizard: Spacing between footer buttons on Review step 2025-05-28 09:08:52 -05:00
regexowl
4f339aec8f Wizard: Update code after rebasing 2025-05-28 09:08:52 -05:00
regexowl
2c2b961d90 Wizard: Update spacing and colors used on Review step 2025-05-28 09:08:52 -05:00
regexowl
eed08effe1 Wizard: Update group labels spacing and "add button" color 2025-05-28 09:08:52 -05:00
regexowl
e60e15c6d6 test: Update tests 2025-05-28 09:08:52 -05:00
regexowl
3ac980e321 Wizard: Update <EmptyState> to match PF6 2025-05-28 09:08:52 -05:00
regexowl
4bb826ee06 Wizard: Set helper text variant 2025-05-28 09:08:52 -05:00
regexowl
49d05440b9 Wizard: Fix spacing of buttons in Wizard's footer 2025-05-28 09:08:52 -05:00
regexowl
91577343df src: Update <Content> tag components 2025-05-28 09:08:52 -05:00
regexowl
d98dd02fa3 test: Update tests 2025-05-28 09:08:52 -05:00
regexowl
2080425753 src: Update remaining v5 version slugs 2025-05-28 09:08:52 -05:00
regexowl
4312cca4dd src: Run class-name-updater
This runs `npx @patternfly/class-name-updater src --v6 --fix`.
2025-05-28 09:08:52 -05:00
regexowl
1fc1f0cb8d src: Run codemods and lint
Run `npx @patternfly/pf-codemods@latest src --v6 --fix` and lint autofix to get the bulk of the changes in.
2025-05-28 09:08:52 -05:00
regexowl
3617c0260d deps: Bump Patternfly and frontend-components versions
This bumps dependencies.
2025-05-28 09:08:52 -05:00
schutzbot
362bcc68ab Post release version bump
[skip ci]
2025-05-28 08:36:04 +00:00
Bryttanie House
285a402047 Wizard: fix blueprints showing incorrect template versions 2025-05-28 09:08:05 +02:00
Dominik Vagner
d0a70dfbbe fix(test): add close pop-ups locator for intercom modal
This locator should automatically close all "openscap faster trigger"
pop-ups in playwright tests.
2025-05-27 11:42:22 +02:00
Dominik Vagner
3d8ccdf23d build: add testing proxy to playwright CI
This PR switches the playwright test in CI to use the consoledot testing
proxy instead of the development one in fec. This should result in
faster and more stable tests.
2025-05-27 11:42:22 +02:00
dependabot[bot]
eac87e8c9b build(deps-dev): bump eslint-plugin-testing-library from 7.1.1 to 7.2.2
Bumps [eslint-plugin-testing-library](https://github.com/testing-library/eslint-plugin-testing-library) from 7.1.1 to 7.2.2.
- [Release notes](https://github.com/testing-library/eslint-plugin-testing-library/releases)
- [Changelog](https://github.com/testing-library/eslint-plugin-testing-library/blob/main/.releaserc.json)
- [Commits](https://github.com/testing-library/eslint-plugin-testing-library/compare/v7.1.1...v7.2.2)

---
updated-dependencies:
- dependency-name: eslint-plugin-testing-library
  dependency-version: 7.2.2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-27 10:08:43 +02:00
regexowl
0a9c08f135 src/constants: Remove Fedora 40
Fedora 40 has gone EOL.
2025-05-27 08:41:14 +02:00
Sanne Raymaekers
8ccd1e6ae0 schutzbot/terraform: add f42 runners 2025-05-27 08:41:14 +02:00
Sanne Raymaekers
ad5b378479 .gitlab-ci.yml: run playwright tests on fedora 2025-05-27 08:41:14 +02:00
Sanne Raymaekers
e560f011aa src/constants: support fedora 42 2025-05-27 08:41:14 +02:00
regexowl
9daa21a5ca Wizard: Remove edge alert
This removes edge deprecation alert from Wizard screen.
2025-05-26 15:55:20 +02:00
red-hat-konflux[bot]
ea20f9d368 Update build-tools digest to 75adad0
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-05-26 14:23:55 +02:00
Simon Steinbeiss
d04aee0de9 LandingPage: Add Edge decommission alert (HMS-6156)
This alert will only be shown when the 'immutable' tab has focus.
2025-05-26 14:00:07 +02:00
dependabot[bot]
4c3622c1f2 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.32.0 to 8.32.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.32.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-version: 8.32.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-26 12:52:50 +02:00
Katarina Sieklova
0d63c9b4a2 Wizard: Systemd services test (HMS-5975)
Added new cutomization test for the Systemd services step - just simple 3 fields checks.
2025-05-26 12:13:23 +02:00
regexowl
30d3d3f699 devDeps: Manually bump @currents/playwright to 1.13.2
This bumps @currents/playwright to version 1.13.2 to skip versions that broke github action.
2025-05-26 10:40:52 +02:00
regexowl
7c7427761b tsconfig: Specify include
Specify, what folders to include in the compilation process. This limits the scope, might reduce compilation time and will resolve errors outputted to the console during build.
2025-05-26 09:46:16 +02:00
red-hat-konflux[bot]
7784c0ddc5 Update Konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-05-26 09:07:04 +02:00
Sanne Raymaekers
efed39dd9d Wizard: temporarily disable OCI
Until we get our accounts back, there's nothing we can do here.
2025-05-20 14:10:53 +02:00
regexowl
2d6b58cfdd Wizard: Sources for all
Unpack sources for both modules and packages.
2025-05-16 10:38:14 -05:00
Lukas Zapletal
247d6dade7 Wizard: drop unwanted WantedBy 2025-05-16 16:38:38 +02:00
Anna Vítová
f76b5a991e fix: add timeout for Satellite tests 2025-05-16 13:53:24 +02:00
Anna Vítová
2692b75432 Wizard: fix token not having expiration fails 2025-05-16 13:53:24 +02:00
rverdile
854ff93594 Wizard: send template name in image request 2025-05-16 13:29:35 +02:00
dependabot[bot]
00438ce2dc build(deps): bump @reduxjs/toolkit from 2.8.1 to 2.8.2
Bumps [@reduxjs/toolkit](https://github.com/reduxjs/redux-toolkit) from 2.8.1 to 2.8.2.
- [Release notes](https://github.com/reduxjs/redux-toolkit/releases)
- [Commits](https://github.com/reduxjs/redux-toolkit/compare/v2.8.1...v2.8.2)

---
updated-dependencies:
- dependency-name: "@reduxjs/toolkit"
  dependency-version: 2.8.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-16 09:02:50 +02:00
Lucas Garfield
8a41974d34 API: update api 2025-05-15 21:19:32 -05:00
Simon Steinbeiss
2d562a14d4 Wizard: Add RHEL10 to ReleaseLifecycle chart 2025-05-15 15:59:27 +02:00
dependabot[bot]
16454294f3 build(deps-dev): bump sass from 1.87.0 to 1.88.0
Bumps [sass](https://github.com/sass/dart-sass) from 1.87.0 to 1.88.0.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.87.0...1.88.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-version: 1.88.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-15 09:52:08 +02:00
dependabot[bot]
d5b8e37a68 build(deps-dev): bump @babel/preset-env from 7.27.1 to 7.27.2
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.27.1 to 7.27.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.2/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-version: 7.27.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-15 09:23:17 +02:00
Lucas Garfield
0154452411 Wizard: Disabled OpenSCAP profile selection for RHEL10 2025-05-14 12:36:43 -05:00
Lucas Garfield
92984f3187 Wizard: Support RHEL10 in URL search parameters 2025-05-14 12:36:43 -05:00
Sanne Raymaekers
23473fd1cd ImagesTable: add missing releases 2025-05-14 12:36:43 -05:00
Sanne Raymaekers
8b7d6ef2a7 api: update image-builder api 2025-05-14 12:36:43 -05:00
Sanne Raymaekers
e0ceb34ea3 src/constants: add centos 10 to releases 2025-05-14 12:36:43 -05:00
Sanne Raymaekers
ef2050a705 src/constants: add rhel 10 to releases 2025-05-14 12:36:43 -05:00
Anna Vítová
46e50a9dca tests: fix Satellite fixtures incorrect paranthesis 2025-05-14 17:07:04 +02:00
Anna Vítová
4c82ae8749 Wizard: make Satellite CA cert optional
Users do not need to fill in the satellite certificate, omitting
parts of code that require it.
2025-05-14 17:07:04 +02:00
Anna Vítová
2ee812efe0 Wizard: refactor Satellite validation
The Satellite token navigation was a bit too overengineered, refactoring
for better readability.
2025-05-14 17:07:04 +02:00
Anna Vítová
d5969a2c9e Wizard: fix activation key required for Satellite
Sometimes, the activation key is required when the Satellite option is
needed. This is caused by missing condition.
2025-05-14 17:07:04 +02:00
Anna Vítová
4192ada532 Wizard: add details for Satellite token expiration
This commit adds a more detailed information about when does the token
used in Satellite command expire.
2025-05-14 17:07:04 +02:00
regexowl
daa6e59bc0 Wizard: Add package streams
If there's a package stream for both packages and modules, this will render it.
2025-05-14 16:15:06 +02:00
regexowl
b548e17098 LandingPage: Add Users to NewAlert
This adds Users to the list of new customization options.
2025-05-14 13:52:18 +02:00
Lucas Garfield
e359e0f47d Wizard: Fix vertical height bug
Recently the wizard has started rendering such that its vertical height
matches the height of its body – and therefore only occupies some
fraction of the page’s vertical space for many steps. The desired
behavior is for its footer to be fixed at the bottom of the viewport.

Specifying the page section type prop as ‘wizard’ resolves the issue.
This is the pattern used in the Patternfly documentation for in-page
wizards. See here:
https://www.patternfly.org/components/wizard/react-demos#in-page

Using CSS to adjust Patternfly component rendering is an antipattern.
More custom CSS means more time spent troubleshooting rendering issues.
Custom CSS related to rendering of the wizard has been removed.

There is still an annoying issue. The body of the wizard is not
scrollable and will overflow. This is counter to the Patternfly
examples. There doesn’t seem to be any CSS in Image Builder that would
cause this to occur. Perhaps the problem is somehow inherited from
Insights Chrome? In any case, this will require further investigation.
2025-05-14 13:26:14 +02:00
regexowl
27da67360c src: Fix user groups validation on import
The error for invalid user groups was not previously rendered on import. This fixes the issue and adds an import test to check that the error messages for all user fields get correctly rendered.
2025-05-14 11:06:13 +02:00
schutzbot
186e29fb19 Post release version bump
[skip ci]
2025-05-14 08:36:20 +00:00
Lukas Zapletal
1a3a0ecc03 Wizard: encode satellite cmd properly 2025-05-14 10:34:11 +02:00
regexowl
24fdc1147f Wizard: Update AWS sources filtering
Same issue as in #3220. The list of sources did refetch, but did not re-render.
2025-05-14 10:08:38 +02:00
regexowl
419c76fda6 Wizard: Fix password visibility toggle 2025-05-14 09:43:10 +02:00
regexowl
18ab2ddb2e Wizard: Fix password placeholder
User password gets redacted from a blueprint, meaning if there was any password set, it does not render on import.

Previously a placeholder was rendered as a value of password, making the value not editable. This renders the password indication as a placeholder text, solving the issue.
2025-05-14 09:43:10 +02:00
dependabot[bot]
c9a13aede8 build(deps-dev): bump @typescript-eslint/parser from 8.29.0 to 8.32.1
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.29.0 to 8.32.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.32.1/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-version: 8.32.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-14 09:17:29 +02:00
red-hat-konflux[bot]
83f49ef829 chore(deps): update build-tools digest to 28b7b8f
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-05-14 08:22:43 +02:00
dependabot[bot]
fbd4c2501e build(deps-dev): bump @babel/preset-react from 7.26.3 to 7.27.1
Bumps [@babel/preset-react](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-react) from 7.26.3 to 7.27.1.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.1/packages/babel-preset-react)

---
updated-dependencies:
- dependency-name: "@babel/preset-react"
  dependency-version: 7.27.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-13 08:15:26 +02:00
regexowl
4512c0b95f Wizard: Fix activation keys list refresh
We've been refetching the data, but not re-rendering the list. This should fix the issue.
2025-05-12 17:21:58 +02:00
konflux
e500efc56b Konflux build pipeline service account migration for image-builder-frontend
Signed-off-by: konflux <konflux@no-reply.konflux-ci.dev>
2025-05-12 10:43:45 +02:00
dependabot[bot]
6d2b782084 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.30.1 to 8.32.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.32.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-version: 8.32.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-12 10:14:11 +02:00
dependabot[bot]
cc88484f11 build(deps-dev): bump @currents/playwright from 1.12.3 to 1.12.4
Bumps [@currents/playwright](https://github.com/currents-dev/currents-playwright-changelog) from 1.12.3 to 1.12.4.
- [Changelog](https://github.com/currents-dev/currents-playwright-changelog/blob/main/CHANGELOG.md)
- [Commits](https://github.com/currents-dev/currents-playwright-changelog/commits)

---
updated-dependencies:
- dependency-name: "@currents/playwright"
  dependency-version: 1.12.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-12 09:40:08 +02:00
red-hat-konflux[bot]
e221aaad66 Update Konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-05-12 09:00:10 +02:00
Anna Vítová
11792edd57 Wizard: fix Satellite registration cmd not found
This was a bug that was looking for incorrect path in files. We do not
want to treat cmd as a secret, we decided to expose it, so this was just
an inconvenience.
2025-05-10 00:01:22 +02:00
Anna Vítová
fad33a32c8 Wizard: fix imported repositories not preselected
This fixes a bug that was caused by using incorrect ids of imported
custom repositories. Due to that bug, only in some cases the
repositories were correctly preselected.
2025-05-09 16:29:32 +02:00
Katarina Sieklova
774714cb99 Wizard: add Firewall test 2025-05-09 13:17:11 +02:00
regexowl
aedbbdc53a src: Remove unused data-testids
This removes unused `data-testid`s from the code base.
2025-05-09 10:14:54 +02:00
dependabot[bot]
2ec85661c4 build(deps): bump @reduxjs/toolkit from 2.7.0 to 2.8.1
Bumps [@reduxjs/toolkit](https://github.com/reduxjs/redux-toolkit) from 2.7.0 to 2.8.1.
- [Release notes](https://github.com/reduxjs/redux-toolkit/releases)
- [Commits](https://github.com/reduxjs/redux-toolkit/compare/v2.7.0...v2.8.1)

---
updated-dependencies:
- dependency-name: "@reduxjs/toolkit"
  dependency-version: 2.8.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-09 08:42:24 +02:00
dependabot[bot]
a1700a388b build(deps): bump @sentry/webpack-plugin from 3.3.1 to 3.4.0
Bumps [@sentry/webpack-plugin](https://github.com/getsentry/sentry-javascript-bundler-plugins) from 3.3.1 to 3.4.0.
- [Release notes](https://github.com/getsentry/sentry-javascript-bundler-plugins/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript-bundler-plugins/blob/main/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript-bundler-plugins/compare/3.3.1...3.4.0)

---
updated-dependencies:
- dependency-name: "@sentry/webpack-plugin"
  dependency-version: 3.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-08 08:52:34 +02:00
regexowl
5f9601586e ImagesTable: Add tracking to image downloads
This adds `imageBuilder - Image Downloaded` tracking event to track target, blueprint id and blueprint version for downloaded images.
2025-05-07 09:31:51 -05:00
Gianluca Zuccarelli
df495748e9 playwright: check admin access for on-prem
Add a check to the playwright tests to ensure that the user sees the
'Access is limited.' error message if the logged in user doesn't have
the required privileges.
2025-05-07 11:03:18 +02:00
Gianluca Zuccarelli
2847e7c17b Cockpit: user privileges empty state
Add an empty state component for when the user does not have the correct
permissions to run the frontend on-prem.
2025-05-07 11:03:18 +02:00
Gianluca Zuccarelli
49b2196c7b test/mocks/cockpit: add permission function
Add the types relevant types for the `cockpit.permission` function so
that we can establish whether the user has the correct privileges to run
the frontend on-prem.
2025-05-07 11:03:18 +02:00
dependabot[bot]
96eb0fe767 build(deps-dev): bump @redhat-cloud-services/tsc-transform-imports
Bumps @redhat-cloud-services/tsc-transform-imports from 1.0.23 to 1.0.24.

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/tsc-transform-imports"
  dependency-version: 1.0.24
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-07 09:20:48 +02:00
dependabot[bot]
5f41217eab build(deps-dev): bump @currents/playwright from 1.12.1 to 1.12.3
Bumps [@currents/playwright](https://github.com/currents-dev/currents-playwright-changelog) from 1.12.1 to 1.12.3.
- [Changelog](https://github.com/currents-dev/currents-playwright-changelog/blob/main/CHANGELOG.md)
- [Commits](https://github.com/currents-dev/currents-playwright-changelog/commits)

---
updated-dependencies:
- dependency-name: "@currents/playwright"
  dependency-version: 1.12.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-07 08:37:18 +02:00
regexowl
9ac104ca3e test: Update tests to reflect sorting changes
This updates the tests to reflect sorting changes.
2025-05-06 18:35:06 -05:00
regexowl
847073d939 Wizard: Update sorting to reflect currently selected stream
This updates the sort logic to reflect currently selected application stream. For example if `nodejs` with application stream 22 gets selected, results for other modules with the same application stream should be prioritized before the rest of results.
2025-05-06 18:35:06 -05:00
regexowl
dd672c5c67 Wizard: Fix colspan for package table states
This updates the `colspan` so the package table states span the entire width of the table.
2025-05-06 18:35:06 -05:00
regexowl
fb59ef4d27 Wizard: Group modules by name, but sort by stream
This ensures that rendered modules are grouped by name, but the order of their module stream versions is desceding.
2025-05-06 18:35:06 -05:00
regexowl
705612049c Wizard: Add tracking for revisit of Packages step in Edit
This tracks if user clicked on "Additional packages" navigation item when opening the blueprint in Edit mode.
2025-05-06 16:47:21 +02:00
regexowl
7680f1ea72 Wizard: Address comments 2025-05-06 08:58:07 -05:00
regexowl
9d8d6d1d99 test: Update tests 2025-05-06 08:58:07 -05:00
regexowl
c851fa9b8a Wizard: Implement packages table sorting
This implements basic sorting for the following columns of packages table:
- name
- application stream
- retirement date
2025-05-06 08:58:07 -05:00
Katarina Sieklova
ee8698fe30 Wizard: make policy selector wider in Compliance step 2025-05-06 15:07:19 +02:00
red-hat-konflux[bot]
dad8baad78 Update build-tools digest to f28db1b
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-05-06 11:51:42 +02:00
Anna Vítová
5e4f94ccbe ImagesTable: remove else after return 2025-05-06 11:10:19 +02:00
Gianluca Zuccarelli
1715d395c2 package.json: replace toml package
We need to be able to stringify objects into a toml format for on-prem.
This is needed to save the worker config, unfortunately the current toml
package only parses toml and can't stringify back to toml.
2025-05-06 10:31:54 +02:00
Katarina Sieklova
cfa437a34b Wizard: edit compliance according to updated mockups
Changes the compliance step based on most recent mockups
2025-05-06 10:06:52 +02:00
dependabot[bot]
ad6b38a115 build(deps-dev): bump @testing-library/react from 16.2.0 to 16.3.0
Bumps [@testing-library/react](https://github.com/testing-library/react-testing-library) from 16.2.0 to 16.3.0.
- [Release notes](https://github.com/testing-library/react-testing-library/releases)
- [Changelog](https://github.com/testing-library/react-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/react-testing-library/compare/v16.2.0...v16.3.0)

---
updated-dependencies:
- dependency-name: "@testing-library/react"
  dependency-version: 16.3.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-06 09:43:43 +02:00
dependabot[bot]
0a423b6246 build(deps-dev): bump @babel/preset-env from 7.26.9 to 7.27.1
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.26.9 to 7.27.1.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.1/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-version: 7.27.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-06 09:16:52 +02:00
red-hat-konflux[bot]
27d3b64222 Update Konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-05-06 08:52:33 +02:00
regexowl
050a0d5458 analytics: Update name of a tracking event
This updates the name of `- Button Clicked` tracking event to more descriptive `- Copy UUID`.
2025-05-02 13:19:41 -05:00
regexowl
13e59dff13 Wizard: Fix users bug - 'wheel' group removal
If 'wheel' group was removed the Administrator checkbox stayed check. This unchecks it.
2025-05-02 12:56:20 -05:00
Tom Koscielniak
bd09a7faf3 playwright: Provision large AWS CB instance
By using a "large" AWS instance we should be able to use parallelization in Playwright without maxing out resources and having flakes in tests.
2025-05-02 14:52:13 +02:00
dependabot[bot]
f40ea15eec build(deps): bump @reduxjs/toolkit from 2.6.1 to 2.7.0
Bumps [@reduxjs/toolkit](https://github.com/reduxjs/redux-toolkit) from 2.6.1 to 2.7.0.
- [Release notes](https://github.com/reduxjs/redux-toolkit/releases)
- [Commits](https://github.com/reduxjs/redux-toolkit/compare/v2.6.1...v2.7.0)

---
updated-dependencies:
- dependency-name: "@reduxjs/toolkit"
  dependency-version: 2.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-02 08:38:03 +02:00
regexowl
b37eb71f79 Wizard: Add retirement date column
This adds retirement date column to the Packages table and populates it with `end_date` from content-services searchRPMs endpoint.
2025-05-01 14:02:05 +02:00
regexowl
ba68556388 API: Update content-services API schema
This updates content-services API schema so it includes end_date for modules.
2025-05-01 14:02:05 +02:00
dependabot[bot]
fe8a96b174 build(deps): bump vite from 6.2.6 to 6.3.4
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 6.2.6 to 6.3.4.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v6.3.4/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 6.3.4
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-01 08:43:25 +02:00
regexowl
0061d291c7 Wizard: Add comments 2025-04-30 17:01:36 +02:00
regexowl
5f82811299 Wizard: Remove "Red Hat" repository icon
This removes the icon from "Red Hat" repositories.
2025-04-30 17:01:36 +02:00
regexowl
635636a202 Wizard: Add tooltip for disabled packages
This adds tooltip to the disabled packages checkboxes in the same way as the hover text is added on the Repositories step.
2025-04-30 17:01:36 +02:00
regexowl
2fcfceafeb test: Add new tests for modularity
This adds some create mode tests for modularity, two "generated request" tests and updates edit test.
2025-04-30 17:01:36 +02:00
regexowl
b2d63b3b16 Wizard: Handle expand based on complete pkg info
Expanding rows can no longer be handled based on name only as different application streams share a name of a package.
2025-04-30 17:01:36 +02:00
regexowl
524fd40673 Wizard: Spread modules into row and handle adding/removing from the store
This adds `enabled_modules` to the store schema and handles adding/removing modules to both list of packages and list of enabled_modules.
2025-04-30 17:01:36 +02:00
regexowl
2055f3b393 Wizard: Add application stream column
This adds application stream column to the packages table and populates it with `pkg.package_sources.stream` value or 'N/A' if the result is a single package or a group.
2025-04-30 17:01:36 +02:00
regexowl
ee8fe53aab devDeps: Manually bump msw
This bumps msw from 2.7.3 to 2.7.5, the manual bump is needed, because dependabot doesn't want to touch `mockServiceWorker.js`. But the file gets updated when running `npm i`.
2025-04-30 15:13:15 +02:00
Anna Vítová
6209a87aa8 tests/playwright: Add Timezone customization test
Adds a Timezone customization test that creates a BP, edits BP, exports and imports it back and verifies the BP content.
2025-04-30 12:35:27 +02:00
regexowl
9962c60099 playwright: Decrease number of workers
This lowers the number of workers from 4 to 2.
2025-04-30 12:01:15 +02:00
Sanne Raymaekers
87c754fb45 test: add tests for tailored customizations 2025-04-30 11:38:12 +02:00
Sanne Raymaekers
b203658bac Wizard: handle partition customizations properly
If there are no partitions defined in the policy or profile, leave
partitioning on automatic.
2025-04-30 11:38:12 +02:00
Sanne Raymaekers
40c9abfe9b Wizard: get rid of unneeded selected state in compliance step
Similar to the profile selector, just use the wizard store directly.
2025-04-30 11:38:12 +02:00
Sanne Raymaekers
3d545ed8ae Wizard: support tailored customizations
This splits the policy and profile selectors as they're drifting apart.

Instead of querying the customizations attached to the profile, query
the customizations attached to the policy, as these take into account
tailoring. As a result unnecessary customizations won't be added.
2025-04-30 11:38:12 +02:00
Sanne Raymaekers
a69a09fa4f api: update image-builder-crc api
Includes fetching tailored customizations for compliance policies.
2025-04-30 11:38:12 +02:00
schutzbot
ae40150996 Post release version bump
[skip ci]
2025-04-30 08:35:06 +00:00
dependabot[bot]
e0cffe9871 build(deps-dev): bump sass from 1.86.0 to 1.87.0
Bumps [sass](https://github.com/sass/dart-sass) from 1.86.0 to 1.87.0.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.86.0...1.87.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-version: 1.87.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-30 08:48:47 +02:00
Katarina Sieklova
97db8c0a12 Wizard: edit naming of analytics traces for consistency 2025-04-29 17:13:20 +02:00
red-hat-konflux[bot]
9de73cb87c chore(deps): update build-tools digest to 8bc71a1
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-04-29 16:00:29 +02:00
regexowl
75288a5ef8 src: Remove unused unleash flags
This removes unused flags from the code base:
- image-builder.hostname.enabled
- image-builder.kernel.enabled
- image-builder.firewall.enabled
- image-builder.services.enabled
2025-04-29 14:14:21 +02:00
Anna Vítová
71e1842aa4 tests/playwright: Add Locale customization test
Adds a Locale customization test that creates a BP, edits BP, exports and imports it back and verifies the BP content.
2025-04-29 13:47:17 +02:00
regexowl
ff2cc68d75 playwright: Increase timeout for expect
This increases timeout for `expect` from 30s to 50s.
2025-04-29 13:25:16 +02:00
dependabot[bot]
e0e449917f build(deps-dev): bump @vitejs/plugin-react from 4.3.4 to 4.4.1
Bumps [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) from 4.3.4 to 4.4.1.
- [Release notes](https://github.com/vitejs/vite-plugin-react/releases)
- [Changelog](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite-plugin-react/commits/plugin-react@4.4.1/packages/plugin-react)

---
updated-dependencies:
- dependency-name: "@vitejs/plugin-react"
  dependency-version: 4.4.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-29 09:12:37 +02:00
red-hat-konflux[bot]
847736be32 chore(deps): update build-tools digest to 1f51670
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-04-29 08:48:40 +02:00
regexowl
42747a7eeb src: Remove firstboot flag
Firstboot also seems to be released fully to both stage and prod. The flag is not needed anymore.
2025-04-28 16:00:44 +02:00
regexowl
f2d11ac3d3 LandingPage: Update alert with new customizations
This adds newly available customizations to the new alert on Landing Page.
2025-04-28 14:20:13 +02:00
regexowl
eb09752e7b devDeps: Bump vitest and @vitest/coverage-v8
This bumps `vitest` and `@vitest/coverage-v8` from 3.1.1 to 3.1.2
2025-04-28 11:38:56 +02:00
red-hat-konflux[bot]
d78b45d231 chore(deps): update konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-04-28 08:43:56 +02:00
regexowl
318d67c3c4 Wizard: Update search input placeholders
The placeholders we tend to use are usually quite specific. "Type to search" felt quite vague for some reason. Also repositories had no placeholder, I believe "filter" is clearer than "search" here as we're not fetching any results, just filtering through the already existing list of repositories.
2025-04-25 13:13:31 +02:00
Simon Steinbeiss
25c41fbe2b test/Blueprints: Account for removed BetaLabel 2025-04-25 12:13:11 +02:00
Simon Steinbeiss
3169301aa1 Components: Remove BetaLabel widget
This widget feels superfluous because we only show it for features that
are available in ConsoleDot's 'Preview' environment.
2025-04-25 12:13:11 +02:00
regexowl
e6b030ea4c src: Remove ouia-ids
Since we're moving away from IQE the `ouia-id` atributes should be no longer needed. This removes them from the entire code base.
2025-04-25 11:32:43 +02:00
Simon Steinbeiss
357dd3a910 playwright: Adjust Package step test to new widget
Since the new SearchInput widget gets decomposed by PatternFly into a
<div> and the actual <input> element we're looking for is nested rather
deeply in this hierarchy, we need to use the locator to allow Playwright
to descend into that input.
2025-04-25 11:06:49 +02:00
Simon Steinbeiss
c7dd274298 Wizard: Use SearchInput component for packages
As a small simplification and also to make the UX more consistent, let's
use a SearchInput widget over the custom InputGroup structure.
The only aspect lost in the process is the `validation` property that
doesn't exist in the SearchInput widget. It however only affects the CSS
styling of the searchbox and renders the 'error' state when there's only
a single character in the box. This may not even be desirable, given
that it's not really an error and that we show a note right below the
input box about this anyway.

This means the search boxes will also be consistent between the
repository and package search pages.
Fixes #3133
2025-04-25 11:06:49 +02:00
Bryttanie House
0238c04dfe Wizard: add support for content templates 2025-04-25 10:31:43 +02:00
dependabot[bot]
aa545382e8 build(deps-dev): bump @currents/playwright from 1.12.0 to 1.12.1
Bumps [@currents/playwright](https://github.com/currents-dev/currents-playwright-changelog) from 1.12.0 to 1.12.1.
- [Changelog](https://github.com/currents-dev/currents-playwright-changelog/blob/main/CHANGELOG.md)
- [Commits](https://github.com/currents-dev/currents-playwright-changelog/commits)

---
updated-dependencies:
- dependency-name: "@currents/playwright"
  dependency-version: 1.12.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-25 09:20:01 +02:00
dependabot[bot]
faf800bd02 build(deps-dev): bump @types/node from 22.13.14 to 22.15.1
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.13.14 to 22.15.1.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-version: 22.15.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-25 08:47:10 +02:00
Simon Steinbeiss
a1c32f90bb Wizard: Fix 'too short' state in Packages step
Currently, when a search term is entered and then reduced to a single
character in the Wizard's packages step, the previous results are still
shown.
What is expected is that the empty state hinting at the search term
being too short would be shown.

The condition in bodyContent was wrong, because it assumed that the list
of results would be 0 when in fact it wasn't being cleared.

Fixes #3139
2025-04-24 15:53:02 +02:00
regexowl
3e2e57d545 test: Remove WSL flag from unleash test mock
The WSL flag was removed from the codebase, this removes it from the test mock as well.
2025-04-24 00:42:15 +02:00
regexowl
83e57baa0b src: Remove pkgRecs flag
Package recommendations are fully deployed to both stage and production. We can remove the flag from the codebase.
2025-04-23 15:23:52 +02:00
regexowl
1643b96330 Wizard: Set hasPassword in requestMapper
Add `hasPassword` setter to `getUsers` function.
2025-04-23 14:36:59 +02:00
regexowl
a07fbb6477 store: Remove unused selectors
This removes selectors that are no longer used.
2025-04-23 13:42:39 +02:00
regexowl
0b843a64d9 Wizard: Update Users review text list
Only the first user got rendered, this should render them all and correctly add password indicator in import/edit mode when `hasPassword` is true.
2025-04-23 13:42:39 +02:00
regexowl
319880fc0b Wizard: Add password placeholder for edit mode
This uses the `hasPassword` value to render a password placeholder in edit mode.

The placeholder will indicate to the user that a password is present, but will not allow to show the password.
2025-04-23 13:42:39 +02:00
regexowl
01d0eba70e store: Update imageBuilder API 2025-04-23 13:42:39 +02:00
regexowl
22925f5005 Wizard: Update WSL popover wording
This updates WSL popover wording based on UX suggestions.
2025-04-23 11:16:58 +02:00
dependabot[bot]
34bfebd95f build(deps-dev): bump @babel/preset-typescript from 7.26.0 to 7.27.0
Bumps [@babel/preset-typescript](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-typescript) from 7.26.0 to 7.27.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.0/packages/babel-preset-typescript)

---
updated-dependencies:
- dependency-name: "@babel/preset-typescript"
  dependency-version: 7.27.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-23 10:11:39 +02:00
dependabot[bot]
39640bc37e build(deps-dev): bump http-proxy-middleware from 2.0.7 to 2.0.9
Bumps [http-proxy-middleware](https://github.com/chimurai/http-proxy-middleware) from 2.0.7 to 2.0.9.
- [Release notes](https://github.com/chimurai/http-proxy-middleware/releases)
- [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.9/CHANGELOG.md)
- [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v2.0.7...v2.0.9)

---
updated-dependencies:
- dependency-name: http-proxy-middleware
  dependency-version: 2.0.9
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-23 09:46:36 +02:00
dependabot[bot]
81e4286052 build(deps-dev): bump chart.js from 4.4.8 to 4.4.9
Bumps [chart.js](https://github.com/chartjs/Chart.js) from 4.4.8 to 4.4.9.
- [Release notes](https://github.com/chartjs/Chart.js/releases)
- [Commits](https://github.com/chartjs/Chart.js/compare/v4.4.8...v4.4.9)

---
updated-dependencies:
- dependency-name: chart.js
  dependency-version: 4.4.9
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-23 09:19:02 +02:00
red-hat-konflux[bot]
34c8c6d656 Update Konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-04-23 08:52:01 +02:00
regexowl
6b0af16471 src: Addressing comments
- addressed AI comments
- fix tab indexing
- added username to the title of Remove user modal
- ensured "Invalid password" is not in the errors object before a password is filled in
- removing a user with empty user, password and ssh key fields does not prompt "Remove user" modal
- check for duplicate username
- focus on new user tab
- remove redundant tabIndex
2025-04-18 16:45:59 -05:00
regexowl
8d74022ab1 test: Dancing around snyk 2025-04-18 16:45:59 -05:00
regexowl
5737c01dd0 test: Add new tests 2025-04-18 16:45:59 -05:00
regexowl
ca9d3035ee test: Cleanup tests a bit 2025-04-18 16:45:59 -05:00
regexowl
5cc5dd1258 Wizard: Add support for multiple users
This adds support for multiple users in the Wizard. The users are rendered in tabs and can be both added and removed. When clicking on remove button, modal pops up to inform user that the changes cannot be undone.

Neither password nor SSH keys are further required, making it possible to create a user with just a username.
2025-04-18 16:45:59 -05:00
regexowl
f903d617c0 Wizard: Resolve failing tests
Some tests started failing, this should hopefully resolve them.
2025-04-17 12:45:00 -05:00
regexowl
457d423d83 Wizard: Remove "Support" column
This removes "Support" column as per recent mocks.
2025-04-17 12:45:00 -05:00
regexowl
7f3d4efb6a Wizard: Add expandable rows
This makes the rows of packages table expandable and moves description down the level from a column to the expandable content.
2025-04-17 12:45:00 -05:00
regexowl
14590c1c41 Wizard: Minor changes
Render selected package count only when higher than 0. Rename "Package name" column to just "Name".
2025-04-17 12:45:00 -05:00
regexowl
ad2d5d8e2b Wizard: Replace toggle with tabs
This replaces the previously used "Included/Other repos" toggle with tabs with the same functionality.
2025-04-17 12:45:00 -05:00
regexowl
b0709ca9ce api: Update content-sources API schema
This updates content-sources API schema and regenerates it.
2025-04-17 12:45:00 -05:00
regexowl
70a97acc10 Wizard: Update periods at the end of lines
Removing/adding some periods for the sake of consistency.

I believe the description of the step should end with a period, helped texts and options should not (at least that's the prevailing pattern in the Wizard as of now).
2025-04-17 12:08:09 -05:00
Lucas Garfield
7f585154f2 Wizard/Oscap: Add analytics (HMS-5990)
The Intercom team has some ideas about helping new users determine which
security profile is right for them. Tracking differentiates between
"vanilla" OpenSCAP and Compliance so that any messages from Intercom can
be targeted.
2025-04-17 17:23:33 +02:00
Sanne Raymaekers
cc649ec7a3 test: add test for linting and fixing blueprints 2025-04-17 13:40:10 +02:00
Sanne Raymaekers
ba2346aacf ImagesTable/Toolbar: add alert with blueprint linter errors
Includes a fix button which should resolve the errors automatically.
2025-04-17 13:40:10 +02:00
Sanne Raymaekers
2dde0f2177 api: support linting and fixing of blueprints 2025-04-17 13:40:10 +02:00
Lucas Garfield
e222b13476 ImagesTable/BlueprintsSideBar: Add Segment tracking (HMS-5989)
Needed so the Intercom team can decide whether or not to display an
onboarding video (first time user with no images or blueprints).
2025-04-17 08:58:40 +02:00
Anna Vítová
561e9d164e Wizard: Fix Select's dropdown closing
This fixes a bug - when clicking outside the select dropdown, the
dropdown was not closed.
2025-04-16 16:37:47 +02:00
Katarina Sieklova
d18f25e331 Wizard: add segment tracking 2025-04-16 12:56:03 +02:00
schutzbot
c99157216f Post release version bump
[skip ci]
2025-04-16 08:36:03 +00:00
dependabot[bot]
84ee34cecd build(deps): bump @sentry/webpack-plugin from 3.2.2 to 3.3.1
Bumps [@sentry/webpack-plugin](https://github.com/getsentry/sentry-javascript-bundler-plugins) from 3.2.2 to 3.3.1.
- [Release notes](https://github.com/getsentry/sentry-javascript-bundler-plugins/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript-bundler-plugins/blob/main/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript-bundler-plugins/compare/3.2.2...3.3.1)

---
updated-dependencies:
- dependency-name: "@sentry/webpack-plugin"
  dependency-version: 3.3.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-16 08:51:20 +02:00
Sanne Raymaekers
7bceac6a36 .github: new stage user on each playwright run 2025-04-15 14:41:26 +02:00
Tom Koscielniak
7a839d0d3c playwright: Bump Playwright to 1.51.1
Bump Playwright to a newer version so we can use step.skip feature
2025-04-15 14:14:40 +02:00
Tom Koscielniak
0bddb80e94 tests/playwright: Add Hostname customization test
Adds a Hostname customization test that creates a BP, edits BP, exports and imports it back and verifies the BP content.
This test also servers as a template for other customization tests. Includes a refactor of existing helper functions.
2025-04-15 14:14:40 +02:00
Tom Koscielniak
91ceaca760 playwright: Add parallelization
Add parallelization with 4 workers.
2025-04-15 14:14:40 +02:00
Tom Koscielniak
34fdd8f0ea playwright: Increase timeouts
Increase playwright timeout both globally and for individual actions to reduce test flakiness
2025-04-15 14:14:40 +02:00
Ondřej Budai
a50b6bdfae Wizard: fix a rerender loop in AzureResourceGroups
resourceGroup is used in useEffect, so if assigned a new array to it
every time this function is called, it would cause the useEffect to run
every time, leading to an infinite loop. This is because useEffect uses
Object.is to determine if the value has changed, and [] creates a new
array every time. Thus, we use a constant empty array to avoid this
issue.

Alternatively JSON.stringify(resourceGroup), or a deep comparison could
be used as a useEffect dependency, but that feels like just a waste
of resources.
2025-04-15 12:16:07 +02:00
Katarina Sieklova
80327e4972 Wizard: set analytics only on non-prem 2025-04-15 11:42:16 +02:00
Katarina Sieklova
49f2052396 Wizard: add segment tracking to buttons in wizard footer
Added tracking for the "Next", "Back", "Cancel" and "Review and Finish" buttons in the Image wizard footer when creating a blueprint.

Fixes #3087
2025-04-15 11:42:16 +02:00
red-hat-konflux[bot]
0b2de197f5 Update build-tools digest to faea943
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-04-15 11:20:17 +02:00
regexowl
a367faab4a Wizard: Update WSL popover
This updates the text and the link in the WSL popover.
2025-04-15 10:08:05 +02:00
dependabot[bot]
20693ec981 build(deps-dev): bump eslint-plugin-react from 7.37.4 to 7.37.5
Bumps [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) from 7.37.4 to 7.37.5.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-react/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.37.4...v7.37.5)

---
updated-dependencies:
- dependency-name: eslint-plugin-react
  dependency-version: 7.37.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-15 09:41:07 +02:00
dependabot[bot]
53d1d9290b build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.29.1 to 8.30.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.30.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-version: 8.30.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-15 09:04:01 +02:00
dependabot[bot]
eb632f05fa build(deps): bump vite from 6.2.5 to 6.2.6
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 6.2.5 to 6.2.6.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v6.2.6/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v6.2.6/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 6.2.6
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-14 10:09:50 +02:00
dependabot[bot]
0aea1ad14e build(deps): bump @babel/runtime from 7.26.0 to 7.27.0
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.26.0 to 7.27.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.0/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-version: 7.27.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-14 09:47:04 +02:00
dependabot[bot]
db075ac8fd build(deps-dev): bump jsdom from 26.0.0 to 26.1.0
Bumps [jsdom](https://github.com/jsdom/jsdom) from 26.0.0 to 26.1.0.
- [Release notes](https://github.com/jsdom/jsdom/releases)
- [Changelog](https://github.com/jsdom/jsdom/blob/main/Changelog.md)
- [Commits](https://github.com/jsdom/jsdom/compare/26.0.0...26.1.0)

---
updated-dependencies:
- dependency-name: jsdom
  dependency-version: 26.1.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-14 09:22:34 +02:00
red-hat-konflux[bot]
c75aa28fbf Update Konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-04-14 08:52:06 +02:00
Anna Vítová
d2c9b77957 Wizard: add tests for satellite registration 2025-04-11 10:18:46 +02:00
Anna Vítová
75792bcc0a Wizard: rm pem validation, add cert warning
Since we support pem, cer, and der, we'd have to validate against each
of these on the frontend. Let's just check that the file is not empty,
and leave this upto users. On top of that, concatenated certificates are
supported, validating that would be too much. This commit also switches
token expiration error into a warning.
2025-04-11 10:18:46 +02:00
Anna Vítová
b6cdfdb102 Wizard: Add Satellite service and update mapper 2025-04-11 10:18:46 +02:00
Anna Vítová
58ec84c61e Wizard: add Satellite registration to review step 2025-04-11 10:18:46 +02:00
Anna Vítová
f34531667a Wizard: add satellite registration, add jwt-decode
The jwt decode dependency helps us to keep track of the token that is
present in the Satellite command. jwt-decode is the most popular
dependency for the job, and very easy to use.
2025-04-11 10:18:46 +02:00
regexowl
ecce7c3b1e Wizard: Fix linting errors 2025-04-11 09:39:50 +02:00
Simon Steinbeiss
fef8685830 Wizard: Promote WSL to prod-stable 2025-04-11 09:39:50 +02:00
Simon Steinbeiss
966e0297c1 Wizard: Add Popover to show WSL is not supported
This Popover will inform users that despite being available in Insights
Image Builder in production, the WSL images for RHEL are not officially
supported by Red Hat.
2025-04-11 09:39:50 +02:00
dependabot[bot]
9c0aa08555 build(deps-dev): bump stylelint from 16.16.0 to 16.18.0
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.16.0 to 16.18.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.16.0...16.18.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-version: 16.18.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-11 08:35:18 +02:00
Simon Steinbeiss
463bfddae5 ImagesTable: Fix AWS regions indicator (off by one)
The AWS regions indicator that is currently baked into each row
containing an AWS image is currently off by one due to incorrect
parentheses in the code.
This is now fixed, so it displays '(1)' when there is one region (which
is the default, us-east-1) instead of '(0)' which was both wrong and
confusing.
2025-04-10 12:04:56 +02:00
dependabot[bot]
0d11bfff16 build(deps): bump @reduxjs/toolkit from 2.6.0 to 2.6.1
Bumps [@reduxjs/toolkit](https://github.com/reduxjs/redux-toolkit) from 2.6.0 to 2.6.1.
- [Release notes](https://github.com/reduxjs/redux-toolkit/releases)
- [Commits](https://github.com/reduxjs/redux-toolkit/compare/v2.6.0...v2.6.1)

---
updated-dependencies:
- dependency-name: "@reduxjs/toolkit"
  dependency-version: 2.6.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-10 10:25:31 +02:00
dependabot[bot]
2baab02013 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.29.0 to 8.29.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.29.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-version: 8.29.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-10 08:45:51 +02:00
dependabot[bot]
f8eb152577 build(deps-dev): bump typescript from 5.8.2 to 5.8.3
Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.8.2 to 5.8.3.
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release-publish.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.8.2...v5.8.3)

---
updated-dependencies:
- dependency-name: typescript
  dependency-version: 5.8.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-09 08:51:41 +02:00
regexowl
ae8c51c68a Wizard: Fix status error 2025-04-08 18:03:49 +02:00
regexowl
ba4b45c4cd Wizard: Removed nav status override
The override for registration step nav status got removed as it allowed user to continue without selected activation key.
2025-04-08 18:03:49 +02:00
regexowl
e9b73c55a4 Wizard: "No results" option should be disabled
This moves the "No results" option outside of options and renders it as a disabled option when `selectOptions.lenght === 0`.
2025-04-08 18:03:49 +02:00
regexowl
f3776bbf1a Wizard: Update useChrome import
This updates the way we import the `useChrome` hook.
2025-04-08 18:03:49 +02:00
regexowl
0431ac98dc Wizard: Switch from deprecated select in ActivationKeys
This replaces a deprecated select in `ActivationKeys` for a non-deprecated one.
2025-04-08 18:03:49 +02:00
regexowl
a34d5895d9 Wizard: Move PopoverActivation and ManageKeysButton
This moves `PopoverActivation` and `ManageKeysButton` outside from `ActivationKeysList` to their own separate components.
2025-04-08 18:03:49 +02:00
red-hat-konflux[bot]
9d55d76ac9 Update Konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-04-07 14:38:51 +02:00
dependabot[bot]
9e3d2de13b build(deps): bump vite from 6.2.4 to 6.2.5
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 6.2.4 to 6.2.5.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v6.2.5/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v6.2.5/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 6.2.5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-07 09:31:28 +02:00
dependabot[bot]
67bd5646c0 build(deps-dev): bump @currents/playwright from 1.11.4 to 1.12.0
Bumps [@currents/playwright](https://github.com/currents-dev/currents-playwright-changelog) from 1.11.4 to 1.12.0.
- [Changelog](https://github.com/currents-dev/currents-playwright-changelog/blob/main/CHANGELOG.md)
- [Commits](https://github.com/currents-dev/currents-playwright-changelog/commits)

---
updated-dependencies:
- dependency-name: "@currents/playwright"
  dependency-version: 1.12.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-07 09:03:20 +02:00
regexowl
2b8fbad7da devDeps: Bump vitest deps
This bumps `vitest` and `@vitest/coverage-v8` from 3.0.9 to 3.1.1 (need to be bumped in tandem).
2025-04-04 08:39:30 -05:00
Amir
46216ead04 fedora-services: add tests 2025-04-03 11:50:51 +02:00
Amir
1d86950f45 Fedora-services: add support for fedora env 2025-04-03 11:50:51 +02:00
regexowl
72aed71662 Playwright: Add check for admin access popup
The admin access popup is different for passwordless user and a user with a password.

This checks what popup got rendered and based on that acts to get administrative access.
2025-04-03 10:48:45 +02:00
Justin Sherrill
38458810a0 change repo snapshot step to repeatable builds 2025-04-03 10:17:37 +02:00
Anna Vítová
a4034e8787 Wizard: add satellite registration, add jwt-decode
The jwt decode dependency helps us to keep track of the token that is
present in the Satellite command. jwt-decode is the most popular
dependency for the job, and very easy to use.
2025-04-03 09:46:41 +02:00
dependabot[bot]
739c0538fe build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.28.0 to 8.29.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.29.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-version: 8.29.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-03 09:23:19 +02:00
dependabot[bot]
acc4e7aa8d build(deps): bump @unleash/proxy-client-react from 4.5.2 to 5.0.0
Bumps [@unleash/proxy-client-react](https://github.com/Unleash/unleash-proxy-react) from 4.5.2 to 5.0.0.
- [Release notes](https://github.com/Unleash/unleash-proxy-react/releases)
- [Changelog](https://github.com/Unleash/proxy-client-react/blob/main/Changelog.md)
- [Commits](https://github.com/Unleash/unleash-proxy-react/compare/v4.5.2...v5.0.0)

---
updated-dependencies:
- dependency-name: "@unleash/proxy-client-react"
  dependency-version: 5.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-03 08:59:37 +02:00
Katarina Sieklova
8da57f5790 Wizard: make optional steps clickable on prem 2025-04-02 14:53:08 -05:00
regexowl
3adf864c42 Wizard: Fix OpenSCAP select width
This adds a maxWidth prop to the OpenSCAP select. Previously the options overflowed on the right side of the screen.
2025-04-02 13:26:48 +02:00
regexowl
9e1285c6f3 Wizard: Update microcopy on Locale step (HMS-5656)
This updates microcopy on Locale step as suggested in the linked bug report.
2025-04-02 12:45:45 +02:00
regexowl
74e774e986 Wizard: for ... in loop to for ... of loop 2025-04-02 12:17:23 +02:00
regexowl
3953c397dd test: Update tests 2025-04-02 12:17:23 +02:00
regexowl
698037a0ae Wizard: Replace deprecated select in OpenSCAP step
This replaces v4 deprecated select for a non-deprecated one and moves some functions to separate files.
2025-04-02 12:17:23 +02:00
regexowl
248bc1d67a Wizard: Move stuff around, split into more components
This moves several files into `components` subdirectory and splits `Oscap.tsx` into more components to make the file shorter and easier to navigate.
2025-04-02 12:17:23 +02:00
schutzbot
430bba8094 Post release version bump
[skip ci]
2025-04-02 08:35:22 +00:00
Ondřej Budai
11d36f4d6c Wizard: show a specific error message when description validation fails
Prior to this commit, the wizard showed "Invalid description" when
the description was too long. This was rather unhelpful for users.

The actual size check happens in validators.ts, but the functions there
just return a boolean value, even if they check for multiple criteria.

I'm not entirely sure, why the validation functions live in a separate
file, so I decided to move this specific condition to useValidation.tsx
so the condition, and the relevant user-facing error message can be
defined next to each other.
2025-04-02 09:50:44 +02:00
dependabot[bot]
f90b3974c4 build(deps): bump @scalprum/react-core from 0.9.4 to 0.9.5
Bumps [@scalprum/react-core](https://github.com/scalprum/scaffloding) from 0.9.4 to 0.9.5.
- [Release notes](https://github.com/scalprum/scaffloding/releases)
- [Changelog](https://github.com/scalprum/scaffolding/blob/main/release.config.js)
- [Commits](https://github.com/scalprum/scaffloding/compare/@scalprum/react-core-0.9.4...@scalprum/react-core-0.9.5)

---
updated-dependencies:
- dependency-name: "@scalprum/react-core"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-02 09:00:50 +02:00
rjagadal
2936e87243 Fix: Ensure wizard footer remains visible in repo step
Adjust wizard layout to limit scrolling

Fix: Improve button positioning and scrolling behavior in the repo step

Adjust footer layout and flex changes for wizard content

Fix: Removed outdated comments for code consistency
2025-04-01 11:46:17 +02:00
regexowl
25368675bc Wizard: Make Select responsive 2025-04-01 11:07:38 +02:00
regexowl
b767c3bfde Wizard: Replace deprecated select in AwsSourcesSelect
This replaces a deprecated select in `AwsSourcesSelect` for a non-deprecated one.
2025-04-01 11:07:38 +02:00
dependabot[bot]
0f230c18d9 build(deps): bump vite from 5.4.14 to 6.2.4
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.4.14 to 6.2.4.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v6.2.4/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v6.2.4/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 6.2.4
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-01 10:35:52 +02:00
dependabot[bot]
92288f74f3 build(deps-dev): bump @typescript-eslint/parser from 8.28.0 to 8.29.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.28.0 to 8.29.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.29.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-version: 8.29.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-01 10:09:08 +02:00
dependabot[bot]
6ae2a621ce build(deps-dev): bump chart.js from 4.4.7 to 4.4.8
Bumps [chart.js](https://github.com/chartjs/Chart.js) from 4.4.7 to 4.4.8.
- [Release notes](https://github.com/chartjs/Chart.js/releases)
- [Commits](https://github.com/chartjs/Chart.js/compare/v4.4.7...v4.4.8)

---
updated-dependencies:
- dependency-name: chart.js
  dependency-version: 4.4.8
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-01 09:42:58 +02:00
Ondrej Ezr
dbba5e65f4 ci: add required SAST tasks to Konflux pipelintes 2025-04-01 09:18:05 +02:00
regexowl
39a0a6f6a2 test: Add new tests to check user group functionality
This adds two tests:
- 'user groups can be added and removed'
- 'adding wheel group checks Administrator checkbox'
2025-03-31 19:46:52 -05:00
regexowl
7a225e4146 Wizard: Add group input to User step
This adds a group input to the User step. The input is implemented as a `LabelInput`, when Administrator checkbox is checked, `wheel` group gets added and it's removal automatically unchecks the Administrator checkbox again.
2025-03-31 19:46:52 -05:00
regexowl
47b5eb8392 Wizard: Turn required category name into LabelInput prop
This swaps hardcoded value of the required `categoryName` in `LabelInput` for a prop, allowing to customize text for the reuired category independently on the component.
2025-03-31 19:46:52 -05:00
Gianluca Zuccarelli
e5a513a4cb CreateImageWizard: refactor oscap availability
Refactor the OpenSCAP on-premise availability check. Add the check to
the component so we run the check everytime the step is loaded. The
benefits to this is that if the user installs the packages, they won't
need to reload the page to use the OpenSCAP step. The downside is that
the check is not very quick, so a spinner was added just to indicate
that the check is running.
2025-03-31 18:02:11 -05:00
Gianluca Zuccarelli
20447f753a CreateImageWizard: on-prem prefetch
The openscap customizatoins endpoint for on-prem is quite slow since it
has to call the run the oscap tool to generate the customization
options. Running this request lazily, as we do for the service, is too
slow, so we can just prefetch the customizations for on-prem.
2025-03-31 18:02:11 -05:00
Gianluca Zuccarelli
18c329be2a CreateImageWizard: oscap options add spinner
The select `loadingVariant` seems to do nothing. Add a loader for when the
oscap profiles are being loaded.
2025-03-31 18:02:11 -05:00
Gianluca Zuccarelli
c38e821ae5 CreateImageWizard: warning for unavailable on-prem OpenSCAP
Add a warning if the required packages for the OpenSCAP step are not available.
2025-03-31 18:02:11 -05:00
Gianluca Zuccarelli
9d883a8dfc CreateImageWizard: enable OpenSCAP for on-prem
SSIA
2025-03-31 18:02:11 -05:00
Gianluca Zuccarelli
c7cd9e8de3 store/cockpitApi: query for oscap customizations
Use the oscap & scap-security guide packages on the host to get the
customizations for an OpenSCAP profile item.
2025-03-31 18:02:11 -05:00
Gianluca Zuccarelli
12a2649198 CreateImageWizard: unleash flag for oscap profile
Switch the hook used to get the flags for the OpenSCAPProfileInformation
component.
2025-03-31 18:02:11 -05:00
Gianluca Zuccarelli
7ce8695fdf store/cockpitApi: add oscap profiles implementation
Add the logic needed to query the host for the allowed OpenSCAP
profiles.
2025-03-31 18:02:11 -05:00
Michal Gold
978237bf84 Wizard: Fix blueprint name update on Architecture/Distribution changes
This commit resolves an issue where the blueprint name did not update when the user changed the Architecture or Distribution.
Additionally, it sets an initial value for blueprintName in the WizardSlice.
2025-03-31 16:10:05 -05:00
regexowl
b2255de04e Wizard: Make Selects responsive 2025-03-31 14:22:31 -05:00
regexowl
52398547f8 Wizard: Move ouiaId from Select component to MenuToggle
This moves the `ouiaId` since it didn't get correctly assigned while in `Select`. It's readable under the `MenuToggle`.
2025-03-31 14:22:31 -05:00
regexowl
53625ed190 Wizard: Remove deprecated select for HyperV Generation
This swaps deprecated HyperV Generation select for a non deprecated one.
2025-03-31 14:22:31 -05:00
regexowl
c4dae746e7 Wizard: Replace deprecated Dropdown in BulkSelect
This updates deprecated Dropdown in `BulkSelect`.
2025-03-31 14:22:31 -05:00
regexowl
54983cddf9 Wizard: Swap release select
This replaces deprecated PF4 select with non-deprecated PF5 one.
2025-03-31 14:22:31 -05:00
regexowl
dcd1bb6fc9 Wizard: Swap FSC selects for non-deprecated version
This swaps deprecated PF4 Selects on FSC step for non-deprecated PF5 ones.
2025-03-31 14:22:31 -05:00
regexowl
2127476f98 Wizard: Swap arch select
This replaces deprecated PF4 select with non-deprecated PF5 one.
2025-03-31 14:22:31 -05:00
regexowl
019faf0ff9 Wizard: Remove if (!value) check from validators
This removes check for whether the value is defined from validators and moves it to the place the validator is called where needed.
2025-03-31 12:53:42 -05:00
regexowl
d68e5f77b0 store: Safeguard splicing
This adds a check for existing/non-existing item before splicing an array.
2025-03-31 17:01:06 +02:00
regexowl
5ccc6622d9 Wizard: Remove strength indicator
This completely removes strength indicator as it includes the same information as the second Azure password helper text.
2025-03-31 15:25:38 +02:00
regexowl
b9c12d1bbb devDeps: Manually bump vitest and @vitest/coverage-v8
This bumps:
- vitest from 3.0.5 to 3.0.9
- @vitest/coverage-v8 from 3.0.5 to 3.0.9

The reason for not being able to bump in a dependabot PR is that the dependencies need to bumped together.
2025-03-31 13:26:25 +02:00
dependabot[bot]
6e1de2b406 build(deps-dev): bump sass from 1.85.1 to 1.86.0
Bumps [sass](https://github.com/sass/dart-sass) from 1.85.1 to 1.86.0.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.85.1...1.86.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-31 09:10:15 +02:00
red-hat-konflux[bot]
e678c89a1c chore(deps): update konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-03-31 08:45:47 +02:00
regexowl
716c0bf361 fec.config: Exclude pkg directory during build time
After running `make cockpit/devel`, the generated files do not pass `npm run build`, outputing failures and making dev console and output of `npm run build` cluttered with errors.

This excludes `/pkg` folder during build time, removing the errors.
2025-03-28 16:42:47 +01:00
Klara Simickova
aaabed38a0 Revert "tsconfig: Exclude /pkg folder during build"
This reverts commit 18f6bc74de.
2025-03-28 16:13:14 +01:00
regexowl
056d3674d7 Wizard: Rename Empty to EmptyUserState
This renames `Empty` to `EmptyUserState` to make the name more descriptive.
2025-03-28 09:48:49 +01:00
regexowl
b5130e3a42 Wizard: Rename component directory to components
This renames `component` directory to `components` for the sake of consistency.
2025-03-28 09:48:49 +01:00
dependabot[bot]
5de195b54f build(deps-dev): bump @types/node from 22.13.10 to 22.13.14
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.13.10 to 22.13.14.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-28 08:25:25 +01:00
regexowl
18f6bc74de tsconfig: Exclude /pkg folder during build
After running `make cockpit/devel`, the generated files do not pass `npm run build`, outputing failures and making dev console and output of `npm run build` cluttered with errors.

This excludes `/pkg` folder during build time, removing the errors.
2025-03-27 15:40:08 +01:00
regexowl
932ad97be9 codecov: Update config
There were previously errors in expected values, this should fix them.
2025-03-27 13:08:23 +01:00
regexowl
f20378cd67 codecov: Ignore API, PW and store folders
API, PW and  store folders contain mostly files that are copied, auto-generated or test files. We don't need to collect coverage for those.
2025-03-27 13:08:23 +01:00
Tom Koscielniak
781267f16c tests: Streamline hosted Playwright local setup
Streamline the process of setting up Playwright for local development of hosted service tests using dotenv. Add short guide to README as well.
2025-03-27 11:42:05 +01:00
dependabot[bot]
8136e0fb5b build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.26.0 to 8.28.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.28.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-27 09:12:20 +01:00
Michal Gold
02a3673fcc remove unused component 2025-03-26 10:24:42 -05:00
Michal Gold
d448db9a04 Wizard: Refactor Minimum Size input in File system step to use new component
This commit refactors the Minimun size field by replacing HookValidatedInput with the new ValidatedInputAndTextArea component.
It fixes a bug where the error icon remained visible after the user cleared the value in the field.
2025-03-26 10:24:42 -05:00
Katarina Sieklova
17f975e0ef Wizard: race condition with activation key
Fixes #2961

Activation key loads in background even if a user skips to the review step.
The unwrap is there to extract only the actual response data, if the query fails, the exception will be caught in the catch block anyways, so there was no need to keep the whole action object.
And the refetch was being called before the createActivationKey query was initiallized, throwing an error and not letting the async query in try block to finish fetching the activation key.
2025-03-25 11:15:03 +01:00
dependabot[bot]
756e7427d6 build(deps-dev): bump @typescript-eslint/parser from 8.26.1 to 8.28.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.26.1 to 8.28.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.28.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-25 09:19:13 +01:00
dependabot[bot]
859037345f build(deps-dev): bump eslint-plugin-react-hooks from 5.1.0 to 5.2.0
Bumps [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) from 5.1.0 to 5.2.0.
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/HEAD/packages/eslint-plugin-react-hooks)

---
updated-dependencies:
- dependency-name: eslint-plugin-react-hooks
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-24 07:56:43 +01:00
Michal Gold
399126909c Wizard: Show "Strong" label only for Azure when password meets criteria
Currently, we only want to display the "Strong" label when the password meets the required strength conditions and only if it is Azure target.
This change ensures that the label remains hidden for non-Azure cases.

Let’s just disable it for now until we can decide on further adjustments.
2025-03-21 15:51:32 +01:00
regexowl
3740c53375 Wizard: Compliance URL via suffix
This switches from a full path to a partial one, making the compliance url work properly in local dev environment.
2025-03-21 15:53:24 +02:00
regexowl
cd5daade6b playwright: Add togglePreview helper function
This adds a helper function that switches into preview.

Heavily inspired by and all credit due to `content-sources-playwright`.
2025-03-21 14:09:16 +01:00
dependabot[bot]
01efb93ff6 build(deps): bump @scalprum/react-core from 0.9.3 to 0.9.4
Bumps [@scalprum/react-core](https://github.com/scalprum/scaffloding) from 0.9.3 to 0.9.4.
- [Release notes](https://github.com/scalprum/scaffloding/releases)
- [Changelog](https://github.com/scalprum/scaffolding/blob/main/release.config.js)
- [Commits](https://github.com/scalprum/scaffloding/compare/@scalprum/react-core-0.9.3...@scalprum/react-core-0.9.4)

---
updated-dependencies:
- dependency-name: "@scalprum/react-core"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-21 09:45:51 +01:00
dependabot[bot]
eb146a61d5 build(deps-dev): bump @currents/playwright from 1.9.4 to 1.11.4
Bumps [@currents/playwright](https://github.com/currents-dev/currents-playwright-changelog) from 1.9.4 to 1.11.4.
- [Changelog](https://github.com/currents-dev/currents-playwright-changelog/blob/main/CHANGELOG.md)
- [Commits](https://github.com/currents-dev/currents-playwright-changelog/commits)

---
updated-dependencies:
- dependency-name: "@currents/playwright"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-21 09:09:29 +01:00
Michal Gold
265ba2ac78 Wizard: Add password validation in User step
This commit adds password validation to the User step:
- Moved password validation logic to a separate `checkPasswordValidity` function, returning detailed results (strength and validation state).
- Simplified validation in `PasswordValidatedInput` by using `checkPasswordValidity` results directly.
- Added dynamic password strength indicator showing success or error based on requirements.
- Integrated environment-specific validation messages (e.g., for Azure).
- Improved code separation between presentation and validation for better maintainability.
- Unit tests: Adds tests for invalid passwords, covering both default and Azure cases.
2025-03-20 13:28:46 +01:00
dependabot[bot]
ef9510327d build(deps-dev): bump @types/node from 22.13.4 to 22.13.10
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.13.4 to 22.13.10.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-20 09:13:56 +01:00
dependabot[bot]
fec5fd6231 build(deps): bump @sentry/webpack-plugin from 3.2.1 to 3.2.2
Bumps [@sentry/webpack-plugin](https://github.com/getsentry/sentry-javascript-bundler-plugins) from 3.2.1 to 3.2.2.
- [Release notes](https://github.com/getsentry/sentry-javascript-bundler-plugins/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript-bundler-plugins/blob/main/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript-bundler-plugins/compare/3.2.1...3.2.2)

---
updated-dependencies:
- dependency-name: "@sentry/webpack-plugin"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-20 08:36:20 +01:00
Sanne Raymaekers
94206fcac3 playwright: only add currents reporter if requisite env is set 2025-03-19 15:45:14 +01:00
Sanne Raymaekers
5e7a9a3b7b schutzbot: pass along currents variables 2025-03-19 15:45:14 +01:00
Matej Marusak
e2efa37d47 Add currents reporter for Playwright tests
This adds currents reporter for Playwright tests

JIRA: HMS-5660
2025-03-19 15:45:14 +01:00
regexowl
2a3c9b8b7d Wizard: Make Selects responsive 2025-03-19 11:39:23 +01:00
regexowl
fe3257c0d9 Wizard: Replace deprecated selects on Azure step
This replaces deprecated selects on the Azure step for non-deprecated ones.
2025-03-19 11:39:23 +01:00
Tom Koscielniak
9c9ef15ad7 tests/CI: Change Playwright workflow trigger to pull_request
Change trigger of Playwright workflow from finishing development checks to trigger on pull requests.
2025-03-19 10:24:02 +01:00
schutzbot
aa0ef7ca6e Post release version bump
[skip ci]
2025-03-19 08:33:49 +00:00
dependabot[bot]
9363c63662 build(deps-dev): bump eslint-plugin-react-redux from 4.2.0 to 4.2.2
Bumps [eslint-plugin-react-redux](https://github.com/DianaSuvorova/eslint-plugin-react-redux) from 4.2.0 to 4.2.2.
- [Release notes](https://github.com/DianaSuvorova/eslint-plugin-react-redux/releases)
- [Commits](https://github.com/DianaSuvorova/eslint-plugin-react-redux/compare/v4.2.0...v4.2.2)

---
updated-dependencies:
- dependency-name: eslint-plugin-react-redux
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-19 09:09:56 +01:00
dependabot[bot]
23285091fe build(deps-dev): bump @typescript-eslint/parser from 8.26.0 to 8.26.1
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.26.0 to 8.26.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.26.1/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-19 08:25:45 +01:00
regexowl
96cf08bf4d src: Remove width limiting for Wizard and ImagesTable
This removes `isWidthLimited` prop from Page component in Wizard and ImagesTable.
2025-03-18 14:37:53 -05:00
regexowl
086ac6c9ec devDeps: Manually bump msw from 2.7.0 to 2.7.3
This bumps msw from 2.7.0 to 2.7.3
2025-03-18 09:49:46 +01:00
regexowl
89c3eb8522 Migrate to shared Dockerfile
This migrates frontend to use shared Dockerfile to comply with Konflux migrations requirements.

A submodule `build-tools` was added, obsolete tasks `create-frontend-dockerfile` and `parse-build-deploy-script` were removed and the path to the Dockerfile was updated.
2025-03-18 09:29:59 +01:00
dependabot[bot]
ea3b683243 build(deps-dev): bump stylelint from 16.14.1 to 16.16.0
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.14.1 to 16.16.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.14.1...16.16.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-18 08:11:55 +01:00
Michal Gold
6afaf49452 Wizard: Refactor Description input using new component
This commit refactors the Description field by replacing HookValidatedInput with the new ValidatedInputAndTextArea component.
It fixes a bug where the validation icon remained visible after the user cleared the Description field.
2025-03-17 15:48:29 +01:00
dependabot[bot]
29c290abf8 build(deps-dev): bump @babel/core from 7.26.8 to 7.26.10
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.26.8 to 7.26.10.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.10/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-17 14:46:17 +01:00
Michal Gold
ea40280f1c Wizard: Refactor SSH key input using ValidatedInputAndTextArea component
This commit refactors the SSH key field by replacing HookValidatedInput with the new ValidatedInputAndTextArea component.
It also fixes a bug where the validation icon remained visible after the user cleared the SSH key field.
2025-03-17 14:21:52 +01:00
Sanne Raymaekers
45669b06b8 dependabot: ignore playwright updates
Since the container embedded in our CI images is pinned, any update here
would result in the container having to be pulled again in CI
runs. Let's reduce the frequency that playwright gets updated, making it
easier to keep the container and the dependencies here somewhat in sync.
2025-03-17 13:39:51 +01:00
Adonis Puente
60fc68310d feat(RHINENG-15883): Add image-builder to new sentry flow 2025-03-17 13:02:23 +01:00
red-hat-konflux[bot]
95df46c885 Update Konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-03-17 08:39:43 +01:00
regexowl
939f25474c Wizard: Fix activation keys URL
This updates activation keys URL to behave the same way the content one does.
2025-03-14 18:21:45 +02:00
dependabot[bot]
79b1b64322 build(deps): bump @babel/helpers from 7.26.7 to 7.26.10
Bumps [@babel/helpers](https://github.com/babel/babel/tree/HEAD/packages/babel-helpers) from 7.26.7 to 7.26.10.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.10/packages/babel-helpers)

---
updated-dependencies:
- dependency-name: "@babel/helpers"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-14 15:57:02 +01:00
regexowl
b68eda9660 Wizard: Replace Object.assign() in validation
This replaces `Object.assign()` method in vaidation functions with separately populated values.
2025-03-14 15:09:58 +01:00
regexowl
331f1dd45a test: Add validation test for import
This adds a test to check whether validation messages get rendered on import.

Each step is checked for the correctly rendered error messages and then all invalid values are cleared so Next button re-enables and it's possible to continue.
2025-03-14 15:09:58 +01:00
regexowl
5eef2b3f9a Wizard: Fix kernel validation
Kernel validation worked only for one invalid field on the step. Now it is able to validate both.
2025-03-14 15:09:58 +01:00
regexowl
3a85341dbf playwright: Add playwright to ESLint and fix errors
This add the `playwright` folder to the lint script and fixes errors.
2025-03-14 14:17:18 +01:00
regexowl
88f41b0b75 Wizard: Disable "No results found" options
The "No results found for <searchTerm>" options were previously enabled, but ignored upon click. This disables them properly and adds tests to check if they're disabled.
2025-03-14 12:28:06 +01:00
regexowl
fbc0ea13e6 Wizard: Sort only selected on the frontend side
This removes sorting on the frontend side where it's already handled by the content sources API.
Since we manipulate selected packages by joining the, with `currentlyRemovedPackages` list, the sorting is added there to keep the packages from jumping around when unselected.
2025-03-13 16:18:41 +01:00
regexowl
ff80aea171 Wizard: Remove "Too many results" state
This removes the "Too many results" state that was rendered when a search term returned more than 100 results.
2025-03-13 16:18:41 +01:00
Anna Vítová
7d6c623ee6 Wizard: add/rm firstboot service based on state
I noticed there is a bug that does not show a relevant list of services
that we create on user's behalf.

How to reproduce:
1. start creating a blueprint with a first boot script
2. go to the review step - the custom-first-boot service is not displayed there, but we are adding it on user's behalf
3. click on "Edit blueprint"
4. go to First boot step and remove the script
5. go to the review step - the custom-first-boot service is displayed
   there, but we will remove it after clicking "edit"
2025-03-13 10:38:56 +01:00
Dominik Vagner
048baffc3f Wizard: add support of upload custom repositories 2025-03-13 08:57:56 +01:00
regexowl
e21d09b909 Wizard: Return of the testid
This adds `data-testid` back to the blueprint name input.
2025-03-12 13:02:44 +01:00
Michal Gold
12aa5cdf52 Wizard: Refactor hostname and blueprint name inputs
This commit Implement refactor of HookValidatedInput for hostname and blueprint name
fields, addressing the following bugs:

1) Fixes a bug where the validation symbol persisted after a user deleted the value in the hostname field.
2) Fixes a bug where the validation symbol persisted after a user deleted the value in the blueprint name field.

These changes improve code maintainability and provide a more consistent user experience.
2025-03-11 14:42:50 -05:00
Katarina Sieklova
1d39a57391 Blueprints: hiding unused activation key in when editing Blueprint
Fixed #2960

The Select dropdown in Registration wizard step no longer shows activation key when user decides to register later.
2025-03-11 16:15:40 +01:00
dependabot[bot]
4b5fb301ae build(deps-dev): bump @redhat-cloud-services/eslint-config-redhat-cloud-services
Bumps @redhat-cloud-services/eslint-config-redhat-cloud-services from 2.0.10 to 2.0.12.

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/eslint-config-redhat-cloud-services"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-11 14:21:23 +01:00
Sanne Raymaekers
21ec51a69e playwright: adapt tests to hosted
Makes the test's base url, user & password configurable through the
environment. Abstracts differences between hosted and cockpit where
possible to lib, and adds conditionals otherwise.
2025-03-11 13:30:14 +01:00
Sanne Raymaekers
f0a3574cda playwright: add list reporter 2025-03-11 13:30:14 +01:00
Sanne Raymaekers
db144b8ffc codebuild: add required buildspec
The build phase will be overwritten by the playwright github action.
2025-03-11 13:30:14 +01:00
Sanne Raymaekers
a6ca98ee30 .github/workflows/playwright: add action for tests against stage
Adds an action which runs the playwright tests against the local stage
development setup.
2025-03-11 13:30:14 +01:00
regexowl
978a37f54a devDeps: Bump typescript deps
This bumps:
- @typescript-eslint/parser from 8.25.0 to 8.26.0
- typescript from 5.7.3 to 5.8.2
2025-03-07 13:52:19 +01:00
dependabot[bot]
c2e3b75311 build(deps): bump @reduxjs/toolkit from 2.5.1 to 2.6.0
Bumps [@reduxjs/toolkit](https://github.com/reduxjs/redux-toolkit) from 2.5.1 to 2.6.0.
- [Release notes](https://github.com/reduxjs/redux-toolkit/releases)
- [Commits](https://github.com/reduxjs/redux-toolkit/compare/v2.5.1...v2.6.0)

---
updated-dependencies:
- dependency-name: "@reduxjs/toolkit"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-07 13:05:26 +01:00
dependabot[bot]
bb100f814b build(deps-dev): bump copy-webpack-plugin from 12.0.2 to 13.0.0
Bumps [copy-webpack-plugin](https://github.com/webpack-contrib/copy-webpack-plugin) from 12.0.2 to 13.0.0.
- [Release notes](https://github.com/webpack-contrib/copy-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/copy-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/copy-webpack-plugin/compare/v12.0.2...v13.0.0)

---
updated-dependencies:
- dependency-name: copy-webpack-plugin
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-06 15:32:41 +01:00
Adam Kankovsky
526037ea08 test: Add test for unselecting selected package
Adding a test to verify that the last package removed from selected remains in the table until switching to another screen.
2025-03-06 14:47:31 +01:00
Adam Kankovsky
7aa3a3a6d5 Wizard: Edit to keep the last removed package among the selected ones
Modify the logic of removing a package so that it remains in the selected table for possible
re-addition until another package is removed or the wizard is switched to another screen
2025-03-06 14:47:31 +01:00
Sanne Raymaekers
b91981c17c store/cockpitApi: correct getBlueprint's cache tags
After editing a blueprint, the blueprint needs to be invalidated.
2025-03-06 13:12:33 +01:00
Sanne Raymaekers
c0187f7b76 schutzbot/terraform: updated runners
Includes the nightly images which have the playwright container baked
in.
2025-03-06 13:12:33 +01:00
Sanne Raymaekers
2c827e2816 schutzbot: fix uploading artifacts
Fixes mistake in copying over from osbuild-composer. And upload the
artifacts recursively.
2025-03-06 13:12:33 +01:00
Sanne Raymaekers
dd80a1757c schutzbot: fix updating github status
Fixes mistake in copying over from osbuild-composer.
2025-03-06 13:12:33 +01:00
Sanne Raymaekers
f5901a96ee schutzbot: save journal as artifact 2025-03-06 13:12:33 +01:00
Sanne Raymaekers
b8a4b26013 schutzbots: fix rpm install
`nodejs-npm` is only present on el10.
2025-03-06 13:12:33 +01:00
Sanne Raymaekers
70686388b7 .gitlab-ci.yml: fix runner matrix 2025-03-06 13:12:33 +01:00
schutzbot
6ef29afac3 Post release version bump
[skip ci]
2025-03-06 13:12:33 +01:00
regexowl
9fdd6f0b43 Wizard: Add validation to Timezone select
This adds the timezones to the step validation and renders an error when an invalid timezone is imported.

How to test:
1. import a blueprint with invalid timezone "foo"
2. select a target
3. go to Registration step
4. click on "Review and finish" button

Current behaviour:
- the "Create" button is disabled, but when navigating to Timezone step no error is displayed

After update:
- there is an error rendered under the timezone select
2025-03-06 08:46:36 +01:00
Michal Gold
49fa0ee735 Wizard: Refactor HookValidatedInput component
This commit splits the HookValidatedInput component into three separate functions to improve modularity and readability:

- `getValidationState`: Calculates the validation state ('default', 'success', 'error') based on whether the input is pristine and if there is an error message.
- `ValidatedInputAndTextArea`: Renders the TextInput or TextArea component, utilizing the `getValidationState` output.
- `ErrorMessage`: Displays validation error messages.

This refactoring enhances code maintainability and testability, and the updated structure is now implemented for the username field.
2025-03-05 16:07:36 -06:00
regexowl
ba233f2c69 Wizard: Rename ChippingInput to LabelInput
This just renames `ChippingInput` component to `LabelInput` and updates all imports.
2025-03-05 14:00:09 -06:00
schutzbot
5f3a3744c5 Post release version bump
[skip ci]
2025-03-05 08:31:42 +00:00
dependabot[bot]
c3d9df9c12 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.24.1 to 8.26.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.26.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-05 09:13:33 +01:00
regexowl
44752426f6 deps: Bump @redhat-cloud-services/frontend-components from 4.2.22 to 5.2.6
This bumps @redhat-cloud-services/frontend-components from 4.2.22 to 5.2.6 and updated `<AsyncComponent>` props. `appName` is no longer supported.
2025-03-04 12:09:35 +01:00
Katarina Sieklova
2dcdcebda9 Wizard: make optional steps clickable
Fixes #2947

Optional steps get clickable after Register step was visited.
2025-03-04 11:26:53 +01:00
regexowl
75ddd854e8 src: Remove timezone and locale unleash flags
This removes `image-builder.timezone.enabled` and `image-builder.locale.enabled` gating as both were released to production.
2025-03-04 10:04:26 +01:00
regexowl
223a6a6780 Wizard: Deprecate Chip and ChipGroup components
`Chip` and `ChipGroup` components will be deprecated in PF6. This replaces them with recommended `Label` and `LabelGroup`.
2025-03-04 08:36:41 +01:00
Katarina Sieklova
9dc66ec1d0 Wizard: bigger space between in target envs in review 2025-03-03 11:25:11 +01:00
dependabot[bot]
4bae9645ad build(deps-dev): bump babel-loader from 9.2.1 to 10.0.0
Bumps [babel-loader](https://github.com/babel/babel-loader) from 9.2.1 to 10.0.0.
- [Release notes](https://github.com/babel/babel-loader/releases)
- [Changelog](https://github.com/babel/babel-loader/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel-loader/compare/v9.2.1...v10.0.0)

---
updated-dependencies:
- dependency-name: babel-loader
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-03 10:18:08 +01:00
red-hat-konflux[bot]
6f784e1634 Update Konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-03-03 08:32:20 +01:00
Katarina Sieklova
d527c2607e Wizard: resolving className modifiers 2025-02-28 09:24:41 +01:00
Katarina Sieklova
e3fde5eb9b Wizard: fix indentation of manual file system config
Fixes #2910

Indentation of manual file system configuration in the review step of the wizard was aligned.
2025-02-28 09:24:41 +01:00
regexowl
57fab5fd80 LandingPage: Add NewAlert for added customizations
This updates `NewAlert` to inform about new customizations available in Images.

Local storage item name was also updated.
2025-02-28 08:44:52 +01:00
regexowl
56e85e0954 Wizard: Add masked services input
This exposes masked services in the UI by adding a masked services input.
2025-02-27 12:46:29 -06:00
dependabot[bot]
408ecb2a80 build(deps-dev): bump sass from 1.85.0 to 1.85.1
Bumps [sass](https://github.com/sass/dart-sass) from 1.85.0 to 1.85.1.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.85.0...1.85.1)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-27 08:15:54 +01:00
dependabot[bot]
f4733659cf build(deps-dev): bump @typescript-eslint/parser from 8.24.1 to 8.25.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.24.1 to 8.25.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.25.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-27 07:27:36 +01:00
regexowl
59e383fe5a Wizard: Remove first boot script from services when no script
There is a bug that makes `custom-first-boot` service stay in services when the first boot script is removed.

How to reproduce:
1. create a blueprint with a first boot script
2. download the blueprint and confirm `custom-first-boot` was added to enabled services
3. click on "Edit blueprint"
4. go to First boot step and remove the script
5. save edited blueprint

Current behaviour:
- `custom-first-boot` service should be still enabled even with the removed first boot script

Updated behaviour:
- `custom-first-boot` is no longer in the blueprint after first boot script got removed
2025-02-26 16:48:32 +01:00
Katarina Sieklova
26f56bf9f0 Wizard: reseting page to default state
Fixed #2865

OpenSCAP profile page in Compliance step clears after selecting "None" or "X" in the dropdown.
2025-02-26 14:23:41 +01:00
dependabot[bot]
d14f0afa64 build(deps): bump @sentry/webpack-plugin from 3.2.0 to 3.2.1
Bumps [@sentry/webpack-plugin](https://github.com/getsentry/sentry-javascript-bundler-plugins) from 3.2.0 to 3.2.1.
- [Release notes](https://github.com/getsentry/sentry-javascript-bundler-plugins/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript-bundler-plugins/blob/main/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript-bundler-plugins/compare/3.2.0...3.2.1)

---
updated-dependencies:
- dependency-name: "@sentry/webpack-plugin"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-26 11:10:16 +01:00
dependabot[bot]
a376be242f build(deps-dev): bump uuid from 11.0.5 to 11.1.0
Bumps [uuid](https://github.com/uuidjs/uuid) from 11.0.5 to 11.1.0.
- [Release notes](https://github.com/uuidjs/uuid/releases)
- [Changelog](https://github.com/uuidjs/uuid/blob/main/CHANGELOG.md)
- [Commits](https://github.com/uuidjs/uuid/compare/v11.0.5...v11.1.0)

---
updated-dependencies:
- dependency-name: uuid
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-26 10:28:49 +01:00
Katarina Sieklova
daac042df8 Changed to switch statement 2025-02-25 12:09:33 +01:00
Katarina Sieklova
17709cf093 Blueprints: invalid message variant on upload
Fixed #2919

Error message has error variant when uploading invalid blueprint.
2025-02-25 12:09:33 +01:00
dependabot[bot]
d891ba824e build(deps): bump @redhat-cloud-services/frontend-components-notifications
Bumps [@redhat-cloud-services/frontend-components-notifications](https://github.com/RedHatInsights/frontend-components) from 4.1.19 to 4.1.20.
- [Release notes](https://github.com/RedHatInsights/frontend-components/releases)
- [Changelog](https://github.com/RedHatInsights/frontend-components/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RedHatInsights/frontend-components/compare/@redhat-cloud-services/frontend-components-notifications-4.1.19...@redhat-cloud-services/frontend-components-notifications-4.1.20)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-notifications"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-25 09:40:57 +01:00
dependabot[bot]
c66f38c484 build(deps): bump @unleash/proxy-client-react from 4.5.1 to 4.5.2
Bumps [@unleash/proxy-client-react](https://github.com/Unleash/unleash-proxy-react) from 4.5.1 to 4.5.2.
- [Release notes](https://github.com/Unleash/unleash-proxy-react/releases)
- [Changelog](https://github.com/Unleash/proxy-client-react/blob/main/Changelog.md)
- [Commits](https://github.com/Unleash/unleash-proxy-react/compare/v4.5.1...v4.5.2)

---
updated-dependencies:
- dependency-name: "@unleash/proxy-client-react"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-25 09:23:32 +01:00
Sanne Raymaekers
a50a9f6afd .github/workflows/trigger-gitlab: donly trigger nightly pipelines
This doens't apply to image-builder-frontend for now.
2025-02-24 16:13:11 +01:00
Sanne Raymaekers
9038d4948a .github/workflows/trigger-gitlab: remove artifact steps
These are only relevant in the osbuild/osbuild-composer, where the tests
workflow uploads artifacts.
2025-02-24 16:13:11 +01:00
Sanne Raymaekers
747b718933 schutzbot: add basic schutzbot structure
Simply builds the rpm and installs it.
2025-02-24 13:38:05 +01:00
dependabot[bot]
35bb95438b Wizard: Switch view to "Available" when searching for package
this fix an issue when user search for a package, the viewv stay "Selected"
instead of switching to "Available

fix one test
2025-02-24 12:00:31 +01:00
red-hat-konflux[bot]
34fa6782be chore(deps): update konflux references to b78123a
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-02-24 10:58:21 +01:00
regexowl
4907d3048f Wizard: Remove obsolete css
This removes css styles for `DualListSelector` we no longer use and a temporary pagination fix that was already addressed directly in PF.
2025-02-24 11:12:22 +02:00
dependabot[bot]
d48c90eba1 build(deps-dev): bump sass from 1.83.1 to 1.85.0
Bumps [sass](https://github.com/sass/dart-sass) from 1.83.1 to 1.85.0.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.83.1...1.85.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-24 09:10:16 +01:00
dependabot[bot]
c0e4b7636d build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.24.0 to 8.24.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.24.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-24 08:35:45 +01:00
dependabot[bot]
1662d9a0a1 build(deps): bump @sentry/webpack-plugin from 3.1.2 to 3.2.0
Bumps [@sentry/webpack-plugin](https://github.com/getsentry/sentry-javascript-bundler-plugins) from 3.1.2 to 3.2.0.
- [Release notes](https://github.com/getsentry/sentry-javascript-bundler-plugins/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript-bundler-plugins/blob/main/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript-bundler-plugins/compare/3.1.2...3.2.0)

---
updated-dependencies:
- dependency-name: "@sentry/webpack-plugin"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-20 10:17:51 +01:00
dependabot[bot]
06f4ce468f build(deps-dev): bump @typescript-eslint/parser from 8.24.0 to 8.24.1
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.24.0 to 8.24.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.24.1/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-20 08:31:56 +01:00
Katarina Sieklova
285bee5f8d Blueprints: Import Blueprint modal error rendering
Fixed #2905

Fixes error rendering when invalid blueprint is uploaded.
2025-02-19 15:19:31 +01:00
schutzbot
c73e124d58 Post release version bump
[skip ci]
2025-02-19 08:30:10 +00:00
dependabot[bot]
0c8b6b3671 build(deps): bump @redhat-cloud-services/frontend-components-notifications
Bumps [@redhat-cloud-services/frontend-components-notifications](https://github.com/RedHatInsights/frontend-components) from 4.1.17 to 4.1.19.
- [Release notes](https://github.com/RedHatInsights/frontend-components/releases)
- [Changelog](https://github.com/RedHatInsights/frontend-components/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RedHatInsights/frontend-components/compare/@redhat-cloud-services/frontend-components-notifications-4.1.17...@redhat-cloud-services/frontend-components-notifications-4.1.19)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-notifications"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-18 09:22:12 +01:00
dependabot[bot]
f5d389a06f build(deps-dev): bump sass-loader from 16.0.4 to 16.0.5
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 16.0.4 to 16.0.5.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v16.0.4...v16.0.5)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-18 08:39:26 +01:00
regexowl
bf704af1e7 ImportModal: Increase maxSize
This increases limit for the maximum size of a blueprint.
2025-02-17 15:13:32 +01:00
regexowl
609397d411 Wizard: register-later for non-RHEL images
This sets registration type to `register-later` when a non-RHEL distribution is selected.
2025-02-17 14:26:53 +01:00
regexowl
03294389b1 Wizard: Disable already selected language options
This disables language options that were already added to the image, rendering a description to make the disabled option clear.
2025-02-17 12:49:03 +01:00
regexowl
62bbf6d688 Wizard: Add step validation to Locale
This adds step validation to Locale, allowing to properly validate imported values.
2025-02-17 12:49:03 +01:00
dependabot[bot]
52c790bb4a build(deps-dev): bump @babel/preset-env from 7.26.8 to 7.26.9
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.26.8 to 7.26.9.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.9/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-17 09:06:13 +01:00
red-hat-konflux[bot]
92ea8ad532 chore(deps): update konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-02-17 08:32:13 +01:00
dependabot[bot]
fceca8cd38 build(deps-dev): bump @typescript-eslint/parser from 8.20.0 to 8.24.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.20.0 to 8.24.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.24.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-14 09:27:16 +01:00
dependabot[bot]
8bb244b048 build(deps-dev): bump @redhat-cloud-services/tsc-transform-imports
Bumps @redhat-cloud-services/tsc-transform-imports from 1.0.21 to 1.0.23.

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/tsc-transform-imports"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-14 08:40:25 +01:00
Klara Simickova
75770dc97f Revert "Wizard: Sticky footer returns"
This reverts commit e875f99f6b.
2025-02-13 17:02:29 +01:00
regexowl
e875f99f6b Wizard: Sticky footer returns
The original solution that broke some time ago works again. Removing the comments and temporary workaround.
2025-02-13 16:48:51 +01:00
regexowl
34720c799e src: Remove snapshots fallthrough logic
Snapshotting is available in prod-stable now. We can probably remove the fallthrough logic now.
2025-02-13 15:51:31 +01:00
regexowl
87d6c57174 Wizard: Fix nav status icon
Status icon rendered only when the step was previously visited, this caused problems with imported blueprints.

How to reproduce a bug:
1. import a blueprint with invalid hostname
2. skip to Review

Current behaviour:
- the Create blueprint button is disabled, but there is no indication of error next to the Hostname step in navigation

After fix:
- the error status should be rendered next to the Hostname nav item
2025-02-13 13:29:36 +01:00
dependabot[bot]
cbaf3ad99a build(deps): bump @sentry/webpack-plugin from 3.0.0 to 3.1.2
Bumps [@sentry/webpack-plugin](https://github.com/getsentry/sentry-javascript-bundler-plugins) from 3.0.0 to 3.1.2.
- [Release notes](https://github.com/getsentry/sentry-javascript-bundler-plugins/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript-bundler-plugins/blob/main/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript-bundler-plugins/compare/3.0.0...3.1.2)

---
updated-dependencies:
- dependency-name: "@sentry/webpack-plugin"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-13 11:56:44 +01:00
dependabot[bot]
e571233180 build(deps): bump @reduxjs/toolkit from 2.5.0 to 2.5.1
Bumps [@reduxjs/toolkit](https://github.com/reduxjs/redux-toolkit) from 2.5.0 to 2.5.1.
- [Release notes](https://github.com/reduxjs/redux-toolkit/releases)
- [Commits](https://github.com/reduxjs/redux-toolkit/compare/v2.5.0...v2.5.1)

---
updated-dependencies:
- dependency-name: "@reduxjs/toolkit"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-13 09:00:20 +01:00
dependabot[bot]
1289d37ca2 build(deps-dev): bump @testing-library/react from 16.1.0 to 16.2.0
Bumps [@testing-library/react](https://github.com/testing-library/react-testing-library) from 16.1.0 to 16.2.0.
- [Release notes](https://github.com/testing-library/react-testing-library/releases)
- [Changelog](https://github.com/testing-library/react-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/react-testing-library/compare/v16.1.0...v16.2.0)

---
updated-dependencies:
- dependency-name: "@testing-library/react"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-12 17:11:30 +01:00
dependabot[bot]
21a3f38de3 build(deps): bump @redhat-cloud-services/frontend-components-notifications
Bumps [@redhat-cloud-services/frontend-components-notifications](https://github.com/RedHatInsights/frontend-components) from 4.1.16 to 4.1.17.
- [Release notes](https://github.com/RedHatInsights/frontend-components/releases)
- [Changelog](https://github.com/RedHatInsights/frontend-components/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RedHatInsights/frontend-components/compare/@redhat-cloud-services/frontend-components-notifications-4.1.16...@redhat-cloud-services/frontend-components-notifications-4.1.17)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-notifications"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-12 16:45:15 +01:00
Sanne Raymaekers
d35eabb6c8 packit.yaml: release into fedora-42 2025-02-12 16:27:15 +01:00
regexowl
e4b531f311 dependabot: Return limit to 3 PRs at once
The issues are resolved, let's get back to just three open pull requests at one time.
2025-02-12 15:52:35 +01:00
dependabot[bot]
0bbb4261da build(deps-dev): bump stylelint from 16.13.2 to 16.14.1
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.13.2 to 16.14.1.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.13.2...16.14.1)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-12 14:13:52 +01:00
schutzbot
5cc680f709 Post release version bump
[skip ci]
2025-02-11 20:19:58 +00:00
Sanne Raymaekers
fd4fe79b41 CreateImageWizard/ImageOutput: hide description in cockpit
Lifecycle information isn't available yet, so let's just hide it.
2025-02-11 21:17:18 +01:00
Sanne Raymaekers
76f86c3711 CreateImageWizard: default to major releases on prem
In RHEL, VERSION_ID actually refers to the minor release. Let's strip
the minor component from it until we actually support those explicitly.
2025-02-11 21:17:18 +01:00
dependabot[bot]
3eda8e2dd1 build(deps): bump @redhat-cloud-services/frontend-components-utilities
Bumps [@redhat-cloud-services/frontend-components-utilities](https://github.com/RedHatInsights/frontend-components) from 4.0.19 to 5.0.11.
- [Release notes](https://github.com/RedHatInsights/frontend-components/releases)
- [Changelog](https://github.com/RedHatInsights/frontend-components/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RedHatInsights/frontend-components/commits/@redhat-cloud-services/frontend-components-utilities-5.0.11)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-utilities"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-11 10:00:52 +01:00
dependabot[bot]
d80fed8234 build(deps): bump @redhat-cloud-services/frontend-components-notifications
Bumps [@redhat-cloud-services/frontend-components-notifications](https://github.com/RedHatInsights/frontend-components) from 4.1.1 to 4.1.16.
- [Release notes](https://github.com/RedHatInsights/frontend-components/releases)
- [Changelog](https://github.com/RedHatInsights/frontend-components/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RedHatInsights/frontend-components/compare/@redhat-cloud-services/frontend-components-notifications-4.1.1...@redhat-cloud-services/frontend-components-notifications-4.1.16)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-notifications"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-11 09:13:55 +01:00
dependabot[bot]
58d6c14e25 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.21.0 to 8.24.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.24.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-11 08:52:46 +01:00
dependabot[bot]
853eaa6ed0 build(deps-dev): bump @babel/core from 7.26.0 to 7.26.8
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.26.0 to 7.26.8.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.8/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-11 08:37:54 +01:00
dependabot[bot]
c3183e8f0b build(deps-dev): bump @babel/preset-env from 7.26.0 to 7.26.8
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.26.0 to 7.26.8.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.8/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-10 11:57:28 +01:00
regexowl
fd6ab7166d dependabot: Increase limit of opened pull requests
This will temporarily increase limit of opened pull requests, until the frontend-components bumps get resolved.
2025-02-10 11:21:40 +01:00
regexowl
4ccf932c21 Wizard: Remove CodeBlocks for "None" as a value
Render "None" just as a plain text when there are no values to be shown in the review expandable.
2025-02-10 10:47:55 +01:00
regexowl
16b3d60db1 test: Services edit tests
This adds services tests for the edit mode.
2025-02-10 10:35:42 +01:00
regexowl
28253c040e vitests: Set global retry
This sets retry globally to `3`, so we don't have to add it to the tests individually.

For the tests that are reliable this shouldn't have any effect, but it will trigger on tests that proved to be a bit flakey (like revisit tests).
2025-02-10 10:02:54 +01:00
red-hat-konflux[bot]
16ae47e6e2 Update Konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-02-10 09:11:14 +01:00
regexowl
ac725f3ae1 Wizard: Gate kernel info behind feature flag
This gates the visibility of kernel information behind a flag on the OpenSCAP step.
2025-02-07 18:32:52 +02:00
regexowl
87a908af35 Wizard: Gate services on OpenSCAP step behind flag
This gates the visibility of services on the OpenSCAP step behing a flag.
2025-02-07 18:32:52 +02:00
schutzbot
d969646822 Post release version bump
[skip ci]
2025-02-07 14:21:56 +00:00
Sanne Raymaekers
5b6259854d cockpit/spec: correct minimum required composer version
Package search was only added recently.

 Requires:       cockpit
 Requires:       cockpit-files
-Requires:       osbuild-composer >= 103
+Requires:       osbuild-composer >= 131

 %description
 The image-builder-frontend generates custom images suitable for
2025-02-07 15:13:09 +01:00
Sanne Raymaekers
894868ce9c cockpit/spec: add obsoletes for cockpit-composer 2025-02-07 15:13:09 +01:00
Sanne Raymaekers
de0d295e8d .github/workflows/release: fix make dist step
The upstream release step cleans the checkout, so move it out.
2025-02-07 15:13:09 +01:00
schutzbot
a03a2595be Post release version bump
[skip ci]
2025-02-07 09:50:00 +00:00
regexowl
e74675ae7f devDeps: Manually bump vitest
This bumps vitest and @vitest/coverage-v8 from 2.0.5 to 3.0.5.
2025-02-07 10:35:18 +01:00
Sanne Raymaekers
0624f4a23d test/CreateImageWizard: test hostname step on cockpit 2025-02-07 09:30:03 +01:00
Sanne Raymaekers
9def3f61cb CreateImageWizard: enable locale step in cockpit 2025-02-07 09:30:03 +01:00
Sanne Raymaekers
d10620cc56 test/CreateImageWizard: add basic render for cockpit tests 2025-02-07 09:30:03 +01:00
Sanne Raymaekers
73afbc2b51 cockpit/spec: fix source url
Downstream the "v" got dropped from the version by #2831, but then the
source url is wrong. The path has got a "v" in it, and the artefact
doesn't.

The workflow already got fixed in #2860.
2025-02-06 17:58:03 +01:00
Michal Gold
a34251d0a7 Wizard: remove extendable section from Review step when there is no value
this removes extendable users from Review step when there is no user or kernel name
2025-02-06 17:02:00 +01:00
Sanne Raymaekers
4d9a1f294f .github/workflows/release: fix artefact name
After the upstream tag template changed, packit is now looking for the
artefact matching the template, so without the "v".
2025-02-06 16:26:30 +01:00
Michal Gold
7f54147a64 Wizard: change password to **** if there is value in pasword field
this changes password to **** if there is value in pasword field
2025-02-06 15:18:14 +01:00
regexowl
eeb70e38c3 Wizard: Add services to Review step
This adds systemd services expandable to the Review step.
2025-02-06 14:09:28 +01:00
regexowl
68d33130f7 src: Align to center
This ensures that both Landing page and Wizard are aligned to center within wide windows.
2025-02-06 13:30:23 +02:00
Sanne Raymaekers
2da55e20b2 .github/workflows: run cockpit unit tests in github workflows 2025-02-06 10:55:45 +01:00
Sanne Raymaekers
e46a575186 package.json: add script to run unit tests with cockpit 2025-02-06 10:55:45 +01:00
Sanne Raymaekers
a0a1fa223c test/ImagesTable: support basic render with cockpit 2025-02-06 10:55:45 +01:00
Sanne Raymaekers
dc98ca032f test/mocks: expand cockpit mocks
Use the data from the regular fixtures, but through cockpit APIs.

There are a few hacks to get around the fact that there are no composes
without blueprints, and the lack of paging support in the cockpit api.
2025-02-06 10:55:45 +01:00
Sanne Raymaekers
b2f56e26f2 test/testUtils: support rendering with cockpit 2025-02-06 10:55:45 +01:00
Sanne Raymaekers
e601a299be test/fixtures: add blueprint for cockpit
This blueprint is a hack, when the cockpit mocks encounter this
blueprint, the cockpit mocks will return all composes. This is to get
around the fact that in cockpit, there are no images without blueprints,
while that's possible in the service.
2025-02-06 10:55:45 +01:00
regexowl
5cc479115d requestMapper: Fix snapshot date parsing
Regex was wrong, would take "2025-01-01T00:00:00.000Z" even though it's a valid RFC 3339 date.
2025-02-06 09:31:49 +01:00
Sanne Raymaekers
874f6bdd5c store/cockpit: Add notifications for blueprints
Also just dump the entire `err` in the notification in case of
errors. The error we get from the custom query in cockpit is not at all
predictable.
2025-02-05 16:58:47 +01:00
regexowl
c2cdb84e77 validators: Remove unneeded condition for service validator
After the regex was fixed this condition should be removed.
2025-02-05 16:48:02 +01:00
Sanne Raymaekers
90bf5cf91f src: Rely only osbuild-composer's cloudapi types
Use the predefined types in the status row and the onprem to hosted
mapper.
2025-02-05 15:54:57 +01:00
Sanne Raymaekers
16ae455b67 store/cockpit: Add osbuild-composer's cloudapi 2025-02-05 15:54:57 +01:00
Sanne Raymaekers
a65d17ba4e api: Add osbuild-composer's cloudapi 2025-02-05 15:54:57 +01:00
Sanne Raymaekers
76044ddccd store/cockpitApi: add notification when composing images 2025-02-05 13:11:14 +01:00
Sanne Raymaekers
41869611db Blueprints/helpers: fix mapping hosted to on prem
`isAdministrator` isn't an option onPrem.
2025-02-05 13:11:14 +01:00
Sanne Raymaekers
b574a7cabc CreateImageWizard: fix systemd validator
The naming of systemd services don't follow the RFC in the comments. See
`man systemd.unit` for the specification.
2025-02-05 13:11:14 +01:00
Sanne Raymaekers
8dd85a3c1e store/cockpitApi: fix deleting blueprints 2025-02-05 13:11:14 +01:00
Sanne Raymaekers
52a43b0f2d CreateImageWizard: support edit mode on premise
The way the on premise wizard is initialized needed to be tweaked to
make it work for isEdit. Let's assume that the host distro and host
architecture are already correct in the blueprint.
2025-02-05 13:11:14 +01:00
Sanne Raymaekers
0204bcced5 store/wizardSlice: default to 'register-later' when on-premise 2025-02-05 13:11:14 +01:00
Sanne Raymaekers
61107e122e Utilities/useGetEnvironment: support feature flags on prem
These are just hardcoded, but enable the new customizations in the on
premise UI.
2025-02-05 13:11:14 +01:00
regexowl
3e542a60d3 README: Update scripts for running prod and stage
This updates the scripts used to run prod and stage locally.
2025-02-05 11:53:21 +01:00
schutzbot
0d1b264511 Post release version bump
[skip ci]
2025-02-05 08:27:01 +00:00
Gianluca Zuccarelli
b469775ef5 Components/Cockpit: NotReady
Add a secondary button that takes the user to the `osbuild-composer.socket`
services file inside the cockpit services plugin.
2025-02-04 23:08:50 +01:00
Gianluca Zuccarelli
a27c300431 AppCockpit: render not ready component
Render the nont ready component when the osbuild-composer.socket is
not running.
2025-02-04 23:08:50 +01:00
Gianluca Zuccarelli
87ce805c74 Utilities: add useComposerStatus hook
Add a custom hook to check to see if the osbuild-composer.socket
is enabled & running.
2025-02-04 23:08:50 +01:00
Gianluca Zuccarelli
abca3ac760 Components/Cockpit: add a not ready component
Add a component to display when the osbuild-composer socket
is not running. We could potentially try start the socket
in the future when clicking the button, rather than re-directing
to the cockpit services plugin.
2025-02-04 23:08:50 +01:00
regexowl
9e4cd302b5 Wizard: Add services to on-prem mapper
This adds services to on-prem mapper.
2025-02-04 17:21:50 +01:00
Anna Vítová
608b0f1593 CreateImageWizard: fix users ssh key naming in mapper
The naming of the ssh key was misspelled, this commit fixes it so that
it is according to docs.
2025-02-04 15:47:44 +01:00
regexowl
8bafe6cb80 Wizard: Add validation to Systemd services step
This adds validation to ChippingInputs on the Systemd services step.
2025-02-04 15:15:49 +01:00
regexowl
1e0cf96457 Wizard: Add inputs for disabled and enabled services
This adds inputs for disabled and enabled systemd services. New tests are also added.
2025-02-04 15:15:49 +01:00
Michal Gold
3cd3aa0176 Wizard: Add users to on-prem mapper
this adds users to on-prem mapper.
2025-02-04 14:39:34 +01:00
Michal Gold
2c414fb089 Wizard: remove confirmPassword from Mapper
this commit remove confirmPassword from Mapper because we decide that
this field is not relevant anymore to Users step, and it should remove
from the mapper as well
2025-02-04 14:08:54 +01:00
regexowl
7524bb1eef ImagesTable: Format status text
This adds formatting to the status text, ensuring it's the same as on Repositories step.
2025-02-04 13:55:30 +01:00
regexowl
d7a331b6a4 Wizard: Add firewall to Review step
This adds a firewall expandable to the Review step.
2025-02-04 13:32:25 +01:00
Michal Gold
7d2ca8f1ee fec: enable useFileHash
this commmit enable useFileHash in fec.config.js -
when set it to true Webpack will append a hash (a unique identifier) to the filename based on its content.
This helps prevent the browser from using an outdated cached version of a file when its content has changed.
2025-02-04 12:39:09 +01:00
schutzbot
19613366af Post release version bump
[skip ci]
2025-02-04 10:55:28 +00:00
regexowl
f11ab64262 Wizard: Add validation to ChippingInput
This adds step validation to ChippingInput, allowing to validate imported values.
2025-02-04 11:37:16 +01:00
Sanne Raymaekers
6ec433f9d3 ImagesTable: fix local target status
The local target status in osbuild-composre ended up being called
`artifact_path`.
2025-02-04 10:22:19 +01:00
Sanne Raymaekers
1b91b43079 store/cockpit: fix compose request POST
The base query expects a stringified pody.
2025-02-04 10:22:19 +01:00
Sanne Raymaekers
2b5982fdfe store/cockpit: fix URLs when using basequery
The new base query adds the common parts of the path already.
2025-02-04 10:22:19 +01:00
Sanne Raymaekers
fea03a8c72 CreateImageWizard: hide package group alert in cockpit plugin
Searching for groups isn't possible sadly, as the search works slightly
differently than content sources. Replace the alert with an alert on how
to use globbing.
2025-02-04 10:22:19 +01:00
Sanne Raymaekers
62a772198c packit.yaml: fix upstream tag template
Currently the version in fedora is `v55`, which is wrong, it should just
be `55`.
2025-02-03 14:33:53 +01:00
Sanne Raymaekers
1b4ecdb271 ImagesTable: ensure local target is copyable
To ensure the local file target is copyable and usable in
`cockpit-files`, the artefact directory needs to be readable.
2025-02-03 14:13:31 +01:00
Gianluca Zuccarelli
eac03ddc7d store/cockpit: add package search
Add initial package search. Include the version, release & arch information
in the summary, since some packages might have a release with the specific
architecture and a `noarch` version.
2025-02-03 13:40:30 +01:00
Gianluca Zuccarelli
bc1564eddb store/cockpit: add content sources api
Add a `contentSourcesApi` for the on-prem frontend. We need to add a small
workaround and put these endpoints under the `cockpitApi` reducer.
since RTK query here, doesn't like splitting out apis when they are
fundamentally the same.

To workaround this we can will just chain the endpoints so:
`emptyCockpitApi` -> `contentSourcesApi` -> `cockpitApi`

This allows us to keep the `contentSourcesApi` separate so
we can export some of the endpoints so that the `cockpitApi`
doesn't become a monolith.
2025-02-03 13:40:30 +01:00
Gianluca Zuccarelli
b8ceba2e3e store/backendApi: tidy up imports/exports
Tidy up the imports and the exports in the `backendApi` mixed api to
make things more consistent.
2025-02-03 13:40:30 +01:00
Gianluca Zuccarelli
9325fbfb56 store: fix api imports & exports
This is just a workaround to keep imports to the api definitions the same as before.
The added benefit is that we can then use these files to handle the mixed api types
between the service frontend and on-prem frontend.
2025-02-03 13:40:30 +01:00
Gianluca Zuccarelli
9c3581f21c store: split apis into sub directories
Since we will need to add other api endpoints, e.g. `contentSourcesApi` for
the on-prem frontend, this PR restructures the store directory to make future
changes more manageable.
2025-02-03 13:40:30 +01:00
Gianluca Zuccarelli
ed1b4c4b97 CreateImageWizard: hide registration on-prem
Hide the registration step for on-prem frontend
2025-02-03 13:40:30 +01:00
Michal Gold
5f7f958d07 Wizard: Add Administrator field to review step
this commit add administrator field to review step
2025-02-03 12:53:49 +01:00
regexowl
e9876f6ed5 test: Firewall edit tests
This adds firewall tests for the edit mode.
2025-02-03 12:25:37 +01:00
Sanne Raymaekers
39653c4df1 store/cockpit: don't define top-level constants that use cockpit
Only invoke the cockpit library when actually contacting the cloudapi.

The cockpit library isn't defined in the service, so any invocation of
the cockpit library when the application loads will make the frontend
crash.
2025-02-03 11:50:14 +01:00
regexowl
73e7a51ab0 Wizard: Add firewall to on-prem mapper
This adds firewall to on-prem mapper.
2025-02-03 10:56:14 +01:00
red-hat-konflux[bot]
4a6ea06b7a Update Konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-02-03 10:13:04 +01:00
Gianluca Zuccarelli
d67d8d481b store/cockpitApi: use baseQuery for requests
Switch the existing requests to make use of the `baseQuery`. This
just dries up the code a little bit.
2025-01-31 16:57:23 +01:00
Gianluca Zuccarelli
202575d74f test/mocks/cockpit: make file replace a promise
This just gets rid of some of the eslint warnings.
2025-01-31 16:57:23 +01:00
Gianluca Zuccarelli
6b3b3ea3cc store/cockpit/baseQuery: add cockpit baseQuery
Add a `cockpitBaseQuery` for api calls that need to be made against
the `cloudapi` on the osbuild-composer unix-socket. This function adds
an extra step of parsing the result and transforming it into JSON.

We need to wrap the `cockpit.http.request` call in a
Promise rather than async/await because cockpit rejects
the http request with two arguments (error & data/body)
and we need to handle this appropriately. It is not possible
to do this with a try/catch block
2025-01-31 16:57:23 +01:00
schutzbot
8e58548385 Post release version bump
[skip ci]
2025-01-31 13:00:48 +00:00
Sanne Raymaekers
4d176047e7 Revert "Post release version bump"
This reverts commit 4de06853d9.
2025-01-31 13:53:53 +01:00
Sanne Raymaekers
efa44c22bb .github/workflows/release: make sure GH_TOKEN is set for upload 2025-01-31 13:53:53 +01:00
schutzbot
4de06853d9 Post release version bump
[skip ci]
2025-01-31 12:21:46 +00:00
Sanne Raymaekers
9bbf85c444 Revert "Post release version bump"
This reverts commit 40da8c054e.
2025-01-31 13:15:21 +01:00
Sanne Raymaekers
31eaea16ca .github/workflows/release: work around git clean
The osbuild release action cleans the repository, removing the tarball
that gets uploaded to the release. This tarball needs to be built before
schutzbot commits the version bump, so move it so it doesn't get
cleaned.
2025-01-31 13:15:21 +01:00
schutzbot
40da8c054e Post release version bump
[skip ci]
2025-01-31 11:47:57 +00:00
Sanne Raymaekers
79ca7c623b .github/workflows/release: fix release workflow 2
The release event isn't present when a tag is pushed, so use ref_name to
get the tag name.
2025-01-31 12:40:53 +01:00
Sanne Raymaekers
163c6eabc9 Revert "Post release version bump"
This reverts commit 791d83a29a.
2025-01-31 12:40:53 +01:00
schutzbot
791d83a29a Post release version bump
[skip ci]
2025-01-31 11:03:11 +00:00
Sanne Raymaekers
781c3a92ae .github/workflows/release: fix release workflow 2025-01-31 11:56:55 +01:00
Sanne Raymaekers
45c5892ee9 Revert "Post release version bump"
The last release failed.  This reverts commit
18d59cf201.
2025-01-31 11:56:55 +01:00
Sanne Raymaekers
e249558879 cockpit/spec: depend on cockpit-files 2025-01-31 11:38:36 +01:00
Sanne Raymaekers
9b9de0bba5 ImagesTable/Instance: open cockpit's file browser for local imgs
Uses `cockpit.jump` to prevent the page actually loading, which makes it
very easy to navigate back to image builder.
2025-01-31 11:38:36 +01:00
Sanne Raymaekers
1f5afc6bc6 store/cockpitApi: make cache dir in case it doesn't exist
Pass `-p` when creating blueprint directories in case
`~/.cache/cockpit-image-builder` doesn't exist yet.
2025-01-30 22:32:12 +01:00
Sanne Raymaekers
40d1d4cd0f store/cockpitApi: hide cloud targets for now 2025-01-30 10:53:01 +01:00
Sanne Raymaekers
fcbcbb3d22 store/cockpitApi: write blueprints to disk 2025-01-30 10:53:01 +01:00
Sanne Raymaekers
1dc657a351 store/cockpitApi: invalidate cache after building an image
With the custom query functions the cached data from getComposes and
getBlueprintComposes doesn't get invalidated. Luckily RTKQuery provides
a mechanism to invalidate the cache after a mutation.
2025-01-30 10:53:01 +01:00
Sanne Raymaekers
75eb0afd10 src/test/mocks: add cockpit mocks
Adds `mtime` tot fsinfo, and `replace` to `cockpit.file`.
2025-01-30 10:53:01 +01:00
Sanne Raymaekers
c8c62dda9d store/cockpitApi: compose status support
Finds the relevant compose, asks for its status and reads the original
compose request from disk.
2025-01-30 10:53:01 +01:00
Sanne Raymaekers
7bd5e2fa95 ImagesTable: switch to mixed api for getting composes 2025-01-30 10:53:01 +01:00
Sanne Raymaekers
0775acdb4d store/cockpitApi: support getting composes
Reads all of the image entries under the cache.
2025-01-30 10:53:01 +01:00
Sanne Raymaekers
449aad5306 Blueprints/BuildImagesButton: switch to mixed api
The mixed api supports both the service and on-prem.
2025-01-30 10:53:01 +01:00
Sanne Raymaekers
d13276eeee store/cockpitApi: support building images from blueprint
The structure of the local cache is now:
```
└── blueprint
    └── blueprint.json
    └── image1
    └── image2
└── blueprint2
    └── blueprint2.json
    └── image1
```

Building an image reads the blueprint, and creates a new image file
under the relevant blueprint folder, which contains the image request.

The image request that's sent off to composer and the request that's
saved differs slightly in the upload structures.
2025-01-30 10:53:01 +01:00
Sanne Raymaekers
e4538826fd constants: use .cache for blueprints
`.cache` is for writing, `.local/share` is technically static data.
2025-01-30 10:53:01 +01:00
regexowl
4145157858 Wizard: Add firewall services
This adds firewall services, using the `<ChippingInput>` components. New tests were also added.
2025-01-29 14:48:15 +01:00
Amir
3c27f68b97 scripts: add start:federated script 2025-01-28 14:32:18 +01:00
Gianluca Zuccarelli
94f24ce085 store/cockpitApi: add create blueprint mutation 2025-01-28 13:29:21 +01:00
Gianluca Zuccarelli
c104f30cd2 store/cockpitApi: add list snapshot mutation
This is not ideal, but we needed to add an empty endpoint for
this, even though we're ignoring it on prem. The frontend for
the service makes the api call regardless, so we can't ignore
this.
2025-01-28 13:29:21 +01:00
Gianluca Zuccarelli
a3529f9108 CreateImageWizard: ignore org-id for on-prem
We can ignore the org-id when trying to get the state of the
blueprint during the blueprint creation. This is unnecessary
info for `on-prem`
2025-01-28 13:29:21 +01:00
Gianluca Zuccarelli
d0a69082f3 CreateImageWizard: disable analytics for on-prem 2025-01-28 13:29:21 +01:00
regexowl
e34ed8c230 test: Kernel edit tests
This adds kernel tests for the edit mode.
2025-01-28 11:49:17 +01:00
regexowl
a4d672b4e8 Blueprints: Add kernel to on-prem mapper
This adds kernel to the on-prem mapper.
2025-01-28 11:35:44 +01:00
Michal Gold
6e36232e1a Wizard: Add remove user button in users step
this adds remove user button and add unit test as well.
2025-01-27 14:30:22 -06:00
regexowl
96d68583a3 Wizard: Add kernel to Review step
This adds a kernel expandable to the Review step.
2025-01-27 13:48:39 -06:00
Michal Gold
aa8086176b wizard: create new component with add eyeIcon button inside textInput
this commit create new component with add eyeIcon button inside textInput,
for password field
2025-01-27 13:35:18 -06:00
Gianluca Zuccarelli
f2c5dcc1b3 store/backendApi: tidy up mixed api imports
The list of imports was growing really long and getting a bit
unmanageable. This commit tidies the imports up by importing all
the queries into two variables.
2025-01-27 17:03:06 +01:00
Gianluca Zuccarelli
45b83bd4fb CreateImageWizard: initialize on-prem with host arch
Initialize the create image wizard with the host arch for the
on-prem frontend.
2025-01-27 17:03:06 +01:00
Gianluca Zuccarelli
44af2f278b CreateImageWizard: initialize on-prem with host distro
Initialize the create image wizard with the host's distribution for the
on-premise frontend.
2025-01-27 17:03:06 +01:00
Gianluca Zuccarelli
ed8254f962 test/mocks: add cockpit os-release
Add a stub function for the `os-release` package from cockpit.
2025-01-27 17:03:06 +01:00
Gianluca Zuccarelli
c510918f2c constants: add centos-10 & fedora-41 2025-01-27 17:03:06 +01:00
Gianluca Zuccarelli
29b7e02de2 CreateImageWizard: hide activation keys for on-prem
Subject says it all
2025-01-27 17:03:06 +01:00
Gianluca Zuccarelli
e64008aec7 CreateImageWizard: disable steps for on-prem
For a start, we will disable custom repositories and the OpenSCAP steps
for the on-prem version of the frontend.
2025-01-27 17:03:06 +01:00
Gianluca Zuccarelli
592ea952e2 store: add missing apis to onPrem
Currently, the wizard still needs some of the other stores. If we
omit them, the wizard fails to launch
2025-01-27 17:03:06 +01:00
Gianluca Zuccarelli
6e9bd89b08 store/backendApi: create a useBackendPrefetch hook
Create a helper hook for RTK prefetch queries. This wrapper function
is needed since the imagebuilderApi and cockpitApi aren't at parity
yet.
2025-01-27 17:03:06 +01:00
Gianluca Zuccarelli
5a70e31d5a store/cockpitApi: empty get oscap profiles function
Create the boilerplate function for getting the Oscap profiles. We will
need to make a call to the `oscap` binary to get this information. So
we will leave it empty for now.
2025-01-27 17:03:06 +01:00
Gianluca Zuccarelli
34bf64debc store/cockpitApi: get blueprint endpoint
Create a get blueprint endpoint for the on-prem store.
2025-01-27 17:03:06 +01:00
Gianluca Zuccarelli
5988c42b6f store/cockpitApi: getArchitectures endpoint
We were making a call to a dead endpoint to get the architectures.
Instead, create a custom query function to return the list of architectures
and image types.
2025-01-27 17:03:06 +01:00
Gianluca Zuccarelli
6ca7edb949 Utilities: fix useGetEnvironment
We need to check for the on-prem use case
2025-01-27 17:03:06 +01:00
Gianluca Zuccarelli
aef3f4a3e4 multi: on-prem can't use the unleash flag
Switch the useFlag usage to the stub function defined in the
`useGetEnvironment` utility
2025-01-27 17:03:06 +01:00
Gianluca Zuccarelli
34368c4f84 cockpit: switch to hashrouter
The browser router doesn't seem to work inside cockpit, switching
to the hashrouter resolves this.
2025-01-27 17:03:06 +01:00
regexowl
6a29f7f344 Wizard: Remove redundant code, fix addItem
Removed redundant code and updated `addItem` to check for duplicate arguments in both required and non-required list.
2025-01-27 13:21:48 +01:00
regexowl
1b21852518 Wizard: Add kernel append input
This adds the kernel append input. New arguments can be added by pressing the "Add" button or hitting Enter after the argument.

The kernel arguments linked to a selected OpenSCAP profile are rendered in a category marked as "Required by OpenSCAP" and are read only.
2025-01-27 13:21:48 +01:00
regexowl
199dd3d5d7 Utilities: Fix "no-unnecessary-condition" issue 2025-01-25 21:06:00 -06:00
regexowl
607f2ee3c7 ImagesTable: Fix "no-unnecessary-condition" issues 2025-01-25 21:06:00 -06:00
regexowl
d2b644b65f LandingPage: Fix "no-unnecessary-condition" issues 2025-01-25 21:06:00 -06:00
regexowl
08e0a0c384 test: Fix "no-unnecessary-condition" issues 2025-01-25 21:06:00 -06:00
regexowl
c8c7c7dd0b Blueprints: Fix "no-unnecessary-condition" issues 2025-01-25 21:06:00 -06:00
regexowl
1c50407b19 devDeps: Manually bump stylelint
This bumps stylelint from 15.11.0 to 16.13.2 and stylelint-config-recommended-scss from 13.1.0 to 14.1.0
2025-01-25 17:22:07 -06:00
Michal Gold
771a582916 wizard: add support of TextArea for ssh_key field
this commit add support of TextArea for ssh_key field
2025-01-25 17:07:53 -06:00
Michal Gold
7d34d30b08 wizrad: add validation to ssh key field (HMS-5349)
this commit add validation to ssh key field

JIRA: HMS-5349
2025-01-23 14:08:24 +01:00
regexowl
0f86336af6 Wizard: Services step basics
This adds basic structure of the Services step.
2025-01-23 09:56:24 +01:00
dependabot[bot]
c6bee55544 build(deps-dev): bump @testing-library/user-event from 14.5.2 to 14.6.1
Bumps [@testing-library/user-event](https://github.com/testing-library/user-event) from 14.5.2 to 14.6.1.
- [Release notes](https://github.com/testing-library/user-event/releases)
- [Changelog](https://github.com/testing-library/user-event/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/user-event/compare/v14.5.2...v14.6.1)

---
updated-dependencies:
- dependency-name: "@testing-library/user-event"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-23 09:04:11 +01:00
dependabot[bot]
a7056e89d8 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.20.0 to 8.21.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.21.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-23 08:29:10 +01:00
regexowl
692ba3de0d ESLint: Disable autofix for "no-unnecessary-condition"
This disables autofix specifically for the "no-unnecessary-condition" rule. This allows us to continue using autofix without applying the breaking changes.
2025-01-22 14:10:58 +01:00
regexowl
d41c079567 test: Test error message reset and validation on add button
This tests the updates.
2025-01-22 11:48:10 +01:00
regexowl
db52b869b5 Wizard: Reset error text and validate on plus button
This updates `<ChippingInput>` component to resolve two bugs:
- validation wasn't triggered when using the plus button on Timezone and Locale steps
- error text wasn't reset when the value was changed or cleared
2025-01-22 11:48:10 +01:00
regexowl
adf802174c Wizard: Fix "and build images" buttons
The "Create / Save changes to a blueprint and build images" buttons were disabled by default.
2025-01-22 11:38:58 +02:00
schutzbot
18d59cf201 Post release version bump
[skip ci]
2025-01-22 08:30:33 +00:00
dependabot[bot]
6d9c4b55f5 build(deps): bump vite from 5.4.11 to 5.4.14
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.4.11 to 5.4.14.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v5.4.14/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v5.4.14/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-22 09:01:52 +01:00
dependabot[bot]
ec951c107f build(deps-dev): bump ts-patch from 3.2.1 to 3.3.0
Bumps [ts-patch](https://github.com/nonara/ts-patch) from 3.2.1 to 3.3.0.
- [Release notes](https://github.com/nonara/ts-patch/releases)
- [Changelog](https://github.com/nonara/ts-patch/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nonara/ts-patch/compare/v3.2.1...v3.3.0)

---
updated-dependencies:
- dependency-name: ts-patch
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-22 08:16:56 +01:00
Michal Gold
25f124077c wizard: add Administrator checkbox to users step (HMS-4903)
this commit add Administrator checkbox to users step
2025-01-21 13:29:25 +01:00
dependabot[bot]
bdd259f758 build(deps-dev): bump eslint-plugin-react from 7.37.2 to 7.37.4
Bumps [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) from 7.37.2 to 7.37.4.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-react/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.37.2...v7.37.4)

---
updated-dependencies:
- dependency-name: eslint-plugin-react
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-21 12:29:57 +01:00
regexowl
30d77faeb5 this commit add validation to name field in Users step 2025-01-21 11:36:33 +01:00
Michal Gold
5a7ce1efee wizard: extand steps only if there are values in the step
add condition that check if there is value in Hostname, Locale, Timezone steps
and if there is no value, we dont see the extendable part in review step

FIX ISSUE: (#2718)

after changes when there is no value in Timezone step, we should update
test if we want to see the extendable section
2025-01-21 10:06:19 +01:00
dependabot[bot]
8ddfca0fd7 build(deps-dev): bump uuid from 11.0.3 to 11.0.5
Bumps [uuid](https://github.com/uuidjs/uuid) from 11.0.3 to 11.0.5.
- [Release notes](https://github.com/uuidjs/uuid/releases)
- [Changelog](https://github.com/uuidjs/uuid/blob/main/CHANGELOG.md)
- [Commits](https://github.com/uuidjs/uuid/compare/v11.0.3...v11.0.5)

---
updated-dependencies:
- dependency-name: uuid
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-21 09:17:00 +01:00
regexowl
bfef28999d Wizard: Add validation for kernel step
This adds validation for the Kernel step.
2025-01-21 08:33:52 +01:00
regexowl
2d011c52e1 Wizard: Add custom kernel name warning
This adds a warning when custom kernel name is selected.
2025-01-21 08:33:52 +01:00
regexowl
addd933451 Wizard: Switch kernel name dropdown to typeahead with custom options
This replaces previously used single dropdown with a typeahead that allow creating a custom option.
2025-01-21 08:33:52 +01:00
regexowl
86add0ee38 validators: Remove kernel name validator
We currently don't use this validator.
2025-01-21 08:33:52 +01:00
regexowl
1fce574146 Wizard: Swap kernel name input with drop down
This replaces the kernel name input with a static drop down populated with valid values.
2025-01-21 08:33:52 +01:00
regexowl
c121e5caba Wizard: Add Kernel name input
This adds a kernel name input.
2025-01-21 08:33:52 +01:00
Sanne Raymaekers
7129cf866e .github/workflows/release: fix make dist step 2025-01-20 17:13:40 +01:00
regexowl
92a6fb5417 LandingPage: Hide NewAlert
We'll be switching NewAlert with blueprints for information about newly available customizations. The component itself is a nice scaffolding for the upcoming announcement, would prefer to keep it for now.
2025-01-20 15:58:00 +01:00
Sanne Raymaekers
17f2d11abe .github/workflows: add create-tag workflow 2025-01-20 15:07:53 +01:00
Sanne Raymaekers
fff8128771 .github/workflows: add release workflow
Also pushes the dist tarball, conform to the Source0 value in the spec
file. This is required for Packit to do downstream releases.
2025-01-20 15:07:53 +01:00
regexowl
6918313d6f validators: Remove undefined where only string value expected
This removes checks for an `undefined` value in validators that take only `string`.
2025-01-20 13:23:34 +01:00
regexowl
563ff04054 Wizard: Parse old snapshot dates when editing
This updates format of the snapshot date when the blueprint with the old format gets edited.
2025-01-20 11:43:40 +01:00
dependabot[bot]
44685f4c76 build(deps): bump @unleash/proxy-client-react from 4.4.0 to 4.5.1
Bumps [@unleash/proxy-client-react](https://github.com/Unleash/unleash-proxy-react) from 4.4.0 to 4.5.1.
- [Release notes](https://github.com/Unleash/unleash-proxy-react/releases)
- [Changelog](https://github.com/Unleash/proxy-client-react/blob/main/Changelog.md)
- [Commits](https://github.com/Unleash/unleash-proxy-react/compare/v4.4.0...v4.5.1)

---
updated-dependencies:
- dependency-name: "@unleash/proxy-client-react"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-20 10:18:08 +01:00
dependabot[bot]
91c64bfe50 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.18.1 to 8.20.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.20.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-20 08:43:57 +01:00
regexowl
7986828f6c ESLint: Set "no-unnecessary-condition" rule to warn
This adds "no-unnecessary-condition" and sets the output to warn. This should help us eliminate superfluous conditional chaining and uncover potentially faulty conditions.

Docs: https://typescript-eslint.io/rules/no-unnecessary-condition/
2025-01-17 11:57:18 -06:00
Gianluca Zuccarelli
8d34f85c48 store/cockpitApi: fix version number
Get rid of the `Math.floor` for the version and just ensure that
the version is a number.
2025-01-17 11:15:26 -06:00
Gianluca Zuccarelli
9a3c46e9ac store/cockpitApi: blueprint pagination
Add blueprint list pagination support
2025-01-17 11:15:26 -06:00
Gianluca Zuccarelli
ad239b9b6c store/cockpitApi: blueprint links
Use the filename/id of the blueprints as the links to
the first and last element for the blueprint list metadata.
These links are a little meaningless since they should be
urls.
2025-01-17 11:15:26 -06:00
Gianluca Zuccarelli
6bc791a379 store/cockpitApi: fix blueprint filtering
The blueprint list wasn't being filtered correctly if the blueprint
name was specified or if any search terms were provided. This commit
fixes that.
2025-01-17 11:15:26 -06:00
regexowl
6e6e3b1ccc Wizard: Fix repo status formatting
This fixes the formatting of repositories status.
2025-01-17 09:11:41 -06:00
dependabot[bot]
52efa800d8 build(deps-dev): bump @redhat-cloud-services/frontend-components-config
Bumps [@redhat-cloud-services/frontend-components-config](https://github.com/RedHatInsights/frontend-components) from 6.3.5 to 6.3.8.
- [Release notes](https://github.com/RedHatInsights/frontend-components/releases)
- [Changelog](https://github.com/RedHatInsights/frontend-components/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RedHatInsights/frontend-components/compare/@redhat-cloud-services/frontend-components-config-6.3.5...@redhat-cloud-services/frontend-components-config-6.3.8)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-config"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-17 11:22:07 +01:00
dependabot[bot]
fd5017c005 build(deps): bump @sentry/webpack-plugin from 2.22.7 to 3.0.0
Bumps [@sentry/webpack-plugin](https://github.com/getsentry/sentry-javascript-bundler-plugins) from 2.22.7 to 3.0.0.
- [Release notes](https://github.com/getsentry/sentry-javascript-bundler-plugins/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript-bundler-plugins/blob/main/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript-bundler-plugins/compare/2.22.7...3.0.0)

---
updated-dependencies:
- dependency-name: "@sentry/webpack-plugin"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-17 11:11:05 +01:00
Sanne Raymaekers
9d2739c51f cockpit/spec: post-release version bump 2025-01-17 10:03:42 +01:00
dependabot[bot]
c89459d93e build(deps-dev): bump jsdom from 25.0.1 to 26.0.0
Bumps [jsdom](https://github.com/jsdom/jsdom) from 25.0.1 to 26.0.0.
- [Release notes](https://github.com/jsdom/jsdom/releases)
- [Changelog](https://github.com/jsdom/jsdom/blob/main/Changelog.md)
- [Commits](https://github.com/jsdom/jsdom/compare/25.0.1...26.0.0)

---
updated-dependencies:
- dependency-name: jsdom
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-17 08:53:47 +01:00
Gianluca Zuccarelli
3e6985988a store/backendApi: export the relevant store api
Since the implementation of the cockpitApi and imageBuilderApi are different,
we should make sure to export the correct one depending on the environment
we are in.
2025-01-16 15:45:41 -06:00
Gianluca Zuccarelli
79532e4ac5 store/cockpitApi: add delete endpoint 2025-01-16 15:45:41 -06:00
Gianluca Zuccarelli
ebe387992c cockpit/webpack: path polyfill
We need to polyfill the `path` plugin for the cockpitApi store
2025-01-16 15:45:41 -06:00
Gianluca Zuccarelli
f4d6bc587f Makefile: update installation
Small fix to the symlinking of ~/.local/share/cockpit.
2025-01-16 15:45:41 -06:00
regexowl
4802d08214 Wizard: Firewall ports input
This adds chipping input for ports on the Firewall step.
2025-01-16 11:23:56 -06:00
Sanne Raymaekers
f0cf5b51d6 packit.yaml: add koji & copr build jobs and a release job 2025-01-16 12:40:43 +01:00
Sanne Raymaekers
4ae6d3b155 cockpit/spec: drop obsoletes for now
Let's wait with obsoleting cockpit-composer until enough features are
working.
2025-01-16 12:40:43 +01:00
Sanne Raymaekers
f5fa3d749e cockpit/spec: full source url
Releases will be created on github which should have this source
attached to them.
2025-01-15 12:18:05 +01:00
Sanne Raymaekers
f86586101a cockpit/spec: set version to 54
Cockpit-composer left at 53, cockpit-image-builder picks it up from 54.
2025-01-15 12:18:05 +01:00
Sanne Raymaekers
57d40ccecf cockpit/spec: reformat description
Fixes `description-line-too-long` error.
2025-01-15 12:18:05 +01:00
Sanne Raymaekers
b98ca9f089 cockpit/spec: capitalise summary
Fixes `summary-not-capitalized` rpmlint warning.
2025-01-15 12:18:05 +01:00
Sanne Raymaekers
abbf017df5 packit.yaml: add aarch64 to PR build targets 2025-01-15 12:18:05 +01:00
Sanne Raymaekers
acc15d1323 cockpit/spec: add changelog section 2025-01-15 12:18:05 +01:00
Sanne Raymaekers
6a5ef971c1 cockpit/spec: move metadata validation to check section 2025-01-15 12:18:05 +01:00
Sanne Raymaekers
a04e92e813 cockpit/spec: drop source maps in install section
Source maps should only be used for debugging.
2025-01-15 12:18:05 +01:00
Sanne Raymaekers
b18bd059ea cockpit/spec: add obsoletes/provides for cockpit-composer 2025-01-15 12:18:05 +01:00
Sanne Raymaekers
c05531f4fa cockpit/spec: fix license name 2025-01-15 12:18:05 +01:00
dependabot[bot]
c15a075ab2 build(deps-dev): bump @redhat-cloud-services/eslint-config-redhat-cloud-services
Bumps @redhat-cloud-services/eslint-config-redhat-cloud-services from 2.0.4 to 2.0.10.

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/eslint-config-redhat-cloud-services"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-15 10:56:00 +01:00
Michal Gold
568b8c83cf wizard: add ssh_key to review step
this commit add ssh_key to review step under Users
2025-01-15 10:42:43 +01:00
dependabot[bot]
8996dcc092 build(deps): bump @patternfly/react-table from 5.4.13 to 5.4.14
Bumps [@patternfly/react-table](https://github.com/patternfly/patternfly-react) from 5.4.13 to 5.4.14.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-table@5.4.13...@patternfly/react-table@5.4.14)

---
updated-dependencies:
- dependency-name: "@patternfly/react-table"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-15 09:13:29 +01:00
dependabot[bot]
4425fbb134 build(deps-dev): bump typescript from 5.7.2 to 5.7.3
Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.7.2 to 5.7.3.
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.7.2...v5.7.3)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-15 08:36:48 +01:00
regexowl
3167effa1b Wizard: Add unleash flag and update tests
This gates the step behind an unleash flag and updates the existing tests so they pass with the new step added.
2025-01-14 14:11:22 -06:00
Lucas Garfield
e6bc0d429a Wizard: Firewall customization scaffolding 2025-01-14 14:11:22 -06:00
regexowl
5696d1805f Wizard: Do not show warning icon if warning === ''
Fixes #2743

This hides the warning under FSC min size if the body of warning is empty.
2025-01-14 15:46:30 +01:00
Sanne Raymaekers
576262c513 cockpit/packit: add packit config
Add the initial packit config so we can push copr rpms for each pr.

Co-authored-by: Gianluca Zuccarelli <gzuccare@redhat.com>
2025-01-14 12:09:59 +01:00
Gianluca Zuccarelli
436b75b209 Makefile: fix cockpit/build target
Remove `npm ci` from the build target since setting the NODE_ENV
to production means that the dev dependencies aren't installed.

See:
https://github.com/osbuild/image-builder-frontend/pull/2701#discussion_r1905447709
2025-01-14 12:09:59 +01:00
Gianluca Zuccarelli
1c8e76debf Makefile: add rpm build targets
Add some targets to help build rpm and srpms.
2025-01-14 12:09:59 +01:00
Gianluca Zuccarelli
94abf8e617 README: add empty README 2025-01-14 12:09:59 +01:00
Gianluca Zuccarelli
926ce465da cockpit/metainfo: add basic metainfo file
This is almost a straight copy from the cockpit-composer repo.
2025-01-14 12:09:59 +01:00
Gianluca Zuccarelli
a01bc0d1de cockpit/specfile: add initial specfile 2025-01-14 12:09:59 +01:00
Gianluca Zuccarelli
7824d047db Makefile: add install target
Add a simple install target that we can reference in the specfile.
2025-01-14 12:09:59 +01:00
Gianluca Zuccarelli
a1d1c4b72e constants: fix cockpit constant
Since we are building the project under `cockpit-composer` we should change
the `BLUEPRINTS_DIR` constant.
2025-01-14 12:09:59 +01:00
red-hat-konflux[bot]
52a8b085eb chore(deps): update konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-01-14 10:08:27 +01:00
dependabot[bot]
a02dda9f02 build(deps-dev): bump @typescript-eslint/parser from 8.18.1 to 8.20.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.18.1 to 8.20.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.20.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-14 09:08:37 +01:00
dependabot[bot]
d1efe78a94 build(deps-dev): bump @babel/preset-typescript from 7.25.7 to 7.26.0
Bumps [@babel/preset-typescript](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-typescript) from 7.25.7 to 7.26.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.0/packages/babel-preset-typescript)

---
updated-dependencies:
- dependency-name: "@babel/preset-typescript"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-14 08:23:32 +01:00
dependabot[bot]
681006fa5e build(deps-dev): bump mini-css-extract-plugin from 2.9.1 to 2.9.2
Bumps [mini-css-extract-plugin](https://github.com/webpack-contrib/mini-css-extract-plugin) from 2.9.1 to 2.9.2.
- [Release notes](https://github.com/webpack-contrib/mini-css-extract-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/mini-css-extract-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/mini-css-extract-plugin/compare/v2.9.1...v2.9.2)

---
updated-dependencies:
- dependency-name: mini-css-extract-plugin
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-13 10:51:44 +01:00
dependabot[bot]
a7209ce414 build(deps-dev): bump sass from 1.83.0 to 1.83.1
Bumps [sass](https://github.com/sass/dart-sass) from 1.83.0 to 1.83.1.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.83.0...1.83.1)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-13 09:18:51 +01:00
Michal Gold
224b927921 this commit adds the latest changes in api schema 2025-01-09 10:31:55 +01:00
Michal Gold
b3a8597b66 Revert "wizard: add confirm password to users step (HMS-4903)"
This reverts commit ba70753a80.
2025-01-08 12:47:05 -06:00
regexowl
d3e76c6d49 ImagesTable: Fix version filter
This fixes the "All versions" / "Newest" filter in the blueprint images table.
2025-01-08 17:30:21 +01:00
regexowl
add30905ab ImagesTable: Fix images header
"All images" should change to "<blueprint_name> images" when a blueprint is selected.
2025-01-08 15:11:13 +01:00
regexowl
34b4f243ff ImagesTable: Fix compose filtering by selected blueprint
The filtering was defaulting to version '1', making images of other versions not appear when selecting a blueprint.

How to reproduce:
1. create a blueprint
2. build an image
3. edit the blueprint to get it to version 2
4. build another image

Current behaviour:
- only image with version 1 is visible

After fix:
- both image for version 1 and image for version 2 of the blueprint should be visible when the blueprint is selected
2025-01-08 13:11:38 +01:00
Michal Gold
ba70753a80 wizard: add confirm password to users step (HMS-4903)
this commit add confirm password to users step
2025-01-08 11:10:29 +01:00
dependabot[bot]
b9d6cc886a build(deps): bump @patternfly/react-core from 5.4.1 to 5.4.12
Bumps [@patternfly/react-core](https://github.com/patternfly/patternfly-react) from 5.4.1 to 5.4.12.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@5.4.1...@patternfly/react-core@5.4.12)

---
updated-dependencies:
- dependency-name: "@patternfly/react-core"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-08 09:22:02 +01:00
dependabot[bot]
c6f76cf4bd build(deps-dev): bump sass-loader from 16.0.3 to 16.0.4
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 16.0.3 to 16.0.4.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v16.0.3...v16.0.4)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-08 08:36:36 +01:00
Bryttanie House
29736d8d0c Wizard: switch snapshot date in wizard to RFC3339 2025-01-07 14:37:34 +01:00
Anna Vítová
e5934452ca src: add checkbox to confirm custom repos import
Importing custom repositories on behalf users might be unexpected. This
commit adds a checkbox to opt out.
2025-01-07 12:11:25 +01:00
Anna Vítová
b7b9d2ac24 src: add notification for custom repo imports
Show notification about imported custom repositories
2025-01-07 12:11:25 +01:00
Anna Vítová
e805c65f81 src: add custom repositories import feature
This allows sharing blueprints cross organizations even with custom
repositories.
2025-01-07 12:11:25 +01:00
dependabot[bot]
2bee0ef49b build(deps-dev): bump react-chartjs-2 from 5.2.0 to 5.3.0
Bumps [react-chartjs-2](https://github.com/reactchartjs/react-chartjs-2) from 5.2.0 to 5.3.0.
- [Release notes](https://github.com/reactchartjs/react-chartjs-2/releases)
- [Changelog](https://github.com/reactchartjs/react-chartjs-2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/reactchartjs/react-chartjs-2/compare/v5.2.0...v5.3.0)

---
updated-dependencies:
- dependency-name: react-chartjs-2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-07 09:14:21 +01:00
dependabot[bot]
406e42f52f build(deps): bump @patternfly/react-table from 5.4.12 to 5.4.13
Bumps [@patternfly/react-table](https://github.com/patternfly/patternfly-react) from 5.4.12 to 5.4.13.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-table@5.4.12...@patternfly/react-table@5.4.13)

---
updated-dependencies:
- dependency-name: "@patternfly/react-table"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-07 08:40:19 +01:00
regexowl
d77ac55482 Wizard: Skip directly to Review
When clicking "Review and finish" the user skips directly to the Review step and the name of the blueprint gets automatically populated.
2025-01-06 18:22:50 -06:00
regexowl
4af4b56332 this commit adds ssh_key to users step 2025-01-06 13:05:41 +01:00
Michal Gold
6a5871bf14 wizard: add users to review step (HMS-4906) 2025-01-06 12:28:20 +01:00
regexowl
5e4f20edf1 src: Make spinners spin
This replaces the `<InProgressIcon>` with animated spinners to indicate that something is happening.
2025-01-06 10:17:49 +01:00
dependabot[bot]
fe0e20319b build(deps): bump @unleash/proxy-client-react from 4.3.1 to 4.4.0
Bumps [@unleash/proxy-client-react](https://github.com/Unleash/unleash-proxy-react) from 4.3.1 to 4.4.0.
- [Release notes](https://github.com/Unleash/unleash-proxy-react/releases)
- [Changelog](https://github.com/Unleash/proxy-client-react/blob/main/Changelog.md)
- [Commits](https://github.com/Unleash/unleash-proxy-react/compare/v4.3.1...v4.4.0)

---
updated-dependencies:
- dependency-name: "@unleash/proxy-client-react"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-06 09:14:16 +01:00
red-hat-konflux[bot]
06e9e865fa chore(deps): update konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-01-06 08:37:00 +01:00
dependabot[bot]
8214285335 build(deps-dev): bump @testing-library/react from 16.0.1 to 16.1.0
Bumps [@testing-library/react](https://github.com/testing-library/react-testing-library) from 16.0.1 to 16.1.0.
- [Release notes](https://github.com/testing-library/react-testing-library/releases)
- [Changelog](https://github.com/testing-library/react-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/react-testing-library/compare/v16.0.1...v16.1.0)

---
updated-dependencies:
- dependency-name: "@testing-library/react"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-03 08:42:22 +01:00
regexowl
5f9f30d97b Wizard: Fix "form in form" warning
This resolves `Warning: validateDOMNesting(...): <form> cannot appear as a descendant of <form>.` warning in test output. There were two `<Form>` components nested in each other.
2025-01-02 13:18:00 +01:00
red-hat-konflux[bot]
f4ac576ab8 chore(deps): update konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2025-01-02 11:27:28 +01:00
dependabot[bot]
10674eb3af build(deps-dev): bump @vitejs/plugin-react from 4.3.3 to 4.3.4
Bumps [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) from 4.3.3 to 4.3.4.
- [Release notes](https://github.com/vitejs/vite-plugin-react/releases)
- [Changelog](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite-plugin-react/commits/v4.3.4/packages/plugin-react)

---
updated-dependencies:
- dependency-name: "@vitejs/plugin-react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-02 09:50:41 +01:00
dependabot[bot]
41a6741e63 build(deps): bump @sentry/webpack-plugin from 2.22.6 to 2.22.7
Bumps [@sentry/webpack-plugin](https://github.com/getsentry/sentry-javascript-bundler-plugins) from 2.22.6 to 2.22.7.
- [Release notes](https://github.com/getsentry/sentry-javascript-bundler-plugins/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript-bundler-plugins/blob/main/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript-bundler-plugins/compare/2.22.6...2.22.7)

---
updated-dependencies:
- dependency-name: "@sentry/webpack-plugin"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-02 10:09:29 +02:00
dependabot[bot]
d25ac93ff8 build(deps-dev): bump sass from 1.82.0 to 1.83.0
Bumps [sass](https://github.com/sass/dart-sass) from 1.82.0 to 1.83.0.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.82.0...1.83.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-31 22:02:36 +02:00
Gianluca Zuccarelli
47156c4e95 store/cockpitApi: use existing blueprint converter
Use the blueprint existing blueprint converter to convert
the on-prem blueprint to the hosted blueprint
2024-12-21 08:19:15 -06:00
Gianluca Zuccarelli
a9ebfb7e2e store/cockpitApi: scan for blueprint files
Add an initial commit to scan a preset directory for user blueprint
files. This makes use of the cockpit files api.
2024-12-21 08:19:15 -06:00
Gianluca Zuccarelli
2b82fa3c4b tsconfig: cockpit plumbing
It was necessary to do a bit of plumbing to get typescript, webpack &
vitest all happy. To do this we had had to create a separate tsconfig
for the on-prem version and the service frontend.

We override the module resolution for both config files. For on-prem we
check modules in `pkg/lib` and for the service we resolve the modules to
stub functions of the `cockpit` & `cockpit/fsinfo` modules. This was so
typescript and webpack would not complain.

For on-prem we had to intruct webpack to resolve modules from both
`node_modules` and `pkg/lib`. While for the service we set the
resulotion for the two modules to false, which means they won't get
bundled with the service.

Lastly, we needed to set some aliases in the vitest config so that
vitest could resolve the `cockpit` & `cockpit/fsinfo` modules.

Using the cjs `require` keyword to import cockpit would have worked to
make typescript and webpack compile since these imports are not
statically analysed like the `import` keyword is. However, this approach
broke the tests as `require` imports are not supported in vitest.
2024-12-21 08:19:15 -06:00
Gianluca Zuccarelli
4235885541 test/mocks: add cockpit lib mocks
Add some stub functions for the cockpit library, these will be needed
for tests to pass and for stubbing out the library for the service.
2024-12-21 08:19:15 -06:00
Gianluca Zuccarelli
cb6f2573d0 Konflux: fix cockpit workaround
Limit the cockpit workaround to only delete the `cockpit` directory at
the root of the project. Otherwise this command would delete some of the
mocks that we need to compile the project.
2024-12-21 08:19:15 -06:00
Gianluca Zuccarelli
c0ccec545a Makefile: add some convenenience functions
The on-prem version of this repo depends on the `cockpit` project. Some
of the files from the `cockpit` repo are needed to build and run this
project. These files are saved into the `pkg/lib` directory, this commit
adds some convenience scripts to the Makefile to do this.
2024-12-21 08:19:15 -06:00
Gianluca Zuccarelli
570cb3eba2 store: add emptyCockpitApi
This is just to follow the convention already used in the project.
2024-12-21 08:19:15 -06:00
Michal Gold
d0f2317649 wizard: add user information step (HMS-4903)
This commit introduces the user information step with the following fields:
(*) `userName` field
(*) `password` field
(*) add unit tests for create and edit mode
2024-12-20 12:35:15 -06:00
regexowl
7da478791e devDeps: Manually bump msw from 2.6.6 to 2.7.0
This bumps msw from 2.6.6 to 2.7.0
2024-12-20 07:13:18 -06:00
dependabot[bot]
68c7b566e9 build(deps): bump @reduxjs/toolkit from 2.3.0 to 2.5.0
Bumps [@reduxjs/toolkit](https://github.com/reduxjs/redux-toolkit) from 2.3.0 to 2.5.0.
- [Release notes](https://github.com/reduxjs/redux-toolkit/releases)
- [Commits](https://github.com/reduxjs/redux-toolkit/compare/v2.3.0...v2.5.0)

---
updated-dependencies:
- dependency-name: "@reduxjs/toolkit"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-20 08:36:49 +01:00
dependabot[bot]
36163d984d build(deps-dev): bump @typescript-eslint/parser from 8.18.0 to 8.18.1
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.18.0 to 8.18.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.18.1/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-19 09:06:46 +01:00
dependabot[bot]
51eaf853d3 build(deps-dev): bump eslint-plugin-react-hooks from 5.0.0 to 5.1.0
Bumps [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) from 5.0.0 to 5.1.0.
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/HEAD/packages/eslint-plugin-react-hooks)

---
updated-dependencies:
- dependency-name: eslint-plugin-react-hooks
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-19 08:21:27 +01:00
dependabot[bot]
80d7c3785d build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.17.0 to 8.18.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.18.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-18 08:39:50 +01:00
regexowl
cf4289f692 Wizard: Move two files
This moves two files:
- timezonesList to the Timezone step, same as lists used for Locale
- ImportBlueprintModal.test.tsx to the test folder so all the test files are in one place
2024-12-17 17:01:34 -06:00
dependabot[bot]
60a5b65acd build(deps): bump react-redux from 9.1.2 to 9.2.0
Bumps [react-redux](https://github.com/reduxjs/react-redux) from 9.1.2 to 9.2.0.
- [Release notes](https://github.com/reduxjs/react-redux/releases)
- [Changelog](https://github.com/reduxjs/react-redux/blob/master/CHANGELOG.md)
- [Commits](https://github.com/reduxjs/react-redux/compare/v9.1.2...v9.2.0)

---
updated-dependencies:
- dependency-name: react-redux
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-17 08:55:06 +01:00
regexowl
ae795c3b6a Wizard: Extract ChippingInput to reusable component
This extracts input with chips from the NTP servers into a separate reusable ChippingInput component.
2024-12-16 12:12:56 -06:00
regexowl
8e046e3018 Wizard: Kernel step basics
This adds foundation for Kernel step, including gating and basic tests.
2024-12-16 10:53:06 +01:00
dependabot[bot]
8004ed75e4 build(deps): bump @patternfly/react-table from 5.4.11 to 5.4.12
Bumps [@patternfly/react-table](https://github.com/patternfly/patternfly-react) from 5.4.11 to 5.4.12.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-table@5.4.11...@patternfly/react-table@5.4.12)

---
updated-dependencies:
- dependency-name: "@patternfly/react-table"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-16 09:15:23 +01:00
red-hat-konflux[bot]
7b00182ec7 chore(deps): update konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2024-12-16 08:24:59 +01:00
dependabot[bot]
a60e280dc7 build(deps-dev): bump eslint-plugin-testing-library from 7.0.0 to 7.1.1
Bumps [eslint-plugin-testing-library](https://github.com/testing-library/eslint-plugin-testing-library) from 7.0.0 to 7.1.1.
- [Release notes](https://github.com/testing-library/eslint-plugin-testing-library/releases)
- [Changelog](https://github.com/testing-library/eslint-plugin-testing-library/blob/main/.releaserc.json)
- [Commits](https://github.com/testing-library/eslint-plugin-testing-library/compare/v7.0.0...v7.1.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-testing-library
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-13 14:44:02 +01:00
Anna Vítová
74c352e235 Wizard: Add popover to suggest importing on-prem
In order to hint users that on-premise blueprints are accepted in
import, we are adding a popover with a message.
2024-12-13 14:27:05 +01:00
dependabot[bot]
ec2b6acf54 build(deps-dev): bump chart.js from 4.4.4 to 4.4.7
Bumps [chart.js](https://github.com/chartjs/Chart.js) from 4.4.4 to 4.4.7.
- [Release notes](https://github.com/chartjs/Chart.js/releases)
- [Commits](https://github.com/chartjs/Chart.js/compare/v4.4.4...v4.4.7)

---
updated-dependencies:
- dependency-name: chart.js
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-13 08:40:30 +01:00
regexowl
a5966b2f29 test: Add edit tests for hostname
This adds an edit test for the Hostname step.
2024-12-12 14:53:18 -06:00
regexowl
9b6934438a validators: Allow only lowercase characters for hostname
Validation error mentions only lowercase characters, this updates the regex accordingly.
2024-12-12 14:53:22 +02:00
regexowl
3bd4dc89c4 test: Add test to check hostname length
This adds a test to check the length of the hostname.
2024-12-12 14:53:22 +02:00
regexowl
dc24ba24e4 Wizard: Add Hostname expandable to Review step
This adds a new expandable to the Review step.
2024-12-12 13:47:09 +02:00
regexowl
73eaecc51e Wizard: Add hostname to on-prem mapper
This adds hostname to on-prem mapper and updates a test that checks if the value got parsed correctly.
2024-12-12 11:19:16 +01:00
dependabot[bot]
8c8e446200 build(deps-dev): bump @babel/preset-react from 7.25.9 to 7.26.3
Bumps [@babel/preset-react](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-react) from 7.25.9 to 7.26.3.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.3/packages/babel-preset-react)

---
updated-dependencies:
- dependency-name: "@babel/preset-react"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-12 10:23:28 +01:00
Lucas Garfield
b4932d6a44 Wizard: Hostname validation
Hostname validation rules can be found in the hostname man pages (`man 5
hostname`). This commit tweaks the hostname validator function so it is
in line with these guidelines by limiting the length to 64 characters
and also updates the error message for invalid hostnames to provide
users with some additional guidance/context when an invalid hostname is
provided.
2024-12-11 12:59:41 -06:00
regexowl
5a514d1d04 Wizard: Add Hostname functionality
This adds a validated hostname input and new tests.
2024-12-11 12:59:41 -06:00
Sanne Raymaekers
c98b7d9997 package.json: remove sentry-cli 2024-12-11 16:58:58 +01:00
Sanne Raymaekers
6070641028 ci.sh: let the webpack plugin do the sentry debug id injecting 2024-12-11 16:58:58 +01:00
Sanne Raymaekers
196f52b821 fec.config.js: use webpack plugin to inject sentry debug ids
The module metadata, which is only available in the webpack plugin, is
needed for correct routing.
2024-12-11 16:58:58 +01:00
dependabot[bot]
ba449ac2a5 build(deps): bump @redhat-cloud-services/frontend-components-notifications
Bumps [@redhat-cloud-services/frontend-components-notifications](https://github.com/RedHatInsights/frontend-components) from 4.1.0 to 4.1.1.
- [Release notes](https://github.com/RedHatInsights/frontend-components/releases)
- [Changelog](https://github.com/RedHatInsights/frontend-components/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RedHatInsights/frontend-components/commits/@redhat-cloud-services/frontend-components-notifications-4.1.1)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-notifications"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-11 08:35:40 +01:00
regexowl
75741ec40e test: Add basics Hostname tests
This adds basic tests for the Hostname step.
2024-12-10 12:37:36 -06:00
regexowl
8c108fe2ec Wizard: Basic Hostname step
This adds Hostname step basics and file structure.
2024-12-10 12:37:36 -06:00
regexowl
317f424448 test: Packages selected on import
This checks if specified packages get selected when importing a toml blueprint.
2024-12-10 11:54:11 -06:00
Simon Steinbeiss
80e793cbfd github/actions: Enable /jira-epic slash commands
This change depends on
https://github.com/osbuild/pr-best-practices/pull/8

It means you can use the command both in a standalone comment or
directly in the PR description.
2024-12-10 11:07:06 -06:00
regexowl
e98376de1a test: Clean up comments left over after rebasing
This removes two comments left over after rebasing, both tests are already implemented a bit higher in the file.
2024-12-10 09:58:54 -06:00
regexowl
93de07c729 Wizard: Add Locale to on-prem mapper
This adds Locale values to the on-prem mapper and updates the import test to check for expected values.
2024-12-10 09:16:39 -06:00
dependabot[bot]
0d952fc878 build(deps): bump nanoid from 3.3.7 to 3.3.8
Bumps [nanoid](https://github.com/ai/nanoid) from 3.3.7 to 3.3.8.
- [Release notes](https://github.com/ai/nanoid/releases)
- [Changelog](https://github.com/ai/nanoid/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ai/nanoid/compare/3.3.7...3.3.8)

---
updated-dependencies:
- dependency-name: nanoid
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-10 14:14:54 +01:00
regexowl
8d84b5eef2 Wizard: Add Locale to Review step
This adds Locale expandable to the Review step.
2024-12-10 04:15:37 -06:00
Sanne Raymaekers
3dcafd5672 store/enhancedImageBuilderApi: handle empty error data
Turns out it can also return `{error: data: {}}`, so without `errors`
inside the data object.
2024-12-10 10:30:18 +01:00
Sanne Raymaekers
3addcf66f4 ci.sh: inject debug ids using sentry-cli
Since we're building with konflux now, we lost the debug ids. By
injecting the debug ids in konflux we regain unminified sourcemaps in
sentry. Note that jenkins will continue to upload the sourcemaps, which
are tied to specific releases, we just need the debug ids to be in the
production artefacts.
2024-12-10 09:16:25 +01:00
dependabot[bot]
e90a4fc9b3 build(deps-dev): bump @typescript-eslint/parser from 8.17.0 to 8.18.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.17.0 to 8.18.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.18.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-10 08:37:14 +01:00
regexowl
c9efe9e22d Wizard: Use reusable sort function
This replaces sortfn with a reusable sorting function from utilities.
2024-12-09 14:30:26 -06:00
regexowl
ad02609038 Wizard: Add Languages drop down
This adds a drop down for languages selection. The options are populated with an ouput of `localectl list-locales` and sorted to display results starting with the search term first.

Also added tests.
2024-12-09 14:30:26 -06:00
regexowl
9324a33a74 Wizard: Add validation for NTP servers
This adds a validation pattern and a validation for NTP servers field.
2024-12-09 13:44:10 -06:00
regexowl
1533830095 Wizard: Add Timezone to on-prem mapper
This adds Timezone values to the on-prem mapper and updates the import test to check for expected values.
2024-12-09 12:19:01 -06:00
dependabot[bot]
590855c7f3 build(deps): bump @redhat-cloud-services/frontend-components-utilities
Bumps [@redhat-cloud-services/frontend-components-utilities](https://github.com/RedHatInsights/frontend-components) from 4.0.17 to 4.0.19.
- [Release notes](https://github.com/RedHatInsights/frontend-components/releases)
- [Changelog](https://github.com/RedHatInsights/frontend-components/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-utilities"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-09 14:21:28 +01:00
red-hat-konflux[bot]
16668fc4ce chore(deps): update konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2024-12-09 12:54:46 +01:00
dependabot[bot]
71d9fd636d build(deps-dev): bump sass from 1.79.5 to 1.82.0
Bumps [sass](https://github.com/sass/dart-sass) from 1.79.5 to 1.82.0.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.79.5...1.82.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-09 11:37:24 +01:00
Lucas Garfield
3d75b5b5ee Utilities: Extract sorting function
Extracts the function used to sort packages as a utility function so it
can be reused for sorting locales as well.
2024-12-06 16:58:06 -06:00
regexowl
4899553151 test: Add Locale tests for keyboard drop down
This adds tests checking functionality of keyboard drop down and blueprint request with locale.
2024-12-06 16:58:06 -06:00
regexowl
97877114f6 Wizard: Add Keyboard drop down
This adds a drop down for keyboard selection. The options are populated with an output of `localectl list-keymaps`.
2024-12-06 16:58:06 -06:00
regexowl
60175aa911 Wizard: Remove category and fix Review alignment
This removes the chip category and adds a version slug to make the alignment on Review step work properly.
2024-12-06 13:53:56 -06:00
regexowl
1483ff9e9e Wizard: Replace the list of timezones
This replaces the list of timezones created via `Intl.supportedValuesOf('timeZone')` by tzdata-2024b list.
2024-12-06 13:53:56 -06:00
regexowl
39f618c3d8 Wizard: Update the way of adding NTP servers
This updates the way NTP servers can be added:
- helper text was removed
- add button (PlusCircle) was added to the input group utilities
- remove input button is now rendered always, but gets disabled when there's no input
- chip group was moved under the input

Also I've noticed that the "clear input" button completely cleared the list of NTP servers which would make me very angry as a user. Fixed it, so now the clear input button only clears the input field and the `clearNtpServers` action was removed as we don't use it anywhere else.
2024-12-06 13:53:56 -06:00
regexowl
b8915da3fd test: Add more test coverage for Timezone step
This adds more tests for the Timezone step:
- 'Step Timezone' -> 'revisit step button on Review works'
- 'Timezone request generated correctly'
- 'Timezone edit mode'
2024-12-06 13:53:56 -06:00
regexowl
c851d4abac Wizard: Add Timezone step to Review lists
This adds a Timezone overview to the Review step.
2024-12-06 13:53:56 -06:00
regexowl
6427dc5285 Wizard: Add Timezone dropdown and NTP servers input
This adds a Timezone select, the select is typeahead and allows to filter through all defaultTimezones. It's also scrollable so it doesn't take up all of the space.

The NTP servers are currently in a text input, the server is added by confirming with a space, comma or an Enter, making the server a chip and adding it to the array of NTP servers.
2024-12-06 13:53:56 -06:00
regexowl
ab446c2a36 Wizard: Add timezone structure to store and mapper
This creates structure and actions for the timezone customization in the wizardSlice and requestMapper.
2024-12-06 13:53:56 -06:00
Gianluca Zuccarelli
696cc4f4bf tsconfig: exactOptionalPropertyTypes
This is a recommended setting, see:
https://www.typescriptlang.org/tsconfig/#exactOptionalPropertyTypes
2024-12-06 12:02:34 -06:00
Gianluca Zuccarelli
0d4bb26e0f multiple: check when var is possibly undefined
In cases where a field on an object might be undefined,
rather omit the value than set the field to undefined.
2024-12-06 12:02:34 -06:00
Gianluca Zuccarelli
d4436dc6a9 multiple: set sane defaults
Set sane defaults for some types rather than setting them to `undefined`.
This is so that we can set `exactOptionalPropertyTypes` to true in our
tsconfig.
2024-12-06 12:02:34 -06:00
Gianluca Zuccarelli
877497f81c pagination 2024-12-06 12:02:34 -06:00
Gianluca Zuccarelli
4125a9cd3b multiple: set pagination defaults
Set pagination defaults, otherwise these might be `undefined`.
2024-12-06 12:02:34 -06:00
Gianluca Zuccarelli
bad77421ae api: union undefined
Set the option to generate union undefined types for objects that have
optional items. This will allow us to enable `exactOptionalPropertyTypes`
in our tsconfig [1].

[1] This is a recommended setting, see:
https://www.typescriptlang.org/tsconfig/#exactOptionalPropertyTypes
2024-12-06 12:02:34 -06:00
Gianluca Zuccarelli
b3b69c3653 tsconfig: update to es2021 2024-12-06 12:02:34 -06:00
dependabot[bot]
11e0bbde38 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.15.0 to 8.17.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.17.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-06 08:45:09 +01:00
regexowl
e4e83d4417 Wizard: Add locale structure to store and mapper
This creates structure and actions for the locale customization in the wizardSlice and requestMapper.
2024-12-05 11:06:11 -06:00
dependabot[bot]
cbe04c5f9a build(deps-dev): bump @typescript-eslint/parser from 8.8.1 to 8.17.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.8.1 to 8.17.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.17.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-05 08:53:50 +01:00
regexowl
6e97304327 Wizard: Basic Locale step
This adds Locale step basics and file structure.
2024-12-04 12:45:35 -06:00
regexowl
c268267146 devDeps: Manually bump msw from 2.6.0 to 2.6.6
This bumps msw from 2.6.0 to 2.6.6
2024-12-04 12:02:07 -06:00
regexowl
b16243f68a Wizard: Conditionally hide package recommendations
This shows package recommendations only when RHEL 8 or RHEL 9 are selected as a distribution.
2024-12-04 10:51:39 -06:00
Sanne Raymaekers
c0801cd73d src/test: Add test for HyperV generation 2024-12-04 12:37:23 +01:00
Sanne Raymaekers
c1378a7913 Wizard: Integrate HyperV selection in Azure target options
This determines the generation the image will get registered as in
Azure. V2 supports UEFI and more instance types than V1.
2024-12-04 12:37:23 +01:00
Sanne Raymaekers
b4e7fe8923 Wizard: Add component to select Azure HyperV generation 2024-12-04 12:37:23 +01:00
dependabot[bot]
82deb0bdf6 build(deps-dev): bump @redhat-cloud-services/frontend-components-config
Bumps [@redhat-cloud-services/frontend-components-config](https://github.com/RedHatInsights/frontend-components) from 6.3.1 to 6.3.5.
- [Release notes](https://github.com/RedHatInsights/frontend-components/releases)
- [Changelog](https://github.com/RedHatInsights/frontend-components/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RedHatInsights/frontend-components/commits/@redhat-cloud-services/frontend-components-config-6.3.5)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-config"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-03 09:38:52 +01:00
red-hat-konflux[bot]
1afebaf325 Update Konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2024-12-03 09:01:23 +01:00
Simon Steinbeiss
c4a06e2ac9 CreateImageWizard: Add RHEL10beta search parameter
This means we can easily link to the wizard and pre-select RHEL 10 Beta
which will be nice for the release announcement blog post.
2024-11-29 14:22:37 +01:00
dependabot[bot]
ccc364b66d build(deps-dev): bump typescript from 5.6.3 to 5.7.2
Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.6.3 to 5.7.2.
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.6.3...v5.7.2)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-28 13:33:16 +01:00
Jakub Rusz
0793a7802d pr_check: disable IQE parallel execution
We don't have any tests marked for parallel execution.
2024-11-28 12:02:59 +01:00
Ondrej Ezr
a99c26143e api: update imagebuilder schema 2024-11-28 09:01:08 +01:00
Ondřej Ezr
f270139ec1 ImagesTable: add RHEL 9.5 display value 2024-11-28 09:01:08 +01:00
Sanne Raymaekers
ee19ba1546 Wizard: rely on feature flag constraints for openscap step title
Feature flags can be constrained to preview / stable.
2024-11-27 13:49:30 +01:00
dependabot[bot]
ebfcbe2668 build(deps-dev): bump eslint-plugin-testing-library from 6.4.0 to 7.0.0
Bumps [eslint-plugin-testing-library](https://github.com/testing-library/eslint-plugin-testing-library) from 6.4.0 to 7.0.0.
- [Release notes](https://github.com/testing-library/eslint-plugin-testing-library/releases)
- [Changelog](https://github.com/testing-library/eslint-plugin-testing-library/blob/main/.releaserc.json)
- [Commits](https://github.com/testing-library/eslint-plugin-testing-library/compare/v6.4.0...v7.0.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-testing-library
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-27 08:44:19 +01:00
Anna Vítová
70462be0b7 Wizard: add more tests for on prem filesystem 2024-11-26 17:12:48 +01:00
Anna Vítová
80f7980676 Wizard: add suport for json on prem 2024-11-26 17:12:48 +01:00
Anna Vítová
b2401afe27 src: add flag to measure on prem import
The flag can be used later to track the usage of on prem import feature.
2024-11-26 13:03:55 +01:00
Anna Vítová
5cfab75813 api: update image-builder api 2024-11-26 13:03:55 +01:00
regexowl
f48e1bfcb5 ImagesTable: Unify pagination format with Repositories
This makes bottom pagination format on ImagesTable consistent with the format being used in Repositories service.
2024-11-25 19:04:54 +01:00
dependabot[bot]
67fdd794f6 build(deps-dev): bump @redhat-cloud-services/tsc-transform-imports
Bumps @redhat-cloud-services/tsc-transform-imports from 1.0.17 to 1.0.21.

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/tsc-transform-imports"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-25 17:52:18 +01:00
dependabot[bot]
cf2be782ea build(deps-dev): bump @babel/preset-react from 7.25.7 to 7.25.9
Bumps [@babel/preset-react](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-react) from 7.25.7 to 7.25.9.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.25.9/packages/babel-preset-react)

---
updated-dependencies:
- dependency-name: "@babel/preset-react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-25 17:31:08 +01:00
regexowl
336de65389 Konflux: Update rpms-signature-scan by generated values
This updates current rpms-signature-scan based on the pipeline code that was generated when migrating to Konflux.

This might not be strictly needed, but might aleaviate hypothetical unpredictable behaviour.
2024-11-25 17:18:32 +01:00
regexowl
7851536669 Konflux: Move rpms-signature-scan lower in pipeline
This moves rpms-signature-scan lower in pipeline to allow update of `runAfter` value.
2024-11-25 17:18:32 +01:00
Sanne Raymaekers
ece0738150 store/enhancedImageBuilderApi: handle empty error data
There's a case where the IB api returns an error without more data in
it, though it might be coming from a component which treats the request
before the image builder api.
2024-11-25 17:07:37 +01:00
regexowl
d8bb3485d8 Wizard: Add v5 PF slug to classNames
This adds v5 PF slug to classNames throughout the code base, making the formatting work properly.
2024-11-25 16:54:59 +01:00
regexowl
4f728874f7 ImagesTable: Fix image name spacing
This adds a component value to the image name, making the spacing work correctly.
2024-11-25 16:32:10 +01:00
Simon Steinbeiss
6208596b35 ImageBuildStatus.css: Add version to status colors
Add the v5 slug to the status colors as the unversioned colors don't
seem to be defined in PatternFly anymore. I haven't looked at the
history, but I presume this was done at some point during v6
development, as the upstream colors now contain the v6 slug:
https://www.patternfly.org/components/banner/design-guidelines/#usage

Fixes #2611
2024-11-25 13:22:46 +01:00
red-hat-konflux[bot]
4a893e10ba chore(deps): update konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2024-11-25 08:54:09 +01:00
dependabot[bot]
35e2706d01 build(deps): bump @patternfly/react-table from 5.4.1 to 5.4.11
Bumps [@patternfly/react-table](https://github.com/patternfly/patternfly-react) from 5.4.1 to 5.4.11.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-table@5.4.1...@patternfly/react-table@5.4.11)

---
updated-dependencies:
- dependency-name: "@patternfly/react-table"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-22 11:20:40 +01:00
dependabot[bot]
b8940e209b build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.12.1 to 8.15.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.15.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-22 09:40:37 +01:00
Jakub Rusz
680d7ea7c4 pr_check: Skip unit tests
We can now skip unit tests (running npn verify) in the pr_check to speed
up the whole process and reduce flakiness. The unit tests are ran
separately in a github action so this is fine.
2024-11-21 14:25:33 -06:00
dependabot[bot]
58aa4f8e45 build(deps-dev): bump @patternfly/react-icons from 5.4.0 to 5.4.2
Bumps [@patternfly/react-icons](https://github.com/patternfly/patternfly-react) from 5.4.0 to 5.4.2.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-icons@5.4.0...@patternfly/react-icons@5.4.2)

---
updated-dependencies:
- dependency-name: "@patternfly/react-icons"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-21 17:05:51 +01:00
Anna Vítová
c75dc5da21 Wizard: add warning for the min size in bytes 2024-11-21 15:29:42 +01:00
Anna Vítová
63e9610beb src: Add on prem blueprints import support 2024-11-21 14:11:10 +01:00
dependabot[bot]
edb274bf8c build(deps-dev): bump eslint-plugin-jest-dom from 5.4.0 to 5.5.0
Bumps [eslint-plugin-jest-dom](https://github.com/testing-library/eslint-plugin-jest-dom) from 5.4.0 to 5.5.0.
- [Release notes](https://github.com/testing-library/eslint-plugin-jest-dom/releases)
- [Commits](https://github.com/testing-library/eslint-plugin-jest-dom/compare/v5.4.0...v5.5.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-jest-dom
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-21 08:54:06 +01:00
regexowl
dc9ba5121f Wizard: Fix package recommendations
Previously the Wizard crashed when looking for recommendations for packages that had none.

How to reproduce the crash:
- go to the Packages step
- search for and select `tmux` package

After fix:
- when selecting a `tmux` package or any other package without recommendations, the recommendations stay empty, but the Wizard doesn't crash
2024-11-20 11:43:02 +01:00
dependabot[bot]
1c2b9e9800 build(deps-dev): bump sass-loader from 16.0.2 to 16.0.3
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 16.0.2 to 16.0.3.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v16.0.2...v16.0.3)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-20 09:19:22 +01:00
regexowl
54f482bddc Wizard: Update description fetching for recommended packages
This update the way recommended packages' descriptions are fetched.

contentSources API was updated to accept an array of packages as a searchRpm argument, meaning we can now send a request to fetch all package descriptions at once.
2024-11-19 18:44:49 -06:00
regexowl
ad784b9ab9 api: Update contentSources schema
This updates the contentSources schema and regenerates the API.
2024-11-19 18:44:49 -06:00
regexowl
b526ad3c60 Wizard: Basic Timezone step
This adds bare bones Timezone step with appropriate file structure and basic unit tests.
2024-11-19 13:01:34 -06:00
regexowl
b8c852c836 Wizard: Prefetch the list of activation keys on Image output step
This prefetches the list of activation keys upon entering the Wizard, making the loading times on the Registration step better for the user.
2024-11-19 11:40:51 -06:00
Sanne Raymaekers
4637a2a5d8 image-builder-frontend: only show Beta releases if flag is on
Betas are only available for a few weeks at a time, so they should be
able to be hidden on demand.
2024-11-19 16:40:27 +01:00
regexowl
d13eae23dd Wizard: Disable rhc for RHEL 10 Beta
This temporarily disables rhc option for RHEL 10 Beta registration as it currently doesn't work.
2024-11-19 16:20:37 +01:00
red-hat-konflux[bot]
9a99f9bae6 chore(deps): update konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2024-11-19 14:47:22 +01:00
Sanne Raymaekers
15ac21f988 Wizard: hide unsupported steps for RHEL 10 Beta 2024-11-19 11:21:57 +01:00
Sanne Raymaekers
73dad35e45 src/ImagesTable: support RHEL 10 Beta 2024-11-19 11:21:57 +01:00
Sanne Raymaekers
83125863e6 api: update image-builder api 2024-11-19 11:21:57 +01:00
Sanne Raymaekers
b8b9b8f846 src/Utilities: RHEL 10 support for isRhel 2024-11-19 11:21:57 +01:00
Sanne Raymaekers
3ada1ceb68 Wizard: RHEL 10 support 2024-11-19 11:21:57 +01:00
Sanne Raymaekers
79e0676c7c src/constants: add RHEL_10_BETA
RHEL_10 is defined but not added to the releases yet. This way utility
functions and helpers can be updated without showing RHEL_10 in the UI
yet.
2024-11-19 11:21:57 +01:00
Sanne Raymaekers
a2b8883350 fec.config: move sentry's moduleMetadata out of _experiments 2024-11-18 13:16:48 +01:00
Sanne Raymaekers
dc613de3cb Revert "fec.config: prefix paths"
I misunderstood, this is for legacy sourcemaps only, the new method uses
debug IDs which are embedded and don't rely on url paths to resolve the
sources.

This reverts commit 2410143ba0.
2024-11-18 13:16:48 +01:00
regexowl
2d1f983b9c deps: Revert frontend-components bump, install from zero
This reverts #2556 and installs all dependencies from complete zero so there are no leftovers.
2024-11-18 11:49:26 +01:00
Sanne Raymaekers
2410143ba0 fec.config: prefix paths
The paths of each artefact needs to be prefixed to reflect where the
static resources are hosted on consoledot (which is under
/apps/image-builder).
2024-11-18 09:36:10 +01:00
regexowl
8cc9414b5f deps: Patternfly deps to version 5.4.1
This makes 5.4.1 the version for all Patternfly deps.
2024-11-15 15:34:47 +01:00
Sanne Raymaekers
08950749d0 tsconfig.json: generate sourcemaps for typescript files 2024-11-15 13:03:01 +01:00
Sanne Raymaekers
4b16cf3c98 fec.config: fix typo in sentry plugin 2024-11-15 11:31:30 +01:00
dependabot[bot]
026f3efb38 build(deps): bump @patternfly/react-code-editor from 5.4.3 to 6.0.0
Bumps [@patternfly/react-code-editor](https://github.com/patternfly/patternfly-react) from 5.4.3 to 6.0.0.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-code-editor@5.4.3...@patternfly/react-code-editor@6.0.0)

---
updated-dependencies:
- dependency-name: "@patternfly/react-code-editor"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-15 11:08:54 +01:00
Sanne Raymaekers
7d9f4b9c62 ci.sh: export sentry variables before calling build
Otherwise fec doesn't pick them up.
2024-11-15 10:50:03 +01:00
dependabot[bot]
5af29d37c5 build(deps-dev): bump @types/react from 18.3.11 to 18.3.12
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.3.11 to 18.3.12.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-15 10:31:31 +01:00
Sanne Raymaekers
d20ae705fc fec: add sentry plugin
This will enable unminified stacktraces in sentry.
2024-11-15 10:09:38 +01:00
Anna Vítová
7c99415822 Wizard: Add bytes to min_size partitioning <HMS-4981> 2024-11-14 11:07:45 +01:00
Sanne Raymaekers
7b365dcb4d Wizard: handle dos scripts in first boot
Scripts in which lines are terminated by CRLF break the first boot
service, so let's make sure the line termination is correct.
2024-11-14 10:33:44 +01:00
Michal Gold
ba9546193e Wizard: add support for other input type in HookValidatedInput
adds `type` prop to `HookValidatedInput` with a default of 'text', to be able to support other type input like 'password'
2024-11-14 10:24:00 +01:00
dependabot[bot]
0f111a4e6a build(deps): bump @redhat-cloud-services/frontend-components
Bumps [@redhat-cloud-services/frontend-components](https://github.com/RedHatInsights/frontend-components) from 4.2.16 to 4.2.22.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-14 10:13:45 +01:00
dependabot[bot]
7d57099a2f build(deps-dev): bump eslint-plugin-jsx-a11y from 6.10.0 to 6.10.2
Bumps [eslint-plugin-jsx-a11y](https://github.com/jsx-eslint/eslint-plugin-jsx-a11y) from 6.10.0 to 6.10.2.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/compare/v6.10.0...v6.10.2)

---
updated-dependencies:
- dependency-name: eslint-plugin-jsx-a11y
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-14 10:02:36 +01:00
dependabot[bot]
d58be5e528 build(deps-dev): bump uuid from 11.0.2 to 11.0.3
Bumps [uuid](https://github.com/uuidjs/uuid) from 11.0.2 to 11.0.3.
- [Release notes](https://github.com/uuidjs/uuid/releases)
- [Changelog](https://github.com/uuidjs/uuid/blob/main/CHANGELOG.md)
- [Commits](https://github.com/uuidjs/uuid/compare/v11.0.2...v11.0.3)

---
updated-dependencies:
- dependency-name: uuid
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-14 09:25:04 +01:00
dependabot[bot]
a1c36815fd build(deps-dev): bump @redhat-cloud-services/tsc-transform-imports
Bumps @redhat-cloud-services/tsc-transform-imports from 1.0.16 to 1.0.17.

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/tsc-transform-imports"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-13 10:02:21 +01:00
dependabot[bot]
827047658a build(deps-dev): bump @vitejs/plugin-react from 4.3.2 to 4.3.3
Bumps [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) from 4.3.2 to 4.3.3.
- [Release notes](https://github.com/vitejs/vite-plugin-react/releases)
- [Changelog](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite-plugin-react/commits/v4.3.3/packages/plugin-react)

---
updated-dependencies:
- dependency-name: "@vitejs/plugin-react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-13 09:51:52 +01:00
red-hat-konflux[bot]
258aab09d3 chore(deps): update konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2024-11-13 09:41:08 +01:00
dependabot[bot]
8f34e063bc build(deps): bump cookie, express and @bundled-es-modules/cookie
Bumps [cookie](https://github.com/jshttp/cookie), [express](https://github.com/expressjs/express) and [@bundled-es-modules/cookie](https://github.com/bundled-es-modules/cookie). These dependencies needed to be updated together.

Updates `cookie` from 0.5.0 to 0.7.1
- [Release notes](https://github.com/jshttp/cookie/releases)
- [Commits](https://github.com/jshttp/cookie/compare/v0.5.0...v0.7.1)

Updates `express` from 4.21.0 to 4.21.1
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/4.21.1/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.21.0...4.21.1)

Updates `@bundled-es-modules/cookie` from 2.0.0 to 2.0.1
- [Commits](https://github.com/bundled-es-modules/cookie/commits)

---
updated-dependencies:
- dependency-name: cookie
  dependency-type: indirect
- dependency-name: express
  dependency-type: indirect
- dependency-name: "@bundled-es-modules/cookie"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-13 09:30:18 +01:00
dependabot[bot]
dd703b055a build(deps-dev): bump eslint-plugin-react from 7.37.1 to 7.37.2
Bumps [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) from 7.37.1 to 7.37.2.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-react/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.37.1...v7.37.2)

---
updated-dependencies:
- dependency-name: eslint-plugin-react
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-08 11:07:57 +01:00
dependabot[bot]
f85e660953 build(deps): bump @reduxjs/toolkit from 2.2.8 to 2.3.0
Bumps [@reduxjs/toolkit](https://github.com/reduxjs/redux-toolkit) from 2.2.8 to 2.3.0.
- [Release notes](https://github.com/reduxjs/redux-toolkit/releases)
- [Commits](https://github.com/reduxjs/redux-toolkit/compare/v2.2.8...v2.3.0)

---
updated-dependencies:
- dependency-name: "@reduxjs/toolkit"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-08 08:39:26 +01:00
Michal Gold
176c64dd47 Wizard: Add Users step to the wizard (HMS-4902)
This commit adds a new step 'Users' that is enabled only in stage-preview,
and will enable it in stage-stable once IQE tests are ready.
The step is not functional yet, this is just the first step.
2024-11-08 00:26:26 +01:00
dependabot[bot]
d734d4ca91 build(deps-dev): bump eslint-plugin-testing-library from 6.3.0 to 6.4.0
Bumps [eslint-plugin-testing-library](https://github.com/testing-library/eslint-plugin-testing-library) from 6.3.0 to 6.4.0.
- [Release notes](https://github.com/testing-library/eslint-plugin-testing-library/releases)
- [Changelog](https://github.com/testing-library/eslint-plugin-testing-library/blob/main/.releaserc.json)
- [Commits](https://github.com/testing-library/eslint-plugin-testing-library/compare/v6.3.0...v6.4.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-testing-library
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-07 15:55:44 +01:00
dependabot[bot]
6d392cf943 build(deps): bump @patternfly/react-core from 5.4.1 to 5.4.8
Bumps [@patternfly/react-core](https://github.com/patternfly/patternfly-react) from 5.4.1 to 5.4.8.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@5.4.1...@patternfly/react-core@5.4.8)

---
updated-dependencies:
- dependency-name: "@patternfly/react-core"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-07 09:16:04 +01:00
regexowl
b83ee20541 devDeps: Manually bump msw from 2.4.10 to 2.6.0
This bumps bump msw from 2.4.10 to 2.6.0
2024-11-06 16:23:32 +01:00
regexowl
c2926ff147 devDeps: Manually bump @rtk-query/codegen-openapi
This bumps @rtk-query/codegen-openapi from 1.2.0 to 2.0.0
2024-11-06 13:45:34 +01:00
dependabot[bot]
5672f12db4 build(deps-dev): bump @babel/preset-env from 7.25.8 to 7.26.0
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.25.8 to 7.26.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.0/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-06 12:43:25 +01:00
dependabot[bot]
539e62d94e build(deps-dev): bump eslint-plugin-react-hooks from 4.6.2 to 5.0.0
Bumps [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) from 4.6.2 to 5.0.0.
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/eslint-plugin-react-hooks@5.0.0/packages/eslint-plugin-react-hooks)

---
updated-dependencies:
- dependency-name: eslint-plugin-react-hooks
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-06 10:45:53 +01:00
dependabot[bot]
05e112a913 build(deps-dev): bump redux-mock-store from 1.5.4 to 1.5.5
Bumps [redux-mock-store](https://github.com/arnaudbenard/redux-mock-store) from 1.5.4 to 1.5.5.
- [Release notes](https://github.com/arnaudbenard/redux-mock-store/releases)
- [Commits](https://github.com/arnaudbenard/redux-mock-store/compare/v1.5.4...v1.5.5)

---
updated-dependencies:
- dependency-name: redux-mock-store
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-06 09:52:17 +01:00
Lucas Garfield
1093fd592a Konflux: Add rpms-signature-scan task (HMS-4948)
Resolves HMS-4948. This task is mandatory as of November 1, 2024.
2024-11-04 13:09:06 -06:00
red-hat-konflux[bot]
1fcb09dc3f chore(deps): update konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2024-11-04 21:02:07 +02:00
regexowl
b84be929bb test: Add "VMware checkbox select and unselect works" test
This adds a new test to check functionality of the bug fix.
2024-11-04 08:44:35 -06:00
regexowl
79a4e98d0e Wizard: Fix VMware select and unselect
This updates the behaviour of VMware checkbox to make it possible to unselect VMware as a target.

How to reproduce:
1. select VMware vSphere checkbox
2. click on Virtual disk radio
3. try to unselect VMware vSphere checkbox

Previous behaviour - the checkbox can't be unselected
New behaviour - the checkbox can be unselected, removing relevant type of VMware target from imageTypes
2024-11-04 08:44:35 -06:00
dependabot[bot]
27db0e1a03 build(deps): bump @sentry/browser and @redhat-cloud-services/frontend-components-utilities
Bumps [@sentry/browser](https://github.com/getsentry/sentry-javascript) to 7.119.2 and updates ancestor dependency [@redhat-cloud-services/frontend-components-utilities](https://github.com/RedHatInsights/frontend-components). These dependencies need to be updated together.


Updates `@sentry/browser` from 5.30.0 to 7.119.2
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/7.119.2/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/5.30.0...7.119.2)

Updates `@redhat-cloud-services/frontend-components-utilities` from 4.0.17 to 4.0.19
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@sentry/browser"
  dependency-type: indirect
- dependency-name: "@redhat-cloud-services/frontend-components-utilities"
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-04 10:30:45 +02:00
dependabot[bot]
7074d4213c build(deps-dev): bump uuid from 10.0.0 to 11.0.2
Bumps [uuid](https://github.com/uuidjs/uuid) from 10.0.0 to 11.0.2.
- [Release notes](https://github.com/uuidjs/uuid/releases)
- [Changelog](https://github.com/uuidjs/uuid/blob/main/CHANGELOG.md)
- [Commits](https://github.com/uuidjs/uuid/compare/v10.0.0...v11.0.2)

---
updated-dependencies:
- dependency-name: uuid
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-04 09:23:12 +02:00
regexowl
edc4a70c25 devDeps: Manual bump msw from 2.4.9 to 2.4.10
Bumps msw from 2.4.9 to 2.4.10.
2024-11-01 14:59:42 -05:00
regexowl
10f2669827 Wizard: Move VMware radios into VMware checkbox
This moves the VMware radios into the body of VMware checkbox, following PatternFly's pattern of parent and child checkboxes / form elements: https://www.patternfly.org/components/forms/checkbox#controlled
2024-11-01 12:34:52 -05:00
Lucas Garfield
555116122f chore: drop unused Makefile bits 2024-11-01 09:53:38 -05:00
dependabot[bot]
e24a3024aa build(deps-dev): bump @testing-library/jest-dom from 6.5.0 to 6.6.3
Bumps [@testing-library/jest-dom](https://github.com/testing-library/jest-dom) from 6.5.0 to 6.6.3.
- [Release notes](https://github.com/testing-library/jest-dom/releases)
- [Changelog](https://github.com/testing-library/jest-dom/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/jest-dom/compare/v6.5.0...v6.6.3)

---
updated-dependencies:
- dependency-name: "@testing-library/jest-dom"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-01 07:49:21 -05:00
dependabot[bot]
7f144e4d7e build(deps-dev): bump @babel/core from 7.25.8 to 7.26.0
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.25.8 to 7.26.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.0/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-01 00:21:25 +02:00
dependabot[bot]
e9a58c70a9 build(deps): bump @patternfly/react-table from 5.4.1 to 5.4.9
Bumps [@patternfly/react-table](https://github.com/patternfly/patternfly-react) from 5.4.1 to 5.4.9.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-table@5.4.1...@patternfly/react-table@5.4.9)

---
updated-dependencies:
- dependency-name: "@patternfly/react-table"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-30 22:43:51 +02:00
Lucas Garfield
c833e5f01b Konflux: Add ci.sh with workaround for Konflux pipeline
The Konflux pipeline clones the repo twice, making a nested clone
under ./source/source which causes webpack to break when the Cockpit
webpack configuration is present. `source ci.sh` is run at the
beginning of the Konflux pipeline and as a workaround for now we
simply remove everything related to Cockpit - this is fine as none of
it is needed for the service to run.
2024-10-30 10:36:18 -05:00
Michal Gold
830e22fcdc updating useFlag to omit feature flag from onPrem env 2024-10-30 10:36:18 -05:00
Michal Gold
522d61447e README: update README file with cockpit changes
add instruction how to build and install cockpit for On-prem environment
2024-10-30 10:36:18 -05:00
Michal Gold
28ba4af814 Makefile: add Makefile for building and installing cockpit plugin
Add some targets to the Makefile so we can install the on-prem frontend
as a cockpit plugin. based on starter-kit project
2024-10-30 10:36:18 -05:00
Gianluca Zuccarelli
41cdc7d553 ImageTable: use dynamic get blueprints hook
Export a dynamic query hook depending on which backend is
being used (service or on-prem). This means we can just import
a query from the new `backendApi` and it will work for both
on-prem and the service.
2024-10-30 10:36:18 -05:00
Michal Gold
f13ee49565 store: add initial cockpit store
Co-authored-by: Gianluca Zuccarelli <gzuccare@redhat.com>
2024-10-30 10:36:18 -05:00
Michal Gold
82f3f38e56 cockpit: add webpack config and support for Cockpit
Configured Webpack and setup of cockpit to support
building and running image builder as a cockpit plugin
(On-premise)
2024-10-30 10:36:18 -05:00
red-hat-konflux[bot]
1ab31abc4a chore(deps): update konflux references
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2024-10-29 23:49:39 +01:00
Sanne Raymaekers
6ab32d1555 Wizard: use oscap profiles from major version for beta versions 2024-10-29 15:25:32 -05:00
Michal Gold
c4170102cd update main branch with changes in the api
run `npm run api` to update the main branch
2024-10-29 18:16:23 +02:00
dependabot[bot]
6458764c01 build(deps-dev): bump chartjs-plugin-annotation from 3.0.1 to 3.1.0
Bumps [chartjs-plugin-annotation](https://github.com/chartjs/chartjs-plugin-annotation) from 3.0.1 to 3.1.0.
- [Release notes](https://github.com/chartjs/chartjs-plugin-annotation/releases)
- [Commits](https://github.com/chartjs/chartjs-plugin-annotation/compare/v3.0.1...v3.1.0)

---
updated-dependencies:
- dependency-name: chartjs-plugin-annotation
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-29 14:35:07 +02:00
dependabot[bot]
8ac0cc69d1 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.8.1 to 8.12.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.12.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-29 12:15:20 +02:00
dependabot[bot]
1614d4582c build(deps): bump @patternfly/patternfly from 5.4.1 to 6.0.0
Bumps [@patternfly/patternfly](https://github.com/patternfly/patternfly) from 5.4.1 to 6.0.0.
- [Release notes](https://github.com/patternfly/patternfly/releases)
- [Changelog](https://github.com/patternfly/patternfly/blob/main/release.config.js)
- [Commits](https://github.com/patternfly/patternfly/compare/v5.4.1...v6.0.0)

---
updated-dependencies:
- dependency-name: "@patternfly/patternfly"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-28 17:32:30 +02:00
dependabot[bot]
3f91fb86e2 build(deps-dev): bump @types/react-dom from 18.3.0 to 18.3.1
Bumps [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom) from 18.3.0 to 18.3.1.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom)

---
updated-dependencies:
- dependency-name: "@types/react-dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-27 16:47:29 +02:00
dependabot[bot]
cc2fabc984 build(deps): bump react-router-dom from 6.26.2 to 6.27.0
Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.26.2 to 6.27.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/react-router-dom@6.27.0/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.27.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-27 12:50:47 +02:00
Sanne Raymaekers
692b6f1595 Wizard: only show compliance radio in preview
Let's expose compliance in preview while we're ironing out the creases.
2024-10-27 10:49:27 +02:00
Ondřej Budai
0bebb87ec0 src: remove osbuild-first-boot.target from first boot
I grepped through everything and didn't find this target. I'm pretty
sure that it doesn't exist, osbuild-composer adds just a service.
2024-10-25 11:32:07 +02:00
Ondřej Budai
12da2f7c43 src: move the first boot service into constants.ts
I don't think there's a value in having the unit encoded in base64.
It looks fishy, and it's error prone. We discovered that the
custom-first-boot.service file in aux was different than the base64-
encoded string. There was nothing malicious, but we apparently forgot
to rerun the Makefile target.

Instead, we can just put the raw script into constants.js and base64-
encode it on the fly. The cost is close to zero.

This way, we can also get rid of the aux dir, and of the Makefile
target. 🧹
2024-10-25 11:32:07 +02:00
Sanne Raymaekers
493649f766 Wizard: fix editing RHEL 9 beta blueprints
It would default to RHEL 9 instead of the beta.
2024-10-24 12:00:22 +02:00
Sanne Raymaekers
c65d924b1a .tekton: disable rpms-signature-scan
Some rpms pulled in during the frontend build aren't signed in, these
are pulled in by frontend-operator.

The steps will be added automatically once fixed.
2024-10-18 18:58:24 +02:00
Sanne Raymaekers
5ff8605487 .tekton: adjust tekton pipelines to generate dockerfile
For frontends the dockerfile needs to be generated during the pipeline,
as there's no upstream dockerfile.
2024-10-18 18:58:24 +02:00
Sanne Raymaekers
c95c060e24 renovate.json: configure Konflux updates
The renovate.json file determines how often Konflux will open PRs to
update the tekton configs.

See #2524.
2024-10-18 18:58:24 +02:00
red-hat-konflux
63dfbac6ae Red Hat Konflux update image-builder-frontend
Signed-off-by: red-hat-konflux <konflux@no-reply.konflux-ci.dev>
2024-10-18 18:58:24 +02:00
Sanne Raymaekers
15a7115eec Wizard: move RHEL 9 beta out of preview 2024-10-17 21:45:12 +02:00
Sanne Raymaekers
c9e5f9630b .github/workflows: run dev checks on main
The codecov comments don't make much sense as there's no reference point
currently.
2024-10-17 20:46:38 +02:00
Sanne Raymaekers
cd70d1ff95 Wizard: add RHEL 9 beta
Only exposed in preview.
2024-10-17 10:22:30 +02:00
Sanne Raymaekers
25f9fac059 store: regenerate image builder api
Includes rhel-9-beta distro.
2024-10-17 10:22:30 +02:00
Lukas Zapletal
17170b7495 src: update custom firstboot service for bootc 2024-10-15 08:48:01 +02:00
Lukas Zapletal
562a8c574e src: extract service file into separate file 2024-10-15 08:48:01 +02:00
regexowl
8722d79fdf test: Move and re-enabled Details test
There was a disabled Details test in CreateImageWizard.test.tsx, this moves the test to Details.test.tsx, updates it and enables it again.

The re-enabled tests are checking maximum length of image name and description.
2024-10-14 13:50:36 +03:00
Lukáš Zapletal
38cc047e27 readme: add links 2024-10-14 10:47:26 +02:00
regexowl
b5eab82318 workflows: Add check for circular dependencies
This adds a check for circular dependencies into dev-check, to make sure we don't introduce new problems in the future.
2024-10-11 14:55:03 +02:00
regexowl
46b6fda9db src: Resolve last remaining circular dependency
Nothing added, nothing removed, stuff moved around a bit.
2024-10-11 14:55:03 +02:00
regexowl
ba9282b61c src: Resolve circular dependency FileSystemTable <-> FileSystemConfiguration
Nothing got added, nothing got removed. Stuff just got moved around and imports are updated.
2024-10-11 14:55:03 +02:00
regexowl
076fb3fc9d src: Resolve type-only imports 2024-10-11 14:55:03 +02:00
regexowl
c1edc53c2f devDeps: Install madge
This installs [madge](https://www.npmjs.com/package/madge), a tool for finding circular dependencies. A config file is also added to ignore type-only imports.
2024-10-11 14:55:03 +02:00
dependabot[bot]
14ec62ae8f build(deps-dev): bump sass from 1.79.4 to 1.79.5
Bumps [sass](https://github.com/sass/dart-sass) from 1.79.4 to 1.79.5.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.79.4...1.79.5)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-11 08:08:22 +02:00
dependabot[bot]
a54474b90f build(deps-dev): bump @redhat-cloud-services/frontend-components-config
Bumps [@redhat-cloud-services/frontend-components-config](https://github.com/RedHatInsights/frontend-components) from 6.3.0 to 6.3.1.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-config"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-10 09:46:20 +02:00
regexowl
42aed9a2b2 test: Clean up Create Image Wizard test a bit
This cleans up the Create Image Wizard test a bit to make it easier to read through the code blocks.
2024-10-10 08:47:49 +02:00
regexowl
4e23c476e8 Wizard/test: Implement keydown for target tiles
This implements onKeyDown functionality for the Public cloud tiles, allowing selecting them with a Space key.

Corresponding test was also re-enabled.
2024-10-10 08:47:49 +02:00
dependabot[bot]
a8234d3d98 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.8.0 to 8.8.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.8.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-09 09:37:00 +02:00
dependabot[bot]
cacb623194 build(deps-dev): bump typescript from 5.6.2 to 5.6.3
Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.6.2 to 5.6.3.
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.6.2...v5.6.3)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-09 08:30:20 +02:00
Anna Vítová
3034f48c39 update compliance and content sources api 2024-10-08 17:57:40 +02:00
dependabot[bot]
ce94f00fd1 build(deps-dev): bump @typescript-eslint/parser from 8.8.0 to 8.8.1
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.8.0 to 8.8.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.8.1/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-08 16:42:15 +02:00
regexowl
d46f6b83ac Wizard: Fix repos toggle height
The repos toggle height was slightly bigger than the Available/Selected toggle. This was caused by the popover button. Changes its size to small to fix the issue.
2024-10-08 16:44:36 +03:00
regexowl
49847e9adb test: Enable First boot's shebang test
This re-enables test that checks whether correct error message gets displayed when shebang is missing from the first boot script.
2024-10-08 14:19:38 +02:00
regexowl
f33a050120 Wizard: Default to Included repos in package search
Previously when you searched for package from repositories recommendations and switched to "Other repos", new search left you in Other repos and didn't show results even if they were found in "Included". Since we search for recommendations only when no matches were found in distro and custom repos, the results will be always empty.

This solves the problem by defaulting to "Included repos" toggle with every new search, limiting clicks required from the user.

How to reproduce previous behaviour:
1. search for 'gnuplot' packages
2. no results should be found, switch to "Other repos"
3. search for a distro/custom repo package like "vim"

Previous behaviour - the "Other repos" toggle is still selected, showing no results. When switching to "Included repos" manually, the results can be found there.

New behaviour - "Included repos" gets automatically selected, showing results for packages found in distro and custom repos.
2024-10-08 12:39:12 +03:00
dependabot[bot]
79ace37488 build(deps): bump @redhat-cloud-services/frontend-components
Bumps [@redhat-cloud-services/frontend-components](https://github.com/RedHatInsights/frontend-components) from 4.2.15 to 4.2.16.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-08 09:20:58 +02:00
dependabot[bot]
16f45f8b0e build(deps): bump @reduxjs/toolkit from 2.2.7 to 2.2.8
Bumps [@reduxjs/toolkit](https://github.com/reduxjs/redux-toolkit) from 2.2.7 to 2.2.8.
- [Release notes](https://github.com/reduxjs/redux-toolkit/releases)
- [Commits](https://github.com/reduxjs/redux-toolkit/compare/v2.2.7...v2.2.8)

---
updated-dependencies:
- dependency-name: "@reduxjs/toolkit"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-08 08:27:15 +02:00
regexowl
d098d25892 test: Cleanup OpenSCAP tests
This cleans up OpenSCAP test file, utilising helper functions we already have and updating names of test and describe blocks to be consistent throughout the test files.
2024-10-07 16:43:22 +03:00
regexowl
3070f55354 test: Move OpenSCAP tests
This moves OpenSCAP tests from `CreateImageWizard.compliance.tsx` test file directly to `Oscap.test.tsx`.
2024-10-07 16:43:22 +03:00
regexowl
b4ac543dfb test: Re-enable tests that failed for Node 18
This re-enables and updates tests that were failing due to insufficient resources when tested with Node 18.
2024-10-07 14:14:18 +03:00
regexowl
edeee97577 test: Cleanup Custom repositories tests
This moves code blocks to helper functions where possible and cleans up the tests a bit.
2024-10-07 14:14:18 +03:00
regexowl
512d6f8859 test: Move Custom repositories tests to Repositories.test.tsx
This moves Custom repositories tests from `CreateImageWizard.content.test.tsx` to `Repositories.test.tsx`.
2024-10-07 14:14:18 +03:00
regexowl
ae5074a83d test: Update test naming
The incorrect "registration" name is bothering me. Also updated the name of the first describe block to match the pattern we have in other test files.
2024-10-07 13:06:13 +03:00
regexowl
bde02b7eec Wizard: Fix incorrect aria labels
This updates previously incorrect aria labels for VMware popovers.
2024-10-07 10:48:55 +03:00
regexowl
5ad7470031 src: Prefetch list of targets on hover of Create blueprint button
This prefetches list of possible targets based on distribution for `onMouseEnter` event of Create blueprint button.
2024-10-06 11:38:57 +03:00
dependabot[bot]
f75d1ad45d build(deps-dev): bump @redhat-cloud-services/frontend-components-config
Bumps [@redhat-cloud-services/frontend-components-config](https://github.com/RedHatInsights/frontend-components) from 6.2.9 to 6.3.0.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-config"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-04 09:25:47 +02:00
dependabot[bot]
46b91a3237 build(deps-dev): bump eslint-plugin-import from 2.30.0 to 2.31.0
Bumps [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) from 2.30.0 to 2.31.0.
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.30.0...v2.31.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-04 08:22:52 +02:00
dependabot[bot]
ab8b690e34 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.7.0 to 8.8.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.8.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-03 09:28:09 +02:00
dependabot[bot]
0e065ef7be build(deps-dev): bump @types/react from 18.3.10 to 18.3.11
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.3.10 to 18.3.11.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-03 09:20:19 +02:00
dependabot[bot]
e5e8e749a2 build(deps-dev): bump eslint-plugin-react from 7.37.0 to 7.37.1
Bumps [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) from 7.37.0 to 7.37.1.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-react/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.37.0...v7.37.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-react
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-03 09:12:23 +02:00
dependabot[bot]
856d84dc53 build(deps): bump @patternfly/patternfly from 5.4.0 to 5.4.1
Bumps [@patternfly/patternfly](https://github.com/patternfly/patternfly) from 5.4.0 to 5.4.1.
- [Release notes](https://github.com/patternfly/patternfly/releases)
- [Changelog](https://github.com/patternfly/patternfly/blob/main/release.config.js)
- [Commits](https://github.com/patternfly/patternfly/compare/v5.4.0...v5.4.1)

---
updated-dependencies:
- dependency-name: "@patternfly/patternfly"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 09:09:35 +02:00
dependabot[bot]
db38f81b93 build(deps-dev): bump @typescript-eslint/parser from 8.7.0 to 8.8.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.7.0 to 8.8.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.8.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 08:11:54 +02:00
regexowl
c30c499a2b devDeps: Manually bump msw from 2.4.4 to 2.4.9
This bumps msw from 2.4.4 to 2.4.9
2024-10-01 17:40:33 +03:00
regexowl
1e9f2f85d7 deps: Bump @scalprum/react-core from 0.9.1 to 0.9.3
This bumps @scalprum/react-core from 0.9.1 to 0.9.3.
2024-10-01 16:38:18 +03:00
regexowl
7692445572 test: Add a test for combination of OpenSCAP and first boot
This adds a test to check that blueprint request includes enabled services from both OpenSCAP profile and first boot script.
2024-10-01 12:34:30 +02:00
regexowl
ec96df5527 test: Re-enable "First boot request generated correctly" test
This re-enables test that checks whether the request was generated correctly after creating a blueprint that includes a first boot script.
2024-10-01 12:34:30 +02:00
regexowl
d8c3a49c19 vitest.config: Inline @monaco-editor
`@monaco-editor` needs to be inlined in order to run the tests smoothly without any errors.

Note: dependencies include both `@monaco-editor` and `monaco-editor`, only the `@` one needs to be inlined in test dependencies.
2024-10-01 12:34:30 +02:00
dependabot[bot]
525e456bd0 build(deps): bump @patternfly/react-table from 5.4.0 to 5.4.1
Bumps [@patternfly/react-table](https://github.com/patternfly/patternfly-react) from 5.4.0 to 5.4.1.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-table@5.4.0...@patternfly/react-table@5.4.1)

---
updated-dependencies:
- dependency-name: "@patternfly/react-table"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-01 11:22:28 +02:00
dependabot[bot]
b1c5c6289d build(deps): bump @patternfly/react-code-editor from 5.4.1 to 5.4.3
Bumps [@patternfly/react-code-editor](https://github.com/patternfly/patternfly-react) from 5.4.1 to 5.4.3.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-code-editor@5.4.1...@patternfly/react-code-editor@5.4.3)

---
updated-dependencies:
- dependency-name: "@patternfly/react-code-editor"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-01 09:37:41 +02:00
dependabot[bot]
2f5d5cfcdf build(deps): bump @patternfly/react-core from 5.4.0 to 5.4.1
Bumps [@patternfly/react-core](https://github.com/patternfly/patternfly-react) from 5.4.0 to 5.4.1.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@5.4.0...@patternfly/react-core@5.4.1)

---
updated-dependencies:
- dependency-name: "@patternfly/react-core"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-01 08:37:07 +02:00
Dominik Vagner
2ef545111f Wizard: remove no repos selected message 2024-09-30 16:58:08 +02:00
dependabot[bot]
13892718cd build(deps-dev): bump @vitejs/plugin-react from 4.3.1 to 4.3.2
Bumps [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) from 4.3.1 to 4.3.2.
- [Release notes](https://github.com/vitejs/vite-plugin-react/releases)
- [Changelog](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite-plugin-react/commits/v4.3.2/packages/plugin-react)

---
updated-dependencies:
- dependency-name: "@vitejs/plugin-react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-30 10:41:56 +02:00
dependabot[bot]
ed6915cd4b build(deps-dev): bump @types/react from 18.3.9 to 18.3.10
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.3.9 to 18.3.10.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-30 10:33:59 +02:00
dependabot[bot]
1b9fb747bc build(deps-dev): bump sass from 1.79.3 to 1.79.4
Bumps [sass](https://github.com/sass/dart-sass) from 1.79.3 to 1.79.4.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.79.3...1.79.4)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-30 10:22:21 +02:00
Florian Schüller
faa3385054 CreateImageWizard/requestMapper: fix enabling firstboot
Reorder the code to be easier to read:

when there none of service.{enabled|masked|disabled}
firstboot also is not enabled (if requested)
this patch fixes this bug
2024-09-30 10:14:11 +02:00
Florian Schüller
bd8eaaf8b9 CreateImageWizard/requestMapper: fix enabling firstboot
when there none of service.{enabled|masked|disabled}
firstboot also is not enabled (if requested)
this patch fixes this bug
2024-09-30 10:14:11 +02:00
Gianluca Zuccarelli
506e18af77 api: update image-builder api
Adds the new CCN profiles for RHEL9 & Centos 9
2024-09-30 08:50:08 +02:00
Gianluca Zuccarelli
4ff13d7c13 api: update compliance api 2024-09-30 08:50:08 +02:00
dependabot[bot]
aa02ad4e38 build(deps-dev): bump @types/react-redux from 7.1.33 to 7.1.34
Bumps [@types/react-redux](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-redux) from 7.1.33 to 7.1.34.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-redux)

---
updated-dependencies:
- dependency-name: "@types/react-redux"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-27 09:16:18 +02:00
dependabot[bot]
26a972342e build(deps-dev): bump eslint-plugin-react from 7.36.1 to 7.37.0
Bumps [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) from 7.36.1 to 7.37.0.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-react/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.36.1...v7.37.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-react
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-27 08:08:55 +02:00
dependabot[bot]
1b775f50c4 build(deps-dev): bump eslint from 8.57.0 to 8.57.1
Bumps [eslint](https://github.com/eslint/eslint) from 8.57.0 to 8.57.1.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.57.0...v8.57.1)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-26 09:29:05 +02:00
dependabot[bot]
3c542b70af build(deps-dev): bump @typescript-eslint/parser from 8.6.0 to 8.7.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.6.0 to 8.7.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.7.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-26 08:28:45 +02:00
regexowl
acbb07ad53 Wizard: OpenSCAP profile is not a mandatory field
OpenSCAP profile was marked as a mandatory field, this removes the red asterisk as the profile is optional.
2024-09-25 17:37:33 +02:00
Sanne Raymaekers
cbb9598f1d Wizard: clear compliance data when switching between types
When switching between openscap and insights compliance, clear the data
so the profile information isn't showing anymore.
2024-09-25 15:26:09 +02:00
Sanne Raymaekers
4c6d277ff1 test: add test for insights compliance step 2024-09-25 15:26:09 +02:00
Sanne Raymaekers
5d2525b7eb test: add mocks and fixtures for compliance 2024-09-25 15:26:09 +02:00
Sanne Raymaekers
70635c8445 Wizard: adapt file system step to new compliance state 2024-09-25 15:26:09 +02:00
Sanne Raymaekers
0908cd2ae9 Wizard: add compliance step to the wizard
The title is changed depending on the flag, to make it easier to change
the IQE tests.
2024-09-25 15:26:09 +02:00
Sanne Raymaekers
e43357bf55 Wizard: add compliance step
The Insights compliance support reuses most of the existing OpenSCAP
step.

Depending on the state of the feature flag, it will show radio buttons
allowing users to switch between regular openscap and Insights
compliance.
2024-09-25 15:26:09 +02:00
Sanne Raymaekers
571fe18861 Wizard: support compliance in Oscap/OscapProfileInformation
Let's reuse this component for the compliance step.
2024-09-25 15:26:09 +02:00
Sanne Raymaekers
1a19684d97 Wizard: support compliance in review step
Reuses the existing oscap profile information.
2024-09-25 15:26:09 +02:00
Sanne Raymaekers
110e1d7d75 Wizard: support openscap compliance customisation in state
Merges all the compliance related state into a single compliance object.
2024-09-25 15:26:09 +02:00
Sanne Raymaekers
c6a9d0a17a Wizard: adapt Oscap step to new openscap customisations 2024-09-25 15:26:09 +02:00
Sanne Raymaekers
49829d5662 .eslintignore: ignore generated compliance api during linting 2024-09-25 15:26:09 +02:00
Sanne Raymaekers
29b57cf9da api: update image-builder api
Includes new compliance openscap customisation.
2024-09-25 15:26:09 +02:00
Sanne Raymaekers
1f5790579a store: add compliance api as store middleware 2024-09-25 15:26:09 +02:00
Sanne Raymaekers
e16348eda4 api/compliance: add endpoints
Policies to query the list of policies, and policy to get the details of
a single policy.
2024-09-25 15:26:09 +02:00
Sanne Raymaekers
f5443ec819 api: add compliance api 2024-09-25 15:26:09 +02:00
dependabot[bot]
a796630de4 build(deps): bump rollup from 4.21.3 to 4.22.4
Bumps [rollup](https://github.com/rollup/rollup) from 4.21.3 to 4.22.4.
- [Release notes](https://github.com/rollup/rollup/releases)
- [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rollup/rollup/compare/v4.21.3...v4.22.4)

---
updated-dependencies:
- dependency-name: rollup
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-25 10:11:46 +02:00
dependabot[bot]
19ea97d871 build(deps-dev): bump sass-loader from 16.0.1 to 16.0.2
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 16.0.1 to 16.0.2.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v16.0.1...v16.0.2)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-25 10:03:53 +02:00
dependabot[bot]
1f05bebcae build(deps-dev): bump @types/react from 18.3.8 to 18.3.9
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.3.8 to 18.3.9.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-25 09:55:52 +02:00
regexowl
1d8067f1b0 Blueprints: Fix list of blueprint being replaced by empty state
Search input and list of blueprints could be previously temporarily replaced by an empty state.

How to reproduce previous behaviour:
1. start with some created blueprints
2. search for an existing blueprint
3. delete it
4. remove searchTerm from the blueprint search input

Before: the blueprint list and blueprint search input are temporarily replaced by an empty state, until re-fetch.
After: the list and search input persist throughout blueprint deletion and get replaced by an empty state only when there are no other blueprints
2024-09-24 17:48:50 +02:00
regexowl
49162e01f5 Blueprints: Set blueprintSearchInput as undefined with empty string
This dispatches changes to `blueprintSearchInput` and sets it as `undefined` when the value is an empty string.
2024-09-24 17:48:50 +02:00
regexowl
e051aa3f7f requestMapper: Fix enabled services with firstboot
Previously used `.push()` method was limited by non-writable length of the enabled services array, ending up in the following error:
```
 Uncaught (in promise) TypeError: can't define array index property past the end of an array with non-writable length
```

This fixes the problem by updating the array via spread operator.

Before: when creating an image with Oscap profile with enabled serviced and adding a firstboot script, the Create blueprint button at the Review step threw an error on click.
After fix: it's possible to create an image with Oscap profile that includes enabled services and a firstboot script.
2024-09-24 15:42:30 +02:00
dependabot[bot]
484d475bfe build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.6.0 to 8.7.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.7.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-24 14:36:41 +02:00
dependabot[bot]
6317b1188e build(deps-dev): bump jsdom from 25.0.0 to 25.0.1
Bumps [jsdom](https://github.com/jsdom/jsdom) from 25.0.0 to 25.0.1.
- [Release notes](https://github.com/jsdom/jsdom/releases)
- [Changelog](https://github.com/jsdom/jsdom/blob/main/Changelog.md)
- [Commits](https://github.com/jsdom/jsdom/compare/25.0.0...25.0.1)

---
updated-dependencies:
- dependency-name: jsdom
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-24 13:26:18 +02:00
dependabot[bot]
8a041f7129 build(deps-dev): bump sass from 1.79.2 to 1.79.3
Bumps [sass](https://github.com/sass/dart-sass) from 1.79.2 to 1.79.3.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.79.2...1.79.3)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-23 08:41:41 +02:00
dependabot[bot]
2fadbc4c40 build(deps-dev): bump @types/react from 18.3.7 to 18.3.8
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.3.7 to 18.3.8.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-23 08:33:59 +02:00
regexowl
bc0ad00aa7 Wizard: Temporarily disable fixed footer
There's a new bug that's at least partially caused by styling commented out in this PR: when zooming in or out while in Wizard, the Wizard shrunks it's height to an unusable value.
2024-09-23 09:25:41 +03:00
dependabot[bot]
34bdfa368f build(deps): bump @patternfly/react-code-editor from 5.4.0 to 5.4.1
Bumps [@patternfly/react-code-editor](https://github.com/patternfly/patternfly-react) from 5.4.0 to 5.4.1.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-code-editor@5.4.0...@patternfly/react-code-editor@5.4.1)

---
updated-dependencies:
- dependency-name: "@patternfly/react-code-editor"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-20 09:01:51 +02:00
dependabot[bot]
107a536b10 build(deps-dev): bump @typescript-eslint/parser from 8.5.0 to 8.6.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.5.0 to 8.6.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.6.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-20 08:54:02 +02:00
dependabot[bot]
ba7f121b44 build(deps-dev): bump sass from 1.79.1 to 1.79.2
Bumps [sass](https://github.com/sass/dart-sass) from 1.79.1 to 1.79.2.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.79.1...1.79.2)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-20 08:46:13 +02:00
regexowl
b46cedcd49 constants: Update documentation links
This updates other incorrect links on the page.
2024-09-20 08:38:16 +02:00
dependabot[bot]
4cc5a2e636 build(deps-dev): bump @redhat-cloud-services/frontend-components-config
Bumps [@redhat-cloud-services/frontend-components-config](https://github.com/RedHatInsights/frontend-components) from 6.2.8 to 6.2.9.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-config"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-19 09:36:06 +02:00
dependabot[bot]
e0804027e8 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.4.0 to 8.6.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.6.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-19 09:28:10 +02:00
dependabot[bot]
ad7945325c build(deps-dev): bump sass from 1.78.0 to 1.79.1
Bumps [sass](https://github.com/sass/dart-sass) from 1.78.0 to 1.79.1.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.78.0...1.79.1)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-19 09:20:31 +02:00
Dominik Vagner
2c0d753d82 fix: unify snapshot date format 2024-09-19 09:12:16 +02:00
regexowl
003aa9df48 Wizard: Fix Registration bug
The second condition in `useRegistrationValidation` needs to be triggered only for `register-now` options, otherwise the Next button stays disabled on fetching and error even for `register-later`.
2024-09-18 16:16:32 +03:00
regexowl
39d2f91f03 Wizard: Add isPreview property to analytics tracking
This adds `isPreview` property to the analytics tracking with the use of chrome's `isBeta()`.
2024-09-18 12:47:22 +02:00
dependabot[bot]
77a57db014 build(deps): bump vite from 5.3.5 to 5.4.6
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.3.5 to 5.4.6.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v5.4.6/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v5.4.6/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-18 09:42:26 +02:00
dependabot[bot]
fa6921b913 build(deps-dev): bump @types/react from 18.3.5 to 18.3.7
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.3.5 to 18.3.7.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-18 09:34:42 +02:00
dependabot[bot]
3253e9cb5e build(deps): bump react-router-dom from 6.26.1 to 6.26.2
Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.26.1 to 6.26.2.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.26.2/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-18 09:27:04 +02:00
regexowl
3c1f8347eb test: Update Edit wizard test
The content steps were surfaced from previously used Content section and we're now testing with all flags set to true. Updating the list of step nav items that should be enabled.
2024-09-16 12:14:34 +02:00
regexowl
c2f07b7585 Wizard: Update documentation link
This updates the documentation link.
2024-09-16 12:06:45 +02:00
regexowl
b3d7a1606c Wizard: Validate registration with useValidation
This migrated Registration step validation to `useValidation`.

The scenarios in which the Next button and Create/Save button should be disabled are:
- any of "register now" options is chosen, but no activation key is selected
- activation key is selected, but it's invalid (information about it cannot be fetched)
2024-09-16 12:59:43 +03:00
dependabot[bot]
4468c0cf67 build(deps-dev): bump eslint-plugin-react from 7.35.2 to 7.36.1
Bumps [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) from 7.35.2 to 7.36.1.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-react/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.35.2...v7.36.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-react
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-16 11:52:39 +02:00
Sanne Raymaekers
0897257125 src/store: Remove server store hooks
Removing the server store makes the way we handle data going in and out
of the wizard state more consistent. Each customisation is mapped into
the wizard state and pulled out when generating the blueprint
payload.

When the services and kernel customisations are implemented, this
information will need to be stored inside of the wizard state anyway.

Lastly this will make implementing a compliance step easier for edit
mode, removing the need to write to the wizard state from within the
server store when only a compliance policy id is available (on the
review page), which would be used to fetch the profile ref id, which
would in turn be used to fetch the customisations not stored in the
wizard state.
2024-09-16 11:45:54 +02:00
dependabot[bot]
3038c0783b build(deps): bump @scalprum/react-core from 0.8.0 to 0.9.1
Bumps [@scalprum/react-core](https://github.com/scalprum/scaffloding) from 0.8.0 to 0.9.1.
- [Release notes](https://github.com/scalprum/scaffloding/releases)
- [Changelog](https://github.com/scalprum/scaffolding/blob/main/release.config.js)
- [Commits](https://github.com/scalprum/scaffloding/compare/@scalprum/react-core-0.8.0...@scalprum/react-core-0.9.1)

---
updated-dependencies:
- dependency-name: "@scalprum/react-core"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-16 12:32:36 +03:00
dependabot[bot]
2d0c4a401a build(deps): bump @redhat-cloud-services/frontend-components
Bumps [@redhat-cloud-services/frontend-components](https://github.com/RedHatInsights/frontend-components) from 4.2.14 to 4.2.15.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-16 09:31:39 +02:00
regexowl
dca94cb190 test: Cleanup Review tests
This cleans up Review tests by replacing block of code by helper functions where possible.

The last two tests were updated so that their descriptions match what the tests do.
2024-09-13 14:32:52 +02:00
dependabot[bot]
550957800c build(deps-dev): bump typescript from 5.5.4 to 5.6.2
Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.5.4 to 5.6.2.
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.5.4...v5.6.2)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-13 10:24:58 +02:00
dependabot[bot]
67bc5362b9 build(deps-dev): bump eslint-plugin-jsx-a11y from 6.9.0 to 6.10.0
Bumps [eslint-plugin-jsx-a11y](https://github.com/jsx-eslint/eslint-plugin-jsx-a11y) from 6.9.0 to 6.10.0.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/compare/v6.9.0...v6.10.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-jsx-a11y
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-12 18:11:36 +02:00
dependabot[bot]
ebb03ea344 build(deps): bump send and express
Bumps [send](https://github.com/pillarjs/send) and [express](https://github.com/expressjs/express). These dependencies needed to be updated together.

Updates `send` from 0.18.0 to 0.19.0
- [Release notes](https://github.com/pillarjs/send/releases)
- [Changelog](https://github.com/pillarjs/send/blob/master/HISTORY.md)
- [Commits](https://github.com/pillarjs/send/compare/0.18.0...0.19.0)

Updates `express` from 4.19.2 to 4.21.0
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/4.21.0/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.19.2...4.21.0)

---
updated-dependencies:
- dependency-name: send
  dependency-type: indirect
- dependency-name: express
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-12 17:15:25 +02:00
dependabot[bot]
18a8d135a5 build(deps-dev): bump @typescript-eslint/parser from 8.4.0 to 8.5.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.4.0 to 8.5.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.5.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-12 15:57:24 +02:00
Anna Vítová
87ba510680 test: Remove mocking of chrome and unleash 2024-09-12 15:03:35 +02:00
Jakub Rusz
4b3efa5414 pr_check: remove resources for notifications
This was suggested to us as fix for the deployment
2024-09-12 14:01:29 +02:00
regexowl
d8aab05928 devDeps: Manual bump msw from 2.4.1 to 2.4.4
Dependabot doesn't touch the `mockServiceWorker.js` file that gets automatically updated by `npm install` which causes problem with "manual changes". We'll need to bump this manually at least for the time being.
2024-09-10 17:36:44 +02:00
dependabot[bot]
e0b590aff0 build(deps-dev): bump sass from 1.77.8 to 1.78.0
Bumps [sass](https://github.com/sass/dart-sass) from 1.77.8 to 1.78.0.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.77.8...1.78.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-10 08:45:11 +02:00
Anna Vítová
3af0704a2f src: Enable import of image_requests 2024-09-04 17:45:11 +02:00
Anna Vítová
22c9b0c106 src: Cleanup import modal on close 2024-09-04 17:45:11 +02:00
Anna Vítová
c385417e93 HMS-4459: Use export endpoint 2024-09-04 17:45:11 +02:00
dependabot[bot]
c6553d4cfa build(deps-dev): bump eslint-plugin-react from 7.35.1 to 7.35.2
Bumps [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) from 7.35.1 to 7.35.2.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-react/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.35.1...v7.35.2)

---
updated-dependencies:
- dependency-name: eslint-plugin-react
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-04 12:33:39 +02:00
dependabot[bot]
9ac586e305 build(deps-dev): bump eslint-plugin-import from 2.29.1 to 2.30.0
Bumps [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) from 2.29.1 to 2.30.0.
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.29.1...v2.30.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-04 12:33:19 +02:00
regexowl
3ae642b848 test: Add Review and finish button tests
This add tests to check whether the Review and finish button works properly, sending user to the Details step. And whether it's disabled when the state is invalid.
2024-09-04 01:21:28 +02:00
regexowl
558bb50c34 test: Add revisit step button checks
This adds tests to check that the revisit buttons on the Review step are working correctly.

Also some minor cleanup, namely making case used in the names of describe and test more consistent and moving render functions outside of functions selecting targets to make the structure easier to go through.
2024-09-04 01:21:28 +02:00
regexowl
4a15b25ceb Wizard: Optional steps
This adds an "Optional steps" section to the Wizard and moves all the non-mandatory customisation options there. "Review and finish" button was also added to allow jumping through the optional section.
2024-09-04 01:21:28 +02:00
regexowl
2ddfee409e test: Test with Node 20 only
This updates the test env to test with Node 20 only, pr_check is also updated to use Node 20.

The changes shouldn't affect users in any way, please let me know if you think it might.

There were common async flakes when using testing-library with Node 18, those often surfaced in gh actions / pr_check only and did not reproduce locally unless resources got limited (I can reproduce some flakes in Power Saver mode only, leading me to conclusion, that it's just async being mischievous). Switching to testing with Node 20 only should also allow us to re-enable some tests that got disabled specifically because them running with Node 18 ended up in a time out.
2024-09-03 21:54:47 +02:00
regexowl
c0a28b3620 devDeps: Manual bump msw from 2.3.5 to 2.4.1
This bumps msw from 2.3.5 to 2.4.1
2024-09-03 20:24:10 +02:00
dependabot[bot]
adb9ed6bbb build(deps-dev): bump @typescript-eslint/parser from 8.3.0 to 8.4.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.3.0 to 8.4.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.4.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-03 11:56:10 +02:00
dependabot[bot]
81aabfe8c8 build(deps-dev): bump eslint-plugin-react from 7.35.0 to 7.35.1
Bumps [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) from 7.35.0 to 7.35.1.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-react/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.35.0...v7.35.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-react
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-03 10:55:01 +02:00
Michal Gold
4801a09a85 codecov: enable codecov in our repo
this commit add the configuration for codecov,
to be able to see the coverage of vitest in codecov website.
2024-09-03 09:56:45 +02:00
dependabot[bot]
a38760edb4 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.3.0 to 8.4.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.4.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-03 08:33:41 +02:00
regexowl
10f0c92410 Wizard: Fix "button in a button" warning
This adds a component prop to the expandable button, solving the `Warning: validateDOMNesting(...): <button> cannot appear as a descendant of <button>.` warning that was repeatedly printed to the test output.
2024-09-02 16:58:04 +02:00
Michal Gold
f1bce4b3ba test: move Review tests to specific folder
this commit moves Review tests to specific folder
2024-09-02 15:59:33 +02:00
dependabot[bot]
67414fae50 build(deps-dev): bump eslint-plugin-react-redux from 4.1.0 to 4.2.0
Bumps [eslint-plugin-react-redux](https://github.com/DianaSuvorova/eslint-plugin-react-redux) from 4.1.0 to 4.2.0.
- [Release notes](https://github.com/DianaSuvorova/eslint-plugin-react-redux/releases)
- [Commits](https://github.com/DianaSuvorova/eslint-plugin-react-redux/compare/v4.1.0...v4.2.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-react-redux
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-02 14:44:10 +02:00
dependabot[bot]
f5bd9bcbeb build(deps-dev): bump @types/react from 18.3.4 to 18.3.5
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.3.4 to 18.3.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-02 13:35:32 +02:00
regexowl
2bb82b70c1 test: Cleanup Packages tests
This cleans up Packages test file after relevant tests were moved there from `CreateImageWizard.content.test.tsx`.
2024-09-02 12:41:51 +02:00
Sanne Raymaekers
f31842d2d0 pr_check: don't overwrite resource limits
Compliance needs the limits/requests to be set correctly.
2024-09-02 11:50:22 +02:00
regexowl
23aa2ae4c6 Wizard: Align revisit buttons
This aligns Revisit step buttons on the Review step with the second column of description lists.

The formatting of the expandable's toggleContent is formatted the same way as the main content. That way if the value of min-width gets updated, the spacing will stay consistent.

The duplicate code was moved to `composeExpandable` function that takes two arguments - name of the expandable/step and a stepId that links to the correct step in the Wizard.
2024-08-30 16:12:55 +02:00
Ondrej Ezr
2cf95bea02 Wizard: Validate snapshot date with useValidation 2024-08-30 10:17:25 +02:00
dependabot[bot]
312f3d6968 build(deps-dev): bump @testing-library/react from 16.0.0 to 16.0.1
Bumps [@testing-library/react](https://github.com/testing-library/react-testing-library) from 16.0.0 to 16.0.1.
- [Release notes](https://github.com/testing-library/react-testing-library/releases)
- [Changelog](https://github.com/testing-library/react-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/react-testing-library/compare/v16.0.0...v16.0.1)

---
updated-dependencies:
- dependency-name: "@testing-library/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-30 09:11:58 +02:00
dependabot[bot]
99f3cdf6b6 build(deps): bump @patternfly/react-table from 5.3.4 to 5.4.0
Bumps [@patternfly/react-table](https://github.com/patternfly/patternfly-react) from 5.3.4 to 5.4.0.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-table@5.3.4...@patternfly/react-table@5.4.0)

---
updated-dependencies:
- dependency-name: "@patternfly/react-table"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-30 08:20:24 +02:00
Ondrej Ezr
e38ffe4706 Wizard: Debounce unique validation
Debounce the validation, so we don't validate every character.
Debounce also ensures the right ordering.
Only one request runs at a time, we cancel the previous before we fire a new.
2024-08-29 14:55:38 +02:00
dependabot[bot]
e3ad37d9ba build(deps): bump @patternfly/react-code-editor from 5.3.4 to 5.4.0
Bumps [@patternfly/react-code-editor](https://github.com/patternfly/patternfly-react) from 5.3.4 to 5.4.0.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-code-editor@5.3.4...@patternfly/react-code-editor@5.4.0)

---
updated-dependencies:
- dependency-name: "@patternfly/react-code-editor"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-29 12:03:31 +02:00
dependabot[bot]
ef31165ecd build(deps): bump @patternfly/patternfly from 5.3.1 to 5.4.0
Bumps [@patternfly/patternfly](https://github.com/patternfly/patternfly) from 5.3.1 to 5.4.0.
- [Release notes](https://github.com/patternfly/patternfly/releases)
- [Changelog](https://github.com/patternfly/patternfly/blob/main/release.config.js)
- [Commits](https://github.com/patternfly/patternfly/compare/patch-v5.3.1...v5.4.0)

---
updated-dependencies:
- dependency-name: "@patternfly/patternfly"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-29 09:48:56 +02:00
dependabot[bot]
46632ebcfa build(deps-dev): bump @redhat-cloud-services/frontend-components-config
Bumps [@redhat-cloud-services/frontend-components-config](https://github.com/RedHatInsights/frontend-components) from 6.2.6 to 6.2.8.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-config"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-29 08:55:59 +02:00
dependabot[bot]
bd06c2c043 build(deps): bump @patternfly/react-core from 5.3.4 to 5.4.0
Bumps [@patternfly/react-core](https://github.com/patternfly/patternfly-react) from 5.3.4 to 5.4.0.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@5.3.4...@patternfly/react-core@5.4.0)

---
updated-dependencies:
- dependency-name: "@patternfly/react-core"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-28 11:59:33 +02:00
dependabot[bot]
fb73f99ae7 build(deps-dev): bump @testing-library/jest-dom from 6.4.8 to 6.5.0
Bumps [@testing-library/jest-dom](https://github.com/testing-library/jest-dom) from 6.4.8 to 6.5.0.
- [Release notes](https://github.com/testing-library/jest-dom/releases)
- [Changelog](https://github.com/testing-library/jest-dom/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/jest-dom/compare/v6.4.8...v6.5.0)

---
updated-dependencies:
- dependency-name: "@testing-library/jest-dom"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-28 11:04:39 +02:00
dependabot[bot]
baa4b95ea2 build(deps-dev): bump webpack from 5.93.0 to 5.94.0
Bumps [webpack](https://github.com/webpack/webpack) from 5.93.0 to 5.94.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.93.0...v5.94.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-28 10:16:18 +02:00
dependabot[bot]
26467f1db1 build(deps-dev): bump @patternfly/react-icons from 5.3.2 to 5.4.0
Bumps [@patternfly/react-icons](https://github.com/patternfly/patternfly-react) from 5.3.2 to 5.4.0.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-icons@5.3.2...@patternfly/react-icons@5.4.0)

---
updated-dependencies:
- dependency-name: "@patternfly/react-icons"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-28 08:43:22 +02:00
Michal Gold
047ae0111c createImageWizard: change the default name of bllueprint
this commit change the default name to different format
<release>-<arch>-<date>-<time>
  const dateString = `${day}${month}${year}`;
  const timeString = `${hours}`;
2024-08-27 14:55:37 +02:00
regexowl
be8a00d186 Wizard: Update Amplitude tracking
This updates snippets used for event tracking in Amplitude, adding `imageBuilder` to the name of the event and as a `module` property.

Two more typed events were also added to track number of created blueprints. Name for both events is the same `blueprintCreated`, the differentiation between Create and Create and build images is captured in the `type` property.

These new events will allow to calculate percentage of users that were shown recommendations and of those who added a recommended package while succesfully finishing blueprint creation.
2024-08-27 12:45:19 +02:00
dependabot[bot]
568c85066d build(deps-dev): bump jsdom from 24.1.1 to 25.0.0
Bumps [jsdom](https://github.com/jsdom/jsdom) from 24.1.1 to 25.0.0.
- [Release notes](https://github.com/jsdom/jsdom/releases)
- [Changelog](https://github.com/jsdom/jsdom/blob/main/Changelog.md)
- [Commits](https://github.com/jsdom/jsdom/compare/24.1.1...25.0.0)

---
updated-dependencies:
- dependency-name: jsdom
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-27 11:23:32 +02:00
regexowl
578a9549bd test: Cleanup Azure tests
This moves Azure tests from `CreateImageWizard.azure.test.tsx` to `AzureTarget.test.tsx` and cleans up the structure.
2024-08-27 10:20:17 +02:00
dependabot[bot]
c313d36eb0 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.2.0 to 8.3.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.3.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-27 09:18:56 +02:00
dependabot[bot]
8e8d3c9714 build(deps-dev): bump @typescript-eslint/parser from 8.2.0 to 8.3.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.2.0 to 8.3.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.3.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-27 08:25:12 +02:00
dependabot[bot]
54204e0f0a build(deps-dev): bump @types/react from 18.3.3 to 18.3.4
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.3.3 to 18.3.4.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-26 18:16:51 +02:00
dependabot[bot]
c73723d583 build(deps-dev): bump chart.js from 4.4.3 to 4.4.4
Bumps [chart.js](https://github.com/chartjs/Chart.js) from 4.4.3 to 4.4.4.
- [Release notes](https://github.com/chartjs/Chart.js/releases)
- [Commits](https://github.com/chartjs/Chart.js/compare/v4.4.3...v4.4.4)

---
updated-dependencies:
- dependency-name: chart.js
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-26 17:17:41 +02:00
dependabot[bot]
28ae6fe483 build(deps): bump @redhat-cloud-services/frontend-components-utilities
Bumps [@redhat-cloud-services/frontend-components-utilities](https://github.com/RedHatInsights/frontend-components) from 4.0.16 to 4.0.17.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-utilities"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-26 15:42:50 +02:00
regexowl
f60e80b4e8 Wizard: Fix disable Next on Registration step
When the option to register with rhc and insights was added back the disableNext condition wasn't updated, allowing user to continue with registration even without selecting activation key.
2024-08-20 12:44:20 +02:00
dependabot[bot]
4f7a344bf9 build(deps-dev): bump @typescript-eslint/parser from 8.1.0 to 8.2.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.1.0 to 8.2.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.2.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-20 10:35:14 +02:00
dependabot[bot]
4783eb7054 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.1.0 to 8.2.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.2.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-20 09:29:36 +02:00
dependabot[bot]
dc479e87ab build(deps-dev): bump sass-loader from 16.0.0 to 16.0.1
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 16.0.0 to 16.0.1.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v16.0.0...v16.0.1)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-20 08:35:49 +02:00
Florian Schüller
7f1b8b7215 fec.config.js: preparation to get process.env.MSW working 2024-08-19 19:33:44 +02:00
Florian Schüller
afb4285570 package.json: support to start non-interactively 2024-08-19 19:33:44 +02:00
Ondrej Ezr
39a5e93c4a Blueprints: change diff modal button label
For the diff modal, we want to change the button label.
In this context Synchronize images is more appropriate label.
2024-08-19 15:33:39 +02:00
regexowl
58ea64162a test: Cleanup Image output tests
This cleans up Image output test file after relevant tests were moved there from `CreateImageWizard.test.tsx`.
2024-08-19 13:51:27 +02:00
regexowl
e2e0a77bd9 test: Rename TargetEnvironment.test.tsx to ImageOutput.test.tsx
This renames TargetEnvironment.test.tsx test file to ImageOutput.test.tsx so the naming is consistent with the other test files.

The file previously contained tests for both Image output step and it's substeps. Since that's no longer true the naming no longer made sense.
2024-08-19 13:51:27 +02:00
regexowl
57e4ed1f4b test: Clean up GCP tests
This cleans up GCP test file after relevant tests were moved there from `CreateImageWizard.test.tsx`.
2024-08-19 12:45:38 +02:00
Michal Gold
2168bc31d8 test: move packages test to Packages.test.tsx file
this commit move relevant packages test to packages.test.tsx
2024-08-19 11:30:02 +02:00
regexowl
34ef6b2b95 test: Clean up AWS tests
This cleans up AWS test file after relevant tests were moved there from `CreateImageWizard.test.tsx`.
2024-08-19 09:33:40 +02:00
dependabot[bot]
6cbb61060a build(deps-dev): bump @redhat-cloud-services/frontend-components-config
Bumps [@redhat-cloud-services/frontend-components-config](https://github.com/RedHatInsights/frontend-components) from 6.2.4 to 6.2.6.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-config"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-19 08:34:36 +02:00
regexowl
0ecf7c9887 Wizard: Unique default key name
Fixes #2353

This adds a random suffix to the default activation key name, making it less predictable.
2024-08-16 16:33:54 +02:00
regexowl
4fa0ad863b test: Clean up Registration tests and enable a test
This cleans up Registration tests and re-enables "clicking Cancel loads landing page" test.
2024-08-16 14:56:29 +02:00
Andrew Dewar
be95cd9dc0 Fixes 4426: Confirm Image builder is using origin 2024-08-16 10:26:40 +02:00
dependabot[bot]
7a18bd0abb build(deps-dev): bump @redhat-cloud-services/frontend-components-config
Bumps [@redhat-cloud-services/frontend-components-config](https://github.com/RedHatInsights/frontend-components) from 6.2.3 to 6.2.4.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-config"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-16 09:14:33 +02:00
dependabot[bot]
2408281a49 build(deps): bump react-router-dom from 6.26.0 to 6.26.1
Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.26.0 to 6.26.1.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.26.1/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-16 08:16:27 +02:00
regexowl
c1049b32ad Wizard: Add analytics tracking for package recommendations
This adds a code snippet to track package recommendations via Amplitude.

Tests were failing without default mock for `analytics.track()` value used to track package recommendations.
2024-08-15 12:31:06 +03:00
dependabot[bot]
9ebf7dfd86 build(deps-dev): bump @redhat-cloud-services/frontend-components-config
Bumps [@redhat-cloud-services/frontend-components-config](https://github.com/RedHatInsights/frontend-components) from 6.2.2 to 6.2.3.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-config"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-15 09:31:58 +02:00
dependabot[bot]
dd8c9aaa02 build(deps): bump @redhat-cloud-services/frontend-components
Bumps [@redhat-cloud-services/frontend-components](https://github.com/RedHatInsights/frontend-components) from 4.2.13 to 4.2.14.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-15 08:31:48 +02:00
regexowl
d31e59bcbf test: Clean up FSC tests
This cleans up FSC test file a bit after tests were moved here from `CreateImageWizard.test.tsx`.
2024-08-14 17:21:30 +03:00
regexowl
a5f9339d27 Wizard: Update the code after comments
This reverts Customer portal -> Activation keys page and ensures all the boxes are checked when the "Automatically register" option is checked again.
2024-08-14 15:26:08 +02:00
regexowl
a48fbb97b7 test: Add new tests 2024-08-14 15:26:08 +02:00
regexowl
1f40269c01 test: Cleanup tests
This cleans up the Registration test file after relevant tests were moved there from `CreateImageWizard.test.tsx`.
2024-08-14 15:26:08 +02:00
regexowl
0dea61bf00 test: Update tests
This updates the tests to reflect changes made to the new registration step.
2024-08-14 15:26:08 +02:00
regexowl
2caddb66c7 Wizard: "Always blue" update to the Registration step
This updates the Registration step as per recent mocks.

There is now only one checkbox which switches between (register everything now / register later). When the checkbox is not checked "register later" option gets selected, activation key dropdown gets disabled and information about activation keys is hidden to support the fact that no activation key will be used.

When the checkbox is checked it either loads previously used activation key in the case of "on edit" scenario, looks for a recently used activation key in localStorage or in a case there are no activationKeys automatically creates and selects one.

The Next button gets disabled only when "register-now" is selected, but there is no activationKey selected. As the option to clear the dropdown got removed this should occur only when fetching/creating activation key.
2024-08-14 15:26:08 +02:00
Michal Gold
c4bbd413b3 test: move relevant test from createImageWizard to targetEnvironment test file
this commit move relvant test from creatreImageWizrad to targetEnvironment test file
2024-08-14 11:10:38 +02:00
dependabot[bot]
4795fd5ea1 build(deps): bump axios from 1.7.2 to 1.7.4
Bumps [axios](https://github.com/axios/axios) from 1.7.2 to 1.7.4.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.7.2...v1.7.4)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-14 09:10:14 +02:00
dependabot[bot]
663023e9a6 build(deps): bump @redhat-cloud-services/frontend-components-utilities
Bumps [@redhat-cloud-services/frontend-components-utilities](https://github.com/RedHatInsights/frontend-components) from 4.0.15 to 4.0.16.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-utilities"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-14 08:06:50 +02:00
regexowl
e6a35eaf79 Wizard: Rename FileSystemPartitionMode to FileSystemConfigurationType
This renames `FileSystemPartitionMode` to `FileSystemConfigurationType` in preparation to expose raw/lvm partitioning in the UI.
2024-08-13 14:59:23 +03:00
dependabot[bot]
6e3681c5a5 build(deps-dev): bump @typescript-eslint/parser from 8.0.1 to 8.1.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.0.1 to 8.1.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.1.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-13 12:58:10 +02:00
dependabot[bot]
c8a2c96864 build(deps): bump @redhat-cloud-services/frontend-components-utilities
Bumps [@redhat-cloud-services/frontend-components-utilities](https://github.com/RedHatInsights/frontend-components) from 4.0.14 to 4.0.15.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-utilities"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-13 11:59:08 +02:00
Michal Gold
8ffa797df4 FileSystemTest: move relevant tests from createImageWizard to fileSystem
this commit move relevant tests from createImageWizard to fileSystem test
2024-08-13 10:35:42 +02:00
regexowl
bb181fe324 devDeps: bump vitest and @vitest/coverage-v8
This bumps:
- vitest from 2.0.4 to 2.0.5
- @vitest/coverage-v8 from 2.0.4 to 2.0.5

and removes reporter from the coverage setting, leaving only default output for now (console output equal to jest).
2024-08-13 09:31:35 +02:00
dependabot[bot]
f1d93b3cef build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.0.1 to 8.1.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.1.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-13 08:04:22 +02:00
regexowl
d0412db518 test: Move clicking helper functions to wizardTestUtils
As clicking helper functions are used only in the context of Wizard, this moves them to an appropriate place.
2024-08-12 17:46:38 +02:00
regexowl
a3abc29f51 Wizard: Add eslint-disable to useEffect
This disables `react-hooks/exhaustive-deps` rule for dependency arrays that should run only once on mount and therefore need to stay empty.
2024-08-12 13:09:58 +03:00
dependabot[bot]
03e0061fc6 build(deps-dev): bump eslint-plugin-testing-library from 6.2.2 to 6.3.0
Bumps [eslint-plugin-testing-library](https://github.com/testing-library/eslint-plugin-testing-library) from 6.2.2 to 6.3.0.
- [Release notes](https://github.com/testing-library/eslint-plugin-testing-library/releases)
- [Changelog](https://github.com/testing-library/eslint-plugin-testing-library/blob/main/.releaserc.json)
- [Commits](https://github.com/testing-library/eslint-plugin-testing-library/compare/v6.2.2...v6.3.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-testing-library
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-12 11:12:27 +02:00
regexowl
b7ccc2cca0 testUtils: Merge renderCustomRoutesWithReduxRouter and renderWithReduxRouter
`renderCustomRoutesWithReduxRouter` and `renderWithReduxRouter`are functionally the same apart from routes they use to render components.

We could just use `renderCustomRoutesWithReduxRouter` and use the routes from `renderWithReduxRouter` as a default value for an optional parameter `routes`.
2024-08-12 09:46:10 +02:00
Michal Gold
3c44d9414a createImage: add default name in details step <HMS-4494>
this commit add default name for blueprint name field to be able
to create an image without filling any name
format name: "$OS $ARCH $TARGETS $DATE".
2024-08-12 08:43:26 +02:00
Michal Gold
346c5752b6 RegistrationTest: move relevant tests from createImageWizard to Registration test 2024-08-09 10:18:57 +02:00
regexowl
5d73adfbd6 src: Absolute imports
While running build there was a bunch of PatternFly imports that were resolved as undefined. This adds an absolute path for each of those imports.
2024-08-09 09:22:17 +02:00
regexowl
21d6027886 devDeps: Bump ts-patch from 3.2.0 to 3.2.1
This bumps ts-patch from 3.2.0 to 3.2.1
2024-08-09 09:22:17 +02:00
regexowl
1554d78cba test: Move mocks to setup file
This moves all the mocks used throughout our test files into the test setup file.
2024-08-08 16:53:49 +02:00
regexowl
79d54eed7b Wizard: Fix information rendered in package recommendations
When a package got selected and deselected again, landing on 0 for selected packages, the information shown in the package recommendations was "Select packages to generate recommendations.No recommendations found for the set of selected packages", this updates the logic to separate the messages.
2024-08-08 12:50:56 +02:00
Anna Vítová
a799d70a85 blueprint: Add preview label to import button 2024-08-08 12:56:27 +03:00
regexowl
90a37db2f5 vitest: Disable fileParallelism
This re-disables `fileParallelism` again as it's still proving too flaky.
2024-08-08 10:18:36 +02:00
dependabot[bot]
280b669bc7 build(deps-dev): bump @redhat-cloud-services/frontend-components-config
Bumps [@redhat-cloud-services/frontend-components-config](https://github.com/RedHatInsights/frontend-components) from 6.2.0 to 6.2.2.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-config"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-08 08:33:15 +02:00
dependabot[bot]
c39bde963a build(deps-dev): bump @redhat-cloud-services/frontend-components-config
Bumps [@redhat-cloud-services/frontend-components-config](https://github.com/RedHatInsights/frontend-components) from 6.1.3 to 6.2.0.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-config"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-07 08:22:12 +02:00
regexowl
5e75c46b60 devDeps: Manual bump msw from 2.3.2 to 2.3.5
This bumps msw from 2.3.2 to 2.3.5.
2024-08-06 17:01:15 +03:00
regexowl
912b56f735 test: Move util function to wizardTestUtils
This moves `selectCustomRepo` to `wizardTestUtils.tsx`

Since the function was originally imported into `Packages.test.tsx` from `CreateImageWizard.content.test.tsx` the entire content suite was re-run under Packages suite each time. This solves the issue.
2024-08-06 15:46:51 +03:00
Ondrej Ezr
e0b33fd6f5 Bluperint: Allow selecting targets from diff modal 2024-08-06 11:16:34 +02:00
dependabot[bot]
23d28a8a82 build(deps-dev): bump @typescript-eslint/parser from 8.0.0 to 8.0.1
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.0.0 to 8.0.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.0.1/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-06 10:14:54 +02:00
dependabot[bot]
ee2ef3ad6f build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.0.0 to 8.0.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.0.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-06 08:36:42 +02:00
Ondrej Ezr
e1057208f3 Blueprint: show basic version diff 2024-08-05 18:48:08 +02:00
regexowl
933e65d590 Wizard: Update docs after move to new preview
`/preview` is no longer used in url.
2024-08-05 13:54:13 +02:00
regexowl
37dfe8584c test: Fix async logic in Oscap flakes
`remove profile` and `change profile` test in `Oscap.test.tsx` suite were flaking for Node 18.x, this should fix the issue.
2024-08-05 12:52:06 +02:00
regexowl
68b7444b2f vitest: Enable fileParallelism
This allows paralel file testing, speeding up the tests.
2024-08-05 12:52:06 +02:00
regexowl
9707278d01 src: Disable some linting errors
This disables linting errors that would require more changes.
2024-08-05 11:51:20 +02:00
regexowl
44dc900370 src: Fix new errors after linter bump
This addresses problems caused by dependency updates.
2024-08-05 11:51:20 +02:00
regexowl
21d038f47b devDeps: Manual bump @typescript-eslint/eslint-plugin and parser
This bumps:
- @typescript-eslint/eslint-plugin from 7.18.0 to 8.0.0
- @typescript-eslint/parser from 7.18.0 to 8.0.0
2024-08-05 11:51:20 +02:00
Michal Gold
4b85ad064a createImageWizrad: add scroll to the creation image
this commit change the resoluiton of wizard__outer-wrap to solve
the problem that user should scroll to see the next, backl and cancel buttons
2024-08-05 09:07:48 +02:00
regexowl
9a1d348a77 src: Resolve problems ater updating API
'centos-8' was dropped from Distributions, causing a few problems. This resolves them.
2024-08-02 11:31:20 +02:00
regexowl
434c90a6b8 api: Update image-builder API
This updates image-builder API by running `npm run api`.
2024-08-02 11:31:20 +02:00
dependabot[bot]
e993027f92 build(deps): bump react-router-dom from 6.25.1 to 6.26.0
Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.25.1 to 6.26.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.26.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-02 10:26:35 +02:00
regexowl
8a5dea7abf Wizard: Fix On Edit startIndex
With Snapshotting being only hidden startIndex needs to be updated.
2024-08-01 18:05:01 +02:00
regexowl
2febf98e93 test: Update tests
Add mocking to tests where needed.
2024-08-01 18:05:01 +02:00
regexowl
d88cd216a5 Wizard: Add isHidden to snapshotting step
Replace conditional rendering with `isHidden` for snapshotting step.
2024-08-01 18:05:01 +02:00
regexowl
e891b0dc04 test: Add flag mocks
This mocks 'image-builder.snapshots.enabled' where needed.
2024-08-01 17:34:03 +02:00
regexowl
3174dbd706 Wizard: Gate snapshots behind an unleash flag
This gates snapshots behind a 'image-builder.snapshots.enabled' unleash flag instead of `isBeta()`.
2024-08-01 17:34:03 +02:00
regexowl
fc88b09ce6 test: Update tests
This updates tests after gating WSL behind 'image-builder.wsl.enabled'.
2024-08-01 17:24:42 +02:00
regexowl
703a65049f Wizard: Migrate WSL from isBeta() to unleash flag
This gates WSL target behind an 'image-builder.wsl.enabled' unleash flag instead of `isBeta()`.
2024-08-01 17:24:42 +02:00
regexowl
fddf520864 Wizard: Fix nav issues On Edit
Since the FirstBoot step is now always rendered but conditionally hidden, Wizard was opening on the Details step in Edit.
2024-08-01 17:16:36 +02:00
regexowl
8ee2bad55e test: Add flag mocks
This adds mocked 'image-builder.firstboot.enabled' where needed.
2024-08-01 17:16:36 +02:00
regexowl
8dd042aa05 Wizard: Fix death by thousand reviews
When switching between preview and non-preview the Wizard nav got messy. This should fix the problem.
2024-08-01 17:16:36 +02:00
regexowl
b0725c054e Wizard: Replace isBeta() with conditional flag
This replaces `isBeta()` with a constraint added to the 'image-builder.pkgrecs.enabled' unleash flag.
2024-08-01 13:17:59 +02:00
dependabot[bot]
98a179b1cc build(deps-dev): bump sass-loader from 15.0.0 to 16.0.0
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 15.0.0 to 16.0.0.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/v16.0.0/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v15.0.0...v16.0.0)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-01 11:12:23 +02:00
dependabot[bot]
d580defca6 build(deps-dev): bump @typescript-eslint/parser from 7.17.0 to 7.18.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 7.17.0 to 7.18.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.18.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-01 09:53:25 +02:00
Michal Gold
f714ad3440 change the value of SE_NODE_SESSION_TIMEOUT from number to string
this commit change the value of SE_NODE_SESSION_TIMEOUT from number to string
becuase it is blocking auto-promotion test
2024-08-01 07:49:41 +03:00
dependabot[bot]
04bce40bd7 build(deps): bump @unleash/proxy-client-react from 4.3.0 to 4.3.1
Bumps [@unleash/proxy-client-react](https://github.com/Unleash/unleash-proxy-react) from 4.3.0 to 4.3.1.
- [Release notes](https://github.com/Unleash/unleash-proxy-react/releases)
- [Changelog](https://github.com/Unleash/proxy-client-react/blob/main/Changelog.md)
- [Commits](https://github.com/Unleash/unleash-proxy-react/compare/v4.3.0...v4.3.1)

---
updated-dependencies:
- dependency-name: "@unleash/proxy-client-react"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-31 17:38:27 +02:00
Sanne Raymaekers
eab407c09e Wizard: Add tests for repositories and snapshot steps
Tests the bulk select and verifies disabled repositories.
2024-07-31 16:30:01 +02:00
Sanne Raymaekers
90f7ce111a Wizard: Fix bulk select on repositories step
Don't select repositories that are disabled.
2024-07-31 16:30:01 +02:00
regexowl
fee43d8917 ImagesTable: Update wording of CentOS 8 alert
This adds information about CentOS 8 being automatically replaces with CentOS 9 when editing a blueprint.
2024-07-30 16:16:43 +02:00
regexowl
517ff8ccd3 requestMapper: Automatically replace CentOS 8 with CentOS 9
CentOS 8 was deprecated and is no longer used, but 'On Edit' for a no longer valid blueprint with 'centos-8' as their distribution defaulted to RHEL 9.
2024-07-30 16:16:43 +02:00
Jakub Rusz
07dfc66574 templates/testing: Increase timeout for selenium session
I think it's causing issues with test_compose_clone so I want to try
increasing the timeout.
2024-07-30 13:47:55 +02:00
dependabot[bot]
7e0bedbd83 build(deps): bump @reduxjs/toolkit from 2.2.6 to 2.2.7
Bumps [@reduxjs/toolkit](https://github.com/reduxjs/redux-toolkit) from 2.2.6 to 2.2.7.
- [Release notes](https://github.com/reduxjs/redux-toolkit/releases)
- [Commits](https://github.com/reduxjs/redux-toolkit/compare/v2.2.6...v2.2.7)

---
updated-dependencies:
- dependency-name: "@reduxjs/toolkit"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-30 12:27:54 +02:00
regexowl
2bbec0b034 test: Temporarily disable flakey Oscap tests
The disabled tests are flaking for Node 18.x only. I'm quite sure the problem lies within async. Working on a fix.
2024-07-30 12:12:21 +03:00
dependabot[bot]
6c17b1a4d3 build(deps-dev): bump @redhat-cloud-services/frontend-components-config
Bumps [@redhat-cloud-services/frontend-components-config](https://github.com/RedHatInsights/frontend-components) from 6.1.2 to 6.1.3.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-config"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-30 09:59:22 +02:00
dependabot[bot]
3a050f21ad build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 7.17.0 to 7.18.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.18.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-30 08:39:43 +02:00
regexowl
a9bf175403 test: Disable a test and update few others
Test `Repositories edit mode modal pops up when deselecting previously used repository` is temporarily disabled. Also there were some early exits, the awaiting should do the trick.
2024-07-29 19:20:14 +02:00
regexowl
ece2e1a9da Remove babel
After migrating to typescript and later to vitest, babel is no longer needed. This removes its config and all dependencies that are no longer necessary.
2024-07-29 19:20:14 +02:00
Sanne Raymaekers
4ebd0cec36 Wizard: disable non-snapshot repositories when needed
If a snapshot date is selected, all repositories need to have
snapshotting enabled.
2024-07-29 14:32:09 +02:00
regexowl
802525edbc test: Move compliance On Recreate test to On Edit
This migrates a test from previously used On Recreate to current On Edit.
2024-07-29 13:24:30 +02:00
dependabot[bot]
2f54d2b1f8 build(deps-dev): bump typescript from 5.5.3 to 5.5.4
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.5.3 to 5.5.4.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v5.5.3...v5.5.4)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-29 11:41:03 +02:00
dependabot[bot]
8723b01f85 build(deps-dev): bump @babel/preset-env from 7.24.8 to 7.25.0
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.24.8 to 7.25.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.25.0/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-29 10:36:55 +02:00
dependabot[bot]
e13d323acf build(deps-dev): bump @babel/eslint-parser from 7.24.8 to 7.25.1
Bumps [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) from 7.24.8 to 7.25.1.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.25.1/eslint/babel-eslint-parser)

---
updated-dependencies:
- dependency-name: "@babel/eslint-parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-29 09:01:56 +02:00
Ondrej Ezr
dbfa934b38 Firstboot: validate shebang is defined 2024-07-26 11:57:24 +02:00
regexowl
6e138b5274 lint: Fix linting error 2024-07-26 10:49:36 +02:00
Simon Steinbeiss
3b83a6a72b wizard/registration: Add missing article (typo) 2024-07-26 10:49:36 +02:00
dependabot[bot]
c5f9d23fe5 build(deps-dev): bump @redhat-cloud-services/tsc-transform-imports
Bumps @redhat-cloud-services/tsc-transform-imports from 1.0.11 to 1.0.16.

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/tsc-transform-imports"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-26 09:36:32 +02:00
dependabot[bot]
fcc1423f59 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 7.16.1 to 7.17.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.17.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-26 08:37:59 +02:00
regexowl
cba54c54c6 test: Add retry to the flakiest tests
This adds three possible retries to three of the flakiest tests.
2024-07-25 19:22:05 +02:00
regexowl
fabb24c02d devDeps: Update vitest and add @vitest/coverage-v8
Bumps vitest from 1.6.0 to 2.0.4 and installs @vitest/coverage-v8 to the devDeps for coverage reports.
2024-07-25 19:22:05 +02:00
Jakub Rusz
3fe703e60f Fix typo in Snapshot step
Not actually a radio.
2024-07-25 17:01:53 +02:00
Michal Gold
2c61a70fb4 buildImagesButton: change the name of build selected button <HMS-4066>
this commit  change the name of build selected button to build images
2024-07-25 15:49:23 +02:00
regexowl
c3da0af22c test: Remove deprecated flags from mocking
`image-builder.new-wizard.enabled`, `image-builder.wizard.oscap.enabled` and `image-builder.enable-content-sources` are no longer used in the code base and thus don't need to be mocked in tests.
2024-07-25 14:45:35 +02:00
dependabot[bot]
2633b9c4d6 build(deps-dev): bump sass-loader from 14.2.1 to 15.0.0
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 14.2.1 to 15.0.0.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v14.2.1...v15.0.0)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-25 12:02:42 +02:00
dependabot[bot]
feaefc601c build(deps-dev): bump @testing-library/dom from 10.3.2 to 10.4.0
Bumps [@testing-library/dom](https://github.com/testing-library/dom-testing-library) from 10.3.2 to 10.4.0.
- [Release notes](https://github.com/testing-library/dom-testing-library/releases)
- [Changelog](https://github.com/testing-library/dom-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/dom-testing-library/compare/v10.3.2...v10.4.0)

---
updated-dependencies:
- dependency-name: "@testing-library/dom"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-25 11:03:17 +02:00
Michal Gold
1b35aa88da imageTable: link images to parent blueprint <HMS-4353>
this commit add link to parent blueprint from specific image
2024-07-25 09:35:05 +02:00
regexowl
f0f85469f6 README: Update readme after migrating to fec.config.js
This updates instructions for local development.
2024-07-24 16:13:55 +02:00
dependabot[bot]
0c5679776a build(deps-dev): bump eslint-plugin-react from 7.34.4 to 7.35.0
Bumps [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) from 7.34.4 to 7.35.0.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-react/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.34.4...v7.35.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-react
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-24 13:17:39 +02:00
dependabot[bot]
b911efddb6 build(deps-dev): bump @typescript-eslint/parser from 7.16.1 to 7.17.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 7.16.1 to 7.17.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.17.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-24 11:26:11 +02:00
dependabot[bot]
ad64e0cec5 build(deps-dev): bump @testing-library/jest-dom from 6.4.6 to 6.4.8
Bumps [@testing-library/jest-dom](https://github.com/testing-library/jest-dom) from 6.4.6 to 6.4.8.
- [Release notes](https://github.com/testing-library/jest-dom/releases)
- [Changelog](https://github.com/testing-library/jest-dom/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/jest-dom/compare/v6.4.6...v6.4.8)

---
updated-dependencies:
- dependency-name: "@testing-library/jest-dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-24 09:45:37 +02:00
regexowl
16422e96ce test: Improve stability of 'check error details' test
This adds awaiting to a few expects, hopefully improving the stability of the test.
2024-07-23 16:23:04 +02:00
regexowl
eb2cfe9a2f test: Move @testing-library/jest-dom import to test setup file
This removes `@testing-library/jest-dom` from single test files and adds it to the shared setup.ts file.
2024-07-22 15:49:18 +02:00
Klara Simickova
f26e4f47df Revert "build(deps-dev): bump ts-patch from 3.2.0 to 3.2.1"
This reverts commit ecb564ea3b.
2024-07-22 14:45:02 +02:00
dependabot[bot]
8e4c886f59 build(deps-dev): bump @redhat-cloud-services/frontend-components-config
Bumps [@redhat-cloud-services/frontend-components-config](https://github.com/RedHatInsights/frontend-components) from 5.0.5 to 6.1.2.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-config"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-22 11:25:47 +02:00
dependabot[bot]
e7c9eb0190 build(deps): bump @redhat-cloud-services/frontend-components-utilities
Bumps [@redhat-cloud-services/frontend-components-utilities](https://github.com/RedHatInsights/frontend-components) from 4.0.13 to 4.0.14.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-utilities"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-22 11:16:54 +02:00
dependabot[bot]
55143d9f77 build(deps-dev): bump @babel/core from 7.24.7 to 7.24.9
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.24.7 to 7.24.9.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.9/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-22 11:08:17 +02:00
dependabot[bot]
ecb564ea3b build(deps-dev): bump ts-patch from 3.2.0 to 3.2.1
Bumps [ts-patch](https://github.com/nonara/ts-patch) from 3.2.0 to 3.2.1.
- [Release notes](https://github.com/nonara/ts-patch/releases)
- [Changelog](https://github.com/nonara/ts-patch/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nonara/ts-patch/compare/v3.2.0...v3.2.1)

---
updated-dependencies:
- dependency-name: ts-patch
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-22 10:59:41 +02:00
regexowl
ddf6a04e0c README: Update Jest to Vitest
This updates Jest to Vitest in Test Guidelines section of README.
2024-07-19 19:23:04 +02:00
regexowl
0f9f3b9af6 dependabot: Decrease open PR limit
The backlog of stuck dependencies is shrinking, meaning we can go back to previous limit of three open dependabot pull requests.
2024-07-19 17:53:22 +02:00
regexowl
ba29232c91 config: Replace webpack configs with FEC config
This migrates from previously used webpack configs to one fec.config.js.

This will allow us to bump `frontend-components-config` dependency to version 6.x and stay supported in the future.
2024-07-19 16:55:25 +02:00
regexowl
a8fea7c377 devDeps: Bump msw from 2.3.1 to 2.3.2
This manually bumps msw from 2.3.1 to 2.3.2
2024-07-19 15:28:31 +02:00
regexowl
2160177494 vitest.config: Remove clsx from inlined deps
`clsx` does not need to be inlined.
2024-07-19 14:26:07 +02:00
regexowl
88cdd17c10 devDeps: Clean up unused dependencies
This removes dependencies that are no longer needed.
2024-07-19 14:26:07 +02:00
regexowl
d0a143dd23 README: Syntax highlighting
Add syntax highlighting for fenced code blocks.
2024-07-19 12:47:43 +02:00
regexowl
1ead9c8e3c README: Add DOM dump silencing to Test Guidelines
This adds information about silencing DOM dumps in testing-library test output and how to allow DOM dump again if needed.
2024-07-19 12:47:43 +02:00
Ondrej Ezr
1febbe4620 test: cleanup unnecessary polyfills 2024-07-19 11:03:04 +02:00
dependabot[bot]
0c27256927 build(deps): bump @redhat-cloud-services/frontend-components
Bumps [@redhat-cloud-services/frontend-components](https://github.com/RedHatInsights/frontend-components) from 4.2.12 to 4.2.13.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-19 09:36:25 +02:00
dependabot[bot]
1e4e3a72cc build(deps-dev): bump @babel/eslint-parser from 7.24.7 to 7.24.8
Bumps [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) from 7.24.7 to 7.24.8.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.8/eslint/babel-eslint-parser)

---
updated-dependencies:
- dependency-name: "@babel/eslint-parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-19 08:39:41 +02:00
dependabot[bot]
d749f08fc6 build(deps-dev): bump typescript from 5.1.6 to 5.5.3
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.1.6 to 5.5.3.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v5.1.6...v5.5.3)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-18 18:20:35 +02:00
Ondrej Ezr
df993c7fc2 test: Add nodeFetch back 2024-07-18 17:26:38 +02:00
Ondrej Ezr
69b7c574ae test: await click instead of element not in doc 2024-07-18 17:26:38 +02:00
Ondrej Ezr
7d537bcb66 test: use basic JS types for composes 2024-07-18 17:26:38 +02:00
Ondrej Ezr
a1a49806e1 rtk: Add base to url and fix mock handler 2024-07-18 17:26:38 +02:00
regexowl
797ceddcd1 test: Update handlers in test files
This updates handlers used directly in the test files to match current API.
2024-07-18 17:26:38 +02:00
regexowl
501323b476 MSW: Bump msw from 1.2.3 to 2.3.1
This bumps Mock Service Worker and updates the handlers.
2024-07-18 17:26:38 +02:00
dependabot[bot]
a8c8942af6 build(deps-dev): bump eslint-plugin-react from 7.34.3 to 7.34.4
Bumps [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) from 7.34.3 to 7.34.4.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-react/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.34.3...v7.34.4)

---
updated-dependencies:
- dependency-name: eslint-plugin-react
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-18 09:40:36 +02:00
dependabot[bot]
d4708917f6 build(deps): bump react-router-dom from 6.25.0 to 6.25.1
Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.25.0 to 6.25.1.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.25.1/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-18 08:45:42 +02:00
regexowl
4e24dc35b6 test: Silence the DOM dump in test output
This silences the DOM dump logged into test output by testing-library while keeping all the relevant information about the test failure in the output.
2024-07-17 21:22:32 +02:00
regexowl
e2397b90d4 test: Fix act warnings
This removes the `act()` warnings from the test output.
2024-07-17 12:25:33 +02:00
regexowl
4fb37c187e src: Rename "V2" folders to just Wizard
This replaces all occurences of "CreateImageWizardV2" with just "CreateImageWizard" as it is the only version now.
2024-07-17 11:17:06 +02:00
dependabot[bot]
b1e5a8c7c6 build(deps): bump react-router-dom from 6.24.1 to 6.25.0
Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.24.1 to 6.25.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.25.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-17 09:50:07 +02:00
dependabot[bot]
4e585365ce build(deps-dev): bump @typescript-eslint/parser from 7.16.0 to 7.16.1
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 7.16.0 to 7.16.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.16.1/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-17 08:54:05 +02:00
regexowl
4389318de8 test: Update EditImageWizard test file for vitest
This adds mocks and imports needed to make the newly added EditImageWizard test file pass with vitest.
2024-07-16 16:55:31 +02:00
regexowl
a5f69a2559 test: Move shared imports to setup.ts file 2024-07-16 16:55:31 +02:00
regexowl
144832f2f8 test: Temporarily disable three tests
This temporarily disables three tests:
- target environment tiles are keyboard selectable -> can't make the behaviour correct even in mocked browser, it's possible this test was passing dues to early exit
- image name invalid for more than 100 chars and description for 250 -> this test times out in waitFor for the typing action. We have other valid/invalid name tests which could probably replace this one to not overwhelm the test suite with awaiting a large amount of text
- validate first boot request -> `monaco-editor` mock will be probably needed to make this one pass as it's not included in jsdom and ends in `Ne. init is not a function` error
2024-07-16 16:55:31 +02:00
regexowl
98c17e55df test: Move beforeEach blocks inside describe
This moved the `beforeEach` blocks inside the `describe` blocks as per documentation.

Previously the code inside `beforeEach` didn't trigger which lead to problems with asynchrocinity as mocks didn't get cleared.
2024-07-16 16:55:31 +02:00
regexowl
e036f9b892 src: Move .scrollTo mock implementation to setup.ts
This moves the `.scrollTo` mock implementation to a setup file for other test files to use.
2024-07-16 16:55:31 +02:00
regexowl
8597929ff3 test: test: Remove act() warnings
This removes `Warning: An update to <component> inside a test was not wrapped inact(...)` warnings.
2024-07-16 16:55:31 +02:00
regexowl
6964e8b312 src: Resolve ResizeObserver is not defined error
This mocks and stubs ResizeObserver as it is not defined in jsdom.
2024-07-16 16:55:31 +02:00
regexowl
2a48966bba test: Update test files to work with Vitest
This updates the files to be compatible with Vitest. Changes include:
- adding `@testing-library/jest-dom` import to enable custom jest matchers
- renaming `jest.` to `vi.`
- setting flags to false as default where needed
2024-07-16 16:55:31 +02:00
regexowl
da16a42128 Migrate from Jest to Vitest
This migrates our tests from using the Jest testing framework to Vitest.
2024-07-16 16:55:31 +02:00
regexowl
ac60043199 Wizard: Fix repositories recommendations
Repositories were not getting recommended after https://github.com/osbuild/image-builder-frontend/pull/2226 got merged. This fixes the problem.
2024-07-16 15:31:53 +02:00
dependabot[bot]
bafa531d00 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 7.16.0 to 7.16.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.16.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-16 14:13:54 +02:00
Ondrej Ezr
22c3686e2e Firstboot: Add testid to empty state buttons 2024-07-16 13:15:12 +02:00
Ondrej Ezr
e0ec56c94d Wizard: fix blueprint unique name validation in Edit mode 2024-07-16 12:27:42 +02:00
dependabot[bot]
e003682e23 build(deps-dev): bump @testing-library/dom from 10.3.1 to 10.3.2
Bumps [@testing-library/dom](https://github.com/testing-library/dom-testing-library) from 10.3.1 to 10.3.2.
- [Release notes](https://github.com/testing-library/dom-testing-library/releases)
- [Changelog](https://github.com/testing-library/dom-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/dom-testing-library/compare/v10.3.1...v10.3.2)

---
updated-dependencies:
- dependency-name: "@testing-library/dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-16 11:32:41 +02:00
regexowl
32ec1a6d27 jest: Increase test timeout
This increases default test timeout from 10000 to 20000 and timeout for "image name invalid for more than 100 chars and description for 250" to 50000.

This should eliminate test flakes caused by timing out, later it will be "reverted" when the Vitest migration gets merged.
2024-07-16 10:47:54 +02:00
dependabot[bot]
0fa06822fc build(deps): bump @patternfly/react-core from 5.3.3 to 5.3.4
Bumps [@patternfly/react-core](https://github.com/patternfly/patternfly-react) from 5.3.3 to 5.3.4.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@5.3.3...@patternfly/react-core@5.3.4)

---
updated-dependencies:
- dependency-name: "@patternfly/react-core"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-15 13:12:03 +02:00
dependabot[bot]
64fe6642d3 build(deps): bump @patternfly/react-code-editor from 5.3.3 to 5.3.4
Bumps [@patternfly/react-code-editor](https://github.com/patternfly/patternfly-react) from 5.3.3 to 5.3.4.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-code-editor@5.3.3...@patternfly/react-code-editor@5.3.4)

---
updated-dependencies:
- dependency-name: "@patternfly/react-code-editor"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-15 08:55:59 +02:00
regexowl
14b5edb83a README: Update and clean up
This updates and cleans up README a bit. There were two API sections that got merged and moved under frontend development. Some typos were also addressed.
2024-07-14 23:01:48 +02:00
regexowl
989671ba95 test: Update tests
A custom repo needs to be selected for the correct mocked response.
2024-07-14 22:13:46 +02:00
regexowl
c89b73687f Wizard: Fix 400 when fetching packages
The request for package search in custom repositories was sent even when no custom repositories were selected, ending in 400. This fixes the problem.
2024-07-14 22:13:46 +02:00
dependabot[bot]
ce94f72066 build(deps-dev): bump sass from 1.77.7 to 1.77.8
Bumps [sass](https://github.com/sass/dart-sass) from 1.77.7 to 1.77.8.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.77.7...1.77.8)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-12 09:40:23 +02:00
dependabot[bot]
8f2219c338 build(deps-dev): bump @babel/preset-env from 7.24.7 to 7.24.8
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.24.7 to 7.24.8.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.8/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-12 08:48:00 +02:00
Ondrej Ezr
e8b3814074 Wizard: feature flag to decide environments to be enabled in
Feature flags now support enablement in Preview specifically.
This allows us to use single feature flag for rollout.
2024-07-11 14:33:35 +02:00
dependabot[bot]
da39efcbf7 build(deps): bump @patternfly/react-table from 5.3.3 to 5.3.4
Bumps [@patternfly/react-table](https://github.com/patternfly/patternfly-react) from 5.3.3 to 5.3.4.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-table@5.3.3...@patternfly/react-table@5.3.4)

---
updated-dependencies:
- dependency-name: "@patternfly/react-table"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-11 11:52:24 +02:00
dependabot[bot]
57ef3c09b3 build(deps-dev): bump sass from 1.77.6 to 1.77.7
Bumps [sass](https://github.com/sass/dart-sass) from 1.77.6 to 1.77.7.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.77.6...1.77.7)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-11 10:47:29 +02:00
Ondrej Ezr
4044b9eba1 Wizard: enable nav items properly in Edit mode 2024-07-11 09:37:36 +02:00
Ondrej Ezr
549ef37ab7 Blueprint: enable import/export in ephemeral
Adds ability to enable a feature flag in Ephemeral environment by default.
2024-07-10 19:48:58 +02:00
dependabot[bot]
0f7d9457c6 build(deps-dev): bump @typescript-eslint/parser from 7.15.0 to 7.16.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 7.15.0 to 7.16.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.16.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-09 13:01:37 +02:00
dependabot[bot]
340b146068 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 7.15.0 to 7.16.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.16.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-09 09:23:17 +02:00
Justin Sherrill
10c9375ee3 V2Wizard: revert add alert on snapshot step 2024-07-08 10:27:21 +02:00
dependabot[bot]
ad73bba30c build(deps-dev): bump @testing-library/dom from 10.3.0 to 10.3.1
Bumps [@testing-library/dom](https://github.com/testing-library/dom-testing-library) from 10.3.0 to 10.3.1.
- [Release notes](https://github.com/testing-library/dom-testing-library/releases)
- [Changelog](https://github.com/testing-library/dom-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/dom-testing-library/compare/v10.3.0...v10.3.1)

---
updated-dependencies:
- dependency-name: "@testing-library/dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-08 09:19:55 +02:00
Ondrej Ezr
ff2ccc4101 Wizard: set status on step
This implements error status for a step navigation.
It helps user to see on what step there is an validation error and why they can't create the blueprint.
2024-07-05 13:23:58 +02:00
regexowl
fde1cfef10 constants: Update URLs
This updates documentation URLs.
2024-07-04 21:34:15 +02:00
Sanne Raymaekers
f8a8e5c782 src/constants: update docs link
Image builder docs are now hosted under insights only.
2024-07-04 17:07:01 +02:00
mlahane
6a5417d4d6 Update docs with correct URL 2024-07-04 15:47:25 +02:00
Gianluca Zuccarelli
f0d723686e wizard/compliance: re-enable stig profiles
The stig profiles have been fixed downstream, so we can re-enable these.
2024-07-04 12:01:06 +02:00
dependabot[bot]
93dcff268b build(deps-dev): bump @typescript-eslint/parser from 7.14.1 to 7.15.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 7.14.1 to 7.15.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.15.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-04 10:25:11 +02:00
dependabot[bot]
b031c507f1 build(deps): bump react-router-dom from 6.24.0 to 6.24.1
Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.24.0 to 6.24.1.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.24.1/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-04 09:41:33 +02:00
Michal Gold
f218109fa4 CreateDropdown: change navigation to specific image when creating and building image HMS-4258
this commit change navigation to specific image when creating and building new
image
2024-07-03 15:09:11 +02:00
dependabot[bot]
dd16cba064 build(deps-dev): bump @testing-library/dom from 10.2.0 to 10.3.0
Bumps [@testing-library/dom](https://github.com/testing-library/dom-testing-library) from 10.2.0 to 10.3.0.
- [Release notes](https://github.com/testing-library/dom-testing-library/releases)
- [Changelog](https://github.com/testing-library/dom-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/dom-testing-library/compare/v10.2.0...v10.3.0)

---
updated-dependencies:
- dependency-name: "@testing-library/dom"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-03 11:17:13 +02:00
dependabot[bot]
ae0eb1b288 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 7.14.1 to 7.15.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.15.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-02 09:30:21 +02:00
dependabot[bot]
18c786859e build(deps): bump @reduxjs/toolkit from 2.2.5 to 2.2.6
Bumps [@reduxjs/toolkit](https://github.com/reduxjs/redux-toolkit) from 2.2.5 to 2.2.6.
- [Release notes](https://github.com/reduxjs/redux-toolkit/releases)
- [Commits](https://github.com/reduxjs/redux-toolkit/compare/v2.2.5...v2.2.6)

---
updated-dependencies:
- dependency-name: "@reduxjs/toolkit"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-02 08:38:43 +02:00
regexowl
c0508e00ce src: Add betaPath helper function
This replaces all occurences of `isBeta() ? CONTENT_BETA : CONTENT_STABLE` with `betaPath(CONTENT_URL, isBeta())`.
2024-07-01 13:54:15 +02:00
regexowl
b198768ca6 src: Move content urls to const
This moves both preview and stable links to content to the `constants.ts` file.
2024-07-01 13:54:15 +02:00
dependabot[bot]
c6919e3753 build(deps): bump @unleash/proxy-client-react from 4.2.4 to 4.3.0
Bumps [@unleash/proxy-client-react](https://github.com/Unleash/unleash-proxy-react) from 4.2.4 to 4.3.0.
- [Release notes](https://github.com/Unleash/unleash-proxy-react/releases)
- [Changelog](https://github.com/Unleash/proxy-client-react/blob/main/Changelog.md)
- [Commits](https://github.com/Unleash/unleash-proxy-react/compare/v4.2.4...v4.3.0)

---
updated-dependencies:
- dependency-name: "@unleash/proxy-client-react"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-01 10:19:28 +02:00
dependabot[bot]
599d632fd7 build(deps): bump @redhat-cloud-services/frontend-components
Bumps [@redhat-cloud-services/frontend-components](https://github.com/RedHatInsights/frontend-components) from 4.2.11 to 4.2.12.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-01 08:56:38 +02:00
Jakub Rusz
9f3cb26e0a Wizard/Review: Rename from Image to blueprint
Where applicable renamed Image details or name to blueprint details or name.
2024-06-28 16:06:06 +02:00
Jakub Rusz
9b82b22d75 Add ouiaIds for import Modal and button
Adding some missing ouiaIds.
2024-06-28 09:49:14 +02:00
regexowl
345c3bbd06 Wizard: Update text for name validation
This updates helper text for blueprint name validation, making the "word characters" more specific.
2024-06-28 09:32:06 +02:00
dependabot[bot]
c0efcc9188 build(deps): bump @redhat-cloud-services/frontend-components-utilities
Bumps [@redhat-cloud-services/frontend-components-utilities](https://github.com/RedHatInsights/frontend-components) from 4.0.11 to 4.0.13.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-utilities"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-27 08:45:10 +02:00
dependabot[bot]
fcb73a86ba build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 7.13.1 to 7.14.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.14.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-26 16:32:51 +02:00
Ondrej Ezr
facb71ceae Wizard: validate uniqueness of Blueprint name 2024-06-26 15:41:48 +02:00
dependabot[bot]
ff0b2509cc build(deps-dev): bump @typescript-eslint/parser from 7.13.1 to 7.14.1
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 7.13.1 to 7.14.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.14.1/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-25 11:57:21 +02:00
regexowl
73848c9ed0 Wizard: Add Lightspeed to package recommendations
This adds "Powered by RHEL Lightspeed" text and popover to the recommended packages expandable.
2024-06-25 11:15:07 +02:00
Michal Gold
7138552663 add unit test that check disabling build image button when uncheck all targets 2024-06-25 10:21:03 +02:00
Michal Gold
39b29e303c buildImageButton: add support of building image with mulitple targets <HMS-4066>
this commit add support of building an image with mulitple targets,
when user build an image, he can choose which targets he wants to build.
2024-06-25 10:21:03 +02:00
dependabot[bot]
67ec26bead build(deps-dev): bump @testing-library/dom from 10.1.0 to 10.2.0
Bumps [@testing-library/dom](https://github.com/testing-library/dom-testing-library) from 10.1.0 to 10.2.0.
- [Release notes](https://github.com/testing-library/dom-testing-library/releases)
- [Changelog](https://github.com/testing-library/dom-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/dom-testing-library/compare/v10.1.0...v10.2.0)

---
updated-dependencies:
- dependency-name: "@testing-library/dom"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-25 09:27:20 +02:00
dependabot[bot]
16914f20c9 build(deps): bump react-router-dom from 6.23.1 to 6.24.0
Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.23.1 to 6.24.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.24.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-25 08:36:21 +02:00
regexowl
916596d5cb test: Cleanup TargetEnvironment tests
This cleans up structure of `src/test/Components/CreateImageWizardV2/steps/TargetEnvironment`, removing the subfolders and surfacing Aws and Azure test files.

We also had two `TargetEnvironment.test.tsx` files, both testing functionality of the Image Output step. For now those were merged into one file under `ImageOutput` step and can be later renamed to `ImageOutput.test.tsx` for consistency.
2024-06-21 16:49:24 +02:00
Ondrej Ezr
4692eae454 Wizard: validate wizard with Redux Hook
Use redux hook to validate the form.
This gives us single point of contact for "is the data valid?"
while not requiring every redux action touching form data to perform validation.

It's not perfect and might be improved when using external library solving the problems we're having.
2024-06-21 14:40:41 +02:00
Sanne Raymaekers
fad7648d38 CreateImageWizardV2: recommended repositories in review table
Package groups can also come from recommended repositories.
2024-06-21 10:12:39 +02:00
Sanne Raymaekers
469585e59c CreateImageWizardV2: fix disabling recommended repository
In case there are groups selected, the recommended repository should be
disabled.
2024-06-21 10:12:39 +02:00
Sanne Raymaekers
a812d8caea CreateImageWizardV2: fix removing recommended repository
Only remove it when there's no packages or groups selected from those
repositories.
2024-06-21 10:12:39 +02:00
Sanne Raymaekers
737074eb49 CreateImageWizardV2: test included packages in group popover 2024-06-21 10:12:39 +02:00
Sanne Raymaekers
d0f52bb1d6 CreateImageWizardV2: fix pagination when search is empty 2024-06-21 10:12:39 +02:00
Sanne Raymaekers
3cb9fe0670 CreatEImageWizardV2: while searching show either pkgs or groups 2024-06-21 10:12:39 +02:00
Sanne Raymaekers
db4e80eb67 CreateImageWizardV2: add info alert to packages step
Inform users how to search for package groups.
2024-06-21 10:12:39 +02:00
Sanne Raymaekers
4f647ef6ef CreateImageWizardV2: search for groups in recommended repos 2024-06-21 10:12:39 +02:00
Sanne Raymaekers
648bd0c65b CreateImageWizardV2: add package groups to the review step 2024-06-21 10:12:39 +02:00
Sanne Raymaekers
e37782ebf6 CreateImageWizardV2: add tests for package groups 2024-06-21 10:12:39 +02:00
Sanne Raymaekers
7759c122df CreateImageWizardV2: include the package groups in the request 2024-06-21 10:12:39 +02:00
Sanne Raymaekers
3739b2b8f5 CreateImageWizardV2: package groups for custom repositories 2024-06-21 10:12:39 +02:00
Sanne Raymaekers
177e4b227c CreateImageWizardV2: search package groups in distro repositories
By prepending an `@`, users can search for package groups. A single `@`
just lists all groups.
2024-06-21 10:12:39 +02:00
Sanne Raymaekers
69367ba1d9 V2Wizard: search when distro rpms get updated 2024-06-21 10:12:39 +02:00
dependabot[bot]
cb2fc4a8b2 build(deps-dev): bump @types/uuid from 9.0.1 to 10.0.0
Bumps [@types/uuid](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/uuid) from 9.0.1 to 10.0.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/uuid)

---
updated-dependencies:
- dependency-name: "@types/uuid"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-21 09:29:53 +02:00
dependabot[bot]
bd6dbec2e0 build(deps-dev): bump eslint-plugin-jsx-a11y from 6.8.0 to 6.9.0
Bumps [eslint-plugin-jsx-a11y](https://github.com/jsx-eslint/eslint-plugin-jsx-a11y) from 6.8.0 to 6.9.0.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/compare/v6.8.0...v6.9.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-jsx-a11y
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-21 08:33:42 +02:00
regexowl
15d9474740 workflows: Replace Node 16 with Node 20
With Node 16 being EOL since 09/2023 we could replace it with Node 20 in our development checks.
2024-06-20 10:48:29 +02:00
regexowl
da1d76ad94 test: Add edit mode tests
This adds basic edit mode tests for the remaining steps.
2024-06-20 00:05:41 +02:00
Anna Vítová
d7726c30a6 fix(HMS-4310): Disable editing of Blueprint file 2024-06-19 16:04:41 +02:00
regexowl
c97665da52 V2Wizard: Hide package recommendations for CentOS
This hides the package recommendations expandable when CentOS is selected as a distribution.
2024-06-19 13:54:36 +02:00
regexowl
5b56f09e27 ESLint: Merge .js and .ts configs to one file
Since our code base is now mostly TypeScript, we can merge the configs and have a unified one.

`@typescript-eslint/no-var-requires` was temporarily disabled in webpack configs. These files will be replaced by fec.config.ts in the foreseeable future together with their ESLint override.
2024-06-19 13:13:29 +02:00
dependabot[bot]
06daa65904 build(deps): bump react-dom and @types/react-dom
Bumps [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) and [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom). These dependencies needed to be updated together.

Updates `react-dom` from 18.2.0 to 18.3.1
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/v18.3.1/packages/react-dom)

Updates `@types/react-dom` from 18.2.25 to 18.3.0
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom)

---
updated-dependencies:
- dependency-name: react-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: "@types/react-dom"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-19 12:29:59 +02:00
regexowl
0ac68864f4 Wizard: Cleanup after removing V1
This removes files that are no longer needed and uninstalls DDF dependencies.
2024-06-19 11:19:33 +02:00
dependabot[bot]
3082cdd81a build(deps-dev): bump eslint-plugin-react from 7.34.2 to 7.34.3
Bumps [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) from 7.34.2 to 7.34.3.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-react/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.34.2...v7.34.3)

---
updated-dependencies:
- dependency-name: eslint-plugin-react
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-19 10:30:27 +02:00
dependabot[bot]
fae0e777d9 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 7.13.0 to 7.13.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.13.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-19 09:49:55 +02:00
Ondrej Ezr
5fcc80d2db Wizard: Drop the WizardV1 2024-06-19 09:10:22 +02:00
Amir
54d09d636e feat(HMS-4200): remove blueprint endpoints /experimental 2024-06-18 17:29:50 +02:00
Jakub Rusz
55d56a3198 pr_check: remove resource limits for pulp
This seems to be required in order to deploy without errors.
2024-06-18 16:41:29 +02:00
dependabot[bot]
ee21685792 build(deps-dev): bump ws from 7.5.9 to 7.5.10
Bumps [ws](https://github.com/websockets/ws) from 7.5.9 to 7.5.10.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/7.5.9...7.5.10)

---
updated-dependencies:
- dependency-name: ws
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-18 09:38:55 +02:00
dependabot[bot]
82d0439b14 build(deps-dev): bump @typescript-eslint/parser from 7.13.0 to 7.13.1
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 7.13.0 to 7.13.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.13.1/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-18 09:32:54 +02:00
dependabot[bot]
aef124acc4 build(deps-dev): bump sass from 1.77.5 to 1.77.6
Bumps [sass](https://github.com/sass/dart-sass) from 1.77.5 to 1.77.6.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.77.5...1.77.6)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-18 09:26:40 +02:00
regexowl
3b699f99ce test: Update tests to reflect name changes
The target acronyms on the Review step were replaced by full names of the targets. This reflects the change in the unit tests.
2024-06-18 09:19:45 +02:00
regexowl
388069ec11 V2Wizard: Move targets to a constant
This moves mapping between target short and full names to the const to make it reusable.
2024-06-18 09:19:45 +02:00
dependabot[bot]
b09e82f492 build(deps-dev): bump @babel/core from 7.24.6 to 7.24.7
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.24.6 to 7.24.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.7/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-17 11:06:16 +02:00
dependabot[bot]
43305b3a26 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 7.12.0 to 7.13.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.13.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-17 10:14:55 +02:00
dependabot[bot]
7118412961 build(deps-dev): bump @babel/plugin-transform-runtime
Bumps [@babel/plugin-transform-runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-transform-runtime) from 7.24.6 to 7.24.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.7/packages/babel-plugin-transform-runtime)

---
updated-dependencies:
- dependency-name: "@babel/plugin-transform-runtime"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-14 09:52:08 +02:00
dependabot[bot]
e2ae2c9408 build(deps-dev): bump @testing-library/jest-dom from 6.4.5 to 6.4.6
Bumps [@testing-library/jest-dom](https://github.com/testing-library/jest-dom) from 6.4.5 to 6.4.6.
- [Release notes](https://github.com/testing-library/jest-dom/releases)
- [Changelog](https://github.com/testing-library/jest-dom/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/jest-dom/compare/v6.4.5...v6.4.6)

---
updated-dependencies:
- dependency-name: "@testing-library/jest-dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-14 08:40:01 +02:00
dependabot[bot]
9a464e416b build(deps-dev): bump @typescript-eslint/parser from 7.12.0 to 7.13.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 7.12.0 to 7.13.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.13.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-13 08:41:04 +02:00
Jakub Rusz
918a7da9e8 templates/iqe: add parameter to disable parallel runs
We don't have any parallel test cases yet.
2024-06-13 08:33:11 +02:00
Jakub Rusz
be814dab6f Packages: Add ouiaIds
Need some ouiaIds for this step to simplify testing.
2024-06-12 16:27:12 +02:00
regexowl
a2ad644fb9 test: Edit mode tests for repositories
This adds a new 'repositories' fixture to the blueprints as was done for 'oscap'.

Newly added unit tests check that repositories get parsed from and back to request correctly and that when removing previously used repositories an 'Are you sure?' modal pops up.
2024-06-12 16:05:30 +02:00
regexowl
3d9e26469e test: Add test for CentOS 8 Stream alert
This adds a new test for CentOS 8 Stream alert and updates the fixtures accordingly.
2024-06-12 15:28:59 +02:00
regexowl
e0b435cd0a ImagesTable: Add alert for CentOS Stream 8 blueprints
This adds an alert about CentOS Stream 8 being EOL.
2024-06-12 15:28:59 +02:00
Ondřej Budai
642cb10036 drop centos stream 8
CentOS Stream 8 is EOL, thus we should no longer offer it in the
service, because it can pose a security risk.

See https://blog.centos.org/2023/04/end-dates-are-coming-for-centos-stream-8-and-centos-linux-7/
2024-06-12 10:07:33 +02:00
Jakub Rusz
fa12ff7588 Revert "pr_check: change --ref-env to insights-production"
This reverts commit e85789f58d.
It actually makes more sense to use insights-stage
2024-06-12 09:07:39 +02:00
dependabot[bot]
b0ee935215 build(deps-dev): bump @babel/eslint-parser from 7.24.6 to 7.24.7
Bumps [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) from 7.24.6 to 7.24.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.7/eslint/babel-eslint-parser)

---
updated-dependencies:
- dependency-name: "@babel/eslint-parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-12 09:00:36 +02:00
dependabot[bot]
b30f5c2458 build(deps-dev): bump sass from 1.77.4 to 1.77.5
Bumps [sass](https://github.com/sass/dart-sass) from 1.77.4 to 1.77.5.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.77.4...1.77.5)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-12 08:54:21 +02:00
dependabot[bot]
f8cd84577a build(deps-dev): bump braces from 3.0.2 to 3.0.3
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-11 09:18:53 +02:00
dependabot[bot]
961cebc582 build(deps-dev): bump @babel/preset-typescript from 7.24.1 to 7.24.7
Bumps [@babel/preset-typescript](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-typescript) from 7.24.1 to 7.24.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.7/packages/babel-preset-typescript)

---
updated-dependencies:
- dependency-name: "@babel/preset-typescript"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-11 09:11:52 +02:00
dependabot[bot]
677df7f9ee build(deps-dev): bump @babel/preset-env from 7.24.6 to 7.24.7
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.24.6 to 7.24.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.7/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-11 09:06:01 +02:00
dependabot[bot]
9f779f4c43 build(deps-dev): bump css-loader from 7.1.1 to 7.1.2
Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 7.1.1 to 7.1.2.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/css-loader/compare/v7.1.1...v7.1.2)

---
updated-dependencies:
- dependency-name: css-loader
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-10 10:00:11 +02:00
dependabot[bot]
26178b5c07 build(deps-dev): bump uuid from 9.0.1 to 10.0.0
Bumps [uuid](https://github.com/uuidjs/uuid) from 9.0.1 to 10.0.0.
- [Changelog](https://github.com/uuidjs/uuid/blob/main/CHANGELOG.md)
- [Commits](https://github.com/uuidjs/uuid/compare/v9.0.1...v10.0.0)

---
updated-dependencies:
- dependency-name: uuid
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-10 08:35:19 +02:00
Akhil Jha
12aeae7c85 Add tag 2024-06-07 10:10:06 +02:00
Akhil Jha
bd009c72e8 ci(HMS-3962): Update Integration test image for IQE 2024-06-07 10:10:06 +02:00
Jakub Rusz
4e4cecae22 templates/iqe: Add downloads mount
We want to share downloaded files between the iqe and selenium
containers.
2024-06-07 09:45:11 +02:00
dependabot[bot]
878d5adb94 build(deps-dev): bump sass from 1.76.0 to 1.77.4
Bumps [sass](https://github.com/sass/dart-sass) from 1.76.0 to 1.77.4.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.76.0...1.77.4)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-07 09:25:51 +02:00
dependabot[bot]
36703abe32 build(deps-dev): bump eslint-plugin-react from 7.34.1 to 7.34.2
Bumps [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) from 7.34.1 to 7.34.2.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-react/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.34.1...v7.34.2)

---
updated-dependencies:
- dependency-name: eslint-plugin-react
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-07 09:14:14 +02:00
regexowl
a23cc9321b test: Update tests after adding SaveAndBuild modal
This updates tests with a `openAndDismissSaveAndBuildModal` function that handles closing the SaveAndBuild modal after clicking on Create blueprint for the first time.
2024-06-06 16:58:59 +02:00
regexowl
b8f45ff883 V2Wizard: Remove line breaks on Review step
When all the expandables are open by default the extra line breaks looked a bit weird so this removes them.
2024-06-06 16:58:59 +02:00
regexowl
39a6c93f6b V2Wizard: Add modal for Save and build images
When the button "Create blueprint" is clicked for the first time, a modal about "Save and build" functionality is opened.
2024-06-06 16:58:59 +02:00
regexowl
5b260a5d26 V2Wizard: Make expandables open and add Revisit button
This makes all expandables be open by default and adds a Revisit button to each of the expandable headers.
2024-06-06 16:58:59 +02:00
regexowl
b7f7f0a073 V2Wizard: Add blueprint name and description to the Review step 2024-06-06 16:58:59 +02:00
regexowl
ca3baea7d6 LandingPage: Make buttons disabled on Immutable
This makes the "Create blueprint" button and the "Import" button disabled when the Immutable tab is selected.
2024-06-06 13:47:30 +02:00
dependabot[bot]
d43c6ac975 build(deps-dev): bump @testing-library/react from 15.0.7 to 16.0.0
Bumps [@testing-library/react](https://github.com/testing-library/react-testing-library) from 15.0.7 to 16.0.0.
- [Release notes](https://github.com/testing-library/react-testing-library/releases)
- [Changelog](https://github.com/testing-library/react-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/react-testing-library/compare/v15.0.7...v16.0.0)

---
updated-dependencies:
- dependency-name: "@testing-library/react"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-06 09:39:54 +02:00
regexowl
054dc42842 V2Wizard: Add descriptions to package recommendations
After the list of package recommendations is fetched, each of the packages gets queried as a searchTerm against the list of distribution repositories.

This fetched the summary of the package which can be used as a description.
2024-06-06 10:33:26 +03:00
regexowl
38d6224675 V2Wizard: Deduplicate RH repository definition
This moves the RH repository used in "Package repository" column to an exportable const.
2024-06-06 10:33:26 +03:00
dependabot[bot]
66c88da4da build(deps-dev): bump @babel/preset-react from 7.24.1 to 7.24.7
Bumps [@babel/preset-react](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-react) from 7.24.1 to 7.24.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.7/packages/babel-preset-react)

---
updated-dependencies:
- dependency-name: "@babel/preset-react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-06 08:45:44 +02:00
regexowl
45a42ce549 src: Migrate remaining files to TypeScript
This migrates remaining JavaScript files to TypeScript and updates imports.
2024-06-06 08:38:41 +02:00
regexowl
67138ad99a V2Wizard: Add tests for WSL/OpenSCAP behaviour
This adds two new tests:
- test that alert is rendered and OpenSCAP dropdown is disabled for WSL target only
- test that alert is rendered, but OpenSCAP dropdown is still enabled for target list that includes WSL
2024-06-05 17:04:14 +02:00
regexowl
dd87459b7a V2Wizard: Disable OpenSCAP for WSL
This adds an alert about OpenSCAP being incompatible with WSL when a WSL target is selected.

In a case of only WSL being selected as a target the OpenSCAP dropdown gets disabled.
2024-06-05 17:04:14 +02:00
regexowl
f48bfd7c21 V2Wizard: Make useHas<target>TargetOnly hook re-usable
This refines `useHasIsoTargetOnly` hook into `useHasSpecificTargetOnly` hook which takes an image type as an argument and can be re-used for non-iso targets as well.
2024-06-05 17:04:14 +02:00
Sanne Raymaekers
a8112410b6 V2Wizard: add alert on snapshot step
Inform users that the snapshots only apply to RHEL content for now.
2024-06-05 14:55:35 +02:00
regexowl
160381908a V2Wizard: Add "clear" to package search
This adds a "clear" button to the package search input. The button appears only when there is already a searchTerm in the input.
2024-06-05 13:56:47 +03:00
dependabot[bot]
603362972b build(deps): bump @scalprum/react-core from 0.7.1 to 0.8.0
Bumps [@scalprum/react-core](https://github.com/scalprum/scaffloding) from 0.7.1 to 0.8.0.
- [Release notes](https://github.com/scalprum/scaffloding/releases)
- [Changelog](https://github.com/scalprum/scaffolding/blob/main/release.config.js)
- [Commits](https://github.com/scalprum/scaffloding/compare/@scalprum/react-core-0.7.1...@scalprum/react-core-0.8.0)

---
updated-dependencies:
- dependency-name: "@scalprum/react-core"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-05 10:47:15 +02:00
dependabot[bot]
463e713961 build(deps-dev): bump @typescript-eslint/parser from 7.8.0 to 7.12.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 7.8.0 to 7.12.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.12.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-05 10:32:37 +02:00
Ondrej Ezr
4ee6d10bcb api: Add extra header to distinguish UI requests 2024-06-05 10:15:38 +03:00
regexowl
f0bcda7c07 test: Fix 'mockPackagesResults' not found
When switching to using content sources for distro packages an old fixture was left in the handlers. This fixes the issue.
2024-06-04 18:22:07 +03:00
regexowl
7e02a3adad LandingPage/ImagesTable: Shrink headings
This bumps the "Blueprints" and "All images" headings from 2XL to XL as per mocks.
2024-06-04 18:02:19 +03:00
dependabot[bot]
594ef0f6a7 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 7.8.0 to 7.12.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.12.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-04 15:30:55 +02:00
dependabot[bot]
b09826e98f build(deps): bump @redhat-cloud-services/frontend-components
Bumps [@redhat-cloud-services/frontend-components](https://github.com/RedHatInsights/frontend-components) from 4.2.10 to 4.2.11.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-04 14:52:36 +02:00
Andrew Dewar
5dc4ecb63f HMS-4024: Update repositories step 2024-06-04 14:05:44 +02:00
Jakub Rusz
e85789f58d pr_check: change --ref-env to insights-production
As that's our target eventually and it fixes issues with
pulp/content-sources
2024-06-04 13:10:30 +02:00
dependabot[bot]
b415e52ea2 build(deps): bump @patternfly/react-code-editor from 5.3.0 to 5.3.3
Bumps [@patternfly/react-code-editor](https://github.com/patternfly/patternfly-react) from 5.3.0 to 5.3.3.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-code-editor@5.3.0...@patternfly/react-code-editor@5.3.3)

---
updated-dependencies:
- dependency-name: "@patternfly/react-code-editor"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-03 10:52:58 +02:00
dependabot[bot]
52d31c110b build(deps-dev): bump @babel/core from 7.24.5 to 7.24.6
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.24.5 to 7.24.6.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.6/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-03 10:37:00 +02:00
dependabot[bot]
3fd1963cbf build(deps-dev): bump @babel/preset-env from 7.24.5 to 7.24.6
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.24.5 to 7.24.6.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.6/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-30 12:13:04 +02:00
dependabot[bot]
d3cbd34ba2 build(deps): bump @reduxjs/toolkit from 2.2.3 to 2.2.5
Bumps [@reduxjs/toolkit](https://github.com/reduxjs/redux-toolkit) from 2.2.3 to 2.2.5.
- [Release notes](https://github.com/reduxjs/redux-toolkit/releases)
- [Commits](https://github.com/reduxjs/redux-toolkit/compare/v2.2.3...v2.2.5)

---
updated-dependencies:
- dependency-name: "@reduxjs/toolkit"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-30 12:06:55 +02:00
Andrew Dewar
05080a3e84 V2Wizard: Fix pagination on Packages step (useMemo) 2024-05-29 10:22:16 +02:00
dependabot[bot]
4d752105c5 build(deps-dev): bump @babel/plugin-transform-runtime
Bumps [@babel/plugin-transform-runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-transform-runtime) from 7.24.3 to 7.24.6.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.6/packages/babel-plugin-transform-runtime)

---
updated-dependencies:
- dependency-name: "@babel/plugin-transform-runtime"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-29 09:25:05 +02:00
dependabot[bot]
8b2e230b51 build(deps-dev): bump chart.js from 4.4.2 to 4.4.3
Bumps [chart.js](https://github.com/chartjs/Chart.js) from 4.4.2 to 4.4.3.
- [Release notes](https://github.com/chartjs/Chart.js/releases)
- [Commits](https://github.com/chartjs/Chart.js/compare/v4.4.2...v4.4.3)

---
updated-dependencies:
- dependency-name: chart.js
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-29 08:46:22 +02:00
Michal Gold
0e71489a9f add changes at schema to the main branch <HMS-4066> 2024-05-28 14:34:43 +03:00
dependabot[bot]
64c590c0db build(deps-dev): bump @types/react from 18.3.1 to 18.3.3
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.3.1 to 18.3.3.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-28 09:03:16 +02:00
dependabot[bot]
454f44327e build(deps-dev): bump @babel/eslint-parser from 7.24.5 to 7.24.6
Bumps [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) from 7.24.5 to 7.24.6.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.6/eslint/babel-eslint-parser)

---
updated-dependencies:
- dependency-name: "@babel/eslint-parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-28 08:56:55 +02:00
Sanne Raymaekers
2a7321247a src: add rhel-8.10 2024-05-27 16:21:54 +02:00
dependabot[bot]
896ce9e908 Bump @unleash/proxy-client-react from 4.2.2 to 4.2.4
Bumps [@unleash/proxy-client-react](https://github.com/Unleash/unleash-proxy-react) from 4.2.2 to 4.2.4.
- [Release notes](https://github.com/Unleash/unleash-proxy-react/releases)
- [Changelog](https://github.com/Unleash/proxy-client-react/blob/main/Changelog.md)
- [Commits](https://github.com/Unleash/unleash-proxy-react/compare/v4.2.2...v4.2.4)

---
updated-dependencies:
- dependency-name: "@unleash/proxy-client-react"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-27 11:24:51 +02:00
Florian Schüller
77fd8d6b45 Status.tsx: show as many different error types as possible (HMS-1442) 2024-05-27 11:11:17 +02:00
Amir
913a7d6406 WizardV2: fix google account typo 2024-05-27 09:42:13 +02:00
dependabot[bot]
79a9455371 Bump @redhat-cloud-services/frontend-components from 4.2.8 to 4.2.10
Bumps [@redhat-cloud-services/frontend-components](https://github.com/RedHatInsights/frontend-components) from 4.2.8 to 4.2.10.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-27 08:31:38 +02:00
Ondrej Ezr
4182c00d4a WizardV2: enable V2 by default on preview and ephemeral 2024-05-23 11:18:58 +02:00
dependabot[bot]
702f707bfd Bump react-router-dom from 6.23.0 to 6.23.1
Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.23.0 to 6.23.1.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.23.1/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-23 09:55:37 +02:00
dependabot[bot]
495e55e28f Bump @testing-library/react from 15.0.6 to 15.0.7
Bumps [@testing-library/react](https://github.com/testing-library/react-testing-library) from 15.0.6 to 15.0.7.
- [Release notes](https://github.com/testing-library/react-testing-library/releases)
- [Changelog](https://github.com/testing-library/react-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/react-testing-library/compare/v15.0.6...v15.0.7)

---
updated-dependencies:
- dependency-name: "@testing-library/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-23 09:07:27 +02:00
regexowl
12fc6b9841 V2Wizard: Set pkg recommendations expandable to open by default
This makes the pkg recommendations expandable open by default and updates the tests accordingly.
2024-05-22 16:48:11 +02:00
Anna Vítová
3018d64df6 Blueprints: Add import Wizard (HMS-3690) 2024-05-22 16:08:06 +02:00
Sanne Raymaekers
0e74de53fa test: only test against content sources 2024-05-22 10:11:51 +02:00
Sanne Raymaekers
9b03fa6882 V2Wizard: Use content-sources for distro package search
This will make it easier to search for distro groups, as those are only
available for searching in the content-sources api.
2024-05-22 10:11:51 +02:00
dependabot[bot]
5bc5f0ed8b ---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-utilities"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-22 08:46:44 +02:00
dependabot[bot]
f842e12e2d ---
updated-dependencies:
- dependency-name: "@patternfly/react-icons"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-22 08:39:26 +02:00
Michal Gold
8092717197 WizardV2: add 'some' word to image table toolbar title 2024-05-21 14:55:20 +02:00
regexowl
38fe6d567f Blueprints: Fix snapshots + latest release
Previously created blueprints didn't take into account what the current latest RHEL release is and built the specific minor release that was included in the blueprint. This should fix the bug and also fix snapshots.
2024-05-21 13:55:54 +02:00
Sanne Raymaekers
967b603e50 src/constants: Use major rhel distros by default
The tradeoff is not being able to discern between a minor version and a
major version in the 2 weeks post GA if the images were built using the
UI, but I think the tradeoff is worth it. The frontend will never need
updating to switch to a new version.
2024-05-21 11:24:49 +02:00
dependabot[bot]
5559c30c65 build(deps-dev): bump jest-fail-on-console from 3.2.0 to 3.3.0
Bumps [jest-fail-on-console](https://github.com/ValentinH/jest-fail-on-console) from 3.2.0 to 3.3.0.
- [Release notes](https://github.com/ValentinH/jest-fail-on-console/releases)
- [Commits](https://github.com/ValentinH/jest-fail-on-console/compare/v3.2.0...v3.3.0)

---
updated-dependencies:
- dependency-name: jest-fail-on-console
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-21 10:40:09 +02:00
dependabot[bot]
93600d321a build(deps-dev): bump @babel/core from 7.24.4 to 7.24.5
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.24.4 to 7.24.5.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.5/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-21 09:57:16 +02:00
Muslimjon
8e278108ab fix(RHINENG-9387): update page titles 2024-05-13 12:01:05 +02:00
Andrew Dewar
aecc84bd34 Fixes wizard min-height 2024-05-13 11:47:51 +02:00
Amir
1eb5066967 feat(HMS-4116): support shell,yaml and python in first boot editor 2024-05-13 11:41:17 +02:00
dependabot[bot]
7f1a86c8bc build(deps): bump react-redux from 9.1.1 to 9.1.2
Bumps [react-redux](https://github.com/reduxjs/react-redux) from 9.1.1 to 9.1.2.
- [Release notes](https://github.com/reduxjs/react-redux/releases)
- [Changelog](https://github.com/reduxjs/react-redux/blob/master/CHANGELOG.md)
- [Commits](https://github.com/reduxjs/react-redux/compare/v9.1.1...v9.1.2)

---
updated-dependencies:
- dependency-name: react-redux
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-13 08:48:07 +02:00
Andrew Dewar
c61fda02b1 Bug - V2 Wizard: trim searchterm to prevent spaces from not producing results 2024-05-08 10:52:23 +02:00
dependabot[bot]
cd1aa238f6 build(deps): bump @patternfly/patternfly from 5.3.0 to 5.3.1
Bumps [@patternfly/patternfly](https://github.com/patternfly/patternfly) from 5.3.0 to 5.3.1.
- [Release notes](https://github.com/patternfly/patternfly/releases)
- [Changelog](https://github.com/patternfly/patternfly/blob/main/release.config.js)
- [Commits](https://github.com/patternfly/patternfly/compare/v5.3.0...patch-v5.3.1)

---
updated-dependencies:
- dependency-name: "@patternfly/patternfly"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-08 09:23:51 +02:00
dependabot[bot]
783868ff4d build(deps-dev): bump @testing-library/jest-dom from 6.4.2 to 6.4.5
Bumps [@testing-library/jest-dom](https://github.com/testing-library/jest-dom) from 6.4.2 to 6.4.5.
- [Release notes](https://github.com/testing-library/jest-dom/releases)
- [Changelog](https://github.com/testing-library/jest-dom/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/jest-dom/compare/v6.4.2...v6.4.5)

---
updated-dependencies:
- dependency-name: "@testing-library/jest-dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-08 09:11:34 +02:00
regexowl
8a25ec66f3 src: Fix "Table headers must have an accessible name" warning
The tests output contained following warning:

```
console.warn
    Th: Table headers must have an accessible name. If the Th is intended to be visually empty, pass in screenReaderText. If the Th contains only non-text, interactive content such as a checkbox or expand toggle, pass in an aria-label.
```

This fixes the warning by adding an `aria-label` to every empty table heading cell.
2024-05-07 18:20:08 +02:00
regexowl
7ac505fc89 V2Wizard: Make e-mail validation case insensitive
Fixes #1554

Case validation for the e-mail field was previously case sensitive, disallowing uppercase letters. This updates the validation to accept both lower and upper case letters.
2024-05-07 16:47:35 +02:00
regexowl
a6ff016662 LandingPage / ImagesTable: Set max width for the ImagesTable
Fixes #933

This applies `isWidthLimited` to the section containing ImagesTable, ensuring the table doesn't get stretched out too much.

The were also two sets of empty tags around ImagesTable return, this removes one of them.
2024-05-07 16:40:56 +02:00
dependabot[bot]
de96902f94 build(deps): bump @redhat-cloud-services/frontend-components
Bumps [@redhat-cloud-services/frontend-components](https://github.com/RedHatInsights/frontend-components) from 4.2.7 to 4.2.8.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-07 08:53:56 +02:00
dependabot[bot]
1e55dfed46 build(deps): bump @patternfly/react-core from 5.3.0 to 5.3.3
Bumps [@patternfly/react-core](https://github.com/patternfly/patternfly-react) from 5.3.0 to 5.3.3.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@5.3.0...@patternfly/react-core@5.3.3)

---
updated-dependencies:
- dependency-name: "@patternfly/react-core"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-07 08:47:00 +02:00
regexowl
b9aa1c786a V2Wizard: Fix repo/description in review table of package on Edit
Previously the repository in the table of packages on the Review step defaulted to "EPEL". This expands the condition to take into account packages added on Edit.

Description is handled in the same way.

The "Not available" text is consistent with how the packages table looks on the Packages step for pkgs populated from the request. A popover with more information was added also to the review table as it contains explanation about the "Not available" text.
2024-05-06 15:15:24 +02:00
Amir
038f6f5ff5 V2Wizard: Hide first boot from review step 2024-05-06 14:27:58 +02:00
dependabot[bot]
824f30d4c5 build(deps-dev): bump @babel/preset-env from 7.24.4 to 7.24.5
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.24.4 to 7.24.5.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.5/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-06 08:32:50 +02:00
dependabot[bot]
c78ada0f41 build(deps): bump @patternfly/react-table from 5.2.4 to 5.3.3
Bumps [@patternfly/react-table](https://github.com/patternfly/patternfly-react) from 5.2.4 to 5.3.3.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-table@5.2.4...@patternfly/react-table@5.3.3)

---
updated-dependencies:
- dependency-name: "@patternfly/react-table"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-06 08:25:10 +02:00
regexowl
f37bd91a9a test: Update tests after TypeScript migration
This resolves problems caused by TypeScript migration.
2024-05-03 16:36:26 +02:00
regexowl
f2f64945c1 test: Migrate remaining files to TypeScript
This migrates remaining JavaScript file to TypeScript.
2024-05-03 16:36:26 +02:00
regexowl
1bf459ba58 Components: Migrate remaining files to TypeScript
Remaining JavaScript files were migrated to TypeScript. Files that didn't include JSX were renamed from `.tsx` to `.ts`.
2024-05-03 16:36:26 +02:00
regexowl
813c06c5bd Utilities: Migrate remaining files to TypeScript
This migrates remaining JavaScript files in Utilities to TypeScript.
2024-05-03 15:04:45 +02:00
regexowl
6415664620 test: Replace 'rhel-94' with a constant
This replaces 'rhel-94' with a RHEL_9 constant in the tests.
2024-05-03 08:48:00 +02:00
dependabot[bot]
5f8b33e154 build(deps-dev): bump @testing-library/react from 15.0.5 to 15.0.6
Bumps [@testing-library/react](https://github.com/testing-library/react-testing-library) from 15.0.5 to 15.0.6.
- [Release notes](https://github.com/testing-library/react-testing-library/releases)
- [Changelog](https://github.com/testing-library/react-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/react-testing-library/compare/v15.0.5...v15.0.6)

---
updated-dependencies:
- dependency-name: "@testing-library/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-03 08:28:15 +02:00
dependabot[bot]
8be0de79c4 build(deps-dev): bump sass from 1.75.0 to 1.76.0
Bumps [sass](https://github.com/sass/dart-sass) from 1.75.0 to 1.76.0.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.75.0...1.76.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-03 08:21:38 +02:00
regexowl
034843a708 src: Add rhel-94
This adds rhel94.
2024-05-02 16:44:33 +02:00
Amir
6f9c4f3864 feat(HMS-3582): add first boot step to wizard 2024-05-02 16:35:26 +02:00
lucasgarfield
c88a0323f2 V2 Wizard: Expose OCI images in stable 2024-05-02 14:38:21 +02:00
regexowl
876eb3bdf3 scripts: Run parts of api script in correct order
This ensures `api:pull` and `api:generate` run in correct order when running `npm run api`.
2024-05-02 14:23:05 +02:00
Andrew Dewar
ee81385626 Add comment to css change 2024-05-02 15:17:08 +03:00
Andrew Dewar
caa3847990 Update repository modal funcitonality 2024-05-02 15:17:08 +03:00
Andrew Dewar
f9aae48dd1 Wizard V2: Packages refactor, recommendations fix. 2024-05-02 15:17:08 +03:00
lucasgarfield
8271e6d159 LandingPage: Update 'new' alert for blueprints to support quickstarts 2024-05-02 12:35:25 +02:00
Florian Schüller
7fa4c2a927 CreateImageWizard/Repositories: fix description if selected but disabled 2024-05-02 12:09:49 +02:00
Florian Schüller
8ac3fe5409 CreateImageWizard/Repositories: show hint why a repo is disabled 2024-05-02 12:09:49 +02:00
dependabot[bot]
1511b3f232 build(deps-dev): bump @typescript-eslint/parser from 7.7.1 to 7.8.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 7.7.1 to 7.8.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.8.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-02 08:49:32 +02:00
dependabot[bot]
fd94cde4af build(deps-dev): bump @testing-library/dom from 10.0.0 to 10.1.0
Bumps [@testing-library/dom](https://github.com/testing-library/dom-testing-library) from 10.0.0 to 10.1.0.
- [Release notes](https://github.com/testing-library/dom-testing-library/releases)
- [Changelog](https://github.com/testing-library/dom-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/dom-testing-library/compare/v10.0.0...v10.1.0)

---
updated-dependencies:
- dependency-name: "@testing-library/dom"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-02 08:43:16 +02:00
regexowl
0ff0ec9758 V2Wizard: Expandable to alert for disabled EPEL repo
This converts previously used expendable into an info alert.
2024-05-01 19:54:06 +02:00
regexowl
147841b095 V2Wizard: Calculate image size on Review step
This calculates and renders the minimum image size on the Review step.
2024-05-01 19:47:41 +02:00
regexowl
df9ec1499d V2Wizard: Fix FSC units on Edit
This updates the logic of parsing bytesize into size/unit pair.

Currently 'GiB' is set as a default which causes problem with smaller partitions on Edit.

A validation for the min_size is in place and the rule is that the size cannot be smaller than 0 of a given unit. If there was a partition with smaller size in KiB it will break the rule when converted to GiB.
2024-05-01 19:47:41 +02:00
lucasgarfield
13d35a834e BlueprintTable: Invalidate tags on deleteBlueprint
Invalidates Composes and ComposeBlueprints tags upon deleting a
blueprint so that composes are re-fetched and the table is updated
appropriately.

Previously, a deleted blueprints composes would still show in the table
until the page was refreshed.
2024-05-01 09:49:22 +02:00
dependabot[bot]
726cd328c5 build(deps-dev): bump @patternfly/react-icons from 5.2.1 to 5.3.1
Bumps [@patternfly/react-icons](https://github.com/patternfly/patternfly-react) from 5.2.1 to 5.3.1.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-icons@5.2.1...@patternfly/react-icons@5.3.1)

---
updated-dependencies:
- dependency-name: "@patternfly/react-icons"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-01 08:58:04 +02:00
dependabot[bot]
7a97634d6f build(deps-dev): bump @babel/eslint-parser from 7.24.1 to 7.24.5
Bumps [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) from 7.24.1 to 7.24.5.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.5/eslint/babel-eslint-parser)

---
updated-dependencies:
- dependency-name: "@babel/eslint-parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-01 08:51:39 +02:00
lucasgarfield
f14b90cf9a V2 Wizard: Disable snapshotting in prod and stage stable
It will be better to keep the stable branches in sync as much as
possible. If snapshotting is only ready for prod-preview, we should only
expose it in stage-preview.
2024-04-30 17:13:10 +02:00
Andrew Dewar
547436c177 Wizard V2: Prevents snapshot step in prod-stable. 2024-04-30 17:13:10 +02:00
Ondrej Ezr
1b35b3f675 experimental: Allow switching experimental on in stable 2024-04-30 16:53:44 +02:00
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
dependabot[bot]
275e1d7163 build(deps): bump react and @types/react
Bumps [react](https://github.com/facebook/react/tree/HEAD/packages/react) and [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). These dependencies needed to be updated together.

Updates `react` from 18.3.0 to 18.3.1
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/v18.3.1/packages/react)

Updates `@types/react` from 18.3.0 to 18.3.1
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: react
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-30 09:00:33 +02:00
dependabot[bot]
df43676e1e build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 7.7.1 to 7.8.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.8.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-30 08:53:40 +02:00
dependabot[bot]
b6e46b22bb build(deps-dev): bump eslint-plugin-react-hooks from 4.6.0 to 4.6.2
Bumps [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) from 4.6.0 to 4.6.2.
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/HEAD/packages/eslint-plugin-react-hooks)

---
updated-dependencies:
- dependency-name: eslint-plugin-react-hooks
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-30 08:47:01 +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
854c2b2deb devDeps: Bump @testing-library/dom and @testing-library/react
This bumps:
- @testing-library/dom from 9.3.4 to 10.0.0
- @testing-library/react from 14.2.2 to 15.0.5
2024-04-29 16:15:00 +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
dependabot[bot]
e76b0578e5 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 7.7.0 to 7.7.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.7.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-29 09:33:41 +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
dependabot[bot]
c9274c86fa build(deps): bump react and @types/react
Bumps [react](https://github.com/facebook/react/tree/HEAD/packages/react) and [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). These dependencies needed to be updated together.

Updates `react` from 18.2.0 to 18.3.0
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/HEAD/packages/react)

Updates `@types/react` from 18.2.79 to 18.3.0
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: react
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-26 08:34:49 +02:00
Andrew Dewar
3231b324f0 HMS-3796: Add snapshot date selection to wizard 2024-04-25 14:45:50 +02:00
dependabot[bot]
a97b4d082d build(deps-dev): bump eslint-plugin-testing-library from 6.2.0 to 6.2.2
Bumps [eslint-plugin-testing-library](https://github.com/testing-library/eslint-plugin-testing-library) from 6.2.0 to 6.2.2.
- [Release notes](https://github.com/testing-library/eslint-plugin-testing-library/releases)
- [Changelog](https://github.com/testing-library/eslint-plugin-testing-library/blob/main/.releaserc.json)
- [Commits](https://github.com/testing-library/eslint-plugin-testing-library/compare/v6.2.0...v6.2.2)

---
updated-dependencies:
- dependency-name: eslint-plugin-testing-library
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-25 12:37:00 +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
dependabot[bot]
6567e8f8fd build(deps): bump react-router-dom from 6.22.3 to 6.23.0
Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.22.3 to 6.23.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.23.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-24 08:57:45 +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
dependabot[bot]
ff44e5550e build(deps-dev): bump @typescript-eslint/parser from 7.6.0 to 7.7.1
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 7.6.0 to 7.7.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.7.1/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-23 10:18:38 +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
dependabot[bot]
f9fcbf8cdf build(deps-dev): bump eslint-plugin-jest-dom from 5.2.0 to 5.4.0
Bumps [eslint-plugin-jest-dom](https://github.com/testing-library/eslint-plugin-jest-dom) from 5.2.0 to 5.4.0.
- [Release notes](https://github.com/testing-library/eslint-plugin-jest-dom/releases)
- [Commits](https://github.com/testing-library/eslint-plugin-jest-dom/compare/v5.2.0...v5.4.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-jest-dom
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-23 09:21:17 +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
regexowl
9f04b4f5e4 V2Wizard: Update save button
This removes the second "Save" from a save button on Review step.
2024-04-22 13:37:40 +02:00
dependabot[bot]
9fa5369d41 build(deps): bump @redhat-cloud-services/frontend-components
Bumps [@redhat-cloud-services/frontend-components](https://github.com/RedHatInsights/frontend-components) from 4.2.5 to 4.2.7.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-22 09:16:33 +02:00
dependabot[bot]
922a7c5a1d build(deps): bump react-redux from 9.1.0 to 9.1.1
Bumps [react-redux](https://github.com/reduxjs/react-redux) from 9.1.0 to 9.1.1.
- [Release notes](https://github.com/reduxjs/react-redux/releases)
- [Changelog](https://github.com/reduxjs/react-redux/blob/master/CHANGELOG.md)
- [Commits](https://github.com/reduxjs/react-redux/compare/v9.1.0...v9.1.1)

---
updated-dependencies:
- dependency-name: react-redux
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-22 09:10:50 +02:00
regexowl
13c21d0eff V2Wizard: Update repo removal alert and modal
This updates alert and modal based on UX feedback.
2024-04-19 16:26:27 +02:00
regexowl
250f84ae9d V2Wizard: Add alert when removing repos in Edit mode
When in Edit mode an alert is displayed on the Repository step warning users, that removing repository and leaving packages from it added is not recommended.

A modal pops up when deselecting a repository to make user aware they may be breaking their blueprint.
2024-04-19 14:37:25 +02:00
regexowl
bd2860890a V2Wizard: Add wizardMode to the state
This adds a new field called `wizardMode` to the state. This field can have two possible values: `create` and `edit` and it indicates whether the Wizard was opened in Create or Edit mode.
2024-04-19 14:37:25 +02:00
regexowl
2fa2c0efa6 V2Wizard: Add recommended repositories to compose request
This adds recommended repositories to the custom and payload repositories in the compose request.
2024-04-19 14:06:43 +02:00
dependabot[bot]
5f6f6f42ed build(deps): bump @patternfly/react-core from 5.2.3 to 5.3.0
Bumps [@patternfly/react-core](https://github.com/patternfly/patternfly-react) from 5.2.3 to 5.3.0.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@5.2.3...@patternfly/react-core@5.3.0)

---
updated-dependencies:
- dependency-name: "@patternfly/react-core"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-19 08:41:31 +02:00
dependabot[bot]
b3696d6cdd build(deps): bump @patternfly/patternfly from 5.2.1 to 5.3.0
Bumps [@patternfly/patternfly](https://github.com/patternfly/patternfly) from 5.2.1 to 5.3.0.
- [Release notes](https://github.com/patternfly/patternfly/releases)
- [Changelog](https://github.com/patternfly/patternfly/blob/main/release.config.js)
- [Commits](https://github.com/patternfly/patternfly/compare/patch-v5.2.1...v5.3.0)

---
updated-dependencies:
- dependency-name: "@patternfly/patternfly"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-19 07:59:11 +02:00
Amir
bac8e1e57f V2Wizard: add GCP target full test coverage 2024-04-18 18:51:40 +02:00
regexowl
c56a011443 V2Wizard: Select a repository when added from recommendations
This selects a repository on the Custom repositories step when it's added on the Packages step from the recommendations.

The check box is also disabled as removing the repository would have to trigger removal of the added packages as well.

And expandable with explanation about the disabled check box was added.
2024-04-18 18:04:48 +02:00
regexowl
305d4d9768 ImagesTable: Update column headers
This updates the name of column headers as per recent mocks.
2024-04-18 17:54:37 +02:00
Ondrej Ezr
709ae39d23 WizardV2: Validate steps through redux state
Store validation status in redux state.
This is bit complex on the redux side, but pretty simple on the components.
It allows for reuse of the validation state instead of revalidating wherever needed.
2024-04-18 10:01:06 +02:00
dependabot[bot]
be5311e66a build(deps-dev): bump sass-loader from 14.2.0 to 14.2.1
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 14.2.0 to 14.2.1.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v14.2.0...v14.2.1)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-18 08:50:24 +02:00
regexowl
a7962258e8 LandingPage: Remove "New" label from Immutable tab
This removes "New" label from the Immutable tab.
2024-04-17 18:38:48 +02:00
regexowl
dbeee5d066 V2Wizard: Differentiate between Create and Edit mode on Review step
This renames actions on the primary button on Review step for the Create mode so it's clear whether you're creating a blueprint from a scratch or saving changes to an already existing blueprint.
2024-04-17 18:46:49 +03:00
Ondrej Ezr
04131c4823 Blueprints: selected Blueprint Empty state action
Add action in the Images Table empty state when Blueprint is selected.
Change the icon to plus as it better underlines the action needed to remedy.
2024-04-17 16:03:05 +02:00
dependabot[bot]
8e9f00da20 build(deps-dev): bump sass from 1.74.1 to 1.75.0
Bumps [sass](https://github.com/sass/dart-sass) from 1.74.1 to 1.75.0.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.74.1...1.75.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-17 08:41:27 +02:00
dependabot[bot]
acfc9dae5e build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 7.6.0 to 7.7.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.7.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-17 08:35:00 +02:00
Ondrej Ezr
1b4bb9869e WizardV2: use the alert color darker 2024-04-16 20:56:32 +03:00
regexowl
df924ec097 Blueprints: Update Import modal padding
The `<ActionGroup>` should be a child of `<Form>`, moving it improves the padding on the Import modal.
2024-04-16 19:25:27 +03:00
regexowl
7115b43c3d Blueprints: Surface "Edit blueprint" button
This surfaces "Edit blueprint" button to the ImageTableToolbar and removes it from the blueprints actions menu as per recent mocks.
2024-04-16 18:31:05 +03:00
regexowl
033301c7b2 Blueprints: Remove icon from "Create blueprint" button
This removes the plus icon from the "Create blueprint" button as per recent review.
2024-04-16 18:24:47 +03:00
Jakub Rusz
68bfa8c351 V2Wizard: Add ouiaId for FileSystemTable
Need this to distinguish it from the table in V1.
2024-04-16 18:06:05 +03:00
regexowl
8a7d15e54d V2Wizard: Update Registration copy
Noticed there's been a small change in the copy of Registration steps as per Blueprints SPUR. This updates the text.
2024-04-16 11:59:31 +02:00
lucasgarfield
782a8eba7e V2 Wizard: Add custom file system to request customizations (HMS-3690)
The blueprint request now contains a field for the filesystem in its
customizations.
2024-04-16 10:02:19 +02:00
dependabot[bot]
8e443e4cbf build(deps-dev): bump @types/react from 18.2.75 to 18.2.79
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.2.75 to 18.2.79.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-16 08:46:18 +02:00
dependabot[bot]
4dd13abbb6 build(deps-dev): bump @types/react-dom from 18.2.24 to 18.2.25
Bumps [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom) from 18.2.24 to 18.2.25.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom)

---
updated-dependencies:
- dependency-name: "@types/react-dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-16 08:37:24 +02:00
Jakub Rusz
eb82a6b72b V2Wizard: Add ouiaId to ValidatedTextInput 2024-04-15 19:16:21 +02:00
Jakub Rusz
fc9a119933 V2Wizard: Update ouiaIds for File system configuration
Making it consistent with V1 wizard.
2024-04-15 18:21:32 +02:00
dependabot[bot]
fe219e66d6 build(deps-dev): bump webpack-bundle-analyzer from 4.10.1 to 4.10.2
Bumps [webpack-bundle-analyzer](https://github.com/webpack-contrib/webpack-bundle-analyzer) from 4.10.1 to 4.10.2.
- [Release notes](https://github.com/webpack-contrib/webpack-bundle-analyzer/releases)
- [Changelog](https://github.com/webpack-contrib/webpack-bundle-analyzer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/webpack-bundle-analyzer/compare/v4.10.1...v4.10.2)

---
updated-dependencies:
- dependency-name: webpack-bundle-analyzer
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-15 08:55:34 +02:00
regexowl
70b7ab7e29 V2Wizard: Update wording on "Custom repo" modal
This updates the wording on "Custom repositories will be added to your image" modal, informing the user, that the repository will get enabled in Content as well, if it wasn't enabled before.
2024-04-12 12:45:36 +02:00
regexowl
16ab5b37c5 V2Wizard: Add recommended repo to the repo table on Review
This adds the recommended repository to the table of repositories on the Review step.
2024-04-12 12:45:36 +02:00
regexowl
b7f6393be9 V2Wizard: Allow enabling repos and update state logic
This commit contains two changes:
1. When a package from popular repository gets added, the EPEL repository gets enabled in content services in case it wasn't before.
2. The logic of rendering states for the different toggle combinations on Packages step got updated.
2024-04-12 12:45:36 +02:00
regexowl
d890094e09 api: Add createRepository end point to contentSources schema
This adds `createRepository` end point to contentSources API schema.
2024-04-12 12:45:36 +02:00
regexowl
97f67e7aab constants: Add EPEL repo info
This adds EPEL 8 and EPEL 9 repository information to constants.
2024-04-12 12:45:36 +02:00
Anna Vítová
669e3c07e3 feat(HMS-3687): Add blueprints exporting 2024-04-12 11:19:26 +02:00
dependabot[bot]
d52358edde build(deps-dev): bump sass-loader from 14.1.1 to 14.2.0
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 14.1.1 to 14.2.0.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v14.1.1...v14.2.0)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-12 08:28:43 +02:00
Anna Vítová
bc82ba0ab1 feat(HMS-3906): Add feature flag for import/export 2024-04-11 13:19:43 +02:00
regexowl
3b843a0d40 V2Wizard: Replace "Adding recommended repo" alert with modal
This replaces the previously used Alert displayed when adding a package from repo recommendations with a modal as per mocks.
2024-04-11 13:00:17 +02:00
regexowl
a3e98b3894 V2Wizard: Update rendering packages info on edit
This fixes information rendered when a package info is read from the request on Edit.
2024-04-11 11:41:46 +02:00
regexowl
43cb43dac8 V2Wizard: Add tally to the "Selected" toggle
This adds a tally of selected packages to the "Selected" toggle.
2024-04-11 11:41:46 +02:00
regexowl
f375fc5c41 V2Wizard: Update links
There were incorrect links used for the content service, this fixes them.
2024-04-11 11:41:46 +02:00
regexowl
923c4fc2d5 V2Wizard: Add "Searching" state for packages
This adds "Searching" state for packages table when the data is being fetched.
2024-04-11 11:41:46 +02:00
regexowl
a8270fd228 test: Re-enable FSC alert test and clean up
This re-enables test of FSC alert and cleans up previously commented lines of the tests.
2024-04-11 11:21:19 +02:00
dependabot[bot]
bfda70ca35 build(deps-dev): bump css-loader from 7.0.0 to 7.1.1
Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 7.0.0 to 7.1.1.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/css-loader/compare/v7.0.0...v7.1.1)

---
updated-dependencies:
- dependency-name: css-loader
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-11 08:44:47 +02:00
Gianluca Zuccarelli
26066f95f7 V1Wizard: promote oscap to prod stable 2024-04-10 16:16:22 +02:00
Gianluca Zuccarelli
c44f8ea0ac V1Wizard/openscap: disable broken profiles
Currently the two stig profiles build but don't boot. While we wait for a
fix upstream, we should disable the profiles.
2024-04-10 16:16:22 +02:00
regexowl
972190ecaf V2Wizard: Update create/edit button copy
This updates copy on the Save changes button as per recent mocks.
2024-04-10 13:44:22 +03:00
dependabot[bot]
8ebd74051b build(deps-dev): bump @typescript-eslint/parser from 7.5.0 to 7.6.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 7.5.0 to 7.6.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.6.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-10 09:22:01 +02:00
dependabot[bot]
97b56041ba build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 7.5.0 to 7.6.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.6.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-10 09:07:01 +02:00
Michal Gold
4ba9235b1b V2Wizrd: remove Duplicate mount points warning 2024-04-10 08:30:13 +02:00
Amir
442d88a4ce fix(HMS-3850): V2Wizard:use menu toggle for save and build 2024-04-09 14:56:34 +02:00
Ondrej Ezr
54d032e0f0 WizardV2: filesystem mountpoint size validation 2024-04-09 13:40:35 +02:00
Ondrej Ezr
561e82827e WizardV2: filesystem units and size 2024-04-09 13:40:35 +02:00
Ondrej Ezr
3c3ca3537a WizardV2: Filesystem partitioning suffix 2024-04-09 13:40:35 +02:00
Michal Gold
9cddbdfa38 V2Wizard: Add ouiaIds to File System step
this commit adds ouiaIds to the file system for automation and manual configurations and for text input field.
2024-04-09 12:56:38 +02:00
Amir
e5bfc19194 WizardV2: Add draggable mount point 2024-04-09 12:48:17 +02:00
Jakub Rusz
0a62e0d286 V2Wizard: Fix plural sources
We're actually selecting a singular source to share the image with. It's
the same in V1 wizard.
2024-04-09 12:10:46 +02:00
dependabot[bot]
72193f2539 build(deps): bump @redhat-cloud-services/frontend-components-utilities
Bumps [@redhat-cloud-services/frontend-components-utilities](https://github.com/RedHatInsights/frontend-components) from 4.0.9 to 4.0.10.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-utilities"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-09 08:40:02 +02:00
dependabot[bot]
b7dc796b27 build(deps-dev): bump @types/react from 18.2.74 to 18.2.75
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.2.74 to 18.2.75.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-09 08:33:56 +02:00
dependabot[bot]
8a53b3e925 build(deps): bump @reduxjs/toolkit from 2.2.2 to 2.2.3
Bumps [@reduxjs/toolkit](https://github.com/reduxjs/redux-toolkit) from 2.2.2 to 2.2.3.
- [Release notes](https://github.com/reduxjs/redux-toolkit/releases)
- [Commits](https://github.com/reduxjs/redux-toolkit/compare/v2.2.2...v2.2.3)

---
updated-dependencies:
- dependency-name: "@reduxjs/toolkit"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-09 08:28:17 +02:00
Amir
ba3a2dc333 WizardV2: map oscap to wizard request 2024-04-08 13:59:41 +02:00
dependabot[bot]
a7f46e938d build(deps-dev): bump css-loader from 6.11.0 to 7.0.0
Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 6.11.0 to 7.0.0.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/css-loader/compare/v6.11.0...v7.0.0)

---
updated-dependencies:
- dependency-name: css-loader
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-08 11:00:05 +02:00
dependabot[bot]
8d896d7ebb build(deps-dev): bump @types/react-dom from 18.2.22 to 18.2.24
Bumps [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom) from 18.2.22 to 18.2.24.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom)

---
updated-dependencies:
- dependency-name: "@types/react-dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-08 10:48:18 +02:00
dependabot[bot]
1ea55a2476 build(deps-dev): bump jest-fail-on-console from 3.1.2 to 3.2.0
Bumps [jest-fail-on-console](https://github.com/ValentinH/jest-fail-on-console) from 3.1.2 to 3.2.0.
- [Release notes](https://github.com/ValentinH/jest-fail-on-console/releases)
- [Commits](https://github.com/ValentinH/jest-fail-on-console/compare/v3.1.2...v3.2.0)

---
updated-dependencies:
- dependency-name: jest-fail-on-console
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-08 10:42:55 +02:00
regexowl
94525815a0 V2Wizard: Fix VMware capitalisation
This replaces VMWare -> VMware as per mocks.
2024-04-05 16:22:27 +02:00
Anna Vítová
e301271ac1 feat(HMS-3688): Add blueprints import dialog 2024-04-05 14:23:46 +02:00
dependabot[bot]
7e0df050c3 build(deps-dev): bump @types/react from 18.2.73 to 18.2.74
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.2.73 to 18.2.74.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-05 08:43:32 +02:00
dependabot[bot]
9fe9b6a80b build(deps-dev): bump sass from 1.72.0 to 1.74.1
Bumps [sass](https://github.com/sass/dart-sass) from 1.72.0 to 1.74.1.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.72.0...1.74.1)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-05 08:37:53 +02:00
dependabot[bot]
0cd14ee353 build(deps-dev): bump @babel/preset-env from 7.24.3 to 7.24.4
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.24.3 to 7.24.4.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.4/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-05 08:26:51 +02:00
regexowl
5ae3da9b6c Blueprints: Rename Clear selection button and center it
This renames the Clear selection button in the blueprints side bar and aligns it to the center.
2024-04-04 21:03:07 +03:00
regexowl
1a784f4ded Blueprints: No Build Image button without a blueprint
This hides the Build Image button and blueprint actions kabob when no blueprint is selected as per recent mocks.
2024-04-04 15:52:17 +02:00
regexowl
db64729628 Blueprints: Update button in header
This updates the Create blueprint and Import buttons based on recent mocks.
2024-04-04 15:44:29 +02:00
regexowl
de5883d2b7 test: Add popularRepo fixture
This adds a fixture for popular repositories.
2024-04-04 14:01:42 +02:00
regexowl
00ba723195 V2Wizard: Add recommended repositories to the Review step
This adds recommended repositories to the Review step.
2024-04-04 14:01:42 +02:00
regexowl
ee2498a43b V2Wizard: Concatenate recommended repos with payload and custom ones
This adds recommended repos to payload and custom ones, including the needed conversion.
2024-04-04 14:01:42 +02:00
regexowl
bfd7420925 V2Wizard: Add repository recommendations
This PR is a part of Proactive Assistance - Repository recommendations.

New toggle group was added which allows user to see results from non-added repositories in a case that searched term didn't return any results from added custom and distribution repos.
2024-04-04 14:01:42 +02:00
regexowl
39cb4336b4 V2Wizard: Make convert repository functions exportable
This make `convertSchemaToIBCustomRepo` and `convertSchemaToIBPayloadRepo` functions exportable.
2024-04-04 14:01:42 +02:00
regexowl
7e83c8ecbb test: Enable OpenSCAP initialized packages tests
This re-enables tests checking initialization of packages upon OpenSCAP profile selection.
2024-04-04 12:34:57 +02:00
regexowl
91873dc810 V2Wizard: Initialize packages with OpenSCAP
This initializes packages upon a selection of an OpenSCAP profile.

Current logic also fixes a bug previously present in V1 - when changing an OpenSCAP profile with other previously chosen packages, the packages outside of the profile persist and don't get removed.
2024-04-04 12:34:57 +02:00
regexowl
d219a233d9 V2Wizard: Update removePackage reducer
This updates the `removePackage` reducer so it takes only a name of a package as an argument instead of the entire package object.
2024-04-04 12:34:57 +02:00
Amir
1dd909adb9 fixes(HMS-3853): fix blueprint clear selection 2024-04-04 12:24:13 +02:00
regexowl
0fc1b54833 Blueprints: Update Delete blueprint modal copy
This updates the copy on `Delete blueprint` modal as per recent SPUR.
2024-04-04 12:17:59 +02:00
Amir
e1a7725af4 fix(HMS-3851): remove 'recreate image' from kebab dropdown 2024-04-04 12:13:13 +02:00
regexowl
f71175f69b V2Wizard: Add full bottom pagination to Repositories and Packages
This adds full pagination to the bottom of Repositories and Packages steps which will allow the user to get to the very end of the tables in a case of many results.
2024-04-04 11:35:07 +02:00
regexowl
a1372adb94 V2Wizard: Update copy based on SPUR
This updates the copy of the Wizard steps based on the recent SPUR.
2024-04-04 11:26:26 +02:00
Amir
a46732d560 WizardV2: add 'register-later' to state mapper 2024-04-04 10:09:54 +02:00
dependabot[bot]
aa0f33879a build(deps): bump @redhat-cloud-services/frontend-components-utilities
Bumps [@redhat-cloud-services/frontend-components-utilities](https://github.com/RedHatInsights/frontend-components) from 4.0.8 to 4.0.9.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-utilities"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-04 08:51:24 +02:00
dependabot[bot]
cfc282e400 build(deps-dev): bump @babel/core from 7.24.3 to 7.24.4
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.24.3 to 7.24.4.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.4/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-04 08:45:53 +02:00
dependabot[bot]
0bb98beac6 build(deps-dev): bump css-loader from 6.10.0 to 6.11.0
Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 6.10.0 to 6.11.0.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/css-loader/compare/v6.10.0...v6.11.0)

---
updated-dependencies:
- dependency-name: css-loader
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-04 08:40:24 +02:00
Akhil Jha
5b090acf2a templates/testing: IQE-2748 Revert Update sel testing image frontend 2024-04-03 09:49:10 +02:00
dependabot[bot]
2bb6bd8d76 build(deps-dev): bump @typescript-eslint/parser from 7.4.0 to 7.5.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 7.4.0 to 7.5.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.5.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-03 08:55:05 +02:00
dependabot[bot]
ff4f98ef41 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 7.4.0 to 7.5.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.5.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-03 08:42:17 +02:00
dependabot[bot]
529fb4e9ca build(deps-dev): bump @babel/preset-react from 7.23.3 to 7.24.1
Bumps [@babel/preset-react](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-react) from 7.23.3 to 7.24.1.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.1/packages/babel-preset-react)

---
updated-dependencies:
- dependency-name: "@babel/preset-react"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-03 08:37:01 +02:00
regexowl
f5be16ae32 store: Update typed hooks
Updated types hooks as per: https://react-redux.js.org/using-react-redux/usage-with-typescript

"React Redux v9.1.0 adds a new .withTypes method to each of these hooks, analogous to the .withTypes method found on Redux Toolkit's createAsyncThunk."
2024-04-02 20:21:34 +02:00
regexowl
155962c141 ESLint: Resolve useSelector-prefer-selectors errors
This resolves all occurences of useSelector-prefer-selectors errors.
2024-04-02 20:21:34 +02:00
regexowl
3d9f171611 ESLint: Add recommended ruleset for react-redux
This adds a recommended ruleset for react-redux to the ESLint config and adds needed dependency to devDependencies.
2024-04-02 20:21:34 +02:00
Michal Gold
698d21df42 V2Wizrad: fix validation at file system step (HMS-3733)
this commit fix validation when usr choose duplicate mount point
andwhen there is no root partition
2024-04-02 15:25:37 +02:00
Amir
92fbb8babf fix(HMS-3854): make blueprint toast notification clearer 2024-04-02 14:29:06 +02:00
regexowl
18e0dc0cd7 V1Wizard: Add full bottom pagination to Repositories
This adds a full pagination to the bottom of the Repositories step. This allows the user to get to the very end of the repositories list easily.
2024-04-02 11:50:39 +02:00
lucasgarfield
d97a401a53 V2Wizard: Center messages in packages table (HMS-2781)
The copy in the packages table (too many results to show, etc...) was
not centered because the table actually has 5 columns, not 4. This fixes
the problem.
2024-04-02 11:29:57 +02:00
regexowl
d2c56391f9 V2Wizard: Update "Too many results" copy
This updates copy shown in a table when too many results are fetched. Also a period was added to the end of the empty state bodies.
2024-04-02 10:59:41 +02:00
Anna Vítová
e886da4a66 fixes(#1773): Empty state columns 2024-04-02 10:17:55 +02:00
Anna Vítová
939047dfef fixes(#1767): Change 'Create' button to 'Create blueprint' 2024-04-02 10:17:55 +02:00
Anna Vítová
eafd67ee08 fixes(#1841): Alignment of title and description in card 2024-04-02 10:17:55 +02:00
dependabot[bot]
4e53e61560 build(deps-dev): bump @babel/plugin-transform-runtime
Bumps [@babel/plugin-transform-runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-transform-runtime) from 7.24.0 to 7.24.3.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.3/packages/babel-plugin-transform-runtime)

---
updated-dependencies:
- dependency-name: "@babel/plugin-transform-runtime"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-02 09:09:25 +02:00
dependabot[bot]
211b6752e4 build(deps): bump @redhat-cloud-services/frontend-components-utilities
Bumps [@redhat-cloud-services/frontend-components-utilities](https://github.com/RedHatInsights/frontend-components) from 4.0.7 to 4.0.8.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-utilities"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-02 09:02:44 +02:00
dependabot[bot]
b62976a89a build(deps-dev): bump @redhat-cloud-services/eslint-config-redhat-cloud-services
Bumps @redhat-cloud-services/eslint-config-redhat-cloud-services from 2.0.3 to 2.0.4.

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/eslint-config-redhat-cloud-services"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-02 08:55:57 +02:00
regexowl
4a74813c2b Blueprints: Add test ids
This updates the data-testid of Create button in the header (`Link` component, not OUIA-compliant) and adds a data-testid to the blueprint search input (`SearchInput` component, also not OUIA-compliant).

A testId was also added to the blueprint actions dropdown (`MenuToggle`).
2024-03-28 12:14:44 +01:00
regexowl
835920a555 V2Wizard: Add test IDs to Packages step
This adds data-testid to the Packages search input and to the Available and Selected toggles.
2024-03-28 09:35:16 +01:00
dependabot[bot]
255b831e6c build(deps): bump @data-driven-forms/pf4-component-mapper
Bumps [@data-driven-forms/pf4-component-mapper](https://github.com/data-driven-forms/react-forms/tree/HEAD/packages/pf4-component-mapper) from 3.22.3 to 3.22.4.
- [Release notes](https://github.com/data-driven-forms/react-forms/releases)
- [Commits](https://github.com/data-driven-forms/react-forms/commits/v3.22.4/packages/pf4-component-mapper)

---
updated-dependencies:
- dependency-name: "@data-driven-forms/pf4-component-mapper"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-28 08:43:05 +01:00
dependabot[bot]
9897439bd6 build(deps-dev): bump @types/react from 18.2.69 to 18.2.73
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.2.69 to 18.2.73.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-28 08:26:28 +01:00
dependabot[bot]
f3123aa36f build(deps-dev): bump @babel/preset-env from 7.24.0 to 7.24.3
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.24.0 to 7.24.3.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.3/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-27 09:00:09 +01:00
dependabot[bot]
eee101d109 build(deps): bump @data-driven-forms/react-form-renderer
Bumps [@data-driven-forms/react-form-renderer](https://github.com/data-driven-forms/react-forms/tree/HEAD/packages/react-form-renderer) from 3.22.3 to 3.22.4.
- [Release notes](https://github.com/data-driven-forms/react-forms/releases)
- [Commits](https://github.com/data-driven-forms/react-forms/commits/v3.22.4/packages/react-form-renderer)

---
updated-dependencies:
- dependency-name: "@data-driven-forms/react-form-renderer"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-27 08:54:02 +01:00
Akhil Jha
825bdf004c templates/testing: IQE-2748 Update sel testing image frontend 2024-03-26 19:27:56 +01:00
regexowl
a213bcb014 Wizard: Resolve deprecation warning in test output
This resolves the following warning: `Deprecation warning: value provided is not in a recognized RFC2822 or ISO format.` in test output.
2024-03-26 16:32:27 +01:00
dependabot[bot]
4ba77d15ad build(deps-dev): bump express from 4.18.2 to 4.19.2
Bumps [express](https://github.com/expressjs/express) from 4.18.2 to 4.19.2.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.18.2...4.19.2)

---
updated-dependencies:
- dependency-name: express
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-26 09:18:53 +01:00
dependabot[bot]
f75ef13a26 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 7.3.1 to 7.4.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.4.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-26 09:05:09 +01:00
dependabot[bot]
bf3d83b22c build(deps-dev): bump @typescript-eslint/parser from 7.3.1 to 7.4.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 7.3.1 to 7.4.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.4.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-26 08:50:18 +01:00
dependabot[bot]
8848b46666 build(deps-dev): bump eslint-plugin-jest-dom from 5.1.0 to 5.2.0
Bumps [eslint-plugin-jest-dom](https://github.com/testing-library/eslint-plugin-jest-dom) from 5.1.0 to 5.2.0.
- [Release notes](https://github.com/testing-library/eslint-plugin-jest-dom/releases)
- [Commits](https://github.com/testing-library/eslint-plugin-jest-dom/compare/v5.1.0...v5.2.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-jest-dom
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-26 08:44:09 +01:00
Michal Gold
bbf077b98f V2Wizard: fix partition at review step
this commit fix the partition table at review step when user choose manual partition
2024-03-25 15:02:02 +01:00
Ondrej Ezr
ad8fd5ddc3 Blueprint: Validate Blueprint name is not empty
We are now validating Blueprint name on the backend to be non-empty.
Adds same validation for frontend

Refs HMS-3801
2024-03-25 12:51:33 +01:00
dependabot[bot]
990af570d7 build(deps): bump @reduxjs/toolkit from 2.2.1 to 2.2.2
Bumps [@reduxjs/toolkit](https://github.com/reduxjs/redux-toolkit) from 2.2.1 to 2.2.2.
- [Release notes](https://github.com/reduxjs/redux-toolkit/releases)
- [Commits](https://github.com/reduxjs/redux-toolkit/compare/v2.2.1...v2.2.2)

---
updated-dependencies:
- dependency-name: "@reduxjs/toolkit"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-25 09:07:56 +01:00
dependabot[bot]
f2aebf4f22 build(deps-dev): bump @testing-library/react from 14.2.1 to 14.2.2
Bumps [@testing-library/react](https://github.com/testing-library/react-testing-library) from 14.2.1 to 14.2.2.
- [Release notes](https://github.com/testing-library/react-testing-library/releases)
- [Changelog](https://github.com/testing-library/react-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/react-testing-library/compare/v14.2.1...v14.2.2)

---
updated-dependencies:
- dependency-name: "@testing-library/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-25 09:00:17 +01:00
dependabot[bot]
ac154570af build(deps-dev): bump @types/react from 18.2.67 to 18.2.69
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.2.67 to 18.2.69.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-25 08:53:03 +01:00
dependabot[bot]
1356e3500c build(deps-dev): bump webpack-dev-middleware from 5.3.3 to 5.3.4
Bumps [webpack-dev-middleware](https://github.com/webpack/webpack-dev-middleware) from 5.3.3 to 5.3.4.
- [Release notes](https://github.com/webpack/webpack-dev-middleware/releases)
- [Changelog](https://github.com/webpack/webpack-dev-middleware/blob/v5.3.4/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-middleware/compare/v5.3.3...v5.3.4)

---
updated-dependencies:
- dependency-name: webpack-dev-middleware
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-22 08:55:04 +01:00
dependabot[bot]
7d711077c2 build(deps-dev): bump @babel/eslint-parser from 7.23.10 to 7.24.1
Bumps [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) from 7.23.10 to 7.24.1.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.1/eslint/babel-eslint-parser)

---
updated-dependencies:
- dependency-name: "@babel/eslint-parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-22 08:48:38 +01:00
dependabot[bot]
220939bf6b build(deps): bump @patternfly/react-core from 5.2.2 to 5.2.3
Bumps [@patternfly/react-core](https://github.com/patternfly/patternfly-react) from 5.2.2 to 5.2.3.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@5.2.2...@patternfly/react-core@5.2.3)

---
updated-dependencies:
- dependency-name: "@patternfly/react-core"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-22 08:37:14 +01:00
dependabot[bot]
ffcc525b5c build(deps-dev): bump @babel/preset-typescript from 7.23.3 to 7.24.1
Bumps [@babel/preset-typescript](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-typescript) from 7.23.3 to 7.24.1.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.1/packages/babel-preset-typescript)

---
updated-dependencies:
- dependency-name: "@babel/preset-typescript"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-22 08:31:48 +01:00
Ondrej Ezr
aa0a3f107c Images: add popover when the image is outdated
Add Popover to inform user the image is build for an older then current Blueprint version.

Fixes HMS-3763
2024-03-21 12:14:37 +01:00
Michal Gold
71683a1ad1 fix one warning at useEffect on Oscap file
this commit fix a warning-
React Hook useEffect has a missing dependency: 'change'. Either include it or remove the dependency array  react-hooks/exhaustive-deps
2024-03-21 12:06:01 +01:00
Gianluca Zuccarelli
d57cd95c65 V1Wizard: masked services -> disabled services
For the UX the user doesn't really need to know that the services are masked,
rather than disabled in the backend. We can simplify this and show the masked
services as disabled.
2024-03-21 11:16:50 +01:00
dependabot[bot]
94cbd04ef1 build(deps-dev): bump @babel/core from 7.24.0 to 7.24.3
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.24.0 to 7.24.3.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.3/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-21 09:06:25 +01:00
dependabot[bot]
cca52393f9 build(deps-dev): bump @typescript-eslint/parser from 7.2.0 to 7.3.1
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 7.2.0 to 7.3.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.3.1/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-21 09:00:06 +01:00
Ondrej Ezr
1db8fb042b Experimental: fix the ability to force experimental in developement 2024-03-20 19:36:48 +01:00
lucasgarfield
5dcc3abbd8 V2Wizard: Change search parameter from qcow to qcow2
`target=qcow2` is in better alignment with the UI than `target=qcow`
2024-03-20 18:04:44 +01:00
regexowl
a7cc88af44 V2Wizard: Add search parameter for target selection (HMS-3684)
Add an optional search parameter to the wizard 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 18:04:44 +01:00
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
Anna Vítová
2d8b2b2796 fixes(HMS-3778): Show image name only after it is loaded 2024-03-19 14:59:44 +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
Gianluca Zuccarelli
4212337d7e api: update image builder api
Update the api spec to include `masked` services
2024-03-19 10:59:31 +01:00
dependabot[bot]
ddedecc9f1 build(deps): bump @patternfly/react-table from 5.2.0 to 5.2.4
Bumps [@patternfly/react-table](https://github.com/patternfly/patternfly-react) from 5.2.0 to 5.2.4.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-table@5.2.0...@patternfly/react-table@5.2.4)

---
updated-dependencies:
- dependency-name: "@patternfly/react-table"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-19 09:10:16 +01:00
dependabot[bot]
7734a093d4 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 7.2.0 to 7.3.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.3.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-19 09:03:02 +01:00
dependabot[bot]
c5819eca6d build(deps-dev): bump @types/react from 18.2.66 to 18.2.67
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.2.66 to 18.2.67.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-19 08:55:15 +01:00
regexowl
bc8258146a Blueprints: More specific storage name
This makes the name for the Blueprints! feature alert more specific in the localStorage.
2024-03-18 16:24:07 +01:00
regexowl
ea7f7168ab Blueprints: Make Blueprints! alert dismissible
Fixes #1804

This adds a close button to the Blueprints! alert, making it dismissible.
2024-03-18 16:13:23 +01:00
Amir
465527bda0 Fixes #1770: keep blueprint card selected after editing 2024-03-18 10:21:03 +01:00
Anna Vítová
a3a7ea88c5 feat(HMS-3401): Add blueprints sidebar pagination 2024-03-18 10:06:05 +01:00
dependabot[bot]
7bff1feaf4 build(deps-dev): bump eslint-plugin-react from 7.34.0 to 7.34.1
Bumps [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) from 7.34.0 to 7.34.1.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-react/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-react/blob/v7.34.1/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.34.0...v7.34.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-react
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-18 08:46:01 +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
regexowl
c0dfe0f218 V2Wizard: Disable changing of root partition
This makes the drop down for root partition disabled, preventing the user from creating a configuration without a root partition.

Option to add suffix was also removed for mount points which don't allow suffixes.
2024-03-15 11:35:46 +01:00
dependabot[bot]
63d606ab02 build(deps): bump follow-redirects from 1.15.4 to 1.15.6
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.4 to 1.15.6.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.4...v1.15.6)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-15 11:30:05 +01:00
dependabot[bot]
91cae2062f build(deps-dev): bump @types/react from 18.2.64 to 18.2.66
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.2.64 to 18.2.66.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-15 11:24:46 +01:00
regexowl
03afb4c1df V2Wizard: Put Save button into div
This encloses Save button inside a div to make testing with widgetastic.patternfly library's pattern possible.
2024-03-15 11:17:03 +01:00
Michal Gold
0b6cf44bbc V2Wizard: change the default of file system table when user choose manual cunfiguration
this commit change the default table when user choose manual configuration at file system step
2024-03-15 09:52:49 +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
dependabot[bot]
b271375ff2 build(deps-dev): bump @types/react-dom from 18.2.21 to 18.2.22
Bumps [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom) from 18.2.21 to 18.2.22.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom)

---
updated-dependencies:
- dependency-name: "@types/react-dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-15 08:29:43 +01:00
regexowl
a7d320e4a8 ESLint: Fix problems so linter check passes
This fixes errors caused by turning `@typescript-eslint/ban-ts-comment` on.
2024-03-14 15:04:12 +01:00
regexowl
d2ea46f243 ESLint: Turn ban-ts-comments rule on
This turns on ban-ts-comments and adds a few configurations to it.

ts-expect-error and ts-ignore are allowed, but only when accompanied by a description clarifying their usage. The minimum length of the description is set to 5.
2024-03-14 15:04:12 +01:00
Michal Gold
0d2735fe0f V2Wizard: fix remove partition funtionallity (HMS-3753)
this commit add the remove partition functionlity to file system step
2024-03-14 14:21:14 +01:00
dependabot[bot]
918d02707f build(deps): bump @redhat-cloud-services/frontend-components
Bumps [@redhat-cloud-services/frontend-components](https://github.com/RedHatInsights/frontend-components) from 4.2.4 to 4.2.5.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-14 10:39:29 +01:00
dependabot[bot]
718d96ab76 build(deps-dev): bump sass from 1.71.1 to 1.72.0
Bumps [sass](https://github.com/sass/dart-sass) from 1.71.1 to 1.72.0.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.71.1...1.72.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-14 10:00:05 +01:00
regexowl
ddeee81959 deps: Pin @types/uuid
This pins the @types/uuid version as pinned version of dependencies work best with dependabot.
2024-03-14 09:09:30 +01:00
Michal Gold
1b6a570f71 V2Wizard: Add partition function (HMS-3752)
this commit add the addPartition function to support the adding partition
at the file system step
2024-03-13 16:04:15 +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
dependabot[bot]
b5c3f12db2 build(deps-dev): bump @typescript-eslint/parser from 7.1.1 to 7.2.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 7.1.1 to 7.2.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.2.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-13 09:29:43 +01:00
dependabot[bot]
9589cfc94e build(deps): bump @patternfly/react-core from 5.2.1 to 5.2.2
Bumps [@patternfly/react-core](https://github.com/patternfly/patternfly-react) from 5.2.1 to 5.2.2.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@5.2.1...@patternfly/react-core@5.2.2)

---
updated-dependencies:
- dependency-name: "@patternfly/react-core"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-13 08:43:39 +01:00
dependabot[bot]
2055978ff8 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 7.1.0 to 7.2.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.2.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-12 11:47:32 +01:00
regexowl
1c9b2242fa V2Wizard: Add FSC alert for bare metal images
This mirrors the functionality of https://github.com/osbuild/image-builder-frontend/pull/1786 in V2Wizard.

An alert was added to the FSC step to make users aware that customisations are not being applied to bare metal - installer images.
2024-03-12 10:53:48 +01:00
regexowl
e2d46640f9 Wizard: Add FSC alert for bare metal images
FSC customisations are not being applied to bare metal - installer images, this adds an alert to make users aware of the fact.
2024-03-12 10:16:54 +01:00
dependabot[bot]
8e185a6498 build(deps): bump react-router-dom from 6.22.1 to 6.22.3
Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.22.1 to 6.22.3.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.22.3/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-12 08:38:27 +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
dependabot[bot]
d063279b79 build(deps): bump @patternfly/react-core from 5.2.0 to 5.2.1
Bumps [@patternfly/react-core](https://github.com/patternfly/patternfly-react) from 5.2.0 to 5.2.1.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@5.2.0...@patternfly/react-core@5.2.1)

---
updated-dependencies:
- dependency-name: "@patternfly/react-core"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-08 11:08:25 +01:00
dependabot[bot]
1290074339 build(deps): bump @redhat-cloud-services/frontend-components-utilities
Bumps [@redhat-cloud-services/frontend-components-utilities](https://github.com/RedHatInsights/frontend-components) from 4.0.6 to 4.0.7.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-utilities"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-08 08:52:38 +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
Ondrej Ezr
947c20875c ImagesTable: extract toolbar to separate component
This extracts the toolbar, that was getting bit too big to a separate component.
It also adjusts the title to correspond to the filter of the images.
If there is a Blueprint selected, it changes the title to '<BlueprintName> images'
2024-03-07 16:48:08 +01:00
lucasgarfield
61c25e8331 Router: Hotfix to update experimental flag
We failed to update the experimental flag in the routing to use the new
useExperimentalFlag hook. This led to the V2 wizard being exposed in
stage-stable. This commit fixes the bug.
2024-03-07 16:24:21 +01:00
lucasgarfield
8923d2c254 Blueprints Table: Add "new" alert
Adds an alert to explain the basic concept of blueprints to users.
Actual copy (and presence of emojis) is pending feedback from UX/copy,
this is just a placeholder for now.
2024-03-07 13:19:32 +01:00
regexowl
36dee34f94 V2Wizard: Update repository icons and names on Packages step
This updates the naming and the icons in the "Packages repository" column to be consistent with current mocks.
2024-03-07 12:39:25 +01:00
regexowl
6e1df015e1 V2Wizard: Replace h2 heading with h1 and sizing
This replaces h2 heading on the steps with h1 and adds a size modifier to keep the sizes approximately similar.
2024-03-07 09:33:44 +01:00
regexowl
8fac905482 V2Wizard: Gate table title behind experimental
This adds gating the ImagesTable title behind experimental so it doesn't render in the "classic" table.
2024-03-07 09:21:27 +01:00
dependabot[bot]
cb2625245f build(deps-dev): bump @types/react-dom from 18.2.20 to 18.2.21
Bumps [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom) from 18.2.20 to 18.2.21.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom)

---
updated-dependencies:
- dependency-name: "@types/react-dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-07 08:52:59 +01:00
dependabot[bot]
e2fbad1972 build(deps-dev): bump @types/react from 18.2.61 to 18.2.64
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.2.61 to 18.2.64.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-07 08:23:27 +01:00
Ondrej Ezr
64dbb4b912 Blueprints: Empty state create button
Make the empty state create button work.
It was a placeholder for now, we can have it working.
2024-03-06 14:02:33 +01:00
Amir
61b86da98a Blueprints: add blueprints slice for client global state 2024-03-06 12:52:03 +01:00
lucasgarfield
358dd70889 Blueprints table: Add title
Adds title to blueprints table. Later we will need to extract this into
a new component that changes the value depending on whether a blueprint
is selected or not (if blueprint is selected, it will need to show
blueprint name).
2024-03-06 12:32:27 +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
68e4cba9a3 Blueprints Table: Hide Create image button
This button is used to launch the wizard in the old images table, it
should not be used in the blueprints table (as the Create blueprint
button has been moved to the header).
2024-03-06 10:34:22 +01:00
lucasgarfield
ab31c7a54a Blueprints Table: Remove quickstarts
These are taking up too much space on the screen. Links to the
quickstarts need to be moved to more relevant locations. We are
currently working with UX on a design for this.
2024-03-06 10:34:22 +01:00
dependabot[bot]
e992c56c1b build(deps-dev): bump @types/react-dom from 18.2.19 to 18.2.20
Bumps [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom) from 18.2.19 to 18.2.20.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom)

---
updated-dependencies:
- dependency-name: "@types/react-dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-06 09:00:25 +01:00
dependabot[bot]
2eeda34c07 build(deps): bump @unleash/proxy-client-react from 4.1.2 to 4.2.2
Bumps [@unleash/proxy-client-react](https://github.com/Unleash/unleash-proxy-react) from 4.1.2 to 4.2.2.
- [Release notes](https://github.com/Unleash/unleash-proxy-react/releases)
- [Changelog](https://github.com/Unleash/proxy-client-react/blob/main/Changelog.md)
- [Commits](https://github.com/Unleash/unleash-proxy-react/compare/v4.1.2...v4.2.2)

---
updated-dependencies:
- dependency-name: "@unleash/proxy-client-react"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-06 08:51:44 +01:00
lucasgarfield
c73482dd7f Utilities: Add useExperimentalFlag hook
This commit DRYs out the code, extracting the logic for setting the
value of the experimentalFlag into a new hook found in the utilities.

It also makes the typing stricter - the hook returns a boolean. The
pattern we were using previously to set the value of experimentalFlag
variables could be boolean, string, or undefined.
2024-03-05 19:27:46 +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
Thomas Lavocat
c81ac76ea8 App: experimental features in beta only
When the unleash switch `image-builder.new-wizard.enabled` will get
activated on stage the blueprint and new wizard will be visible on the
platform.
To make them only visible in preview we need to change the condition to
check if Beta is selected by the user.
2024-03-05 19:27:46 +01:00
regexowl
6b79d5b1a8 V2Wizard: Remove aspectRatio
This removes aspectRatio from the ReleaseLifecycle chart. The set aspectRatio was causing incorrect rendering of the annotation line, making time travel during image building inevitable.
2024-03-05 18:34:28 +01:00
mgold1234
45d8426f10 change the import path for MajorReleasesLifecyclesChart
this commit change the path for MajorReleasesLifecyclesChart in the review.
this fix the correct path of import
2024-03-05 17:58:10 +01:00
Anna Vítová
5813fdaf10 feat(HMS-3686): Update position of blueprint buttons 2024-03-05 13:49:31 +01:00
dependabot[bot]
54bfe6dd92 build(deps-dev): bump eslint-plugin-react from 7.33.2 to 7.34.0
Bumps [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) from 7.33.2 to 7.34.0.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-react/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.33.2...v7.34.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-react
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-05 09:17:54 +01:00
dependabot[bot]
f0ddff863b build(deps): bump @patternfly/patternfly from 5.2.0 to 5.2.1
Bumps [@patternfly/patternfly](https://github.com/patternfly/patternfly) from 5.2.0 to 5.2.1.
- [Release notes](https://github.com/patternfly/patternfly/releases)
- [Changelog](https://github.com/patternfly/patternfly/blob/main/release.config.js)
- [Commits](https://github.com/patternfly/patternfly/compare/v5.2.0...patch-v5.2.1)

---
updated-dependencies:
- dependency-name: "@patternfly/patternfly"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-05 09:12:21 +01:00
dependabot[bot]
767385ee72 build(deps-dev): bump @typescript-eslint/parser from 7.1.0 to 7.1.1
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 7.1.0 to 7.1.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.1.1/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-05 09:06:47 +01:00
Jakub Rusz
32b936d4c6 CI: Drop SonarQube and Schutzbot in favor of Snyk (HMS-3696)
Snyk is now being used for code analysis in favor of Sonarqube. This
commit drops Sonarqube. Schutzbot was only neccessary for running
SonarQube, so it has also been dropped.
2024-03-05 08:39:16 +01:00
Amir
97b7aa6bfd fix(HMS-3704): hiding blueprint out of sync alert 2024-03-04 18:11:10 +01:00
regexowl
e97291759c V2Wizard: Update ReleaseLifecycle dates on the Review step
This updates the ReleaseLifecycle dates used on the Review step.
2024-03-04 17:43:03 +01:00
regexowl
8666907dc9 V2Wizard: Move FormGroup outside of ActivationKeyInformation
This moves the FormGroup outside of the ActivationKeyInformation component and puts it higher into index of the Registration step. This way the group label does not get rendered on the Review step.
2024-03-04 16:52:57 +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
f9350956f7 V2Wizard: Move OSCAP alert outside of OscapProfileInformation
This moves the "Additional customizations" alert outside of OscapProfileInformation which ensures it is not shown in the Oscap expandable on the Review step.

User can see the added customisations in the individual expandables, making the alert non-actionable extra information.
2024-03-04 16:38:43 +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
regexowl
f82b2453f9 V1/V2Wizard: Capitalise ID on Azure step
This capitalises id -> ID in the test of an alert on Azure step to keep consistent with the capitalisation throughout the step.
2024-03-04 15:59:38 +01:00
Amir
a911c02780 Blueprints: add blueprint's images empty state 2024-03-04 15:36:06 +01:00
Amir
6572e15f53 Remove aws sourcedata duplication 2024-03-04 14:48:32 +01:00
Amir
45d50b2440 Blueprints: Add blueprint editing 2024-03-04 14:48:32 +01:00
regexowl
2464dab29e V2Wizard: Clean up OSCAP info
This removes "component=dl" from the OSCAP information.
2024-03-04 11:19:53 +01:00
dependabot[bot]
01946fc8c7 build(deps-dev): bump @patternfly/react-icons from 5.2.0 to 5.2.1
Bumps [@patternfly/react-icons](https://github.com/patternfly/patternfly-react) from 5.2.0 to 5.2.1.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-icons@5.2.0...@patternfly/react-icons@5.2.1)

---
updated-dependencies:
- dependency-name: "@patternfly/react-icons"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-04 10:20:39 +01:00
dependabot[bot]
92732e0271 build(deps): bump sanitize-html from 2.11.0 to 2.12.1
Bumps [sanitize-html](https://github.com/apostrophecms/sanitize-html) from 2.11.0 to 2.12.1.
- [Changelog](https://github.com/apostrophecms/sanitize-html/blob/main/CHANGELOG.md)
- [Commits](https://github.com/apostrophecms/sanitize-html/compare/2.11.0...2.12.1)

---
updated-dependencies:
- dependency-name: sanitize-html
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-04 10:13:38 +01:00
dependabot[bot]
1fcec8c514 build(deps-dev): bump @babel/preset-env from 7.23.9 to 7.24.0
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.23.9 to 7.24.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.0/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-04 08:43:25 +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
dependabot[bot]
e2ae2356a1 build(deps-dev): bump @types/jest from 29.5.11 to 29.5.12
Bumps [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest) from 29.5.11 to 29.5.12.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest)

---
updated-dependencies:
- dependency-name: "@types/jest"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-01 10:28:45 +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
Simon Steinbeiss
f23f2be54f ghactions: Add PR best practice check 2024-03-01 09:30:48 +01:00
dependabot[bot]
b107bff9c6 build(deps-dev): bump chart.js from 4.4.1 to 4.4.2
Bumps [chart.js](https://github.com/chartjs/Chart.js) from 4.4.1 to 4.4.2.
- [Release notes](https://github.com/chartjs/Chart.js/releases)
- [Commits](https://github.com/chartjs/Chart.js/compare/v4.4.1...v4.4.2)

---
updated-dependencies:
- dependency-name: chart.js
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-01 09:22:12 +01:00
mgold1234
89bee6a723 V2Wizrd: clean resource group when user change the source name
this commit fix https://github.com/osbuild/image-builder-frontend/issues/1691
when user change the source name, resource gruop should clean up
2024-03-01 09:14:18 +01:00
dependabot[bot]
2dc1ac5f88 build(deps-dev): bump @types/react from 18.2.60 to 18.2.61
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.2.60 to 18.2.61.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-01 08:35:56 +01:00
mgold1234
3118fc0112 v2Wizard : Add Azure to review 2024-02-29 15:29:03 +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
dependabot[bot]
92f8f0016d build(deps-dev): bump @babel/plugin-transform-runtime
Bumps [@babel/plugin-transform-runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-transform-runtime) from 7.23.9 to 7.24.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.0/packages/babel-plugin-transform-runtime)

---
updated-dependencies:
- dependency-name: "@babel/plugin-transform-runtime"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-29 13:56:33 +01:00
dependabot[bot]
51b2d9cac5 build(deps-dev): bump @babel/core from 7.23.9 to 7.24.0
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.23.9 to 7.24.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.24.0/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-29 13:16:23 +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
dependabot[bot]
712c7715c2 build(deps-dev): bump @typescript-eslint/parser from 7.0.2 to 7.1.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 7.0.2 to 7.1.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.1.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-29 11:59:40 +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
d9f9c61307 V2Wizard: Add packages to requestMapper
This adds packages to the request mapper in a needed format - a flat list of package names.
2024-02-28 17:17:00 +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
regexowl
1e0c737758 fixtures: Update packages fixture
This adds partial search "te" to allow testing partial search with too many results.

Also the typing of the `mockSourcesPackagesResults` was inconsistent with the schema of the API response so it was updated to reflect the correct shape of the response.
2024-02-28 17:17:00 +01:00
regexowl
af80b78e93 V2Wizard: Add Packages step
Previously we've used two steps for adding packages - the Additional Red Hat packages and Additional Custom packages steps. This merges the two steps into one.

Also the steps originally used `DualListSelector` to show the packages options, this was now migrated to the packages `Table` which makes the step visually consistent with the Repositories one. Although the functionality is a bit different.

Repositories step fetches the complete list of repositories right at the beginning and then mutates it by filtering. The Packages step fetches the data based on a search term which means that the "All" table gets overwritten by new values anytime a new term is searched.

Previously used axios API calls were also migrated to RTK Query for the purpose of consistency.
2024-02-28 17:17:00 +01:00
regexowl
e955293538 store: Update content-sources API schema
This adds `searchRpm` as a filtered endpoint.
2024-02-28 17:17:00 +01:00
regexowl
ac4a0829e2 V2Wizard: Add Packages step to the Wizard
This adds Packages to the new Wizard as a substep of the Content step.
2024-02-28 17:17:00 +01:00
regexowl
607bd6ed45 V2Wizard: Create a folder for Packages step
This creates a new folder for the Packages step and copies over needed file:
- Packages.tsx
2024-02-28 17:17:00 +01:00
dependabot[bot]
7183d8d88b build(deps-dev): bump sass from 1.71.0 to 1.71.1
Bumps [sass](https://github.com/sass/dart-sass) from 1.71.0 to 1.71.1.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.71.0...1.71.1)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-28 16:42:48 +01:00
lucasgarfield
a22f0deacc V2 Wizard: Fix AWS account id in review step (HMS-3553)
The AWS account id was not displayed correctly in the review step in the
case that a source was being used. This commit fixes the issue. When a
source is used, the AWS account id is fetched as before in order to
display it on the AWS step - but that value is also now dispatched to
the store so it can be referenced later (like in the review step).
2024-02-28 14:33:11 +01:00
Amir
5b662a39ea Blueprints: add blueprint out-of-sync alert 2024-02-28 13:04:40 +01:00
Ondrej Ezr
627f953dfc feat(HMS-3341): pass module_hotfixes flag to compose request 2024-02-28 12:41:20 +01:00
Ondrej Ezr
a04835c5a2 api: update content sources OpenAPI spec 2024-02-28 12:41:20 +01:00
mgold1234
ba42cceac4 V2Wizard: add azure case to the requestMapper 2024-02-28 12:10:00 +01:00
mgold1234
174e37531c V2Wizard: add unit test to Azure step 2024-02-28 12:10:00 +01:00
mgold1234
f77cc39135 V2Wizard: add all necessary components 2024-02-28 12:10:00 +01:00
mgold1234
fa016c3228 V2Wizard: Create a folder for Azure step and copy needed components
This created a new folder for the Azure step and copies components that will be needed:
- AzureAuthButton.tsx
- AzureResouceGroups.tsx
- AzureSourcesSelect.tsx
2024-02-28 12:10:00 +01:00
dependabot[bot]
47461f9089 build(deps-dev): bump @types/react from 18.2.57 to 18.2.60
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.2.57 to 18.2.60.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-28 09:42:37 +01:00
dependabot[bot]
f51d10103c build(deps): bump @data-driven-forms/pf4-component-mapper
Bumps [@data-driven-forms/pf4-component-mapper](https://github.com/data-driven-forms/react-forms/tree/HEAD/packages/pf4-component-mapper) from 3.22.0 to 3.22.3.
- [Release notes](https://github.com/data-driven-forms/react-forms/releases)
- [Commits](https://github.com/data-driven-forms/react-forms/commits/v3.22.3/packages/pf4-component-mapper)

---
updated-dependencies:
- dependency-name: "@data-driven-forms/pf4-component-mapper"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-28 08:46:37 +01:00
Anna Vítová
45194fa225 feat(HMS-3515): Change blueprint cards to be clickable 2024-02-27 18:21:41 +01:00
mgold1234
d8c657da6c feat(HMS-3567): fix cleanup of Reource Group
this commit clean the resource group when user clean the source field
2024-02-27 15:17:53 +01:00
regexowl
5ab0b6511b Blueprints: Add guest-image and vsphere-ova to requestMapper
This adds guest-image and vsphere-ova as possible target environments to the requestMapper.
2024-02-27 15:09:39 +01:00
dependabot[bot]
5e2d22f0c6 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 7.0.2 to 7.1.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.1.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-27 13:04:08 +01:00
dependabot[bot]
4ad2fe7bf6 build(deps): bump @redhat-cloud-services/frontend-components
Bumps [@redhat-cloud-services/frontend-components](https://github.com/RedHatInsights/frontend-components) from 4.2.3 to 4.2.4.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-27 11:33:51 +01:00
regexowl
d834099a9b ImagesTable: Replace null with an empty string in ClipboardCopy
ClipboardCopy component doesn't like null anymore so this replaces it with an empty string.
2024-02-27 10:37:17 +01:00
regexowl
6100298bbd deps: Bump @patternfly/react-core from 5.1.2 to 5.2.0
This bumps @patternfly/react-core from 5.1.2 to 5.2.0 and adds @patternfly/react-icons as a dev dependency.
2024-02-27 10:37:17 +01:00
regexowl
5d261b9b76 deps: Bump typescript-eslint
This bumps:
- @typescript-eslint/parser from 6.20.0 to 7.0.2
- @typescript-eslint/eslint-plugin from 6.21.0 to 7.0.2
2024-02-27 09:38:29 +01:00
dependabot[bot]
bd0c0ebf6e build(deps-dev): bump eslint from 8.56.0 to 8.57.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.56.0 to 8.57.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.56.0...v8.57.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-27 08:49:50 +01:00
dependabot[bot]
cf052fbd1b build(deps): bump @unleash/proxy-client-react from 4.1.1 to 4.1.2
Bumps [@unleash/proxy-client-react](https://github.com/Unleash/unleash-proxy-react) from 4.1.1 to 4.1.2.
- [Release notes](https://github.com/Unleash/unleash-proxy-react/releases)
- [Changelog](https://github.com/Unleash/proxy-client-react/blob/main/Changelog.md)
- [Commits](https://github.com/Unleash/unleash-proxy-react/compare/v4.1.1...v4.1.2)

---
updated-dependencies:
- dependency-name: "@unleash/proxy-client-react"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-26 11:16:59 +01:00
dependabot[bot]
6ef697c696 build(deps): bump @redhat-cloud-services/frontend-components-utilities
Bumps [@redhat-cloud-services/frontend-components-utilities](https://github.com/RedHatInsights/frontend-components) from 4.0.5 to 4.0.6.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-utilities"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-26 08:59:39 +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
dependabot[bot]
c817a951f0 build(deps-dev): bump @types/react from 18.2.48 to 18.2.57
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.2.48 to 18.2.57.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-22 11:33:38 +01:00
dependabot[bot]
a5f2323ced build(deps): bump @data-driven-forms/react-form-renderer
Bumps [@data-driven-forms/react-form-renderer](https://github.com/data-driven-forms/react-forms/tree/HEAD/packages/react-form-renderer) from 3.22.2 to 3.22.3.
- [Release notes](https://github.com/data-driven-forms/react-forms/releases)
- [Commits](https://github.com/data-driven-forms/react-forms/commits/v3.22.3/packages/react-form-renderer)

---
updated-dependencies:
- dependency-name: "@data-driven-forms/react-form-renderer"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-22 08:27:19 +01:00
dependabot[bot]
e9900464ce build(deps): bump @redhat-cloud-services/frontend-components-utilities
Bumps [@redhat-cloud-services/frontend-components-utilities](https://github.com/RedHatInsights/frontend-components) from 4.0.2 to 4.0.5.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-utilities"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-21 12:56:19 +01:00
dependabot[bot]
b03651f16a build(deps-dev): bump @babel/eslint-parser from 7.23.9 to 7.23.10
Bumps [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) from 7.23.9 to 7.23.10.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.10/eslint/babel-eslint-parser)

---
updated-dependencies:
- dependency-name: "@babel/eslint-parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-21 12:08:43 +01:00
dependabot[bot]
a4ad53577d build(deps): bump @scalprum/react-core from 0.6.6 to 0.7.1
Bumps [@scalprum/react-core](https://github.com/scalprum/scaffloding) from 0.6.6 to 0.7.1.
- [Release notes](https://github.com/scalprum/scaffloding/releases)
- [Changelog](https://github.com/scalprum/scaffolding/blob/main/release.config.js)
- [Commits](https://github.com/scalprum/scaffloding/compare/@scalprum/react-core-0.6.6...@scalprum/react-core-0.7.1)

---
updated-dependencies:
- dependency-name: "@scalprum/react-core"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-20 08:45:42 +01:00
dependabot[bot]
2d234f8be8 build(deps-dev): bump sass-loader from 14.1.0 to 14.1.1
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 14.1.0 to 14.1.1.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v14.1.0...v14.1.1)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-20 08:40:39 +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
regexowl
362cf6abee Wizard: Re-enable custom repositories HMS-3637
This reverts the changes made to disable custom repositories in the Create Image Wizard.

Reverting following PRs:
- https://github.com/osbuild/image-builder-frontend/pull/1590
- https://github.com/osbuild/image-builder-frontend/pull/1594
- https://github.com/osbuild/image-builder-frontend/pull/1595
2024-02-19 20:54:45 +01:00
dependabot[bot]
79626ac86d build(deps): bump @reduxjs/toolkit from 2.1.0 to 2.2.1
Bumps [@reduxjs/toolkit](https://github.com/reduxjs/redux-toolkit) from 2.1.0 to 2.2.1.
- [Release notes](https://github.com/reduxjs/redux-toolkit/releases)
- [Commits](https://github.com/reduxjs/redux-toolkit/compare/v2.1.0...v2.2.1)

---
updated-dependencies:
- dependency-name: "@reduxjs/toolkit"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-19 11:44:19 +01:00
dependabot[bot]
1fe79180db build(deps-dev): bump sass from 1.69.7 to 1.71.0
Bumps [sass](https://github.com/sass/dart-sass) from 1.69.7 to 1.71.0.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.69.7...1.71.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-19 11:02:02 +01:00
dependabot[bot]
c80b54f7d7 build(deps): bump react-router-dom from 6.19.0 to 6.22.1
Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.19.0 to 6.22.1.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/react-router-dom@6.22.1/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.22.1/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-19 08:39:52 +01:00
dependabot[bot]
61d0631b68 build(deps): bump @redhat-cloud-services/frontend-components
Bumps [@redhat-cloud-services/frontend-components](https://github.com/RedHatInsights/frontend-components) from 4.2.1 to 4.2.3.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-16 09:49:14 +01:00
dependabot[bot]
ab5936b609 build(deps-dev): bump @types/react-dom from 18.2.18 to 18.2.19
Bumps [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom) from 18.2.18 to 18.2.19.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom)

---
updated-dependencies:
- dependency-name: "@types/react-dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-16 09:08:56 +01:00
dependabot[bot]
374ba7dd5b build(deps): bump @patternfly/react-table from 5.1.2 to 5.2.0
Bumps [@patternfly/react-table](https://github.com/patternfly/patternfly-react) from 5.1.2 to 5.2.0.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-table@5.1.2...@patternfly/react-table@5.2.0)

---
updated-dependencies:
- dependency-name: "@patternfly/react-table"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-16 08:29:56 +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
dependabot[bot]
60842057f8 build(deps-dev): bump @testing-library/jest-dom from 6.3.0 to 6.4.2
Bumps [@testing-library/jest-dom](https://github.com/testing-library/jest-dom) from 6.3.0 to 6.4.2.
- [Release notes](https://github.com/testing-library/jest-dom/releases)
- [Changelog](https://github.com/testing-library/jest-dom/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/jest-dom/compare/v6.3.0...v6.4.2)

---
updated-dependencies:
- dependency-name: "@testing-library/jest-dom"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-15 09:05:21 +01:00
dependabot[bot]
a23e8b0d0a build(deps-dev): bump eslint from 8.55.0 to 8.56.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.55.0 to 8.56.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.55.0...v8.56.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-15 08:58:57 +01:00
Simon Steinbeiss
f2eeac67ba README: Link to osbuild-getting-started
Let's save our contributors a hop and not link to the (deprecated)
devel/README.md anymore, which is only a placeholder pointing to
osubild-getting-started. Let's instead direct folks there in the first
place.
2024-02-15 08:36:57 +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
Simon Steinbeiss
841edd195a README: Add frontend principles 2024-02-14 15:51:39 +01:00
dependabot[bot]
24d2105cac build(deps-dev): bump css-loader from 6.9.1 to 6.10.0
Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 6.9.1 to 6.10.0.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/css-loader/compare/v6.9.1...v6.10.0)

---
updated-dependencies:
- dependency-name: css-loader
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-14 10:17:37 +01:00
dependabot[bot]
07fe728463 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 6.20.0 to 6.21.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.21.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-14 09:38:23 +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
dependabot[bot]
2004b921f0 build(deps-dev): bump @testing-library/react from 14.1.2 to 14.2.1
Bumps [@testing-library/react](https://github.com/testing-library/react-testing-library) from 14.1.2 to 14.2.1.
- [Release notes](https://github.com/testing-library/react-testing-library/releases)
- [Changelog](https://github.com/testing-library/react-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/react-testing-library/compare/v14.1.2...v14.2.1)

---
updated-dependencies:
- dependency-name: "@testing-library/react"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-09 11:05:27 +01:00
dependabot[bot]
e9e18a6f1b build(deps-dev): bump @types/react-redux from 7.1.31 to 7.1.33
Bumps [@types/react-redux](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-redux) from 7.1.31 to 7.1.33.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-redux)

---
updated-dependencies:
- dependency-name: "@types/react-redux"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-09 10:39:34 +01:00
dependabot[bot]
7fd969665d build(deps): bump react-redux from 8.1.3 to 9.1.0
Bumps [react-redux](https://github.com/reduxjs/react-redux) from 8.1.3 to 9.1.0.
- [Release notes](https://github.com/reduxjs/react-redux/releases)
- [Changelog](https://github.com/reduxjs/react-redux/blob/master/CHANGELOG.md)
- [Commits](https://github.com/reduxjs/react-redux/compare/v8.1.3...v9.1.0)

---
updated-dependencies:
- dependency-name: react-redux
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-08 11:23:38 +01:00
dependabot[bot]
e978a6c3c2 build(deps-dev): bump @babel/preset-env from 7.23.6 to 7.23.9
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.23.6 to 7.23.9.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.9/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-08 09:47:49 +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
dependabot[bot]
34feb3fe60 build(deps): bump @patternfly/patternfly from 5.1.0 to 5.2.0
Bumps [@patternfly/patternfly](https://github.com/patternfly/patternfly) from 5.1.0 to 5.2.0.
- [Release notes](https://github.com/patternfly/patternfly/releases)
- [Changelog](https://github.com/patternfly/patternfly/blob/main/release.config.js)
- [Commits](https://github.com/patternfly/patternfly/compare/v5.1.0...v5.2.0)

---
updated-dependencies:
- dependency-name: "@patternfly/patternfly"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-05 12:31:30 +01:00
dependabot[bot]
dc2a927004 build(deps-dev): bump sass-loader from 14.0.0 to 14.1.0
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 14.0.0 to 14.1.0.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v14.0.0...v14.1.0)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-05 11:53:22 +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
dependabot[bot]
7a44b6511b build(deps-dev): bump eslint-plugin-testing-library from 6.1.0 to 6.2.0
Bumps [eslint-plugin-testing-library](https://github.com/testing-library/eslint-plugin-testing-library) from 6.1.0 to 6.2.0.
- [Release notes](https://github.com/testing-library/eslint-plugin-testing-library/releases)
- [Changelog](https://github.com/testing-library/eslint-plugin-testing-library/blob/main/.releaserc.json)
- [Commits](https://github.com/testing-library/eslint-plugin-testing-library/compare/v6.1.0...v6.2.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-testing-library
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-02 12:56:09 +01:00
dependabot[bot]
acf3d8a885 build(deps-dev): bump @testing-library/user-event from 14.5.1 to 14.5.2
Bumps [@testing-library/user-event](https://github.com/testing-library/user-event) from 14.5.1 to 14.5.2.
- [Release notes](https://github.com/testing-library/user-event/releases)
- [Changelog](https://github.com/testing-library/user-event/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/user-event/compare/v14.5.1...v14.5.2)

---
updated-dependencies:
- dependency-name: "@testing-library/user-event"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-02 12:51:46 +01:00
Jakub Rusz
07022953ca pr_check: remove content-sources from the deployment 2024-02-02 12:44:11 +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
dependabot[bot]
0e3b5d9359 build(deps-dev): bump uuid from 9.0.0 to 9.0.1
Bumps [uuid](https://github.com/uuidjs/uuid) from 9.0.0 to 9.0.1.
- [Changelog](https://github.com/uuidjs/uuid/blob/main/CHANGELOG.md)
- [Commits](https://github.com/uuidjs/uuid/compare/v9.0.0...v9.0.1)

---
updated-dependencies:
- dependency-name: uuid
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-31 09:29:56 +01:00
dependabot[bot]
dcb311448c build(deps-dev): bump @typescript-eslint/parser from 6.19.0 to 6.20.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 6.19.0 to 6.20.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.20.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-31 08:35:54 +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
dependabot[bot]
e3fec33003 build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 6.14.0 to 6.20.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.20.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-30 10:12:14 +01:00
dependabot[bot]
e305d77a69 build(deps-dev): bump @babel/core from 7.23.7 to 7.23.9
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.23.7 to 7.23.9.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.9/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-30 09:32:44 +01:00
dependabot[bot]
7f2fb3476d build(deps-dev): bump @babel/plugin-transform-runtime
Bumps [@babel/plugin-transform-runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-transform-runtime) from 7.23.6 to 7.23.9.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.9/packages/babel-plugin-transform-runtime)

---
updated-dependencies:
- dependency-name: "@babel/plugin-transform-runtime"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-29 11:08:43 +01:00
Jakub Rusz
d6773fbae1 Update architecture url 2024-01-29 10:20:43 +01:00
dependabot[bot]
0842e521f2 build(deps): bump @reduxjs/toolkit from 2.0.1 to 2.1.0
Bumps [@reduxjs/toolkit](https://github.com/reduxjs/redux-toolkit) from 2.0.1 to 2.1.0.
- [Release notes](https://github.com/reduxjs/redux-toolkit/releases)
- [Commits](https://github.com/reduxjs/redux-toolkit/compare/v2.0.1...v2.1.0)

---
updated-dependencies:
- dependency-name: "@reduxjs/toolkit"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-29 08:41:12 +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
dependabot[bot]
929955d812 build(deps-dev): bump @babel/eslint-parser from 7.23.3 to 7.23.9
Bumps [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) from 7.23.3 to 7.23.9.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.9/eslint/babel-eslint-parser)

---
updated-dependencies:
- dependency-name: "@babel/eslint-parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-26 09:49:03 +01:00
dependabot[bot]
16d8a32617 build(deps-dev): bump @testing-library/jest-dom from 6.1.5 to 6.3.0
Bumps [@testing-library/jest-dom](https://github.com/testing-library/jest-dom) from 6.1.5 to 6.3.0.
- [Release notes](https://github.com/testing-library/jest-dom/releases)
- [Changelog](https://github.com/testing-library/jest-dom/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/jest-dom/compare/v6.1.5...v6.3.0)

---
updated-dependencies:
- dependency-name: "@testing-library/jest-dom"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-26 08:43:40 +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
dependabot[bot]
e2591bf001 build(deps-dev): bump css-loader from 6.9.0 to 6.9.1
Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 6.9.0 to 6.9.1.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/css-loader/compare/v6.9.0...v6.9.1)

---
updated-dependencies:
- dependency-name: css-loader
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-25 10:49:43 +01:00
Amir
017f5bfb51 feat(HMS-3391): add blueprint onclick handler 2024-01-25 09:28:34 +01:00
dependabot[bot]
dca9225df5 build(deps): bump @patternfly/react-table from 5.0.1 to 5.1.2
Bumps [@patternfly/react-table](https://github.com/patternfly/patternfly-react) from 5.0.1 to 5.1.2.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-table@5.0.1...@patternfly/react-table@5.1.2)

---
updated-dependencies:
- dependency-name: "@patternfly/react-table"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-25 09:05:37 +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
dependabot[bot]
d986b80883 build(deps-dev): bump copy-webpack-plugin from 11.0.0 to 12.0.2
Bumps [copy-webpack-plugin](https://github.com/webpack-contrib/copy-webpack-plugin) from 11.0.0 to 12.0.2.
- [Release notes](https://github.com/webpack-contrib/copy-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/copy-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/copy-webpack-plugin/compare/v11.0.0...v12.0.2)

---
updated-dependencies:
- dependency-name: copy-webpack-plugin
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-24 16:13:39 +01:00
dependabot[bot]
4bc6291ac1 build(deps-dev): bump sass-loader from 13.3.2 to 14.0.0
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 13.3.2 to 14.0.0.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v13.3.2...v14.0.0)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-24 15:21:08 +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
regexowl
c7a80d0e85 node: Bump NODE_BUILD_VERSION
This bumps NODE_BUILD_VERSION in `build_deploy` and `pr_check` scripts from the default 16 to version 18.
2024-01-24 11:44:39 +01:00
Ondrej Ezr
25144511ad api: split pulling API changes and regenerating new API
For checking wether the api was tempered with, we need separate action,
that just checks the code against the currently pulled spec.

This introduces two subactions for `npx api`.
These are `npx api:generate` and `npx api:pull`.
2024-01-23 12:39:32 +01:00
lucasgarfield
82e096a19c Travis: Remove Travis CI
We have replaced the Travis CI with a Github action, `dev-checks.yml`.
Travis is less reliable than the Github dev checks, recently it has been
flaking on timeouts. Additionally, removing it will allow us to move the
owner of the image-builder-frontend repository from RedHatInsights to
osbuild.
2024-01-22 16:37:35 +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
7982ec4981 api: Modify api.sh so it downloads image builder api spec
Use curl to download `api.yaml` from `osbuild/image-builder` in
`api.sh`.

Now we do not need to manually download `api.yaml` from `image-builder`
before running `npm run api`.
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
dependabot[bot]
86e75f525b build(deps-dev): bump @testing-library/dom from 9.3.3 to 9.3.4
Bumps [@testing-library/dom](https://github.com/testing-library/dom-testing-library) from 9.3.3 to 9.3.4.
- [Release notes](https://github.com/testing-library/dom-testing-library/releases)
- [Changelog](https://github.com/testing-library/dom-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/dom-testing-library/compare/v9.3.3...v9.3.4)

---
updated-dependencies:
- dependency-name: "@testing-library/dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-22 08:52:29 +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
dependabot[bot]
3db7995194 build(deps-dev): bump @typescript-eslint/parser from 6.18.1 to 6.19.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 6.18.1 to 6.19.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.19.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-19 08:47:34 +01:00
dependabot[bot]
dc747eaefa build(deps): bump @scalprum/react-core from 0.5.1 to 0.6.6
Bumps [@scalprum/react-core](https://github.com/scalprum/scaffloding) from 0.5.1 to 0.6.6.
- [Release notes](https://github.com/scalprum/scaffloding/releases)
- [Changelog](https://github.com/scalprum/scaffolding/blob/main/release.config.js)
- [Commits](https://github.com/scalprum/scaffloding/commits/@scalprum/react-core-0.6.6)

---
updated-dependencies:
- dependency-name: "@scalprum/react-core"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-18 08:40: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
dependabot[bot]
1706448670 build(deps-dev): bump @types/react from 18.2.36 to 18.2.48
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.2.36 to 18.2.48.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-17 08:50:36 +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
dependabot[bot]
14d80945e7 build(deps-dev): bump moment from 2.29.4 to 2.30.1
Bumps [moment](https://github.com/moment/moment) from 2.29.4 to 2.30.1.
- [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/moment/moment/compare/2.29.4...2.30.1)

---
updated-dependencies:
- dependency-name: moment
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-16 09:00:07 +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
lucasgarfield
698037a7dc V2Wizard: Uncomment relevant GCP tests and add data-testids
The tests have not been modified at this point, only uncommented, so the
next commit will have a clear diff.

Some data-testids were added to radio selectors and the Google principle
input as well for use in the tests.
2024-01-15 16:42:28 +01:00
lucasgarfield
5a3726a4c8 V2Wizard: Update GCP validator and state management
The e-mail validator now requires a domain.

Switching from 'withGoogle' to 'withInsights' now sets the other GCP
related options to 'undefined' in order to keep the store state such
that it accurately reflects the current wizard state.

This is done in the reducer, not via a listener. That is a bit
inconsistent with the current listeners in place but this is an evolving
design and the inconsistency is acceptable for now. We may either accept
it, move the reducer actions here into listeners, or move the existing
listeners into reducers at some point in the future.
2024-01-15 16:42:28 +01:00
lucasgarfield
7c8cfe7f63 V2Wizard: Add <Gcp> step
`<Aws>` state is now managed with RTK instead of DDF.
2024-01-15 16:42:28 +01:00
dependabot[bot]
2caa1e8f72 build(deps-dev): bump @typescript-eslint/parser from 6.13.0 to 6.18.1
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 6.13.0 to 6.18.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.18.1/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-15 08:59:21 +01:00
mgold1234
3f51acdb85 Oscap: convert oscap javaScript file to typeScript file
this commit convert oscap file from JavaScript to TypeScript
2024-01-12 13:12:33 +01:00
dependabot[bot]
ad2a6151e1 build(deps-dev): bump @types/react-dom from 18.2.17 to 18.2.18
Bumps [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom) from 18.2.17 to 18.2.18.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom)

---
updated-dependencies:
- dependency-name: "@types/react-dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-12 08:51:12 +01:00
Sanne Raymaekers
54a560670e api: update image builder api
Include the experimental blueprint endpoints.
2024-01-11 15:15:37 +01:00
lucasgarfield
9953207d25 V2Wizard: Refactor Aws step
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.
2024-01-11 09:22:18 +01:00
lucasgarfield
617b36ba4f V2Wizard: Enabled tests for <Aws> substep of Image Output step
Most tests now passing, the one test that requires submission (not
implemented yet) is still disabled.
2024-01-11 09:22:18 +01:00
lucasgarfield
091c34431e V2Wizard: Implement <Aws> subset of Image Output step
DDF has been dropped, RTK being used for state management now.
2024-01-11 09:22:18 +01:00
lucasgarfield
e5c55828e3 V2Wizard: Copy <AwsSourcesSelect> and convert to Typescript
No changes made, file simply copied so future commits have clear diffs
when dropping DDF.
2024-01-11 09:22:18 +01:00
lucasgarfield
f778b5431c V2Wizard: Create foundation for Target Environments substep AWS
Substep for an AWS target environment created in wizard, component to
follow in subsequent commit.
2024-01-11 09:22:18 +01:00
dependabot[bot]
9a0e8da0f1 build(deps-dev): bump @babel/core from 7.23.6 to 7.23.7
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.23.6 to 7.23.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.7/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-11 08:58:55 +01:00
dependabot[bot]
6e33a19706 build(deps): bump @data-driven-forms/react-form-renderer
Bumps [@data-driven-forms/react-form-renderer](https://github.com/data-driven-forms/react-forms/tree/HEAD/packages/react-form-renderer) from 3.22.1 to 3.22.2.
- [Release notes](https://github.com/data-driven-forms/react-forms/releases)
- [Commits](https://github.com/data-driven-forms/react-forms/commits/v3.22.2/packages/react-form-renderer)

---
updated-dependencies:
- dependency-name: "@data-driven-forms/react-form-renderer"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-11 08:17:14 +01:00
dependabot[bot]
8ac60d1418 build(deps): bump redux-promise-middleware from 6.1.3 to 6.2.0
Bumps [redux-promise-middleware](https://github.com/pburtchaell/redux-promise-middleware) from 6.1.3 to 6.2.0.
- [Release notes](https://github.com/pburtchaell/redux-promise-middleware/releases)
- [Commits](https://github.com/pburtchaell/redux-promise-middleware/compare/6.1.3...6.2.0)

---
updated-dependencies:
- dependency-name: redux-promise-middleware
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-10 09:49:06 +01:00
dependabot[bot]
0dff24ee32 build(deps-dev): bump css-loader from 6.8.1 to 6.9.0
Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 6.8.1 to 6.9.0.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/css-loader/compare/v6.8.1...v6.9.0)

---
updated-dependencies:
- dependency-name: css-loader
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-10 08:29:27 +01:00
mgold1234
a0a08ff5e8 app: useEffect warning fixes
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.
2024-01-09 14:23:10 +01:00
dependabot[bot]
b6ff3323d5 build(deps): bump follow-redirects from 1.15.3 to 1.15.4
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.3 to 1.15.4.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.3...v1.15.4)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-09 10:20:47 +01:00
dependabot[bot]
0fd8c937d4 build(deps): bump classnames from 2.3.2 to 2.5.1
Bumps [classnames](https://github.com/JedWatson/classnames) from 2.3.2 to 2.5.1.
- [Changelog](https://github.com/JedWatson/classnames/blob/main/HISTORY.md)
- [Commits](https://github.com/JedWatson/classnames/compare/v2.3.2...v2.5.1)

---
updated-dependencies:
- dependency-name: classnames
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-09 09:56:24 +01:00
lucasgarfield
e5f37450a1 V2Wizard: Enable <TargetEnvironment> specific tests
These tests have been updated to satisfy Typescript and are passing.
2024-01-08 11:59:23 +01:00
lucasgarfield
0acb93fe12 V2Wizard: Copy TargetEnvironment specific tests
No changes have been made to this file yet, it has just been copied for
the V2 wizard and converted to .tsx.
2024-01-08 11:59:23 +01:00
lucasgarfield
0153b98d25 V2Wizard: Enable tests for Image Output step
Tests for the Image Output step are enabled and passing.
2024-01-08 11:59:23 +01:00
lucasgarfield
f41f3c51b7 V2Wizard: Add <CentOSAcknowledgement> to Target Output step
The state from RTK is now used to determine whether or not to display
the CentOS acknowledgement.
2024-01-08 11:59:23 +01:00
lucasgarfield
779416785f V2Wizard: Correctly enable/disable Next button for Image Output step
The 'next' button is now disabled if no target environments are selected
on the Image Output step.
2024-01-08 11:59:23 +01:00
lucasgarfield
788a63ead7 V2Wizard: Add listeners for <TargetEnvironment> in Image Output step
Listeners are used to monitor changes to the release (aka distribution)
and architecture. If either of these values is changed, the listener
will correct the list of target environments by removing unsupported
targets. e.g. aarch64 images do not support azure, if azure is a
selected target and the arch is changed from x86 to aarch64, azure will
be removed from the list of selected targets.
2024-01-08 11:59:23 +01:00
lucasgarfield
a3ef0cc2f7 V2Wizard: Add <TargetEnvironment> to Image Output step
DDF has been dropped from `<TargetEnvironment>`, state is managed with
RTK.
2024-01-08 11:59:23 +01:00
lucasgarfield
937219ba51 V2Wizard: Add <ArchSelect> to Image Output step
This commit drops the DDF dependency from the `<ArchSelect>`.
2024-01-08 11:59:23 +01:00
lucasgarfield
1f38ce5187 V2Wizard: Add <ReleaseLifecycle> to Image Output step
The `<ReleaseLifecycle>` component has dropped DDF and now uses RTK.
2024-01-08 11:59:23 +01:00
lucasgarfield
ad2bd7a31a V2Wizard: Add <ReleaseSelect> to Image Output step
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.
2024-01-08 11:59:23 +01:00
lucasgarfield
2465ab4b84 V2Wizard: Add <ImageOutput> skeleton
Adds the foundation for the image output step.
2024-01-08 11:59:23 +01:00
lucasgarfield
b446f1d1e4 V2Wizard: Copy components needed for image output step
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.
2024-01-08 11:59:23 +01:00
lucasgarfield
bb5ff08e2c V2Wizard: Restore tests
Uncomment all tests that should be passing up to this point in the V2
wizard development.
2024-01-08 11:24:54 +01:00
lucasgarfield
bb6bf51068 V2Wizard: Add <CreateImageWizard>
Adds the scaffolding for the V2 wizard, only empty Image output and
Review steps present at this time.
2024-01-08 11:24:54 +01:00
lucasgarfield
58fcdc0dab V2Wizard/Store: Add wizard slice
The V2 wizard's state will be managed using RTK. Adding a slice for the
wizard lays the groundwork.
2024-01-08 11:24:54 +01:00
lucasgarfield
f089080cb1 V2Wizard: Copy original wizard tests
The tests have been converted from .js to .tsx and all lines have been
commented out. As steps are added to the wizard, the relevant lines will
be uncommented. The V2 wizard can be considered finish when all
commented lines have been removed. Proceeding this way (as opposed to
starting with an empty test file and adding tests back) will help us
ensure we do not accidently 'drop' a test.
2024-01-08 11:24:54 +01:00
lucasgarfield
e1f66dd444 V2Wizard: Clean up for a fresh start
To make code reviews easier, these files are being removed for now. They
will be added back over time in a way that results in clearer diffs.
2024-01-08 11:24:54 +01:00
dependabot[bot]
247c436b90 build(deps): bump @data-driven-forms/react-form-renderer
Bumps [@data-driven-forms/react-form-renderer](https://github.com/data-driven-forms/react-forms/tree/HEAD/packages/react-form-renderer) from 3.22.0 to 3.22.1.
- [Release notes](https://github.com/data-driven-forms/react-forms/releases)
- [Commits](https://github.com/data-driven-forms/react-forms/commits/v3.22.1/packages/react-form-renderer)

---
updated-dependencies:
- dependency-name: "@data-driven-forms/react-form-renderer"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-08 09:00:24 +01:00
regexowl
3ac435db85 ImagesTable: Remove unused Skeleton
This removes an unused compoment from the imports.
2024-01-05 12:25:10 +01:00
regexowl
9cae908341 ESLint: Remove temporary rule overrides
Some rule overrides were previously added when the ruleset got updated as more time to update the code was needed.

This removes some of the temporary rules.
2024-01-05 12:25:10 +01:00
regexowl
1bbfa4d823 deps: Bump @redhat-cloud-services/frontend-components to 4.2.1
This bumps @redhat-cloud-services/frontend-components from 4.0.10 to version 4.2.1 and also adds @redhat-cloud-services module to "transformIgnorePatterns" to eliminate problems with transpiling.
2024-01-05 12:07:49 +01:00
dependabot[bot]
943a2748ae build(deps): bump @redhat-cloud-services/frontend-components-notifications
Bumps [@redhat-cloud-services/frontend-components-notifications](https://github.com/RedHatInsights/frontend-components) from 4.0.4 to 4.1.0.
- [Commits](https://github.com/RedHatInsights/frontend-components/commits)

---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-notifications"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-05 10:20:16 +01:00
regexowl
b3fade4a5f fixtures: Update repositories fixture based on the API generated code
This updates the type of `testingRepos` fixtures from `ApiRepositoryResponse[]` to `ApiRepositoryResponseRead[]`.

The new type was added automatically after bumping @rtk-query/codegen-openapi to a higher version. The difference between the types is the uuid field which is not a part of `ApiRepositoryResponse[]`.
2024-01-05 09:41:10 +01:00
regexowl
2ae670bf35 store: Run code generation after codegen-openapi version bump
These changes were made by running `npm run api` after a version bump of @rtk-query/codegen-openapi from 1.0.0 to 1.2.0
2024-01-05 09:41:10 +01:00
regexowl
812e5faea9 deps: Bump @rtk-query/codegen-openapi from 1.0.0 to 1.2.0
This bumps @rtk-query/codegen-openapi to version 1.2.0
2024-01-05 09:41:10 +01:00
mgold1234
1b39c30dc2 wizard/oscap: update the oscap step to latest specifications
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
2024-01-04 13:38:27 +01:00
dependabot[bot]
de51a14b1f build(deps-dev): bump jest-environment-jsdom from 29.6.3 to 29.7.0
Bumps [jest-environment-jsdom](https://github.com/jestjs/jest/tree/HEAD/packages/jest-environment-jsdom) from 29.6.3 to 29.7.0.
- [Release notes](https://github.com/jestjs/jest/releases)
- [Changelog](https://github.com/jestjs/jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jestjs/jest/commits/v29.7.0/packages/jest-environment-jsdom)

---
updated-dependencies:
- dependency-name: jest-environment-jsdom
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-04 11:40:51 +01:00
regexowl
cf3b8acc6a ESLint: Temporarily disable non actionable rules
This temporarily disables jsx-a11y/no-autofocus rule. A comment marking the disabled rule was added and another disabled rule was moved under it as well.
2024-01-04 11:30:38 +01:00
regexowl
6d0599ead4 Travis: Disable npm cache
This disables npm caching for all Travis runs. The effect on the duration of the run is not significant and it should prevent problems with dirty cache in the future.
2024-01-04 11:26:53 +01:00
mgold1234
f597b6b854 fsc: fix array-callback-return linting warnings
this comit fixes the array-callback warning by changing map to foreach
and return null to the second map
2024-01-03 16:15:53 +01:00
dependabot[bot]
4763024e68 build(deps-dev): bump babel-jest from 29.6.2 to 29.7.0
Bumps [babel-jest](https://github.com/jestjs/jest/tree/HEAD/packages/babel-jest) from 29.6.2 to 29.7.0.
- [Release notes](https://github.com/jestjs/jest/releases)
- [Changelog](https://github.com/jestjs/jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jestjs/jest/commits/v29.7.0/packages/babel-jest)

---
updated-dependencies:
- dependency-name: babel-jest
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-03 10:11:21 +01:00
dependabot[bot]
5b4b61d91e build(deps-dev): bump sass from 1.66.1 to 1.69.7
Bumps [sass](https://github.com/sass/dart-sass) from 1.66.1 to 1.69.7.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.66.1...1.69.7)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-03 09:29:34 +01:00
mgold1234
262ac6d3be ImagesTable: fix grey box under AMI when image build is in progress
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.
2024-01-03 08:51:14 +01:00
dependabot[bot]
1f4208bc3b build(deps-dev): bump ts-node from 10.9.1 to 10.9.2
Bumps [ts-node](https://github.com/TypeStrong/ts-node) from 10.9.1 to 10.9.2.
- [Release notes](https://github.com/TypeStrong/ts-node/releases)
- [Changelog](https://github.com/TypeStrong/ts-node/blob/main/development-docs/release-template.md)
- [Commits](https://github.com/TypeStrong/ts-node/compare/v10.9.1...v10.9.2)

---
updated-dependencies:
- dependency-name: ts-node
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-22 08:57:56 +01:00
regexowl
6346cc50e4 workflows: Add check for manual changes to API
This adds a check to ensure that the code generated automatically by `npm run api` has no manual changes.
2023-12-21 18:51:04 +01:00
regexowl
d96ebc9b3e store/test: Remove unused code
This cleans up the code base by removing actions and slices which are no longer in use.
2023-12-21 15:48:36 +01:00
dependabot[bot]
7716cbc59f build(deps-dev): bump webpack-bundle-analyzer from 4.9.1 to 4.10.1
Bumps [webpack-bundle-analyzer](https://github.com/webpack-contrib/webpack-bundle-analyzer) from 4.9.1 to 4.10.1.
- [Release notes](https://github.com/webpack-contrib/webpack-bundle-analyzer/releases)
- [Changelog](https://github.com/webpack-contrib/webpack-bundle-analyzer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/webpack-bundle-analyzer/compare/v4.9.1...v4.10.1)

---
updated-dependencies:
- dependency-name: webpack-bundle-analyzer
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-21 10:07:56 +01:00
dependabot[bot]
4a641e8b16 build(deps-dev): bump whatwg-fetch from 3.6.17 to 3.6.20
Bumps [whatwg-fetch](https://github.com/github/fetch) from 3.6.17 to 3.6.20.
- [Release notes](https://github.com/github/fetch/releases)
- [Changelog](https://github.com/JakeChampion/fetch/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/fetch/compare/v3.6.17...v3.6.20)

---
updated-dependencies:
- dependency-name: whatwg-fetch
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-21 09:18:17 +01:00
dependabot[bot]
0d30a96587 build(deps): bump @unleash/proxy-client-react from 3.6.0 to 4.1.1
Bumps [@unleash/proxy-client-react](https://github.com/Unleash/unleash-proxy-react) from 3.6.0 to 4.1.1.
- [Release notes](https://github.com/Unleash/unleash-proxy-react/releases)
- [Changelog](https://github.com/Unleash/proxy-client-react/blob/main/Changelog.md)
- [Commits](https://github.com/Unleash/unleash-proxy-react/compare/v3.6.0...v4.1.1)

---
updated-dependencies:
- dependency-name: "@unleash/proxy-client-react"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-20 09:56:38 +01:00
dependabot[bot]
14b00e3fcd build(deps-dev): bump @testing-library/user-event from 14.4.3 to 14.5.1
Bumps [@testing-library/user-event](https://github.com/testing-library/user-event) from 14.4.3 to 14.5.1.
- [Release notes](https://github.com/testing-library/user-event/releases)
- [Changelog](https://github.com/testing-library/user-event/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/user-event/compare/v14.4.3...v14.5.1)

---
updated-dependencies:
- dependency-name: "@testing-library/user-event"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-20 08:58:38 +01:00
regexowl
850e77eb01 API/test: Remove getVersion() Axios call
This removes `getVersion()` API call previously used in Axios.
2023-12-19 15:36:49 +01:00
dependabot[bot]
27ebbdb24a build(deps-dev): bump stylelint from 15.10.3 to 15.11.0
Bumps [stylelint](https://github.com/stylelint/stylelint) from 15.10.3 to 15.11.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/15.10.3...15.11.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-19 11:56:10 +01:00
dependabot[bot]
bb36abacc9 build(deps-dev): bump eslint-plugin-import from 2.29.0 to 2.29.1
Bumps [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) from 2.29.0 to 2.29.1.
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.29.0...v2.29.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-19 11:04:29 +01:00
regexowl
b427c1a310 Wizard/test: Remove unused variables
This removes unused variable from the code.
2023-12-19 09:17:01 +01:00
dependabot[bot]
be6e867b3c build(deps): bump @patternfly/react-core from 5.1.1 to 5.1.2
Bumps [@patternfly/react-core](https://github.com/patternfly/patternfly-react) from 5.1.1 to 5.1.2.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@5.1.1...@patternfly/react-core@5.1.2)

---
updated-dependencies:
- dependency-name: "@patternfly/react-core"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-18 11:42:17 +01:00
dependabot[bot]
57024b0468 build(deps-dev): bump chart.js from 4.4.0 to 4.4.1
Bumps [chart.js](https://github.com/chartjs/Chart.js) from 4.4.0 to 4.4.1.
- [Release notes](https://github.com/chartjs/Chart.js/releases)
- [Commits](https://github.com/chartjs/Chart.js/compare/v4.4.0...v4.4.1)

---
updated-dependencies:
- dependency-name: chart.js
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-18 10:53:24 +01:00
Thomas Lavocat
33723c8a7d api/imageBuilder: fix the alert in case of failure
When a compose request was failing, the promises callback function was
crashing. The reason was because of a misuse of the error object. This
commit simply puts back the correct `path` to access the values within
the error object to fix it.
2023-12-18 09:03:30 +01:00
dependabot[bot]
8c0a39c78b build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 6.9.1 to 6.14.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.14.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-15 09:35:46 +01:00
dependabot[bot]
f503ff3e1c build(deps-dev): bump @babel/preset-env from 7.23.3 to 7.23.6
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.23.3 to 7.23.6.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.6/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-15 08:40:12 +01:00
dependabot[bot]
a568df45e3 build(deps-dev): bump @testing-library/jest-dom from 6.1.4 to 6.1.5
Bumps [@testing-library/jest-dom](https://github.com/testing-library/jest-dom) from 6.1.4 to 6.1.5.
- [Release notes](https://github.com/testing-library/jest-dom/releases)
- [Changelog](https://github.com/testing-library/jest-dom/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/jest-dom/compare/v6.1.4...v6.1.5)

---
updated-dependencies:
- dependency-name: "@testing-library/jest-dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-14 09:47:16 +01:00
dependabot[bot]
155bb23aa3 build(deps-dev): bump @types/jest from 29.5.10 to 29.5.11
Bumps [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest) from 29.5.10 to 29.5.11.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest)

---
updated-dependencies:
- dependency-name: "@types/jest"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-14 08:54:46 +01:00
Thomas Lavocat
888630acea wizard: remove unused code from the implementation
There were some leftovers that needs to be removed. This commit simply
cleans them up.
2023-12-13 16:36:21 +01:00
dependabot[bot]
f46bdb423c build(deps-dev): bump @babel/core from 7.23.3 to 7.23.6
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.23.3 to 7.23.6.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.6/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-13 09:50:55 +01:00
dependabot[bot]
ddc496a99a build(deps-dev): bump jest-fail-on-console from 3.1.1 to 3.1.2
Bumps [jest-fail-on-console](https://github.com/ValentinH/jest-fail-on-console) from 3.1.1 to 3.1.2.
- [Release notes](https://github.com/ValentinH/jest-fail-on-console/releases)
- [Commits](https://github.com/ValentinH/jest-fail-on-console/compare/v3.1.1...v3.1.2)

---
updated-dependencies:
- dependency-name: jest-fail-on-console
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-13 09:03:29 +01:00
regexowl
e7dee1edfe api: Remove unused Axios API calls
This removes Axios API calls which were replaced by RTK Query.
2023-12-12 13:09:31 +01:00
regexowl
79a0060697 store: Remove actions.js
This removes the `actions.js` file and its mocking from the LandingPage test as these actions are no longer used.
2023-12-12 12:25:16 +01:00
dependabot[bot]
c4d2444d44 build(deps-dev): bump @babel/plugin-transform-runtime
Bumps [@babel/plugin-transform-runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-transform-runtime) from 7.22.10 to 7.23.6.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.6/packages/babel-plugin-transform-runtime)

---
updated-dependencies:
- dependency-name: "@babel/plugin-transform-runtime"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-12 10:59:09 +01:00
dependabot[bot]
659355cea4 build(deps-dev): bump @babel/eslint-parser from 7.22.9 to 7.23.3
Bumps [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) from 7.22.9 to 7.23.3.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.3/eslint/babel-eslint-parser)

---
updated-dependencies:
- dependency-name: "@babel/eslint-parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-12 08:48:43 +01:00
dependabot[bot]
99908d9702 build(deps-dev): bump eslint from 8.54.0 to 8.55.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.54.0 to 8.55.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.54.0...v8.55.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-11 16:36:54 +01:00
regexowl
3473d98511 dependabot: Bump open PR limit
This bumps a maximum number of opened dependabot PRs as there are currently three open PRs in need of manual revision. Those are blocking any other bumps from being even opened.

The bump should be temporary.
2023-12-11 15:42:27 +01:00
lucasgarfield
fabd3e015a redux store: define typed useSelector and useDispatch hooks
From the RTK docs:
```
Using configureStore should not need any additional typings. You will,
however, want to extract the RootState type and the Dispatch type so
that they can be referenced as needed. Inferring these types from the
store itself means that they correctly update as you add more state
slices or modify middleware settings.

----------------------------------------------------------------------

While it's possible to import the RootState and
AppDispatch types into each component, it's better to create pre-typed
versions of the useDispatch and useSelector hooks for usage in your
application. This is important for a couple reasons:

    For useSelector, it saves you the need to type (state: RootState)
    every time

    For useDispatch, the default Dispatch type does not know about
    thunks or other middleware. In order to correctly dispatch thunks,
    you need to use the specific customized AppDispatch type from the
    store that includes the thunk middleware types, and use that with
    useDispatch. Adding a pre-typed useDispatch hook keeps you from
    forgetting to import AppDispatch where it's needed.
```
source:
https://react-redux.js.org/using-react-redux/usage-with-typescript#define-root-state-and-dispatch-types
2023-12-08 09:37:25 +01:00
lucasgarfield
8d47e52868 dev deps: add @types/react-redux
This dependency adds Typescript types for Redux Toolkit. It is necessary if we wish to start using RTK for state management (with .tsx files), which we very likely will for HMS-2861 (v2 wizard).
2023-12-08 09:37:25 +01:00
regexowl
44bb6f62ff test: Add a test checking if release lifecycle chart renders correctly
This adds a test that checks if the release lifecycle chart rendered only when RHEL 8 release is selected.
2023-12-07 19:39:58 +01:00
regexowl
c11f80188e test: Update release select option to partial match
With description added to the RHEL release options in Release select every query using name needed to be updated from full to partial match.
2023-12-07 19:39:58 +01:00
regexowl
014a0c1d70 Wizard: Add description to RHEL release options
This adds a description to RHEL options in the Release select on Image Output step as per mocks.
2023-12-07 19:39:58 +01:00
regexowl
f6d1b12b3c Wizard: Add annotation for current date
This adds a line annotation to mark the current date.
2023-12-07 19:39:58 +01:00
regexowl
51f68bda34 test: Mock ResizeObserver
This adds mocked ResizeObserver to the jest setup so the tests don't fail on charts created with Chart.js.
2023-12-07 19:39:58 +01:00
regexowl
fd30e5b634 Wizard: Add release lifecycle charts
This adds information about release lifecycle to the Image Output step of the Wizard. Summary is also shown on the Review step.
2023-12-07 19:39:58 +01:00
regexowl
1ec7d886e4 deps: Install Chart.js
Install:
- charting library Chart.js (https://www.chartjs.org/docs/latest/)
- React components for Chart.js react-chartjs-2 (https://react-chartjs-2.js.org/)
- Moment.js to allow the use of time scale for the axis (https://momentjs.com/)
- adapter allowing the use of Moment.js with Chart.js chartjs-adapter-moment (https://github.com/chartjs/chartjs-adapter-moment)
- a plugin for drawing annotations in Chart.js charts (https://www.chartjs.org/chartjs-plugin-annotation)
2023-12-07 19:39:58 +01:00
Sanne Raymaekers
2b29275c2a CreateImageWizard: move oci to stable
Move the oracle cloud infrastructure PR to stable.
2023-12-07 17:01:51 +01:00
regexowl
3e07472826 Wizard/ImagesTable/test: Change "VMWare" to "VMware"
The "w" in VMware should be lower case, this updates it in all places.
2023-12-05 13:20:42 +01:00
Sanne Raymaekers
cea1caf175 CreateImageWizard: proprely gate WSL images
`isBeta` is a function, so the check would also return true in stable.
2023-12-04 15:06:28 +01:00
regexowl
e011c4ba0b test: Await asynchronous setUp()
This adds await to call of asynchronous `setUp()` function. Previously this wasn't awaited which sometimes caused the tests to continue without being properly set up first.
2023-12-04 11:28:16 +01:00
lucasgarfield
c7dd831645 API: Update image-builder API
This commit updates the image-builder API due to these two recent
changes:

A new type added for the ClientId, used when differentiating between API
and UI users.
fce3d1c355

OpenSCAP profile names and descriptions.
1d292917d1
2023-12-04 10:48:29 +01:00
Sanne Raymaekers
31d286aac3 test/CreateImageWizard: Test compose requests sent by wizard 2023-12-01 13:11:07 +01:00
Sanne Raymaekers
ae7178158e CreateImageWizard: Fix passing gcp upload_options
Upload options were added in the wrong place, this inserts them back
into the correct place.

Also see #1355.
2023-12-01 13:11:07 +01:00
dependabot[bot]
54770c766d build(deps-dev): bump @adobe/css-tools from 4.3.1 to 4.3.2
Bumps [@adobe/css-tools](https://github.com/adobe/css-tools) from 4.3.1 to 4.3.2.
- [Changelog](https://github.com/adobe/css-tools/blob/main/History.md)
- [Commits](https://github.com/adobe/css-tools/commits)

---
updated-dependencies:
- dependency-name: "@adobe/css-tools"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-01 08:27:38 +01:00
Tom Koscielniak
f52fa6d851 Add iqe trigger integration 2023-11-30 14:37:50 +01:00
Lucas Garfield
223be1f3fd Update src/Components/CreateImageWizard/steps/fileSystemConfiguration.js
Co-authored-by: Klara Simickova <49452678+regexowl@users.noreply.github.com>
2023-11-29 12:52:48 +01:00
lucasgarfield
f5039dea3c Wizard: Fix HMS-2036, bug in file system customization steps
Information about automatic partioning was also being displayed when
manual partioning was selected. This commit fixes the bug.
2023-11-29 12:52:48 +01:00
regexowl
39531bf2bb api: Update imageBuilder api schema
This includes an update to the imageBuilder api schema and changes generated by `npm run api`.
2023-11-28 13:01:00 +01:00
regexowl
ab1987660e Wizard: Add client_id to compose requests
This adds `client_id` value to compose requests for the purpose of differentiating between images created in UI and those created directly via api.
2023-11-28 13:01:00 +01:00
dependabot[bot]
df5a06ff86 build(deps-dev): bump @typescript-eslint/parser from 6.2.1 to 6.13.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 6.2.1 to 6.13.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.13.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-28 08:36:57 +01:00
regexowl
62673813e2 test: Remove out-of-date comments
This cleans up comments in tests and removes all that are no longer relevant.
2023-11-27 13:52:20 +01:00
dependabot[bot]
28d37ded06 build(deps-dev): bump stylelint-config-recommended-scss
Bumps [stylelint-config-recommended-scss](https://github.com/stylelint-scss/stylelint-config-recommended-scss) from 12.0.0 to 13.1.0.
- [Release notes](https://github.com/stylelint-scss/stylelint-config-recommended-scss/releases)
- [Changelog](https://github.com/stylelint-scss/stylelint-config-recommended-scss/blob/master/CHANGELOG.md)
- [Commits](https://github.com/stylelint-scss/stylelint-config-recommended-scss/compare/v12.0.0...v13.1.0)

---
updated-dependencies:
- dependency-name: stylelint-config-recommended-scss
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-27 08:35:06 +01:00
regexowl
1fc0aca5b2 Wizard: Activation key management link based on env
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.
2023-11-24 15:28:51 +01:00
dependabot[bot]
b797f62c66 build(deps-dev): bump jest and @types/jest
Bumps [jest](https://github.com/jestjs/jest/tree/HEAD/packages/jest) and [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest). These dependencies needed to be updated together.

Updates `jest` from 29.6.2 to 29.7.0
- [Release notes](https://github.com/jestjs/jest/releases)
- [Changelog](https://github.com/jestjs/jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jestjs/jest/commits/v29.7.0/packages/jest)

Updates `@types/jest` from 29.5.7 to 29.5.10
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest)

---
updated-dependencies:
- dependency-name: jest
  dependency-type: direct:development
  update-type: version-update:semver-minor
- dependency-name: "@types/jest"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-24 12:20:29 +01:00
regexowl
44195c5334 Wizard: Remove hard coded architecture from OCI request
This replaces hard coded 'x86_64' architecture with the value based on a form state for OCI images.
2023-11-24 09:08:00 +01:00
Sanne Raymaekers
b60c37f1f8 ImagesTable: show architecture of composes 2023-11-23 17:55:43 +01:00
regexowl
ac357f4e13 Wizard: Remove hardcoded architecture
This updates requests that contained hardcoded value `x86_64` as an architecture.
2023-11-23 17:02:26 +01:00
Amir Fefer
16cf421c68 feat(HMS-2789): simplfy activation key creation 2023-11-23 16:19:07 +01:00
dependabot[bot]
2c0c85f241 build(deps-dev): bump @babel/preset-typescript from 7.22.5 to 7.23.3
Bumps [@babel/preset-typescript](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-typescript) from 7.22.5 to 7.23.3.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.3/packages/babel-preset-typescript)

---
updated-dependencies:
- dependency-name: "@babel/preset-typescript"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-23 10:47:38 +01:00
dependabot[bot]
d7643d77be build(deps-dev): bump @testing-library/react from 14.0.0 to 14.1.2
Bumps [@testing-library/react](https://github.com/testing-library/react-testing-library) from 14.0.0 to 14.1.2.
- [Release notes](https://github.com/testing-library/react-testing-library/releases)
- [Changelog](https://github.com/testing-library/react-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/react-testing-library/compare/v14.0.0...v14.1.2)

---
updated-dependencies:
- dependency-name: "@testing-library/react"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-23 08:55:54 +01:00
dependabot[bot]
32ae51279d build(deps-dev): bump @types/react-dom from 18.2.15 to 18.2.17
Bumps [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom) from 18.2.15 to 18.2.17.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom)

---
updated-dependencies:
- dependency-name: "@types/react-dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-22 14:40:18 +01:00
Sanne Raymaekers
6739851897 CreateImageWizard: package search through correct architecture
Instead of always searching through x86 repos, search through the repos
of the selected architecture. This fixes HMS-3066.
2023-11-22 13:19:34 +01:00
regexowl
e60afdbe27 Wizard: Add temporary alert about /usr sub-directories
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.
2023-11-22 11:47:23 +01:00
regexowl
c2cd4bed97 Wizard: Replace /usr path with sub-directories by /usr on Recreate
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.
2023-11-22 11:47:23 +01:00
regexowl
3036577b31 fixtures: Add file system configuration to an existing mock
This adds basic file system configuration including an `/usr` sub-directory to an already existing mock.
2023-11-22 11:47:23 +01:00
regexowl
628bc2808b README: Setup certificate for msw
This adds steps for setting up certificates needed in order to run msw with mocked data.
2023-11-22 10:47:06 +01:00
dependabot[bot]
38c97644cb build(deps-dev): bump eslint from 8.46.0 to 8.54.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.46.0 to 8.54.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.46.0...v8.54.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-22 08:57:49 +01:00
regexowl
0ea2696ac5 fixtures: Update image names
This updates the names of images to how should they look like according to the image name validation rules in Wizard.

"The image name can be 3-63 characters long. It can contain lowercase letters, digits and hyphens, has to start with a letter and cannot end with a hyphen."
2023-11-21 15:27:02 +01:00
mgold1234
9ab3d45f99 Wizard: add all/selected toggle buttons to custom repository step
This commit resolves #1201.
It adds a toggle to the repositories step that allows users to toggle
between all and selected repositories.
2023-11-21 14:43:32 +01:00
mgold1234
7b12710f1c add ssl_certification explenation to the readme file 2023-11-21 10:42:03 +01:00
dependabot[bot]
b43fbecbf3 build(deps-dev): bump eslint-plugin-import from 2.28.1 to 2.29.0
Bumps [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) from 2.28.1 to 2.29.0.
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.28.1...v2.29.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-21 09:44:27 +01:00
dependabot[bot]
206fbad944 build(deps-dev): bump @testing-library/jest-dom from 6.1.3 to 6.1.4
Bumps [@testing-library/jest-dom](https://github.com/testing-library/jest-dom) from 6.1.3 to 6.1.4.
- [Release notes](https://github.com/testing-library/jest-dom/releases)
- [Changelog](https://github.com/testing-library/jest-dom/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/jest-dom/compare/v6.1.3...v6.1.4)

---
updated-dependencies:
- dependency-name: "@testing-library/jest-dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-21 08:41:09 +01:00
dependabot[bot]
8f144c85cf build(deps): bump @data-driven-forms/pf4-component-mapper
Bumps [@data-driven-forms/pf4-component-mapper](https://github.com/data-driven-forms/react-forms/tree/HEAD/packages/pf4-component-mapper) from 3.21.8 to 3.22.0.
- [Release notes](https://github.com/data-driven-forms/react-forms/releases)
- [Commits](https://github.com/data-driven-forms/react-forms/commits/v3.22.0/packages/pf4-component-mapper)

---
updated-dependencies:
- dependency-name: "@data-driven-forms/pf4-component-mapper"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-20 11:57:34 +01:00
dependabot[bot]
a0f55c1091 build(deps): bump react-router-dom from 6.16.0 to 6.19.0
Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.19.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.19.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-20 10:39:46 +01:00
mgold1234
b8c634eac0 fix some lint warning message 2023-11-20 09:37:12 +01:00
dependabot[bot]
2bdb8c6fcc build(deps): bump @data-driven-forms/react-form-renderer
Bumps [@data-driven-forms/react-form-renderer](https://github.com/data-driven-forms/react-forms/tree/HEAD/packages/react-form-renderer) from 3.21.10 to 3.22.0.
- [Release notes](https://github.com/data-driven-forms/react-forms/releases)
- [Commits](https://github.com/data-driven-forms/react-forms/commits/v3.22.0/packages/react-form-renderer)

---
updated-dependencies:
- dependency-name: "@data-driven-forms/react-form-renderer"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-17 09:25:12 +01:00
dependabot[bot]
458a4fa00c build(deps-dev): bump @babel/preset-react from 7.22.5 to 7.23.3
Bumps [@babel/preset-react](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-react) from 7.22.5 to 7.23.3.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.3/packages/babel-preset-react)

---
updated-dependencies:
- dependency-name: "@babel/preset-react"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-17 09:14:52 +01:00
lucasgarfield
d7bfb8efef Tests: Fix flake in recreate image tests
The getBy selector in this test caused tests to flake in CI, changing to
findBy should prevent flakes.
2023-11-16 16:25:52 +01:00
lucasgarfield
0405eda319 Wizard: Fix HMS-3031, bug in Package's step search
This fixes a bug in the packages step search where hitting enter causes
the wizard to re-render and reset to the first step.
2023-11-16 16:25:52 +01:00
lucasgarfield
196e358aa3 Wizard: Fix eslint warnings in Packages step
Most of these fixes are required because of the exhaustive dependencies
rule.
2023-11-16 16:25:52 +01:00
Sanne Raymaekers
f1141ec698 src: add RHEL 8.9 2023-11-16 14:44:21 +01:00
dependabot[bot]
344bdb6773 build(deps-dev): bump @babel/preset-env from 7.22.9 to 7.23.3
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.22.9 to 7.23.3.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.3/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-14 12:03:27 +01:00
Tomáš Hozza
cfbeb77ac5 Wizard/MountPoint: hotfix for updated mountpoint policy
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>
2023-11-14 11:00:40 +01:00
Thomas Lavocat
c7ffde49ae wizard/tests: add integration and unit tests
Add integration and unit tests for the wizard. The integration testing
is making sure that the wizard holds up together, is navigable and has
at least a happy path tested.
The unit test of the ImageOuput tests more combinations of clicks on the
interface and make sure the inner logic is sound.

The intersection of the two tests brings us confidence that the UX will
work according to spec.
2023-11-14 09:33:36 +01:00
Thomas Lavocat
2173545f60 wizard/review: add the review step
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.
2023-11-14 09:33:36 +01:00
Thomas Lavocat
9c78456c57 wizard/image_output: add the image output step
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
2023-11-14 09:33:36 +01:00
dependabot[bot]
74afa2073a build(deps): bump react-redux from 8.1.2 to 8.1.3
Bumps [react-redux](https://github.com/reduxjs/react-redux) from 8.1.2 to 8.1.3.
- [Release notes](https://github.com/reduxjs/react-redux/releases)
- [Changelog](https://github.com/reduxjs/react-redux/blob/master/CHANGELOG.md)
- [Commits](https://github.com/reduxjs/react-redux/compare/v8.1.2...v8.1.3)

---
updated-dependencies:
- dependency-name: react-redux
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-14 08:55:38 +01:00
Sanne Raymaekers
6e737c59a9 src: add rhel-93 2023-11-13 17:32:32 +01:00
mgold1234
303e557f07 fix linting warnings
this commit fix some linting warnings that user get when running npm run lint:js:fix command,
some worning comes after big changes to TypeScript
2023-11-13 16:00:01 +01:00
mgold1234
536312680d fix some react-hooks/exhaustive-deps lint warning message
this commit fixes some react-hooks/exhaustive-deps linting warning message
2023-11-13 10:51:52 +01:00
dependabot[bot]
1d963b218a build(deps-dev): bump eslint-plugin-react from 7.33.0 to 7.33.2
Bumps [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) from 7.33.0 to 7.33.2.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-react/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.33.0...v7.33.2)

---
updated-dependencies:
- dependency-name: eslint-plugin-react
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-13 09:11:51 +01:00
dependabot[bot]
d9f91dcde2 build(deps-dev): bump @babel/core from 7.23.2 to 7.23.3
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.23.2 to 7.23.3.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.3/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-13 08:33:30 +01:00
regexowl
f0c078921b eslint: Add accessibility rules
This adds eslint-plugin-jsx-a11y to the eslint configuration, setting up recommended set of rules for accessibility testing.

The error output by `jsx-a11y/no-autofocus` on encountering `autoFocus` attribute was switched to warning for now as whether to auto focus on an element or not can be highly contextual.

Fixes #948
2023-11-10 15:05:12 +01:00
dependabot[bot]
897360952e build(deps): bump @patternfly/react-core from 5.0.1 to 5.1.1
Bumps [@patternfly/react-core](https://github.com/patternfly/patternfly-react) from 5.0.1 to 5.1.1.
- [Release notes](https://github.com/patternfly/patternfly-react/releases)
- [Commits](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@5.0.1...@patternfly/react-core@5.1.1)

---
updated-dependencies:
- dependency-name: "@patternfly/react-core"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-10 09:15:48 +01:00
dependabot[bot]
aa7083cfa1 build(deps-dev): bump @types/react-dom from 18.2.7 to 18.2.15
Bumps [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom) from 18.2.7 to 18.2.15.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom)

---
updated-dependencies:
- dependency-name: "@types/react-dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-10 08:28:24 +01:00
dependabot[bot]
611fab8b34 build(deps-dev): bump webpack-bundle-analyzer from 4.9.0 to 4.9.1
Bumps [webpack-bundle-analyzer](https://github.com/webpack-contrib/webpack-bundle-analyzer) from 4.9.0 to 4.9.1.
- [Release notes](https://github.com/webpack-contrib/webpack-bundle-analyzer/releases)
- [Changelog](https://github.com/webpack-contrib/webpack-bundle-analyzer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/webpack-bundle-analyzer/compare/v4.9.0...v4.9.1)

---
updated-dependencies:
- dependency-name: webpack-bundle-analyzer
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-09 15:30:44 +01:00
jkozol
cdce2618da package.json: pin all package versions
Dependabot and npm ci work best together when all package versions are pinned.
2023-11-09 13:39:02 +01:00
Thomas Lavocat
9a1b823eed wizard: prepare a dev env to create the new wizard
Developing a new wizard will require many pull requests and some of them
might even be worked on in parallel. To allow to develop all of that
without interfering with the legacy wizard this commit introduces a new
dev environment alongside an unleash flag when we later want to do the
switch.

To use the new dev en use `npm run stage-beta:experimental` or `npm run
stage-beta:msw+experimental` depending on what you want.

Then unleash flag to toggle in stage and prod is: `image-builder.new-wizard.enabled`

fixes: HMS-2859
2023-11-09 12:43:01 +01:00
dependabot[bot]
0bcb8217cb build(deps): bump @data-driven-forms/react-form-renderer
Bumps [@data-driven-forms/react-form-renderer](https://github.com/data-driven-forms/react-forms/tree/HEAD/packages/react-form-renderer) from 3.21.8 to 3.21.10.
- [Release notes](https://github.com/data-driven-forms/react-forms/releases)
- [Commits](https://github.com/data-driven-forms/react-forms/commits/v3.21.10/packages/react-form-renderer)

---
updated-dependencies:
- dependency-name: "@data-driven-forms/react-form-renderer"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-09 08:59:14 +01:00
regexowl
d3eaccc636 test: Fix "Unnecessary escape character" error
This fixes an error triggered by the no-useless-escape rule.
2023-11-08 14:15:17 +01:00
regexowl
7b0b9a8ddc test: Fix await-async-events error
After cleaning up the ESLint plugins a new error for eslint-plugin-testing-library popped up. This PR solves all of the occurences of `Promise returned from async event method `user` must be handled` and removes the `"testing-library/await-async-events": "off"` switch which was temporary put in place.
2023-11-08 14:15:17 +01:00
regexowl
2687312f16 ESLint: Update rules after removing eslint-config-react-app
This updates rules for linting both JS and TS files in a way that is consistent with previous linting.

Some rules for linting TS files were turned off or switched to warnings for now.
2023-11-08 14:15:17 +01:00
regexowl
1f6f14caec devDeps: Remove eslint-config-react-app dependency
A dependabot PR https://github.com/RedHatInsights/image-builder-frontend/pull/1394 was failing with the following message:
"ESLint couldn't determine the plugin "testing-library" uniquely."

This was caused by having two separate instances of "eslint-plugin-testing-library" in dependencies. One directly in the `devDependencies` and another one as a dependency of eslint-config-react-app.

Seeing as [eslint-config-react-app](https://www.npmjs.com/package/eslint-config-react-app) was not updated in the last two years, the majors versions of deps in the "bundle" were crashing with the `devDependencies` one.
2023-11-08 14:15:17 +01:00
dependabot[bot]
651d764c01 build(deps-dev): bump @types/jest from 29.5.5 to 29.5.7
Bumps [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest) from 29.5.5 to 29.5.7.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest)

---
updated-dependencies:
- dependency-name: "@types/jest"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-07 12:11:51 +01:00
regexowl
1fd8deec1a ImagesTable: Add expiring/expired status to OCI images
Pre-authenticated requests for the OCI images expire 7 days after creation. This adds "Expires in <x> days" and "Expired" as possible statuses for the OCI images.
2023-11-07 11:13:28 +01:00
regexowl
7ec87dfa58 fixtures: Add OCI images to the mock fixtures
This adds an expired mock OCI image with an ID "0c1ec8d8-be39-47f2-9bd4-a3fff8244fce" and an expiring mock OCI image with an ID "ea23cfd6-fd8b-43ed-adfc-9f76bb8487ef".
2023-11-07 11:13:28 +01:00
regexowl
b8372eeaf5 ImagesTable: Add OCI images
This adds a row for OCI images in the ImagesTable. Details about the images show UUID of the image and the Object Storage URL which is needed to deploy the image.

"Image link" button in the Instance column contains instrucion on how to run an OCI image built by Image Builder in Oracle Cloud. The documentation link in the popover is just a placeholder for now as the documentation is being prepared.

Until the build is finished the "Image link" button is disabled as it would be missing the Object Storage URL which is creating on upload.
2023-11-07 11:13:28 +01:00
regexowl
fd61cd135b Wizard: Add the option of building OCI images to the Wizard
This adds a tile allowing to build an OCI image to the Image output step of the wizard. The tile is only visible in the Preview.

As there are no other customer information needed for the build, no addiional step for OCI was added.

Review step was also updated to include OCI images.
2023-11-07 11:13:28 +01:00
regexowl
de30c6c637 store: Update api schema
This updates the api schema to the newest version and also adds `isOciUploadStatus` to the type guards.
2023-11-07 11:13:28 +01:00
dependabot[bot]
f1762e91d9 build(deps-dev): bump @types/react from 18.2.23 to 18.2.36
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.2.23 to 18.2.36.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-07 09:07:24 +01:00
mgold1234
72d605c96b add region name to new region message
FIX # https://github.com/RedHatInsights/image-builder-frontend/issues/1410
this commit add region name when user share to new region for image
2023-11-06 16:51:44 +01:00
dependabot[bot]
014f14546c build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 6.7.3 to 6.9.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.9.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-06 10:28:06 +01:00
dependabot[bot]
85131cf602 build(deps-dev): bump @babel/core from 7.22.10 to 7.23.2
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.22.10 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/@babel/core@7.23.2/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-06 08:58:05 +01:00
dependabot[bot]
a3b64e5e0c build(deps): bump @patternfly/patternfly from 4.224.2 to 5.1.0
Bumps [@patternfly/patternfly](https://github.com/patternfly/patternfly) from 4.224.2 to 5.1.0.
- [Release notes](https://github.com/patternfly/patternfly/releases)
- [Changelog](https://github.com/patternfly/patternfly/blob/main/release.config.js)
- [Commits](https://github.com/patternfly/patternfly/compare/prerelease-v4.224.2...v5.1.0)

---
updated-dependencies:
- dependency-name: "@patternfly/patternfly"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-02 14:08:14 +01:00
dependabot[bot]
5de653e1e3 build(deps-dev): bump @testing-library/dom from 9.3.1 to 9.3.3
Bumps [@testing-library/dom](https://github.com/testing-library/dom-testing-library) from 9.3.1 to 9.3.3.
- [Release notes](https://github.com/testing-library/dom-testing-library/releases)
- [Changelog](https://github.com/testing-library/dom-testing-library/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/dom-testing-library/compare/v9.3.1...v9.3.3)

---
updated-dependencies:
- dependency-name: "@testing-library/dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-02 13:23:48 +01:00
regexowl
6a19aae96c ImagesTable: Fix padding of disabled download links
This fixes an uneven padding for disabled "Download (....)" links.
2023-11-02 12:33:42 +01:00
regexowl
5553766415 workflows: Add a workflow with dev checks
As Travis CI is getting removed from RedHatInsights this should replace it in what we used to use Travis for.

This workflow is triggered on pull requests to main and runs clean install of dependencies, lint check and the unit test suite.

The main motivation of this workflow being separated from the IQE tests is to allow to quickly check if the basic tests pass during development without the need to wait for the IQE tests to finish their run.
2023-11-02 11:28:44 +01:00
Ondřej Ezr
9be2ceaba7 Remove sync branches script
With serving UI assets from containers, there is no need to sync branches anymore.
2023-10-31 10:34:09 +01:00
Jakub Rusz
f01904302a
Update terraform SHA (#1403)
We need a newer centos-8 image in our CI.
2023-10-31 07:53:28 +00:00
Thomas Lavocat
7a22d623e8 tests: add a unit test for the targetEnv
This new test is complementing the integration testing found in
src/test/Components/CreateImageWizars.*.test.js.

This new test makes sure that the logic within the component itself is
sound without taking care of interacting with other parts of the wizard.
It allows to test more combinations without worrying about combinatory
effects.

Refs HMS-1135
2023-10-26 20:07:54 +02:00
Thomas Lavocat
e2c3ea98b3 tests: there's now two option-menu to select from
Adding a new select into the images output step had for effet to
mechanically add a new option menu. In order to select the release
menu we have to take now the first option menu of all possibilities.

Refs HMS-1135
2023-10-26 20:07:54 +02:00
Thomas Lavocat
826882d1ef tests: adapt to target appearing dynamically
There is now a delay between when the user clicks on the architecture
button (or just goes onto the step) and when the targets are being
displayed. This is due to the fact that the data to filter which targets
needs to be displayed has to be fetched from the backend. And during the
meantime a loading spinner is shown.

To adapt to this the code simply waits for the fields to be accessible.

Refs HMS-1135
2023-10-26 20:07:54 +02:00
Thomas Lavocat
938340b360 wizard: allow the creation of aarch64 images
This commit extends the supported architectures to aarch64. In the image
output step (the first one of the wizard) the user is now faced with a
new select choices to pickup the architecture they want to build.

Now the set of compatible targets to build is dynamically loaded from
the backend and the UX changes what's accessible on the fly depending on
what's the user has been selected.

Refs HMS-1135
2023-10-26 20:07:54 +02:00
mgold1234
d91727bf38 ImageTable: THEEDGE-3450 - add ignoreImageType to getComposes endpoint
this commit adds filter for image_type to the getComposes endpoint,
enhancing the functionality of the Image Builder frontend table, which comprises two tabs: RPM and OSTree.
With this enhancement, users can now filter OSTree images from the RPM tab, preventing duplication.
2023-10-26 15:53:31 +02:00
Jakub Rusz
0b0e732624 pr_check: change marker and increase timeout
I have set up a new marker "fe_pr_check" to select tests for the
pr_check here. I'm also increasing the timeout of the CJI pod.
2023-10-26 15:08:01 +02:00
jkozol
84773b1c44 package.json: bump ddf version to fix wizard step numbering 2023-10-25 09:02:47 +02:00
jkozol
4e3e154f08 test: add awaits to user click in table's error test 2023-10-25 09:02:47 +02:00
jkozol
21298f4047 Wizard: fix mountpoint select 2023-10-25 09:02:47 +02:00
jkozol
3dd2accb1d Wizard: remove nav horizontal scroll 2023-10-25 09:02:47 +02:00
jkozol
751b393fea Wizard: fix dual list selector styling 2023-10-25 09:02:47 +02:00
lucasgarfield
854ff4a8eb Wizard: Fix file system customization form inputs
Upgrading to PF5 caused the inputs on the file system customization
inputs to stack on each other.

This commit makes them appear in-line again by using the `<Grid>`
component.

Inspiration taken from this PF5 example:
https://www.patternfly.org/components/forms/form#grid-form
2023-10-25 09:02:47 +02:00
jkozol
cf1d477544 ShareImageModal: update the typeahead selector to pf5
This dropdown needed to be update as part of the overall pf5 upgrade.
Each of the components in the select now need to be declared and
handled. Also, some of the Select and SelectOption props come from the
Menu props since Select inherits Menu.
2023-10-25 09:02:47 +02:00
jkozol
a5b1b1f775 package.json: upgrade patternfly to version 5
This upgrade requires multiple package updates. There are many style
updates to reflect pf5's syntax and structure changes
2023-10-25 09:02:47 +02:00
459 changed files with 72163 additions and 37178 deletions

View file

@ -1,6 +0,0 @@
# Ignore programatically generated API slices
imageBuilderApi.ts
contentSourcesApi.ts
rhsmApi.ts
provisioningApi.ts
edgeApi.ts

View file

@ -1,4 +0,0 @@
rules:
"@typescript-eslint/no-unused-vars": "error"
"@typescript-eslint/explicit-module-boundary-types": "off"

View file

@ -1,42 +0,0 @@
extends: [
"@redhat-cloud-services/eslint-config-redhat-cloud-services",
"react-app",
"react-app/jest"
]
globals:
insights: 'readonly'
shallow: readonly
render: 'readonly'
mount: 'readonly'
plugins:
- import
rules:
rulesdir/forbid-pf-relative-imports: off
import/order:
- error
- groups:
- builtin
- external
- internal
- sibling
- parent
- index
alphabetize:
order: asc
caseInsensitive: true
newlines-between: always
pathGroups: # ensures the import of React is always on top
- pattern: react
group: builtin
position: before
pathGroupsExcludedImportTypes:
- react
prefer-const:
- error
- destructuring: any
no-console: 2
eqeqeq: error
overrides:
- files: "**/*.ts?(x)"
parser: "@typescript-eslint/parser"
extends: ".eslintrc-typescript.yml"

1
.fmf/version Normal file
View file

@ -0,0 +1 @@
1

257
.forgejo/workflows/ci.yml Normal file
View file

@ -0,0 +1,257 @@
---
name: Debian Image Builder Frontend CI/CD
on:
push:
branches: [main, develop]
pull_request:
branches: [main]
workflow_dispatch:
env:
NODE_VERSION: "18"
DEBIAN_FRONTEND: noninteractive
jobs:
build-and-test:
name: Build and Test Frontend
runs-on: ubuntu-latest
container:
image: node:18-bullseye
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js environment
run: |
node --version
npm --version
- name: Install build dependencies
run: |
apt-get update
apt-get install -y \
build-essential \
git \
ca-certificates \
python3
- name: Install Node.js dependencies
run: |
npm ci
npm run build || echo "Build script not found"
- name: Run tests
run: |
if [ -f package.json ] && npm run test; then
npm test
else
echo "No test script found, skipping tests"
fi
- name: Run linting
run: |
if [ -f package.json ] && npm run lint; then
npm run lint
else
echo "No lint script found, skipping linting"
fi
- name: Build production bundle
run: |
if [ -f package.json ] && npm run build; then
npm run build
else
echo "No build script found"
fi
- name: Upload build artifacts
uses: actions/upload-artifact@v4
with:
name: frontend-build
path: |
dist/
build/
retention-days: 30
package:
name: Package Frontend
runs-on: ubuntu-latest
container:
image: node:18-bullseye
needs: build-and-test
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js environment
run: |
node --version
npm --version
- name: Install build dependencies
run: |
apt-get update
apt-get install -y \
build-essential \
devscripts \
debhelper \
git \
ca-certificates \
python3
- name: Install Node.js dependencies
run: npm ci
- name: Build production bundle
run: |
if [ -f package.json ] && npm run build; then
npm run build
else
echo "No build script found"
fi
- name: Create debian directory
run: |
mkdir -p debian
cat > debian/control << EOF
Source: debian-image-builder-frontend
Section: web
Priority: optional
Maintainer: Debian Forge Team <team@debian-forge.org>
Build-Depends: debhelper (>= 13), nodejs, npm, git, ca-certificates
Standards-Version: 4.6.2
Package: debian-image-builder-frontend
Architecture: all
Depends: \${misc:Depends}, nodejs, nginx
Description: Debian Image Builder Frontend
Web-based frontend for Debian Image Builder with Cockpit integration.
Provides a user interface for managing image builds, blueprints,
and system configurations through a modern React application.
EOF
cat > debian/rules << EOF
#!/usr/bin/make -f
%:
dh \$@
override_dh_auto_install:
dh_auto_install
mkdir -p debian/debian-image-builder-frontend/usr/share/debian-image-builder-frontend
mkdir -p debian/debian-image-builder-frontend/etc/nginx/sites-available
mkdir -p debian/debian-image-builder-frontend/etc/cockpit
# Copy built frontend files
if [ -d dist ]; then
cp -r dist/* debian/debian-image-builder-frontend/usr/share/debian-image-builder-frontend/
elif [ -d build ]; then
cp -r build/* debian/debian-image-builder-frontend/usr/share/debian-image-builder-frontend/
fi
# Copy source files for development
cp -r src debian/debian-image-builder-frontend/usr/share/debian-image-builder-frontend/
cp package.json debian/debian-image-builder-frontend/usr/share/debian-image-builder-frontend/
# Create nginx configuration
cat > debian/debian-image-builder-frontend/etc/nginx/sites-available/debian-image-builder-frontend << 'NGINX_EOF'
server {
listen 80;
server_name localhost;
root /usr/share/debian-image-builder-frontend;
index index.html;
location / {
try_files \$uri \$uri/ /index.html;
}
location /api/ {
proxy_pass http://localhost:8080/;
proxy_set_header Host \$host;
proxy_set_header X-Real-IP \$remote_addr;
}
}
NGINX_EOF
# Create cockpit manifest
cat > debian/debian-image-builder-frontend/etc/cockpit/debian-image-builder.manifest << 'COCKPIT_EOF'
{
"version": 1,
"manifest": {
"name": "debian-image-builder",
"version": "1.0.0",
"title": "Debian Image Builder",
"description": "Build and manage Debian atomic images",
"url": "/usr/share/debian-image-builder-frontend",
"icon": "debian-logo",
"requires": {
"cockpit": ">= 200"
}
}
}
COCKPIT_EOF
EOF
cat > debian/changelog << EOF
debian-image-builder-frontend (1.0.0-1) unstable; urgency=medium
* Initial release
* Debian Image Builder Frontend with Cockpit integration
* React-based web interface for image management
-- Debian Forge Team <team@debian-forge.org> $(date -R)
EOF
cat > debian/compat << EOF
13
EOF
chmod +x debian/rules
- name: Build Debian package
run: |
dpkg-buildpackage -us -uc -b
ls -la ../*.deb
- name: Upload Debian package
uses: actions/upload-artifact@v4
with:
name: debian-image-builder-frontend-deb
path: ../*.deb
retention-days: 30
cockpit-integration:
name: Test Cockpit Integration
runs-on: ubuntu-latest
container:
image: node:18-bullseye
needs: build-and-test
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js environment
run: |
node --version
npm --version
- name: Install Node.js dependencies
run: npm ci
- name: Test cockpit integration
run: |
echo "Testing Cockpit integration..."
if [ -d cockpit ]; then
echo "Cockpit directory found:"
ls -la cockpit/
else
echo "No cockpit directory found"
fi
if [ -f package.json ]; then
echo "Package.json scripts:"
npm run
fi

View file

@ -0,0 +1,257 @@
---
name: Debian Image Builder Frontend CI/CD
on:
push:
branches: [main, develop]
pull_request:
branches: [main]
workflow_dispatch:
env:
NODE_VERSION: "18"
DEBIAN_FRONTEND: noninteractive
jobs:
build-and-test:
name: Build and Test Frontend
runs-on: ubuntu-latest
container:
image: node:18-bullseye
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js environment
run: |
node --version
npm --version
- name: Install build dependencies
run: |
apt-get update
apt-get install -y \
build-essential \
git \
ca-certificates \
python3
- name: Install Node.js dependencies
run: |
npm ci
npm run build || echo "Build script not found"
- name: Run tests
run: |
if [ -f package.json ] && npm run test; then
npm test
else
echo "No test script found, skipping tests"
fi
- name: Run linting
run: |
if [ -f package.json ] && npm run lint; then
npm run lint
else
echo "No lint script found, skipping linting"
fi
- name: Build production bundle
run: |
if [ -f package.json ] && npm run build; then
npm run build
else
echo "No build script found"
fi
- name: Upload build artifacts
uses: actions/upload-artifact@v4
with:
name: frontend-build
path: |
dist/
build/
retention-days: 30
package:
name: Package Frontend
runs-on: ubuntu-latest
container:
image: node:18-bullseye
needs: build-and-test
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js environment
run: |
node --version
npm --version
- name: Install build dependencies
run: |
apt-get update
apt-get install -y \
build-essential \
devscripts \
debhelper \
git \
ca-certificates \
python3
- name: Install Node.js dependencies
run: npm ci
- name: Build production bundle
run: |
if [ -f package.json ] && npm run build; then
npm run build
else
echo "No build script found"
fi
- name: Create debian directory
run: |
mkdir -p debian
cat > debian/control << EOF
Source: debian-image-builder-frontend
Section: web
Priority: optional
Maintainer: Debian Forge Team <team@debian-forge.org>
Build-Depends: debhelper (>= 13), nodejs, npm, git, ca-certificates
Standards-Version: 4.6.2
Package: debian-image-builder-frontend
Architecture: all
Depends: \${misc:Depends}, nodejs, nginx
Description: Debian Image Builder Frontend
Web-based frontend for Debian Image Builder with Cockpit integration.
Provides a user interface for managing image builds, blueprints,
and system configurations through a modern React application.
EOF
cat > debian/rules << EOF
#!/usr/bin/make -f
%:
dh \$@
override_dh_auto_install:
dh_auto_install
mkdir -p debian/debian-image-builder-frontend/usr/share/debian-image-builder-frontend
mkdir -p debian/debian-image-builder-frontend/etc/nginx/sites-available
mkdir -p debian/debian-image-builder-frontend/etc/cockpit
# Copy built frontend files
if [ -d dist ]; then
cp -r dist/* debian/debian-image-builder-frontend/usr/share/debian-image-builder-frontend/
elif [ -d build ]; then
cp -r build/* debian/debian-image-builder-frontend/usr/share/debian-image-builder-frontend/
fi
# Copy source files for development
cp -r src debian/debian-image-builder-frontend/usr/share/debian-image-builder-frontend/
cp package.json debian/debian-image-builder-frontend/usr/share/debian-image-builder-frontend/
# Create nginx configuration
cat > debian/debian-image-builder-frontend/etc/nginx/sites-available/debian-image-builder-frontend << 'NGINX_EOF'
server {
listen 80;
server_name localhost;
root /usr/share/debian-image-builder-frontend;
index index.html;
location / {
try_files \$uri \$uri/ /index.html;
}
location /api/ {
proxy_pass http://localhost:8080/;
proxy_set_header Host \$host;
proxy_set_header X-Real-IP \$remote_addr;
}
}
NGINX_EOF
# Create cockpit manifest
cat > debian/debian-image-builder-frontend/etc/cockpit/debian-image-builder.manifest << 'COCKPIT_EOF'
{
"version": 1,
"manifest": {
"name": "debian-image-builder",
"version": "1.0.0",
"title": "Debian Image Builder",
"description": "Build and manage Debian atomic images",
"url": "/usr/share/debian-image-builder-frontend",
"icon": "debian-logo",
"requires": {
"cockpit": ">= 200"
}
}
}
COCKPIT_EOF
EOF
cat > debian/changelog << EOF
debian-image-builder-frontend (1.0.0-1) unstable; urgency=medium
* Initial release
* Debian Image Builder Frontend with Cockpit integration
* React-based web interface for image management
-- Debian Forge Team <team@debian-forge.org> $(date -R)
EOF
cat > debian/compat << EOF
13
EOF
chmod +x debian/rules
- name: Build Debian package
run: |
dpkg-buildpackage -us -uc -b
ls -la ../*.deb
- name: Upload Debian package
uses: actions/upload-artifact@v4
with:
name: debian-image-builder-frontend-deb
path: ../*.deb
retention-days: 30
cockpit-integration:
name: Test Cockpit Integration
runs-on: ubuntu-latest
container:
image: node:18-bullseye
needs: build-and-test
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js environment
run: |
node --version
npm --version
- name: Install Node.js dependencies
run: npm ci
- name: Test cockpit integration
run: |
echo "Testing Cockpit integration..."
if [ -d cockpit ]; then
echo "Cockpit directory found:"
ls -la cockpit/
else
echo "No cockpit directory found"
fi
if [ -f package.json ]; then
echo "Package.json scripts:"
npm run
fi

View file

@ -7,3 +7,9 @@ updates:
time: "04:00"
open-pull-requests-limit: 3
rebase-strategy: "auto"
ignore:
- dependency-name: "@playwright/test"
update-types:
- "version-update:semver-major"
- "version-update:semver-minor"
- "version-update:semver-patch"

24
.github/workflows/create-tag.yml vendored Normal file
View file

@ -0,0 +1,24 @@
# This action creates a release every second Wednesday
name: "Create and push release tag"
on:
workflow_dispatch:
schedule:
- cron: "0 8 * * 3"
jobs:
tag-and-push:
runs-on: ubuntu-latest
steps:
- name: Even or odd week
run: if [ `expr \`date +\%s\` / 86400 \% 2` -eq 0 ]; then echo "WEEK=odd" >> $GITHUB_ENV; else echo "WEEK=even" >> $GITHUB_ENV; fi
shell: bash
- name: Upstream tag
uses: osbuild/release-action@create-tag
if: ${{ env.WEEK == 'odd' || github.event_name != 'schedule' }}
with:
token: "${{ secrets.SCHUTZBOT_GITHUB_ACCESS_TOKEN }}"
username: "imagebuilder-bot"
email: "imagebuilder-bots+imagebuilder-bot@redhat.com"

83
.github/workflows/dev-checks.yml vendored Normal file
View file

@ -0,0 +1,83 @@
name: Development checks
on:
pull_request:
branches: [ "main" ]
push:
branches: [ "main" ]
merge_group:
concurrency:
group: ${{github.workflow}}-${{ github.ref }}
cancel-in-progress: true
jobs:
build:
name: Build Check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Use Node.js 22
uses: actions/setup-node@v4
with:
node-version: 22
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Run build
run: npm run build
lint-checks:
name: ESLint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Use Node.js 22
uses: actions/setup-node@v4
with:
node-version: 22
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Run lint check
run: npm run lint
circular-dependencies:
name: Circular Dependencies Check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Use Node.js 22
uses: actions/setup-node@v4
with:
node-version: 22
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Check for circular dependencies
run: npm run circular
api-changes:
name: Manual API Changes Check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Use Node.js 22
uses: actions/setup-node@v4
with:
node-version: 22
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Check for manual changes to API
run: |
npm run api
if [ -n "$(git status --porcelain)" ]; then
echo
echo "✗ API manually changed, please refer to the README for the procedure to follow for programmatically generated API endpoints."
exit 1
else
echo
echo "✓ No manual API changes."
exit 0
fi

90
.github/workflows/playwright.yml vendored Normal file
View file

@ -0,0 +1,90 @@
name: Hosted playwright tests
on:
pull_request:
types: [opened, reopened, synchronize, labeled, unlabeled]
workflow_dispatch:
merge_group:
# this prevents multiple jobs from the same pr
# running when new changes are pushed.
concurrency:
group: ${{github.workflow}}-${{ github.ref }}
cancel-in-progress: true
jobs:
playwright-tests:
runs-on:
- codebuild-image-builder-frontend-${{ github.run_id }}-${{ github.run_attempt }}
- instance-size:large
- buildspec-override:true
steps:
- name: Checkout code
uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.sha }}
- name: Get current PR URL
id: get-pr-url
run: |
# Extract the pull request URL from the event payload
pr_url=$(jq -r '.pull_request.html_url' < "$GITHUB_EVENT_PATH")
echo "Pull Request URL: $pr_url"
# Set the PR URL as an output using the environment file
echo "pr_url=$pr_url" >> $GITHUB_ENV
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: 22
cache: "npm"
- name: Install front-end dependencies
run: npm ci
- name: Install playwright
run: npx playwright install --with-deps
# This prevents an error related to minimum watchers when running the front-end and playwright
- name: Increase file watchers limit
run: echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
- name: Update /etc/hosts
run: sudo npm run patch:hosts
- name: Start front-end server
run: |
npm run start:federated &
npx wait-on http://localhost:8003/apps/image-builder/
- name: Run testing proxy
run: docker run -d --network=host -e HTTPS_PROXY=$RH_PROXY_URL -v "$(pwd)/config:/config:ro,Z" --name consoledot-testing-proxy quay.io/dvagner/consoledot-testing-proxy
- name: Run front-end Playwright tests
env:
BASE_URL: https://stage.foo.redhat.com:1337
run: |
export PLAYWRIGHT_USER=image-builder-playwright-$RANDOM
export PLAYWRIGHT_PASSWORD=image-builder-playwright-$(uuidgen)
# Step 1: Create a new empty account
curl -k -X POST https://account-manager-stage.app.eng.rdu2.redhat.com/account/new -d "{\"username\": \"$PLAYWRIGHT_USER\", \"password\":\"$PLAYWRIGHT_PASSWORD\"}"
# Step 2: Attach subscriptions to the new account
curl -k -X POST https://account-manager-stage.app.eng.rdu2.redhat.com/account/attach \
-d "{\"username\": \"$PLAYWRIGHT_USER\", \"password\":\"$PLAYWRIGHT_PASSWORD\", \"sku\":[\"RH00003\"],\"quantity\": 1}"
# Step 3: Activate the new account by accepting Terms and Conditions
curl -k -X POST https://account-manager-stage.app.eng.rdu2.redhat.com/account/activate -d "{\"username\": \"$PLAYWRIGHT_USER\", \"password\":\"$PLAYWRIGHT_PASSWORD\"}"
# Step 4: Refresh account to update subscription pools
curl -k -X POST https://account-manager-stage.app.eng.rdu2.redhat.com/account/refresh -d "{\"username\": \"$PLAYWRIGHT_USER\", \"password\":\"$PLAYWRIGHT_PASSWORD\"}"
# Step 5: View account to check account status
curl -k -X GET "https://account-manager-stage.app.eng.rdu2.redhat.com/account/get?username=$PLAYWRIGHT_USER&password=$PLAYWRIGHT_PASSWORD"
CURRENTS_PROJECT_ID=hIU6nO CURRENTS_RECORD_KEY=$CURRENTS_RECORD_KEY npx playwright test
- name: Store front-end Test report
uses: actions/upload-artifact@v4
if: always()
with:
name: playwright-report
path: playwright-report/
retention-days: 10

19
.github/workflows/pr_best_practices.yml vendored Normal file
View file

@ -0,0 +1,19 @@
name: "Verify PR best practices"
on:
pull_request_target:
branches: [main]
types: [opened, synchronize, reopened, edited]
issue_comment:
types: [created]
merge_group:
jobs:
pr-best-practices:
runs-on: ubuntu-latest
steps:
- name: PR best practice check
uses: osbuild/pr-best-practices@main
with:
token: ${{ secrets.SCHUTZBOT_GITHUB_ACCESS_TOKEN }}
jira_token: ${{ secrets.IMAGEBUILDER_BOT_JIRA_TOKEN }}

47
.github/workflows/release.yml vendored Normal file
View file

@ -0,0 +1,47 @@
name: "Create GitHub release"
on:
push:
tags:
- "v*"
jobs:
release:
runs-on: ubuntu-latest
steps:
# create release artefact before creating the release to get the correct release in the
# artefact name.
- uses: actions/checkout@v4
- name: Use Node.js 22
uses: actions/setup-node@v4
with:
node-version: 22
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Make dist
run: |
make dist
RELEASE_NO=$(echo ${{github.ref_name}} | tr -d 'v')
mv "cockpit-image-builder-$RELEASE_NO.tar.gz" ../cockpit-image-builder-$RELEASE_NO.tar.gz
# create release, which will bump the version
- name: Upstream release
uses: osbuild/release-action@main
with:
token: "${{ secrets.SCHUTZBOT_GITHUB_ACCESS_TOKEN }}"
slack_webhook_url: "${{ secrets.SLACK_WEBHOOK_URL }}"
# upload release artefact
# Source0 expands to `https://github.com/osbuild/image-builder-frontend/releases/download/v$VERSION/cockpit-image-builder-v$VERSION.tar.gz`,
# so the v needs to be in the tarball when we upload it as a release artefact.
- name: Upload release artefact
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
RELEASE_NO=$(echo ${{github.ref_name}} | tr -d 'v')
gh release upload ${{github.ref_name}} \
../cockpit-image-builder-$RELEASE_NO.tar.gz

33
.github/workflows/sentry.yml vendored Normal file
View file

@ -0,0 +1,33 @@
name: sentryInit
on:
push:
branches:
- master
workflow_dispatch:
inputs:
commit_hash:
description: 'The commit hash (or branch/tag) to build'
required: false
default: ''
jobs:
createSentryRelease:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
with:
ref: ${{ github.event.inputs.commit_hash || 'refs/heads/master' }}
- name: Install dependencies
run: npm ci
- name: Build
env:
ENABLE_SENTRY: ${{ secrets.ENABLE_SENTRY }}
SENTRY_RELEASE: ${{ github.event.inputs.commit_hash && github.event.inputs.commit_hash }}
SENTRY_AUTH_TOKEN: ${{ github.event.inputs.commit_hash && secrets.SENTRY_AUTH_TOKEN }}
SENTRY_ORG: ${{ secrets.SENTRY_ORG }}
SENTRY_PROJECT: ${{ secrets.SENTRY_PROJECT }}
run: npm run build --if-present

View file

@ -8,6 +8,7 @@ jobs:
stale:
runs-on: ubuntu-latest
permissions:
actions: write # needed to clean up the saved action state
issues: write
pull-requests: write
steps:

View file

@ -1,79 +0,0 @@
name: Sync branches
on:
push:
branches:
- main
workflow_dispatch:
inputs:
source:
description: Source ref (branch or sha)
required: true
type: string
target:
description: Target branch
required: true
type: choice
options:
- production
- stage-stable
jobs:
check:
name: Validate source and target refs
timeout-minutes: 1
runs-on: ubuntu-latest
if: ${{ github.event_name == 'workflow_dispatch' }}
steps:
- name: Checkout
uses: actions/checkout@v3
with:
ref: ${{ github.event.inputs.source }}
fetch-depth: 0
- name: Check ancestry
if: ${{ github.event.inputs.target == 'production' }}
run: |
if ! git merge-base --is-ancestor ${{ github.event.inputs.source }} origin/main; then
echo "Target is production and source ref isn't an ancestor of main"
exit 1
fi
if ! git merge-base --is-ancestor ${{ github.event.inputs.source }} origin/stage-stable; then
echo "Target is production and source ref isn't deployed in stage-stable"
echo "The main and stage-stable branches should be in sync, please fix"
exit 1
fi
- name: Check stage-stable manual sync
if: ${{ github.event.inputs.target == 'stage-stable' }}
run: |
if [ $(git rev-parse ${{ github.event.inputs.source }}) != $(git rev-parse origin/main) ]; then
echo "Target is stage-stable and source ref isn't main"
exit 1
fi
sync:
name: Sync source and target refs
needs: check
if: ${{ github.event_name == 'push' || success() }}
timeout-minutes: 5
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
with:
ref: ${{ github.event.inputs.source }}
fetch-depth: 0
- name: Release to production
if: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.target == 'production' }}
run: |
git push https://${{ secrets.SCHUTZBOT_GH_TOKEN }}@github.com/${{ github.repository }}.git ${{ github.event.inputs.source }}:refs/heads/prod-beta
git push https://${{ secrets.SCHUTZBOT_GH_TOKEN }}@github.com/${{ github.repository }}.git ${{ github.event.inputs.source }}:refs/heads/prod-stable
- name: Sync main to stage-stable
if: ${{ github.event_name == 'push' || github.event.inputs.target == 'stage-stable' }}
run: |
git push https://${{ secrets.SCHUTZBOT_GH_TOKEN }}@github.com/${{ github.repository }}.git origin/main:refs/heads/stage-stable

View file

@ -3,25 +3,58 @@
name: Trigger GitLab CI
on:
push:
branches:
- main
workflow_run:
workflows: ["Development checks"]
types: [completed]
jobs:
trigger-gitlab:
if: ${{ github.event.workflow_run.conclusion == 'success' }}
runs-on: ubuntu-latest
env:
IMAGEBUILDER_BOT_GITLAB_SSH_KEY: ${{ secrets.IMAGEBUILDER_BOT_GITLAB_SSH_KEY }}
GITLAB_TOKEN: ${{ secrets.IMAGEBUILDER_BOT_GITLAB_PIPELINE_TRIGGER_TOKEN }}
steps:
- name: Report status
uses: haya14busa/action-workflow_run-status@v1
- name: Install Dependencies
run: |
sudo apt install -y jq
- name: Clone repository
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
ref: ${{ github.event.workflow_run.head_sha }}
fetch-depth: 0
- uses: octokit/request-action@v2.x
id: fetch_pulls
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
route: GET /repos/${{ github.repository }}/pulls
per_page: 100
- name: Checkout branch
id: pr_data
env:
BRANCH: ${{ github.event.workflow_run.head_branch }}
run: |
PR_DATA=$(mktemp)
# use uuid as a file terminator to avoid conflicts with data content
cat > "$PR_DATA" <<'a21b3e7f-d5eb-44a3-8be0-c2412851d2e6'
${{ steps.fetch_pulls.outputs.data }}
a21b3e7f-d5eb-44a3-8be0-c2412851d2e6
PR=$(jq -rc '.[] | select(.head.sha | contains("${{ github.event.workflow_run.head_sha }}")) | select(.state | contains("open"))' "$PR_DATA" | jq -r .number)
if [ ! -z "$PR" ]; then
echo "pr_branch=PR-$PR" >> "$GITHUB_OUTPUT"
git checkout -b PR-$PR
else
git checkout "${BRANCH}"
fi
- name: Push to gitlab
run: |
mkdir -p ~/.ssh
@ -30,4 +63,5 @@ jobs:
touch ~/.ssh/known_hosts
ssh-keyscan -t rsa gitlab.com >> ~/.ssh/known_hosts
git remote add ci git@gitlab.com:redhat/services/products/image-builder/ci/image-builder-frontend.git
git push -f ci
[[ "${SKIP_CI}" == true ]] && PUSH_OPTION='-o ci.variable="SKIP_CI=true"' || PUSH_OPTION=""
git push -f ${PUSH_OPTION} ci

51
.github/workflows/unit-tests.yml vendored Normal file
View file

@ -0,0 +1,51 @@
name: Unit Tests
on:
pull_request:
branches: [ "main" ]
push:
branches: [ "main" ]
merge_group:
# this prevents multiple jobs from the same pr
# running when new changes are pushed.
concurrency:
group: ${{github.workflow}}-${{ github.ref }}
cancel-in-progress: true
jobs:
unit-tests:
name: Service Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Use Node.js 22
uses: actions/setup-node@v4
with:
node-version: 22
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Run unit tests
run: npm run test:coverage
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./coverage/junit.xml
verbose: true
cockpit-unit-tests:
name: Cockpit Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Use Node.js 22
uses: actions/setup-node@v4
with:
node-version: 22
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Run unit tests with cockpit
run: npm run test:cockpit

51
.github/workflows/update-apis.yml vendored Normal file
View file

@ -0,0 +1,51 @@
# This action checks API updates every day at 5:00 UTC.
name: Update API code generation
on:
workflow_dispatch:
schedule:
- cron: "0 5 * * *"
jobs:
update-api:
name: "Update API definitions"
if: github.repository == 'osbuild/image-builder-frontend'
runs-on: ubuntu-latest
steps:
- name: Check out code into the Go module directory
uses: actions/checkout@v4
- name: Use Node.js 22
uses: actions/setup-node@v4
with:
node-version: 22
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Mark the working directory as safe for git
run: git config --global --add safe.directory "$(pwd)"
- name: Run API code generation
run: npm run api
- name: Check if there are any changes
run: |
if [ "$(git status --porcelain)" ]; then
echo
echo "API codegen is up-to-date"
exit "0"
fi
- name: Create Pull Request
uses: peter-evans/create-pull-request@v6
with:
branch: update-apis
delete-branch: true
title: "api: regenerate api code generation"
commit-message: "api: regenerate api code generation"
body: Update api code generation
token: ${{ secrets.SCHUTZBOT_GITHUB_ACCESS_TOKEN }}
author: schutzbot <schutzbot@gmail.com>

28
.gitignore vendored
View file

@ -12,6 +12,9 @@ node_modules
# production
dist
# cache
.cache
npm-debug.log*
yarn-debug.log*
yarn-error.log*
@ -20,4 +23,29 @@ yarn-error.log*
coverage
*~
*.swp
bots
# madge graph of dependencies generated by `npm run circular:graph`
deps.png
# build directories
cockpit/public/vendor*
cockpit/public/src_*
cockpit/public/main*
# Sentry Config File
.sentryclirc
# cockpit lib dir
pkg/lib
rpmbuild
# Playwright
/test-results/
/playwright-report/
/blob-report/
/playwright/.cache/
.env
.auth

View file

@ -3,31 +3,41 @@ stages:
- test
- finish
.terraform:
after_script:
- schutzbot/update_github_status.sh update
tags:
- terraform
init:
stage: init
interruptible: true
tags:
- shell
script:
- schutzbot/update_github_status.sh start
SonarQube:
stage: test
extends: .terraform
test:
before_script:
- mkdir -p /tmp/artifacts
- schutzbot/ci_details.sh > /tmp/artifacts/ci-details-before-run.txt
- cat schutzbot/team_ssh_keys.txt | tee -a ~/.ssh/authorized_keys > /dev/null
script:
- schutzbot/sonarqube.sh
variables:
RUNNER: aws/centos-stream-8-x86_64
INTERNAL_NETWORK: "true"
GIT_DEPTH: 0
- schutzbot/make_rpm_and_install.sh
- schutzbot/playwright_tests.sh
after_script:
- schutzbot/ci_details.sh > /tmp/artifacts/ci-details-after-run.txt || true
- schutzbot/unregister.sh || true
- schutzbot/update_github_status.sh update || true
- schutzbot/save_journal.sh || true
- schutzbot/upload_artifacts.sh
tags:
- terraform
parallel:
matrix:
- RUNNER:
- aws/fedora-41-x86_64
- aws/fedora-42-x86_64
- aws/rhel-10.1-nightly-x86_64
INTERNAL_NETWORK: ["true"]
finish:
stage: finish
dependencies: []
tags:
- shell
script:

3
.gitmodules vendored Normal file
View file

@ -0,0 +1,3 @@
[submodule "build-tools"]
path = build-tools
url = https://github.com/RedHatInsights/insights-frontend-builder-common.git

View file

@ -0,0 +1,3 @@
name = "basic-example"
description = "A basic blueprint"
version = "0.0.1"

7
.madgerc Normal file
View file

@ -0,0 +1,7 @@
{
"detectiveOptions": {
"ts": {
"skipTypeImports": true
}
}
}

View file

@ -1,4 +0,0 @@
{
"extends": "stylelint-config-recommended-scss",
"customSyntax": "postcss-scss"
}

View file

@ -0,0 +1,558 @@
apiVersion: tekton.dev/v1
kind: PipelineRun
metadata:
annotations:
build.appstudio.openshift.io/repo: https://github.com/osbuild/image-builder-frontend?rev={{revision}}
build.appstudio.redhat.com/commit_sha: '{{revision}}'
build.appstudio.redhat.com/pull_request_number: '{{pull_request_number}}'
build.appstudio.redhat.com/target_branch: '{{target_branch}}'
pipelinesascode.tekton.dev/max-keep-runs: "3"
pipelinesascode.tekton.dev/on-cel-expression: (event == "pull_request" && target_branch == "main") || (event == "push" && target_branch.startsWith("gh-readonly-queue/main/"))
creationTimestamp:
labels:
appstudio.openshift.io/application: insights-image-builder
appstudio.openshift.io/component: image-builder-frontend
pipelines.appstudio.openshift.io/type: build
name: image-builder-frontend-on-pull-request
namespace: insights-management-tenant
spec:
params:
- name: git-url
value: '{{source_url}}'
- name: revision
value: '{{revision}}'
- name: output-image
value: quay.io/redhat-user-workloads/insights-management-tenant/insights-image-builder/image-builder-frontend:on-pr-{{revision}}
- name: image-expires-after
value: 5d
- name: dockerfile
value: build-tools/Dockerfile
- name: path-context
value: .
pipelineSpec:
description: |
This pipeline is ideal for building container images from a Containerfile while reducing network traffic.
_Uses `buildah` to create a container image. It also optionally creates a source image and runs some build-time tests. EC will flag a violation for [`trusted_task.trusted`](https://enterprisecontract.dev/docs/ec-policies/release_policy.html#trusted_task__trusted) if any tasks are added to the pipeline.
This pipeline is pushed as a Tekton bundle to [quay.io](https://quay.io/repository/konflux-ci/tekton-catalog/pipeline-docker-build?tab=tags)_
finally:
- name: show-sbom
params:
- name: IMAGE_URL
value: $(tasks.build-image-index.results.IMAGE_URL)
taskRef:
params:
- name: name
value: show-sbom
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-show-sbom:0.1@sha256:beb0616db051952b4b861dd8c3e00fa1c0eccbd926feddf71194d3bb3ace9ce7
- name: kind
value: task
resolver: bundles
- name: show-summary
params:
- name: pipelinerun-name
value: $(context.pipelineRun.name)
- name: git-url
value: $(tasks.clone-repository.results.url)?rev=$(tasks.clone-repository.results.commit)
- name: image-url
value: $(params.output-image)
- name: build-task-status
value: $(tasks.build-image-index.status)
taskRef:
params:
- name: name
value: summary
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-summary:0.2@sha256:3f6e8513cbd70f0416eb6c6f2766973a754778526125ff33d8e3633def917091
- name: kind
value: task
resolver: bundles
workspaces:
- name: workspace
workspace: workspace
params:
- description: Source Repository URL
name: git-url
type: string
- default: ""
description: Revision of the Source Repository
name: revision
type: string
- description: Fully Qualified Output Image
name: output-image
type: string
- default: .
description: Path to the source code of an application's component from where to build image.
name: path-context
type: string
- default: Dockerfile
description: Path to the Dockerfile inside the context specified by parameter path-context
name: dockerfile
type: string
- default: "false"
description: Force rebuild image
name: rebuild
type: string
- default: "false"
description: Skip checks against built image
name: skip-checks
type: string
- default: "false"
description: Execute the build with network isolation
name: hermetic
type: string
- default: ""
description: Build dependencies to be prefetched by Cachi2
name: prefetch-input
type: string
- default: ""
description: Image tag expiration time, time values could be something like 1h, 2d, 3w for hours, days, and weeks, respectively.
name: image-expires-after
- default: "false"
description: Build a source image.
name: build-source-image
type: string
- default: "false"
description: Add built image into an OCI image index
name: build-image-index
type: string
- default: []
description: Array of --build-arg values ("arg=value" strings) for buildah
name: build-args
type: array
- default: ""
description: Path to a file with build arguments for buildah, see https://www.mankier.com/1/buildah-build#--build-arg-file
name: build-args-file
type: string
results:
- description: ""
name: IMAGE_URL
value: $(tasks.build-image-index.results.IMAGE_URL)
- description: ""
name: IMAGE_DIGEST
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
- description: ""
name: CHAINS-GIT_URL
value: $(tasks.clone-repository.results.url)
- description: ""
name: CHAINS-GIT_COMMIT
value: $(tasks.clone-repository.results.commit)
tasks:
- name: init
params:
- name: image-url
value: $(params.output-image)
- name: rebuild
value: $(params.rebuild)
- name: skip-checks
value: $(params.skip-checks)
taskRef:
params:
- name: name
value: init
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-init:0.2@sha256:08e18a4dc5f947c1d20e8353a19d013144bea87b72f67236b165dd4778523951
- name: kind
value: task
resolver: bundles
- name: clone-repository
params:
- name: url
value: $(params.git-url)
- name: revision
value: $(params.revision)
runAfter:
- init
taskRef:
params:
- name: name
value: git-clone
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-git-clone:0.1@sha256:7939000e2f92fc8b5d2c4ee4ba9000433c5aa7700d2915a1d4763853d5fd1fd4
- name: kind
value: task
resolver: bundles
when:
- input: $(tasks.init.results.build)
operator: in
values:
- "true"
workspaces:
- name: output
workspace: workspace
- name: basic-auth
workspace: git-auth
- name: prefetch-dependencies
params:
- name: input
value: $(params.prefetch-input)
runAfter:
- clone-repository
taskRef:
params:
- name: name
value: prefetch-dependencies
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-prefetch-dependencies:0.2@sha256:ce5f2485d759221444357fe38276be876fc54531651e50dcfc0f84b34909d760
- name: kind
value: task
resolver: bundles
when:
- input: $(params.prefetch-input)
operator: notin
values:
- ""
workspaces:
- name: source
workspace: workspace
- name: git-basic-auth
workspace: git-auth
- name: netrc
workspace: netrc
- name: build-container
params:
- name: IMAGE
value: $(params.output-image)
- name: DOCKERFILE
value: $(params.dockerfile)
- name: CONTEXT
value: $(params.path-context)
- name: HERMETIC
value: $(params.hermetic)
- name: PREFETCH_INPUT
value: $(params.prefetch-input)
- name: IMAGE_EXPIRES_AFTER
value: $(params.image-expires-after)
- name: COMMIT_SHA
value: $(tasks.clone-repository.results.commit)
- name: BUILD_ARGS
value:
- $(params.build-args[*])
- name: BUILD_ARGS_FILE
value: $(params.build-args-file)
runAfter:
- prefetch-dependencies
taskRef:
params:
- name: name
value: buildah
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-buildah:0.4@sha256:7782cb7462130de8e8839a58dd15ed78e50938d718b51375267679c6044b4367
- name: kind
value: task
resolver: bundles
when:
- input: $(tasks.init.results.build)
operator: in
values:
- "true"
workspaces:
- name: source
workspace: workspace
- name: build-image-index
params:
- name: IMAGE
value: $(params.output-image)
- name: COMMIT_SHA
value: $(tasks.clone-repository.results.commit)
- name: IMAGE_EXPIRES_AFTER
value: $(params.image-expires-after)
- name: ALWAYS_BUILD_INDEX
value: $(params.build-image-index)
- name: IMAGES
value:
- $(tasks.build-container.results.IMAGE_URL)@$(tasks.build-container.results.IMAGE_DIGEST)
runAfter:
- build-container
taskRef:
params:
- name: name
value: build-image-index
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-build-image-index:0.1@sha256:72f77a8c62f9d6f69ab5c35170839e4b190026e6cc3d7d4ceafa7033fc30ad7b
- name: kind
value: task
resolver: bundles
when:
- input: $(tasks.init.results.build)
operator: in
values:
- "true"
- name: build-source-image
params:
- name: BINARY_IMAGE
value: $(tasks.build-image-index.results.IMAGE_URL)
- name: BINARY_IMAGE_DIGEST
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: source-build
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-source-build:0.3@sha256:96ed9431854ecf9805407dca77b063abdf7aba1b3b9d1925a5c6145c6b7e95fd
- name: kind
value: task
resolver: bundles
when:
- input: $(tasks.init.results.build)
operator: in
values:
- "true"
- input: $(params.build-source-image)
operator: in
values:
- "true"
workspaces:
- name: workspace
workspace: workspace
- name: sast-shell-check
params:
- name: image-digest
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
- name: image-url
value: $(tasks.build-image-index.results.IMAGE_URL)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: sast-shell-check
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-sast-shell-check:0.1@sha256:4a63982791a1a68f560c486f524ef5b9fdbeee0c16fe079eee3181a2cfd1c1bf
- name: kind
value: task
resolver: bundles
when:
- input: $(params.skip-checks)
operator: in
values:
- "false"
workspaces:
- name: workspace
workspace: workspace
- name: sast-unicode-check
params:
- name: image-url
value: $(tasks.build-image-index.results.IMAGE_URL)
- name: image-digest
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: sast-unicode-check
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-sast-unicode-check:0.3@sha256:bec18fa5e82e801c3f267f29bf94535a5024e72476f2b27cca7271d506abb5ad
- name: kind
value: task
resolver: bundles
when:
- input: $(params.skip-checks)
operator: in
values:
- "false"
workspaces:
- name: workspace
workspace: workspace
- name: deprecated-base-image-check
params:
- name: IMAGE_URL
value: $(tasks.build-image-index.results.IMAGE_URL)
- name: IMAGE_DIGEST
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: deprecated-image-check
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-deprecated-image-check:0.5@sha256:1d07d16810c26713f3d875083924d93697900147364360587ccb5a63f2c31012
- name: kind
value: task
resolver: bundles
when:
- input: $(params.skip-checks)
operator: in
values:
- "false"
- name: clair-scan
params:
- name: image-digest
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
- name: image-url
value: $(tasks.build-image-index.results.IMAGE_URL)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: clair-scan
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-clair-scan:0.2@sha256:893ffa3ce26b061e21bb4d8db9ef7ed4ddd4044fe7aa5451ef391034da3ff759
- name: kind
value: task
resolver: bundles
when:
- input: $(params.skip-checks)
operator: in
values:
- "false"
- name: ecosystem-cert-preflight-checks
params:
- name: image-url
value: $(tasks.build-image-index.results.IMAGE_URL)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: ecosystem-cert-preflight-checks
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-ecosystem-cert-preflight-checks:0.2@sha256:1f151e00f7fc427654b7b76045a426bb02fe650d192ffe147a304d2184787e38
- name: kind
value: task
resolver: bundles
when:
- input: $(params.skip-checks)
operator: in
values:
- "false"
- name: sast-snyk-check
params:
- name: image-digest
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
- name: image-url
value: $(tasks.build-image-index.results.IMAGE_URL)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: sast-snyk-check
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-sast-snyk-check:0.4@sha256:351f2dce893159b703e9b6d430a2450b3df9967cb9bd3adb46852df8ccfe4c0d
- name: kind
value: task
resolver: bundles
when:
- input: $(params.skip-checks)
operator: in
values:
- "false"
workspaces:
- name: workspace
workspace: workspace
- name: clamav-scan
params:
- name: image-digest
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
- name: image-url
value: $(tasks.build-image-index.results.IMAGE_URL)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: clamav-scan
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-clamav-scan:0.3@sha256:cce2dfcc5bd6e91ee54aacdadad523b013eeae5cdaa7f6a4624b8cbcc040f439
- name: kind
value: task
resolver: bundles
when:
- input: $(params.skip-checks)
operator: in
values:
- "false"
- name: apply-tags
params:
- name: IMAGE_URL
value: $(tasks.build-image-index.results.IMAGE_URL)
- name: IMAGE_DIGEST
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: apply-tags
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-apply-tags:0.2@sha256:70881c97a4c51ee1f4d023fa1110e0bdfcfd2f51d9a261fa543c3862b9a4eee9
- name: kind
value: task
resolver: bundles
- name: push-dockerfile
params:
- name: IMAGE
value: $(tasks.build-image-index.results.IMAGE_URL)
- name: IMAGE_DIGEST
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
- name: DOCKERFILE
value: $(params.dockerfile)
- name: CONTEXT
value: $(params.path-context)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: push-dockerfile
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-push-dockerfile:0.1@sha256:d5cb22a833be51dd72a872cac8bfbe149e8ad34da7cb48a643a1e613447a1f9d
- name: kind
value: task
resolver: bundles
workspaces:
- name: workspace
workspace: workspace
- name: rpms-signature-scan
params:
- name: image-digest
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
- name: image-url
value: $(tasks.build-image-index.results.IMAGE_URL)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: rpms-signature-scan
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-rpms-signature-scan:0.2@sha256:1b6c20ab3dbfb0972803d3ebcb2fa72642e59400c77bd66dfd82028bdd09e120
- name: kind
value: task
resolver: bundles
when:
- input: $(params.skip-checks)
operator: in
values:
- "false"
workspaces:
- name: workspace
- name: git-auth
optional: true
- name: netrc
optional: true
taskRunTemplate:
serviceAccountName: build-pipeline-image-builder-frontend
workspaces:
- name: workspace
volumeClaimTemplate:
metadata:
creationTimestamp:
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
status: {}
- name: git-auth
secret:
secretName: '{{ git_auth_secret }}'
status: {}

View file

@ -0,0 +1,555 @@
apiVersion: tekton.dev/v1
kind: PipelineRun
metadata:
annotations:
build.appstudio.openshift.io/repo: https://github.com/osbuild/image-builder-frontend?rev={{revision}}
build.appstudio.redhat.com/commit_sha: '{{revision}}'
build.appstudio.redhat.com/target_branch: '{{target_branch}}'
pipelinesascode.tekton.dev/max-keep-runs: "3"
pipelinesascode.tekton.dev/on-cel-expression: event == "push" && target_branch == "main"
creationTimestamp:
labels:
appstudio.openshift.io/application: insights-image-builder
appstudio.openshift.io/component: image-builder-frontend
pipelines.appstudio.openshift.io/type: build
name: image-builder-frontend-on-push
namespace: insights-management-tenant
spec:
params:
- name: git-url
value: '{{source_url}}'
- name: revision
value: '{{revision}}'
- name: output-image
value: quay.io/redhat-user-workloads/insights-management-tenant/insights-image-builder/image-builder-frontend:{{revision}}
- name: dockerfile
value: build-tools/Dockerfile
- name: path-context
value: .
pipelineSpec:
description: |
This pipeline is ideal for building container images from a Containerfile while reducing network traffic.
_Uses `buildah` to create a container image. It also optionally creates a source image and runs some build-time tests. EC will flag a violation for [`trusted_task.trusted`](https://enterprisecontract.dev/docs/ec-policies/release_policy.html#trusted_task__trusted) if any tasks are added to the pipeline.
This pipeline is pushed as a Tekton bundle to [quay.io](https://quay.io/repository/konflux-ci/tekton-catalog/pipeline-docker-build?tab=tags)_
finally:
- name: show-sbom
params:
- name: IMAGE_URL
value: $(tasks.build-image-index.results.IMAGE_URL)
taskRef:
params:
- name: name
value: show-sbom
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-show-sbom:0.1@sha256:beb0616db051952b4b861dd8c3e00fa1c0eccbd926feddf71194d3bb3ace9ce7
- name: kind
value: task
resolver: bundles
- name: show-summary
params:
- name: pipelinerun-name
value: $(context.pipelineRun.name)
- name: git-url
value: $(tasks.clone-repository.results.url)?rev=$(tasks.clone-repository.results.commit)
- name: image-url
value: $(params.output-image)
- name: build-task-status
value: $(tasks.build-image-index.status)
taskRef:
params:
- name: name
value: summary
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-summary:0.2@sha256:3f6e8513cbd70f0416eb6c6f2766973a754778526125ff33d8e3633def917091
- name: kind
value: task
resolver: bundles
workspaces:
- name: workspace
workspace: workspace
params:
- description: Source Repository URL
name: git-url
type: string
- default: ""
description: Revision of the Source Repository
name: revision
type: string
- description: Fully Qualified Output Image
name: output-image
type: string
- default: .
description: Path to the source code of an application's component from where to build image.
name: path-context
type: string
- default: Dockerfile
description: Path to the Dockerfile inside the context specified by parameter path-context
name: dockerfile
type: string
- default: "false"
description: Force rebuild image
name: rebuild
type: string
- default: "false"
description: Skip checks against built image
name: skip-checks
type: string
- default: "false"
description: Execute the build with network isolation
name: hermetic
type: string
- default: ""
description: Build dependencies to be prefetched by Cachi2
name: prefetch-input
type: string
- default: ""
description: Image tag expiration time, time values could be something like 1h, 2d, 3w for hours, days, and weeks, respectively.
name: image-expires-after
- default: "false"
description: Build a source image.
name: build-source-image
type: string
- default: "false"
description: Add built image into an OCI image index
name: build-image-index
type: string
- default: []
description: Array of --build-arg values ("arg=value" strings) for buildah
name: build-args
type: array
- default: ""
description: Path to a file with build arguments for buildah, see https://www.mankier.com/1/buildah-build#--build-arg-file
name: build-args-file
type: string
results:
- description: ""
name: IMAGE_URL
value: $(tasks.build-image-index.results.IMAGE_URL)
- description: ""
name: IMAGE_DIGEST
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
- description: ""
name: CHAINS-GIT_URL
value: $(tasks.clone-repository.results.url)
- description: ""
name: CHAINS-GIT_COMMIT
value: $(tasks.clone-repository.results.commit)
tasks:
- name: init
params:
- name: image-url
value: $(params.output-image)
- name: rebuild
value: $(params.rebuild)
- name: skip-checks
value: $(params.skip-checks)
taskRef:
params:
- name: name
value: init
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-init:0.2@sha256:08e18a4dc5f947c1d20e8353a19d013144bea87b72f67236b165dd4778523951
- name: kind
value: task
resolver: bundles
- name: clone-repository
params:
- name: url
value: $(params.git-url)
- name: revision
value: $(params.revision)
runAfter:
- init
taskRef:
params:
- name: name
value: git-clone
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-git-clone:0.1@sha256:7939000e2f92fc8b5d2c4ee4ba9000433c5aa7700d2915a1d4763853d5fd1fd4
- name: kind
value: task
resolver: bundles
when:
- input: $(tasks.init.results.build)
operator: in
values:
- "true"
workspaces:
- name: output
workspace: workspace
- name: basic-auth
workspace: git-auth
- name: prefetch-dependencies
params:
- name: input
value: $(params.prefetch-input)
runAfter:
- clone-repository
taskRef:
params:
- name: name
value: prefetch-dependencies
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-prefetch-dependencies:0.2@sha256:ce5f2485d759221444357fe38276be876fc54531651e50dcfc0f84b34909d760
- name: kind
value: task
resolver: bundles
when:
- input: $(params.prefetch-input)
operator: notin
values:
- ""
workspaces:
- name: source
workspace: workspace
- name: git-basic-auth
workspace: git-auth
- name: netrc
workspace: netrc
- name: build-container
params:
- name: IMAGE
value: $(params.output-image)
- name: DOCKERFILE
value: $(params.dockerfile)
- name: CONTEXT
value: $(params.path-context)
- name: HERMETIC
value: $(params.hermetic)
- name: PREFETCH_INPUT
value: $(params.prefetch-input)
- name: IMAGE_EXPIRES_AFTER
value: $(params.image-expires-after)
- name: COMMIT_SHA
value: $(tasks.clone-repository.results.commit)
- name: BUILD_ARGS
value:
- $(params.build-args[*])
- name: BUILD_ARGS_FILE
value: $(params.build-args-file)
runAfter:
- prefetch-dependencies
taskRef:
params:
- name: name
value: buildah
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-buildah:0.4@sha256:7782cb7462130de8e8839a58dd15ed78e50938d718b51375267679c6044b4367
- name: kind
value: task
resolver: bundles
when:
- input: $(tasks.init.results.build)
operator: in
values:
- "true"
workspaces:
- name: source
workspace: workspace
- name: build-image-index
params:
- name: IMAGE
value: $(params.output-image)
- name: COMMIT_SHA
value: $(tasks.clone-repository.results.commit)
- name: IMAGE_EXPIRES_AFTER
value: $(params.image-expires-after)
- name: ALWAYS_BUILD_INDEX
value: $(params.build-image-index)
- name: IMAGES
value:
- $(tasks.build-container.results.IMAGE_URL)@$(tasks.build-container.results.IMAGE_DIGEST)
runAfter:
- build-container
taskRef:
params:
- name: name
value: build-image-index
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-build-image-index:0.1@sha256:72f77a8c62f9d6f69ab5c35170839e4b190026e6cc3d7d4ceafa7033fc30ad7b
- name: kind
value: task
resolver: bundles
when:
- input: $(tasks.init.results.build)
operator: in
values:
- "true"
- name: build-source-image
params:
- name: BINARY_IMAGE
value: $(tasks.build-image-index.results.IMAGE_URL)
- name: BINARY_IMAGE_DIGEST
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: source-build
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-source-build:0.3@sha256:96ed9431854ecf9805407dca77b063abdf7aba1b3b9d1925a5c6145c6b7e95fd
- name: kind
value: task
resolver: bundles
when:
- input: $(tasks.init.results.build)
operator: in
values:
- "true"
- input: $(params.build-source-image)
operator: in
values:
- "true"
workspaces:
- name: workspace
workspace: workspace
- name: sast-shell-check
params:
- name: image-digest
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
- name: image-url
value: $(tasks.build-image-index.results.IMAGE_URL)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: sast-shell-check
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-sast-shell-check:0.1@sha256:4a63982791a1a68f560c486f524ef5b9fdbeee0c16fe079eee3181a2cfd1c1bf
- name: kind
value: task
resolver: bundles
when:
- input: $(params.skip-checks)
operator: in
values:
- "false"
workspaces:
- name: workspace
workspace: workspace
- name: sast-unicode-check
params:
- name: image-url
value: $(tasks.build-image-index.results.IMAGE_URL)
- name: image-digest
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: sast-unicode-check
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-sast-unicode-check:0.3@sha256:bec18fa5e82e801c3f267f29bf94535a5024e72476f2b27cca7271d506abb5ad
- name: kind
value: task
resolver: bundles
when:
- input: $(params.skip-checks)
operator: in
values:
- "false"
workspaces:
- name: workspace
workspace: workspace
- name: deprecated-base-image-check
params:
- name: IMAGE_URL
value: $(tasks.build-image-index.results.IMAGE_URL)
- name: IMAGE_DIGEST
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: deprecated-image-check
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-deprecated-image-check:0.5@sha256:1d07d16810c26713f3d875083924d93697900147364360587ccb5a63f2c31012
- name: kind
value: task
resolver: bundles
when:
- input: $(params.skip-checks)
operator: in
values:
- "false"
- name: clair-scan
params:
- name: image-digest
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
- name: image-url
value: $(tasks.build-image-index.results.IMAGE_URL)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: clair-scan
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-clair-scan:0.2@sha256:893ffa3ce26b061e21bb4d8db9ef7ed4ddd4044fe7aa5451ef391034da3ff759
- name: kind
value: task
resolver: bundles
when:
- input: $(params.skip-checks)
operator: in
values:
- "false"
- name: ecosystem-cert-preflight-checks
params:
- name: image-url
value: $(tasks.build-image-index.results.IMAGE_URL)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: ecosystem-cert-preflight-checks
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-ecosystem-cert-preflight-checks:0.2@sha256:1f151e00f7fc427654b7b76045a426bb02fe650d192ffe147a304d2184787e38
- name: kind
value: task
resolver: bundles
when:
- input: $(params.skip-checks)
operator: in
values:
- "false"
- name: sast-snyk-check
params:
- name: image-digest
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
- name: image-url
value: $(tasks.build-image-index.results.IMAGE_URL)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: sast-snyk-check
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-sast-snyk-check:0.4@sha256:351f2dce893159b703e9b6d430a2450b3df9967cb9bd3adb46852df8ccfe4c0d
- name: kind
value: task
resolver: bundles
when:
- input: $(params.skip-checks)
operator: in
values:
- "false"
workspaces:
- name: workspace
workspace: workspace
- name: clamav-scan
params:
- name: image-digest
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
- name: image-url
value: $(tasks.build-image-index.results.IMAGE_URL)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: clamav-scan
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-clamav-scan:0.3@sha256:cce2dfcc5bd6e91ee54aacdadad523b013eeae5cdaa7f6a4624b8cbcc040f439
- name: kind
value: task
resolver: bundles
when:
- input: $(params.skip-checks)
operator: in
values:
- "false"
- name: apply-tags
params:
- name: IMAGE_URL
value: $(tasks.build-image-index.results.IMAGE_URL)
- name: IMAGE_DIGEST
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: apply-tags
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-apply-tags:0.2@sha256:70881c97a4c51ee1f4d023fa1110e0bdfcfd2f51d9a261fa543c3862b9a4eee9
- name: kind
value: task
resolver: bundles
- name: push-dockerfile
params:
- name: IMAGE
value: $(tasks.build-image-index.results.IMAGE_URL)
- name: IMAGE_DIGEST
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
- name: DOCKERFILE
value: $(params.dockerfile)
- name: CONTEXT
value: $(params.path-context)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: push-dockerfile
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-push-dockerfile:0.1@sha256:d5cb22a833be51dd72a872cac8bfbe149e8ad34da7cb48a643a1e613447a1f9d
- name: kind
value: task
resolver: bundles
workspaces:
- name: workspace
workspace: workspace
- name: rpms-signature-scan
params:
- name: image-digest
value: $(tasks.build-image-index.results.IMAGE_DIGEST)
- name: image-url
value: $(tasks.build-image-index.results.IMAGE_URL)
runAfter:
- build-image-index
taskRef:
params:
- name: name
value: rpms-signature-scan
- name: bundle
value: quay.io/konflux-ci/tekton-catalog/task-rpms-signature-scan:0.2@sha256:1b6c20ab3dbfb0972803d3ebcb2fa72642e59400c77bd66dfd82028bdd09e120
- name: kind
value: task
resolver: bundles
when:
- input: $(params.skip-checks)
operator: in
values:
- "false"
workspaces:
- name: workspace
- name: git-auth
optional: true
- name: netrc
optional: true
taskRunTemplate:
serviceAccountName: build-pipeline-image-builder-frontend
workspaces:
- name: workspace
volumeClaimTemplate:
metadata:
creationTimestamp:
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
status: {}
- name: git-auth
secret:
secretName: '{{ git_auth_secret }}'
status: {}

View file

@ -1,27 +0,0 @@
language: node_js
sudo: required
branches:
only:
- main
- stage-stable
- prod-beta
- prod-stable
notifications:
email: false
node_js:
- '16'
install:
- npm ci
before_script: |
npm run api && [ -z "$(git status --porcelain=v1 2>/dev/null)" ] && echo "✓ No manual API changes." || echo "✗ API manually changed, please refer to the README for the procedure to follow for programmatically generated API endpoints." && [ -z "$(git status --porcelain=v1 2>/dev/null)" ]
script:
- NODE_ENV=production npm run build
- npm run lint
- npm run test
- npx codecov
after_success:
- curl -sSL https://raw.githubusercontent.com/RedHatInsights/insights-frontend-builder-common/master/src/bootstrap.sh | bash -s
env:
global:
- DEPLOY_REPO="git@github.com:RedHatInsights/image-builder-frontend-build"
- NODE_OPTIONS="--max-old-space-size=4096 --max_old_space_size=4096"

75
.travis/Jenkinsfile vendored
View file

@ -1,75 +0,0 @@
@Library("github.com/RedHatInsights/insights-pipeline-lib@v3")
import groovy.json.JsonSlurper
node {
stage ("deploy") {
checkout scm
withCredentials(bindings: [sshUserPrivateKey(credentialsId: "cloud-netstorage",
keyFileVariable: "privateKeyFile",
passphraseVariable: "",
usernameVariable: "")]) {
String APP_NAME = "__APP_NAME__"
String BRANCH = env.BRANCH_NAME.replaceAll("origin/", "")
if (BRANCH == "prod-stable") {
PREFIX = ""
} else if (BRANCH == "prod-beta") {
PREFIX = "beta/"
} else if (BRANCH == "qa-stable" || BRANCH == "stage-stable") {
PREFIX = "stage/"
} else if (BRANCH == "qa-beta" || BRANCH == "stage-beta") {
PREFIX = "stage/beta/"
} else {
error "Bug: invalid branch name, we only support (prod/qa/stage)-(beta/stable) and we got ${BRANCH}"
}
// Write build info into app.info.json
// We have the src info there already
def app_info = readJSON file: "./app.info.json"
app_info.build_branch = BRANCH
app_info.build_hash = sh(returnStdout: true, script: 'git rev-parse HEAD').trim()
app_info.build_id = env.BUILD_ID
writeJSON file: "./app.info.json", json: app_info
// Send Slack Notification
String SLACK_TEXT = "${APP_NAME}/${BRANCH} [STATUS] - Deploy build ${app_info.build_id} started for GIT COMMIT ${app_info.build_hash}."
slackSend message: SLACK_TEXT, color: 'black', channel: '#insights-bots'
AKAMAI_BASE_PATH = "822386"
AKAMAI_APP_PATH = "/${AKAMAI_BASE_PATH}/${PREFIX}apps/${APP_NAME}"
sh """
eval `ssh-agent`
ssh-add \"$privateKeyFile\"
chmod 600 ~/.ssh/known_hosts ~/.ssh/config
n=0
until [ \$n -ge 10 ]
do
rsync -arv -e \"ssh -2 -o StrictHostKeyChecking=no\" * sshacs@cloud-unprotected.upload.akamai.com:${AKAMAI_APP_PATH} && break
n=\$[\$n+1]
sleep 10
done
"""
//Clear the cache for the app being deployed
openShiftUtils.withJnlpNode(
image: "quay.io/redhatqe/origin-jenkins-agent-akamai:4.9",
namespace: "insights-dev-jenkins"
) {
//install python dependencies
sh "wget https://raw.githubusercontent.com/RedHatInsights/insights-frontend-builder-common/master/src/akamai_cache_buster/bustCache.py"
sh "wget https://raw.githubusercontent.com/RedHatInsights/insights-frontend-builder-common/master/src/akamai_cache_buster/requirements.txt"
sh "pip install -r requirements.txt"
withCredentials([file(credentialsId: "jenkins-eccu-cache-purge", variable: 'EDGERC')]) {
//path to .edgerc file is now set to $EDGERC"
//Bust the current cache
sh "python3 bustCache.py $EDGERC ${APP_NAME} ${BRANCH}"
}
// Trigger IQE pipelines
sh ("curl -X POST -H 'Content-type: application/json' --data '{\"text\":\"Trigger IQE pipelines\"}' WEBHOOK_PLACEHOLDER")
}
}
}
}

View file

@ -1,26 +0,0 @@
#!/bin/bash
set -ex
if [ "${TRAVIS_BRANCH}" = "main" ]; then
.travis/release.sh "stage-beta"
fi
if [ "${TRAVIS_BRANCH}" = "stage-stable" ]; then
# Download modified Jenkinsfile
curl -o .travis/58231b16fdee45a03a4ee3cf94a9f2c3 https://raw.githubusercontent.com/RedHatInsights/image-builder-frontend/stage-stable/.travis/Jenkinsfile
# Insert stage webhook URL
sed -i 's|WEBHOOK_PLACEHOLDER|https://smee.io/IQDT9yRXsWlqbxpg|g' .travis/58231b16fdee45a03a4ee3cf94a9f2c3
.travis/release.sh "stage-stable"
fi
if [ "${TRAVIS_BRANCH}" = "prod-beta" ]; then
.travis/release.sh "prod-beta"
fi
if [ "${TRAVIS_BRANCH}" = "prod-stable" ]; then
# Download modified Jenkinsfile
curl -o .travis/58231b16fdee45a03a4ee3cf94a9f2c3 https://raw.githubusercontent.com/RedHatInsights/image-builder-frontend/stage-stable/.travis/Jenkinsfile
# Insert prod webhook URL
sed -i 's|WEBHOOK_PLACEHOLDER|https://smee.io/F9gZwIGELxwah4if|g' .travis/58231b16fdee45a03a4ee3cf94a9f2c3
.travis/release.sh "prod-stable"
fi

Binary file not shown.

111
Makefile Normal file
View file

@ -0,0 +1,111 @@
PACKAGE_NAME = cockpit-image-builder
INSTALL_DIR_BASE = /share/cockpit/
INSTALL_DIR = $(INSTALL_DIR_BASE)$(PACKAGE_NAME)
APPSTREAMFILE=org.image-builder.$(PACKAGE_NAME).metainfo.xml
VERSION := $(shell (cd "$(SRCDIR)" && grep "^Version:" cockpit/$(PACKAGE_NAME).spec | sed 's/[^[:digit:]]*\([[:digit:]]\+\).*/\1/'))
COMMIT = $(shell (cd "$(SRCDIR)" && git rev-parse HEAD))
# TODO: figure out a strategy for keeping this updated
COCKPIT_REPO_COMMIT = a70142a7a6f9c4e78e71f3c4ec738b6db2fbb04f
COCKPIT_REPO_URL = https://github.com/cockpit-project/cockpit.git
COCKPIT_REPO_TREE = '$(strip $(COCKPIT_REPO_COMMIT))^{tree}'
# checkout common files from Cockpit repository required to build this project;
# this has no API stability guarantee, so check out a stable tag when you start
# a new project, use the latest release, and update it from time to time
COCKPIT_REPO_FILES = \
pkg/lib \
$(NULL)
help:
@cat Makefile
#
# Install target for specfile
#
.PHONY: install
install:
$(MAKE) cockpit/install
#
# Cockpit related targets
#
.PHONY: cockpit/clean
cockpit/clean:
rm -f cockpit/public/*.css
rm -f cockpit/public/*.js
.PHONY: cockpit/install
cockpit/install:
mkdir -p $(DESTDIR)$(PREFIX)$(INSTALL_DIR)
cp -a cockpit/public/* $(DESTDIR)$(PREFIX)$(INSTALL_DIR)
mkdir -p $(DESTDIR)$(PREFIX)/share/metainfo
msgfmt --xml -d po \
--template cockpit/public/$(APPSTREAMFILE) \
-o $(DESTDIR)$(PREFIX)/share/metainfo/$(APPSTREAMFILE)
.PHONY: cockpit/devel-uninstall
cockpit/devel-uninstall: PREFIX=~/.local
cockpit/devel-uninstall:
rm -rf $(PREFIX)$(INSTALL_DIR)
.PHONY: cockpit/devel-install
cockpit/devel-install: PREFIX=~/.local
cockpit/devel-install:
PREFIX="~/.local"
mkdir -p $(PREFIX)$(INSTALL_DIR_BASE)
ln -s $(shell pwd)/cockpit/public $(PREFIX)$(INSTALL_DIR)
.PHONY: cockpit/download
cockpit/download: Makefile
@git rev-list --quiet --objects $(COCKPIT_REPO_TREE) -- 2>/dev/null || \
git fetch --no-tags --no-write-fetch-head --depth=1 $(COCKPIT_REPO_URL) $(COCKPIT_REPO_COMMIT)
git archive $(COCKPIT_REPO_TREE) -- $(COCKPIT_REPO_FILES) | tar x
.PHONY: cockpit/build
cockpit/build: cockpit/download
npm run build:cockpit
.PHONY: cockpit/devel
cockpit/devel: cockpit/devel-uninstall cockpit/build cockpit/devel-install
#
# Building packages
#
RPM_SPEC=cockpit/$(PACKAGE_NAME).spec
NODE_MODULES_TEST=package-lock.json
TARFILE=$(PACKAGE_NAME)-$(VERSION).tar.gz
$(RPM_SPEC): $(RPM_SPEC) $(NODE_MODULES_TEST)
provides=$$(npm ls --omit dev --package-lock-only --depth=Infinity | grep -Eo '[^[:space:]]+@[^[:space:]]+' | sort -u | sed 's/^/Provides: bundled(npm(/; s/\(.*\)@/\1)) = /'); \
awk -v p="$$provides" '{gsub(/%{VERSION}/, "$(VERSION)"); $(SUB_NODE_ENV) gsub(/%{NPM_PROVIDES}/, p)}1' $< > $@
$(TARFILE): export NODE_ENV ?= production
$(TARFILE): cockpit/build
touch -r package.json package-lock.json
touch cockpit/public/*
tar czf $(TARFILE) --transform 's,^,$(PACKAGE_NAME)/,' \
--exclude node_modules \
$$(git ls-files) $(RPM_SPEC) $(NODE_MODULES_TEST) cockpit/public/ cockpit/README.md
realpath $(TARFILE)
dist: $(TARFILE)
@ls -1 $(TARFILE)
.PHONY: srpm
srpm: $(TARFILE)
rpmbuild -bs \
--define "_sourcedir `pwd`" \
--define "_topdir $(CURDIR)/rpmbuild" \
$(RPM_SPEC)
.PHONY: rpm
rpm: $(TARFILE)
rpmbuild -bb \
--define "_sourcedir `pwd`" \
--define "_topdir $(CURDIR)/rpmbuild" \
$(RPM_SPEC)

291
README.md
View file

@ -1,15 +1,38 @@
# image-builder-frontend
# Image Builder Frontend
Frontend code for Image Builder.
## Project
* **Website**: https://www.osbuild.org
* **Bug Tracker**: https://github.com/osbuild/image-builder-frontend/issues
* **Discussions**: https://github.com/orgs/osbuild/discussions
* **Matrix**: #image-builder on [fedoraproject.org](https://matrix.to/#/#image-builder:fedoraproject.org)
## Principles
1. We want to use the latest and greatest web technologies.
2. We want to expose all the options and customizations possible, even if not all are visible by default.
3. The default path should be short(est) clickpath, which should be determined in a data-driven way.
4. This is an [Insights application](https://github.com/RedHatInsights/), so it abides by some rules and standards of Insights.
## Table of Contents
1. [How to build and run image-builder-frontend](#frontend-development)
1. [Frontend Development](#frontend-development)
2. [Backend Development](#backend-development)
2. [File structure](#file-structure)
3. [Style Guidelines](#style-guidelines)
4. [Test Guidelines](#test-guidelines)
2. [Image builder as Cockpit plugin](#image-builder-as-cockpit-plugin)
3. [Backend Development](#backend-development)
2. [API](#api-endpoints)
3. [Unleash feature flags](#unleash-feature-flags)
4. [File structure](#file-structure)
5. [Style Guidelines](#style-guidelines)
6. [Test Guidelines](#test-guidelines)
7. [Running hosted service Playwright tests](#running-hosted-service-playwright-tests)
## How to build and run image-builder-frontend
> [!IMPORTANT]
> Running image-builder-frontend against [console.redhat.com](https://console.redhat.com/) requires connection to the Red Hat VPN, which is only available to Red Hat employees. External contributors can locally run [image builder as Cockpit plugin](#image-builder-as-cockpit-plugin).
### Frontend Development
To develop the frontend you can use a proxy to run image-builder-frontend locally
@ -20,16 +43,15 @@ worrying if a feature from stage has been released yet.
#### Nodejs and npm version
Make sure you have npm@7 and node 15+ installed. If you need multiple versions of nodejs check out [nvm](https://github.com/nvm-sh/nvm).
Make sure you have npm@10 and node 22+ installed. If you need multiple versions of nodejs check out [nvm](https://github.com/nvm-sh/nvm).
#### Webpack proxy
1. run `npm ci`
2. run `npm run prod-beta`. This command uses a prod-beta env by default. Configure your
environment by the `env` attribute in `dev.webpack.config.js`.
2. run `npm run start:prod`
3. Secondly redirect a few `prod.foo.redhat.com` to localhost, if this has not been done already.
3. redirect `prod.foo.redhat.com` to localhost, if this has not been done already
```bash
echo "127.0.0.1 prod.foo.redhat.com" >> /etc/hosts
@ -41,10 +63,9 @@ echo "127.0.0.1 prod.foo.redhat.com" >> /etc/hosts
1. run `npm ci`
2. run `npm run stage-beta`. This command uses a stage-beta env by default. Configure your
environment by the `env` attribute in `dev.webpack.config.js`.
2. run `npm run start:stage`
3. Secondly redirect a few `stage.foo.redhat.com` to localhost, if this has not been done already.
3. redirect `stage.foo.redhat.com` to localhost, if this has not been done already
```bash
echo "127.0.0.1 stage.foo.redhat.com" >> /etc/hosts
@ -52,51 +73,73 @@ echo "127.0.0.1 stage.foo.redhat.com" >> /etc/hosts
4. open browser at `https://stage.foo.redhat.com:1337/beta/insights/image-builder`
#### Insights proxy (deprecated)
### Image builder as Cockpit plugin
1. Clone the insights proxy: https://github.com/RedHatInsights/insights-proxy
> [!NOTE]
> Issues marked with [cockpit-image-builder](https://github.com/osbuild/image-builder-frontend/issues?q=is%3Aissue%20state%3Aopen%20label%3Acockpit-image-builder) label are reproducible in image builder plugin and can be worked on by external contributors without connection to the Red Hat VPN.
2. Setting up the proxy
#### Cockpit setup
To install and setup Cockpit follow guide at: https://cockpit-project.org/running.html
Choose a runner (podman or docker), and point the SPANDX_CONFIG variable to
`profile/local-frontend.js` included in image-builder-frontend.
#### On-premises image builder installation and configuration
To install and configure `osbuild-composer` on your local machine follow our documentation: https://osbuild.org/docs/on-premises/installation/
```
sudo insights-proxy/scripts/patch-etc-hosts.sh
export RUNNER="podman"
export SPANDX_CONFIG=$PATH_TO/image-builder-frontend/profiles/local-frontend.js
sudo -E insights-proxy/scripts/run.sh
```
#### Scripts for local development of image builder plugin
3. Starting up image-builder-frontend
The following scripts are used to build the frontend with Webpack and install it into the Cockpit directories. These scripts streamline the development process by automating build and installation steps.
In the image-builder-frontend checkout directory
Runs Webpack with the specified configuration (cockpit/webpack.config.ts) to build the frontend assets.
Use this command whenever you need to compile the latest changes in your frontend code.
```
npm install
npm start
```
Creates the necessary directory in the user's local Cockpit share (~/.local/share/cockpit/).
Creates a symbolic link (image-builder-frontend) pointing to the built frontend assets (cockpit/public).
Use this command after building the frontend to install it locally for development purposes.
The symbolic link allows Cockpit to serve the frontend assets from your local development environment,
making it easier to test changes in real-time without deploying to a remote server.
The UI should be running on
https://prod.foo.redhat.com:1337/beta/insights/image-builder/landing.
Note that this requires you to have access to either production or stage (plus VPN and proxy config) of insights.
```bash
make cockpit/build
```
#### API endpoints
```bash
make cockpit/devel-install
```
API endpoints are programmatically generated with the RTKQ library. This
sections overview the steps to add new APIs and endpoints.
To uninstall and remove the symbolic link, run the following command:
##### Add a new API
```bash
make cockpit/devel-uninstall
```
For an hypothetical API called foobar
For convenience, you can run the following to combine all three steps:
1. Download the foobar api openapi json or yaml representation under
`api/schema/foobar.json`
2. Create a new "empty" api file under `src/store/emptyFoobarApi.ts` that has for
```bash
make cockpit/devel
```
### Backend Development
To develop both the frontend and the backend you can again use the proxy to run both the
frontend and backend locally against the chrome at cloud.redhat.com. For instructions
see the [osbuild-getting-started project](https://github.com/osbuild/osbuild-getting-started).
## API endpoints
API slice definitions are programmatically generated using the [@rtk-query/codegen-openapi](https://redux-toolkit.js.org/rtk-query/usage/code-generation) package.
The OpenAPI schema are imported during code generation. OpenAPI configuration files are
stored in `/api/config`. Each endpoint has a corresponding empty API slice and generated API
slice which are stored in `/src/store`.
### Add a new API schema
For a hypothetical API called foobar
1. Create a new "empty" API file under `src/store/emptyFoobarApi.ts` that has following
content:
```{ts}
```typescript
import { createApi, fetchBaseQuery } from '@reduxjs/toolkit/query/react';
import { FOOBAR_API } from '../constants';
@ -104,26 +147,26 @@ import { FOOBAR_API } from '../constants';
// initialize an empty api service that we'll inject endpoints into later as needed
export const emptyFoobarApi = createApi({
reducerPath: 'foobarApi',
baseQuery: fetchBaseQuery({ baseUrl: FOO_BAR }),
baseQuery: fetchBaseQuery({ baseUrl: window.location.origin + FOO_BAR }),
endpoints: () => ({}),
});
```
3. Declare the new constat `FOOBAR_API` to the API url in `src/constants.js`
2. Declare new constant `FOOBAR_API` with the API url in `src/constants.ts`
```
```typescript
export const FOOBAR_API = 'api/foobar/v1'
```
4. Create the config file for code generation in `api/config/foobar.ts` containing:
3. Create the config file for code generation in `api/config/foobar.ts` containing:
```
```typescript
import type { ConfigFile } from '@rtk-query/codegen-openapi';
const config: ConfigFile = {
schemaFile: '../schema/foobar.json',
schemaFile: 'URL_TO_THE_OPENAPI_SCHEMA',
apiFile: '../../src/store/emptyFoobarApi.ts',
apiImport: 'emptyEdgeApi',
apiImport: 'emptyContentSourcesApi',
outputFile: '../../src/store/foobarApi.ts',
exportName: 'foobarApi',
hooks: true,
@ -131,34 +174,29 @@ const config: ConfigFile = {
};
```
5. Update the `api.sh` script by adding a new line for npx to generate the code:
4. Update the `eslint.config.js` file by adding the generated code path to the ignores array:
```
npx @rtk-query/codegen-openapi ./api/config/foobar.ts &
ignores: [
<other ignored files>,
'**/foobarApi.ts',
]
```
5. run api generation
6. Update the `.eslintignore` file by adding a new line for the generated code:
```
foobarApi.ts
```
7. run api generation
```
```bash
npm run api
```
And voilà!
##### Add a new endpoint
### Add a new endpoint
To add a new endpoint, simply update the `api/config/foobar.ts` file with new
endpoints in the `filterEndpoints` table.
#### Unleash feature flags for the frontend
## Unleash feature flags
Your user needs to have the corresponding rights, do the
same as this MR in internal gitlab https://gitlab.cee.redhat.com/service/app-interface/-/merge_requests/79225
@ -174,47 +212,49 @@ existing flags:
https://github.com/RedHatInsights/image-builder-frontend/blob/c84b493eba82ce83a7844943943d91112ffe8322/src/Components/ImagesTable/ImageLink.js#L99
##### Mocking flags for tests
### Mocking flags for tests
Flags can be mocked for the unit tests to access some feature. Checkout:
https://github.com/RedHatInsights/image-builder-frontend/blob/c84b493eba82ce83a7844943943d91112ffe8322/src/test/Components/CreateImageWizard/CreateImageWizard.test.js#L74
https://github.com/osbuild/image-builder-frontend/blob/9a464e416bc3769cfc8e23b62f1dd410eb0e0455/src/test/Components/CreateImageWizard/CreateImageWizard.test.tsx#L49
If the two possible code path accessible via the toggles are defined in the code
base, then it's good practice to test the two of them. If not, only test what's
actually owned by the frontend project.
##### Cleaning the flags
### Cleaning the flags
Unleash toggles are expected to live for a limited amount of time, documentation
specify 40 days for a release, we should keep that in mind for each toggle
we're planning on using.
### Backend Development
To develop both the frontend and the backend you can again use the proxy to run both the
frontend and backend locally against the chrome at cloud.redhat.com. For instructions
see [devel/README.md](devel/README.md).
## File Structure
### Quick Reference
| Directory | Description |
| --------- | ----------- |
| [`/api`](https://github.com/RedHatInsights/image-builder-frontend/tree/main/api) | API schema and config files |
| [`/config`](https://github.com/RedHatInsights/image-builder-frontend/tree/main/config) | webpack configuration |
| [`/devel`](https://github.com/RedHatInsights/image-builder-frontend/tree/main/devel) | tools for local development |
| [`/src`](https://github.com/RedHatInsights/image-builder-frontend/tree/main/src) | source code |
| [`/src/Components`](https://github.com/RedHatInsights/image-builder-frontend/tree/main/src/Components) | source code split by individual components |
| [`/src/test`](https://github.com/RedHatInsights/image-builder-frontend/tree/main/src/test) | test utilities |
| [`/src/test/mocks`](https://github.com/RedHatInsights/image-builder-frontend/tree/main/src/test/mocks) | mock handlers and server config for MSW |
| [`/src/store`](https://github.com/RedHatInsights/image-builder-frontend/tree/main/src/store) | Redux store |
| [`/src/api.js`](https://github.com/RedHatInsights/image-builder-frontend/blob/main/src/api.js) | API calls |
## Style Guidelines
This project uses eslint's recommended styling guidelines. These rules can be found here:
https://eslint.org/docs/rules/
This project uses recommended rule sets rom several plugins:
- `@eslint/js`
- `typescript-eslint`
- `eslint-plugin-react`
- `eslint-plugin-react-hooks`
- `eslint-plugin-react-redux`
- `eslint-plugin-import`
- `eslint-plugin-jsx-a11y`
- `eslint-plugin-disable-autofix`
- `eslint-plugin-jest-dom`
- `eslint-plugin-testing-library`
- `eslint-plugin-playwright`
- `@redhat-cloud-services/eslint-config-redhat-cloud-services`
To run the linter, use:
```bash
@ -223,20 +263,14 @@ npm run lint
Any errors that can be fixed automatically, can be corrected by running:
```bash
npm run lint --fix
npm run lint:js:fix
```
All the linting rules and configuration of eslint can be found in [`.eslintrc.yml`](https://github.com/RedHatInsights/image-builder-frontend/blob/main/.eslintrc.yml).
### Additional eslint rules
There are also additional rules added to enforce code style. Those being:
- `import/order` -> enforces the order in import statements and separates them into groups based on their type
- `prefer-const` -> enforces use of `const` declaration for variables that are never reassigned
- `no-console` -> throws an error for any calls of `console` methods leftover after debugging
All the linting rules and configuration of ESLint can be found in [`eslint.config.js`](https://github.com/RedHatInsights/image-builder-frontend/blob/main/eslint.config.js).
## Test Guidelines
This project is tested using the [Jest](https://jestjs.io/docs/getting-started) framework, [React Testing Library](https://testing-library.com/docs/react-testing-library/intro), and the [Mock Service Worker](https://mswjs.io/docs/) library.
This project is tested using the [Vitest](https://vitest.dev/guide/) framework, [React Testing Library](https://testing-library.com/docs/react-testing-library/intro), and the [Mock Service Worker](https://mswjs.io/docs/) library.
All UI contributions must also include a new test or update an existing test in order to maintain code coverage.
@ -247,18 +281,79 @@ To run the unit tests, the linter, and the code coverage check run:
npm run test
```
These tests will also be run in our Travis CI when a PR is opened.
These tests will also be run in our CI when a PR is opened.
## API endpoints
API slice definitions are generated using the [@rtk-query/codegen-openapi](https://redux-toolkit.js.org/rtk-query/usage/code-generation) package.
OpenAPI schema for the endpoints are stored in `/api/schema`. Their
corresponding configuration files are stored in `/api/config`. Each endpoint
has a corresponding empty API slice and generated API slice which are stored in
`/src/store`.
To generate or update API slice definitions, run:
```bash
npm run api
Note that `testing-library` DOM printout is currently disabled for all tests by the following configuration in `src/test/setup.ts`:
```typescript
configure({
getElementError: (message: string) => {
const error = new Error(message);
error.name = 'TestingLibraryElementError';
error.stack = '';
return error;
},
});
```
If you'd like to see the stack printed out you can either temporarily disable the configuration or generate a [Testing Playground](https://testing-playground.com/) link by adding `screen.logTestingPlaygroundURL()` to your test.
### ~~Using MSW data in development~~ - CURRENTLY NOT WORKING
If you want to develop in environment with mocked data, run the command `npm run stage-beta:msw`.
#### Enabling MSW
In a case you're seeing `Error: [MSW] Failed to register the Service Worker` in console, you might also need to configure SSL certification on your computer.
In order to do this install [mkcert](https://github.com/FiloSottile/mkcert)
After the installation, go to the `/node_modules/.cache/webpack-dev-server` folder and run following commands:
1. `mkcert -install`  to create a new certificate authority on your machine
2. `mkcert prod.foo.redhat.com`  to create the actual signed certificate
#### Mac Configuration
Follow these steps to find and paste the certification file into the 'Keychain Access' application:
1. Open the 'Keychain Access' application.
2. Select 'login' on the left side.
3. Navigate to the 'Certificates' tab.
4. Drag the certification file (located at /image-builder-frontend/node_modules/.cache/webpack-dev-server/server.pem) to the certification list.
5. Double-click on the added certificate (localhost certificate) to open the localhost window.
6. Open the 'Trust' dropdown menu.
7. Set all options to 'Always Trust'.
8. Close the localhost screen.
9. Run `npm run stage-beta:msw` and open the Firefox browser to verify that it is working as expected.
## Running hosted service Playwright tests
1. Copy the [example env file](playwright_example.env) content and create a file named `.env` in the root directory of the project. Paste the example file content into it.
For local development fill in the:
* `BASE_URL` - `https://stage.foo.redhat.com:1337` is required, which is already set in the example config
* `PLAYWRIGHT_USER` - your consoledot stage username
* `PLAYWRIGHT_PASSWORD` - your consoledot stage password
2. Make sure Playwright is installed as a dev dependency
```bash
npm ci
```
3. Download the Playwright browsers with
```bash
npx playwright install
```
4. Start the local development stage server by running
```bash
npm run start:stage
```
5. Now you have two options of how to run the tests:
* (Preferred) Use VS Code and the [Playwright Test module for VSCode](https://marketplace.visualstudio.com/items?itemName=ms-playwright.playwright). But other editors do have similar plugins for ease of use, if so desired
* Using terminal - `npx playwright test` will run the playwright test suite. `npx playwright test --headed` will run the suite in a vnc-like browser so you can watch it's interactions.

19
api/README.md Normal file
View file

@ -0,0 +1,19 @@
# API
This folder contains generated code for API endpoints needed by this repo.
## Updating API changes
To pull new API changes and regenerating the code run
```shell
npm run api
```
## Regenerating the code only
To regenerate the code only, run
```shell
npm run api:generate
```

View file

@ -5,7 +5,8 @@ npx @rtk-query/codegen-openapi ./api/config/imageBuilder.ts &
npx @rtk-query/codegen-openapi ./api/config/rhsm.ts &
npx @rtk-query/codegen-openapi ./api/config/contentSources.ts &
npx @rtk-query/codegen-openapi ./api/config/provisioning.ts &
npx @rtk-query/codegen-openapi ./api/config/edge.ts &
npx @rtk-query/codegen-openapi ./api/config/compliance.ts &
npx @rtk-query/codegen-openapi ./api/config/composerCloudApi.ts &
# Wait for all background jobs to finish
wait

14
api/config/compliance.ts Normal file
View file

@ -0,0 +1,14 @@
import type { ConfigFile } from '@rtk-query/codegen-openapi';
const config: ConfigFile = {
schemaFile: 'https://console.redhat.com/api/compliance/v2/openapi.json',
apiFile: '../../src/store/service/emptyComplianceApi.ts',
apiImport: 'emptyComplianceApi',
outputFile: '../../src/store/service/complianceApi.ts',
exportName: 'complianceApi',
hooks: true,
unionUndefined: true,
filterEndpoints: ['policies', 'policy'],
};
export default config;

View file

@ -0,0 +1,15 @@
import type { ConfigFile } from '@rtk-query/codegen-openapi';
const config: ConfigFile = {
schemaFile:
'https://raw.githubusercontent.com/osbuild/osbuild-composer/main/internal/cloudapi/v2/openapi.v2.yml',
apiFile: '../../src/store/cockpit/emptyComposerCloudApi.ts',
apiImport: 'emptyComposerCloudApi',
outputFile: '../../src/store/cockpit/composerCloudApi.ts',
exportName: 'composerCloudApi',
hooks: false,
unionUndefined: true,
filterEndpoints: ['postCompose', 'getComposeStatus'],
};
export default config;

View file

@ -1,13 +1,26 @@
import type { ConfigFile } from '@rtk-query/codegen-openapi';
const config: ConfigFile = {
schemaFile: '../schema/contentSources.json',
apiFile: '../../src/store/emptyContentSourcesApi.ts',
schemaFile: 'https://console.redhat.com/api/content-sources/v1/openapi.json',
apiFile: '../../src/store/service/emptyContentSourcesApi.ts',
apiImport: 'emptyContentSourcesApi',
outputFile: '../../src/store/contentSourcesApi.ts',
outputFile: '../../src/store/service/contentSourcesApi.ts',
exportName: 'contentSourcesApi',
hooks: true,
filterEndpoints: ['listRepositories', 'listRepositoriesRpms'],
unionUndefined: true,
filterEndpoints: [
'createRepository',
'listRepositories',
'listRepositoriesRpms',
'listRepositoryParameters',
'searchRpm',
'searchPackageGroup',
'listFeatures',
'listSnapshotsByDate',
'bulkImportRepositories',
'listTemplates',
'getTemplate',
],
};
export default config;

View file

@ -1,35 +0,0 @@
import type { ConfigFile } from '@rtk-query/codegen-openapi';
const config: ConfigFile = {
schemaFile: '../schema/edge.json',
apiFile: '../../src/store/emptyEdgeApi.ts',
apiImport: 'emptyEdgeApi',
outputFile: '../../src/store/edgeApi.ts',
exportName: 'edgeApi',
hooks: true,
filterEndpoints: [
'createImage',
'createImageUpdate',
'getAllImages',
'getImageStatusByID',
'getImageByID',
'getImageDetailsByID',
'getImageByOstree',
'createInstallerForImage',
'getRepoForImage',
'getMetadataForImage',
'createKickStartForImage',
'checkImageName',
'retryCreateImage',
'listAllImageSets',
'getImageSetsByID',
'getImageSetsView',
'getImageSetViewByID',
'getAllImageSetImagesView',
'getImageSetsDevicesByID',
'deleteImageSet',
'getImageSetImageView',
],
};
export default config;

View file

@ -1,12 +1,14 @@
import type { ConfigFile } from '@rtk-query/codegen-openapi';
const config: ConfigFile = {
schemaFile: '../schema/imageBuilder.yaml',
apiFile: '../../src/store/emptyImageBuilderApi.ts',
schemaFile:
'https://raw.githubusercontent.com/osbuild/image-builder/main/internal/v1/api.yaml',
apiFile: '../../src/store/service/emptyImageBuilderApi.ts',
apiImport: 'emptyImageBuilderApi',
outputFile: '../../src/store/imageBuilderApi.ts',
outputFile: '../../src/store/service/imageBuilderApi.ts',
exportName: 'imageBuilderApi',
hooks: true,
hooks: { queries: true, lazyQueries: true, mutations: true },
unionUndefined: true,
filterEndpoints: [
'cloneCompose',
'composeImage',
@ -18,6 +20,17 @@ const config: ConfigFile = {
'getPackages',
'getOscapProfiles',
'getOscapCustomizations',
'getOscapCustomizationsForPolicy',
'createBlueprint',
'updateBlueprint',
'composeBlueprint',
'getBlueprints',
'exportBlueprint',
'getBlueprintComposes',
'deleteBlueprint',
'getBlueprint',
'recommendPackage',
'fixupBlueprint',
],
};

View file

@ -1,12 +1,13 @@
import type { ConfigFile } from '@rtk-query/codegen-openapi';
const config: ConfigFile = {
schemaFile: '../schema/provisioning.json',
apiFile: '../../src/store/emptyProvisioningApi.ts',
schemaFile: 'https://console.redhat.com/api/provisioning/v1/openapi.json',
apiFile: '../../src/store/service/emptyProvisioningApi.ts',
apiImport: 'emptyProvisioningApi',
outputFile: '../../src/store/provisioningApi.ts',
outputFile: '../../src/store/service/provisioningApi.ts',
exportName: 'provisioningApi',
hooks: true,
unionUndefined: true,
filterEndpoints: ['getSourceList', 'getSourceUploadInfo'],
};

View file

@ -1,13 +1,18 @@
import type { ConfigFile } from '@rtk-query/codegen-openapi';
const config: ConfigFile = {
schemaFile: '../schema/rhsm.json',
apiFile: '../../src/store/emptyRhsmApi.ts',
schemaFile: 'https://console.redhat.com/api/rhsm/v2/openapi.json',
apiFile: '../../src/store/service/emptyRhsmApi.ts',
apiImport: 'emptyRhsmApi',
outputFile: '../../src/store/rhsmApi.ts',
outputFile: '../../src/store/service/rhsmApi.ts',
exportName: 'rhsmApi',
hooks: true,
filterEndpoints: ['listActivationKeys', 'showActivationKey'],
unionUndefined: true,
filterEndpoints: [
'listActivationKeys',
'showActivationKey',
'createActivationKeys',
],
};
export default config;

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

View file

@ -1,32 +0,0 @@
// copied from https://github.com/RedHatInsights/frontend-starter-app/blob/master/babel.config.js
module.exports = {
presets: [
// Polyfills
'@babel/env',
'@babel/react',
'@babel/typescript',
],
plugins: [
// Put _extends helpers in their own file
'@babel/plugin-transform-runtime',
// Support for {...props} via Object.assign({}, props)
'@babel/plugin-proposal-object-rest-spread',
// Devs tend to write `import { someIcon } from '@patternfly/react-icons';`
// This transforms the import to be specific which prevents having to parse 2k+ icons
// Also prevents potential bundle size blowups with CJS
[
'transform-imports',
{
'@patternfly/react-icons': {
transform: (importName) =>
`@patternfly/react-icons/dist/js/icons/${importName
.split(/(?=[A-Z])/)
.join('-')
.toLowerCase()}`,
preventFullImport: true,
},
},
'react-icons',
],
],
};

1
build-tools Submodule

@ -0,0 +1 @@
Subproject commit b496d0a8c1755608bd256a6960869b14a7689d38

View file

@ -9,7 +9,7 @@ export COMPONENT="image-builder"
export IMAGE="quay.io/cloudservices/image-builder-frontend"
export APP_ROOT=$(pwd)
export WORKSPACE=${WORKSPACE:-$APP_ROOT} # if running in jenkins, use the build's workspace
export NODE_BUILD_VERSION=16
export NODE_BUILD_VERSION=22
COMMON_BUILDER=https://raw.githubusercontent.com/RedHatInsights/insights-frontend-builder-common/master
set -exv

32
buildspec.yml Normal file
View file

@ -0,0 +1,32 @@
# codebuild buildspec
version: 0.2
run-as: root
phases:
install:
commands:
- echo Entered the install phase...
- nohup /usr/local/bin/dockerd --host=unix:///var/run/docker.sock --host=tcp://127.0.0.1:2375 --storage-driver=overlay2 &
- timeout 15 sh -c "until docker info; do echo .; sleep 1; done"
pre_build:
commands:
- echo Entered the pre_build phase...
build:
commands:
- echo Entered the build phase...
post_build:
commands:
- echo Entered the post_build phase...
cache:
paths:
- "/root/.cache/ms-playwright"
- "/root/.docker"
- "/root/.npm"
- "/root/.yarn"
- "/root/.cache/go-build"
- "/root/go"
- "/root/.composer/cache"

33
ci.sh Normal file
View file

@ -0,0 +1,33 @@
#!/bin/bash
# Workaround needed for Konflux pipeline to pass
find -name "cockpit" -type d -maxdepth 1
find -name "cockpit" -type d -maxdepth 1 | xargs rm -rf -
setNpmOrYarn
install
build
if [ "$IS_PR" == true ]; then
verify
else
export BETA=false
build
source build_app_info.sh
mv ${DIST_FOLDER} stable
export BETA=true
# Export sentry specific variables for the webpack plugin. Note that
# this only works in jenkins (not konflux). The webpack plugin will
# both inject debug ids and upload the sourcemaps, in konflux only
# the debug ids are injected. As the debug ids are consistend
# across builds, this works.
export SENTRY_AUTH_TOKEN
build
source build_app_info.sh
mv ${DIST_FOLDER} preview
mkdir -p ${DIST_FOLDER}
mv stable ${DIST_FOLDER}/stable
mv preview ${DIST_FOLDER}/preview
fi
# End workaround

3
cockpit/README.md Normal file
View file

@ -0,0 +1,3 @@
# cockpit-image-builder
The "cockpit-image-builder" provides an on-premise frontend for image building, designed to integrate with [Cockpit](https://cockpit-project.org/) as a plugin. It allows users to create, manage, and compose custom operating system images, with images stored locally.

View file

@ -0,0 +1,53 @@
Name: cockpit-image-builder
Version: 76
Release: 1%{?dist}
Summary: Image builder plugin for Cockpit
License: Apache-2.0
URL: http://osbuild.org/
Source0: https://github.com/osbuild/image-builder-frontend/releases/download/v%{version}/%{name}-%{version}.tar.gz
Obsoletes: cockpit-composer < 54
Provides: cockpit-composer = %{version}-%{release}
BuildArch: noarch
BuildRequires: gettext
BuildRequires: libappstream-glib
BuildRequires: make
BuildRequires: nodejs
Requires: cockpit
Requires: cockpit-files
Requires: osbuild-composer >= 131
%description
The image-builder-frontend generates custom images suitable for
deploying systems or uploading to the cloud. It integrates into Cockpit
as a frontend for osbuild.
%prep
%setup -q -n %{name}
%build
# Nothing to build
%install
%make_install PREFIX=/usr
# drop source maps, they are large and just for debugging
find %{buildroot}%{_datadir}/cockpit/ -name '*.map' | xargs --no-run-if-empty rm --verbose
%check
appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/metainfo/*
%files
%doc cockpit/README.md
%license LICENSE
%{_datadir}/cockpit/cockpit-image-builder
%{_datadir}/metainfo/*
%changelog
# the changelog is distribution-specific, therefore there's just one entry
# to make rpmlint happy.
* Mon Jan 13 2025 Image Builder team <osbuilders@redhat.com> - 0-1
- The changelog was added to the rpm spec file.

15
cockpit/public/index.html Normal file
View file

@ -0,0 +1,15 @@
<!DOCTYPE html>
<html lang="en-us" class="layout-pf pf-m-redhat-font">
<head>
<meta charset="utf-8" />
<title>Image-Builder</title>
<!-- js dependencies -->
<script type="text/javascript" src="../base1/cockpit.js"></script>
<script defer src="main.js"></script>
<link href="main.css" rel="stylesheet" />
</head>
<body>
<div class="ct-page-fill" id="main"></div>
</body>
</html>

View file

@ -0,0 +1,15 @@
{
"dashboard": {
"index": {
"label": "Image Builder",
"icon": "pficon-build",
"docs": [
{
"label": "Creating system images",
"url": "https://osbuild.org/"
}
]
}
},
"content-security-policy": "default-src 'self' 'unsafe-eval'"
}

View file

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<component type="addon">
<id>org.image-builder.cockpit-image-builder</id>
<metadata_license>CC0-1.0</metadata_license>
<name>Image Builder</name>
<summary>
Build customized operating system images
</summary>
<description>
<p>
Image Builder can generate custom images suitable for deploying
systems, or as images ready to upload to the cloud.
</p>
</description>
<extends>org.cockpit_project.cockpit</extends>
<url type="homepage">https://github.com/osbuild/image-builder-frontend/</url>
<launchable type="cockpit-manifest">cockpit-image-builder</launchable>
</component>

14
cockpit/tsconfig.json Normal file
View file

@ -0,0 +1,14 @@
{
"extends": "../tsconfig.json",
"compilerOptions": {
"baseUrl": ".",
"paths": {
"*": [
// this allows us to pull in the `cockpit` and
// `cockpit/fsinfo` modules from the `pkg/lib`
// directory
"../pkg/lib/*"
]
}
}
}

90
cockpit/webpack.config.ts Normal file
View file

@ -0,0 +1,90 @@
const path = require('path');
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
const webpack = require('webpack'); // Add this line
const [mode, devtool] =
process.env.NODE_ENV === 'production'
? ['production', 'source-map']
: ['development', 'inline-source-map'];
const output = {
path: path.resolve('cockpit/public'),
filename: 'main.js',
sourceMapFilename: '[file].map',
};
const plugins = [
new MiniCssExtractPlugin({
ignoreOrder: true,
}),
new webpack.DefinePlugin({
'process.env.IS_ON_PREMISE': JSON.stringify(true),
}),
];
module.exports = {
entry: './src/AppCockpit.tsx',
output,
mode,
devtool,
plugins,
devServer: {
historyApiFallback: true, // Ensures all routes are served with `index.html`
},
resolve: {
fallback: {
path: require.resolve('path-browserify'),
},
modules: [
'node_modules',
// this tells webpack to check `node_modules`
// and `pkg/lib` for modules. This allows us
// to import `cockpit` and `cockpit/fsinfo`
path.resolve(__dirname, '../pkg/lib'),
],
extensions: ['.js', '.jsx', '.ts', '.tsx'],
},
module: {
rules: [
{
test: /\.(ts|tsx)$/,
include: [
path.resolve(__dirname, '../src'),
path.resolve(__dirname, '../pkg/lib'),
],
use: {
loader: 'babel-loader',
options: {
presets: [
'@babel/preset-env',
'@babel/preset-react',
'@babel/preset-typescript',
],
},
},
resolve: { fullySpecified: false },
},
{
test: /\.css$/,
use: [
MiniCssExtractPlugin.loader,
{
loader: 'css-loader',
options: { url: false },
},
],
},
{
test: /\.scss$/,
use: [
MiniCssExtractPlugin.loader,
{
loader: 'css-loader',
options: { url: false },
},
'sass-loader',
],
},
],
},
};

View file

@ -1,12 +1,16 @@
coverage:
status:
patch: no
patch: off
project:
default:
threshold: 5%
codecov:
require_ci_to_pass: no
require_ci_to_pass: false
comment:
layout: "reach,diff,flags,files,footer"
behavior: default
require_changes: no
require_changes: false
ignore:
- "api"
- "playwright"
- "src/store"

View file

@ -1,112 +0,0 @@
const { resolve } = require('path');
const config = require('@redhat-cloud-services/frontend-components-config');
const CopyPlugin = require('copy-webpack-plugin');
const webpack = require('webpack');
const webpackProxy = {
useProxy: true,
proxyVerbose: true,
env: `${process.env.STAGE ? 'stage' : 'prod'}-${
process.env.BETA ? 'beta' : 'stable'
}`,
appUrl: [
'/insights/image-builder',
'/beta/insights/image-builder',
'/preview/insights/image-builder',
],
routes: {
...(process.env.CONFIG_PORT && {
[`${process.env.BETA ? '/beta' : ''}/config`]: {
host: `http://localhost:${process.env.CONFIG_PORT}`,
},
}),
...(process.env.LOCAL_API && {
...(process.env.LOCAL_API.split(',') || []).reduce((acc, curr) => {
const [appName, appConfig] = (curr || '').split(':');
const [appPort = 8003, protocol = 'http', host = 'localhost'] =
appConfig.split('~');
return {
...acc,
[`/apps/${appName}`]: { host: `${protocol}://${host}:${appPort}` },
[`/beta/apps/${appName}`]: {
host: `${protocol}://${host}:${appPort}`,
},
};
}, {}),
}),
},
};
const { config: webpackConfig, plugins } = config({
rootFolder: resolve(__dirname, '../'),
debug: true,
useFileHash: false,
sassPrefix: '.imageBuilder',
deployment: process.env.BETA ? 'beta/apps' : 'apps',
...(process.env.PROXY ? webpackProxy : {}),
});
plugins.push(
require('@redhat-cloud-services/frontend-components-config/federated-modules')(
{
root: resolve(__dirname, '../'),
useFileHash: false,
exposes: {
'./RootApp': resolve(__dirname, '../src/AppEntry.js'),
},
shared: [{ 'react-router-dom': { singleton: true } }],
exclude: ['react-router-dom'],
}
)
);
if (process.env.MSW) {
// Copy mockServiceWorker.js to ./dist/ so it is served with the bundle
plugins.push(
new CopyPlugin({
patterns: [
{ from: 'src/mockServiceWorker.js', to: 'mockServiceWorker.js' },
],
})
);
/*
mockServiceWorker.js will be served from /beta/apps/image-builder, which
will become its default scope. Setting the Service-Worker-Allowed header to
'/' allows the worker's scope to be expanded to the root route '/'.
The default webpackConfig for stage does not contain any headers.
Caution: The default webpackConfig for prod *does* contain headers, so this
code will need to be modified if using MSW in prod-beta or prod-stable so that
those headers are not overwritten.
*/
webpackConfig.devServer.headers = { 'Service-Worker-Allowed': '/' };
/*
We would like the client to be able to determine whether or not to start
the service worker at run time based on the value of process.env.MSW. We can
add that variable to process.env via the DefinesPlugin plugin, but
DefinePlugin has already been added by config() to the default webpackConfig.
Therefore, we find it in the `plugins` array based on its type, then update
it to add our new process.env.MSW variable.
*/
const definePluginIndex = plugins.findIndex(
(plugin) => plugin instanceof webpack.DefinePlugin
);
const definePlugin = plugins[definePluginIndex];
const newDefinePlugin = new webpack.DefinePlugin({
...definePlugin.definitions,
'process.env.MSW': true,
});
plugins[definePluginIndex] = newDefinePlugin;
}
module.exports = {
...webpackConfig,
plugins,
};

View file

@ -1,39 +0,0 @@
const { resolve } = require('path');
const config = require('@redhat-cloud-services/frontend-components-config');
const { config: webpackConfig, plugins } = config({
rootFolder: resolve(__dirname, '../'),
debug: true,
useFileHash: false,
sassPrefix: '.imageBuilder',
deployment: 'beta/apps',
appUrl: '/preview/insights/image-builder',
env: 'stage-beta',
useProxy: true,
useAgent: true,
bounceProd: false,
proxyVerbose: true,
routes: {
'/api/image-builder/v1': { host: 'http://localhost:8086' },
},
});
plugins.push(
require('@redhat-cloud-services/frontend-components-config/federated-modules')(
{
root: resolve(__dirname, '../'),
useFileHash: false,
exposes: {
'./RootApp': resolve(__dirname, '../src/AppEntry.js'),
},
shared: [{ 'react-router-dom': { singleton: true } }],
exclude: ['react-router-dom'],
}
)
);
module.exports = {
...webpackConfig,
plugins,
};

View file

@ -1,25 +0,0 @@
const { resolve } = require('path');
const config = require('@redhat-cloud-services/frontend-components-config');
const { config: webpackConfig, plugins } = config({
rootFolder: resolve(__dirname, '../'),
sassPrefix: '.imageBuilder',
});
plugins.push(
require('@redhat-cloud-services/frontend-components-config/federated-modules')(
{
root: resolve(__dirname, '../'),
exposes: {
'./RootApp': resolve(__dirname, '../src/AppEntry.js'),
},
shared: [{ 'react-router-dom': { singleton: true } }],
exclude: ['react-router-dom'],
}
)
);
module.exports = {
...webpackConfig,
plugins,
};

3
config/routes.json Normal file
View file

@ -0,0 +1,3 @@
{
"/apps/image-builder*": { "url": "http://127.0.0.1:8003" }
}

View file

@ -1,12 +0,0 @@
FROM node:18
WORKDIR /app
COPY . .
RUN npm ci
EXPOSE 8002
EXPOSE 1337
CMD [ "npm", "run", "devel" ]

174
eslint.config.js Normal file
View file

@ -0,0 +1,174 @@
const js = require('@eslint/js');
const tseslint = require('typescript-eslint');
const pluginReact = require('eslint-plugin-react');
const pluginReactHooks = require('eslint-plugin-react-hooks');
const pluginReactRedux = require('eslint-plugin-react-redux');
const pluginImport = require('eslint-plugin-import');
const fecConfig = require('@redhat-cloud-services/eslint-config-redhat-cloud-services');
const pluginJsxA11y = require('eslint-plugin-jsx-a11y');
const disableAutofix = require('eslint-plugin-disable-autofix');
const pluginPrettier = require('eslint-plugin-prettier');
const jestDom = require('eslint-plugin-jest-dom');
const pluginTestingLibrary = require('eslint-plugin-testing-library');
const pluginPlaywright = require('eslint-plugin-playwright');
const { defineConfig } = require('eslint/config');
const globals = require('globals');
module.exports = defineConfig([
{ // Ignore programatically generated files
ignores: [
'**/mockServiceWorker.js',
'**/imageBuilderApi.ts',
'**/contentSourcesApi.ts',
'**/rhsmApi.ts',
'**/provisioningApi.ts',
'**/complianceApi.ts',
'**/composerCloudApi.ts'
]
},
{ // Base config for js/ts files
files: ['**/*.{js,ts,jsx,tsx}'],
languageOptions: {
parser: tseslint.parser,
parserOptions: {
project: './tsconfig.json'
},
globals: {
...globals.browser,
// node
'JSX': 'readonly',
'process': 'readonly',
'__dirname': 'readonly',
'require': 'readonly',
// vitest
'describe': 'readonly',
'it': 'readonly',
'test': 'readonly',
'expect': 'readonly',
'vi': 'readonly',
'beforeAll': 'readonly',
'beforeEach': 'readonly',
'afterAll': 'readonly',
'afterEach': 'readonly'
},
},
plugins: {
js,
'@typescript-eslint': tseslint.plugin,
react: pluginReact,
'react-hooks': pluginReactHooks,
'react-redux': pluginReactRedux,
import: pluginImport,
jsxA11y: pluginJsxA11y,
'disable-autofix': disableAutofix,
prettier: pluginPrettier,
},
rules: {
...js.configs.recommended.rules,
...tseslint.configs.recommended.rules,
...pluginReact.configs.flat.recommended.rules,
...pluginReactHooks.configs.recommended.rules,
...pluginReactRedux.configs.recommended.rules,
...fecConfig.rules,
'import/order': ['error', {
groups: ['builtin', 'external', 'internal', 'sibling', 'parent', 'index'],
alphabetize: {
order: 'asc',
caseInsensitive: true
},
'newlines-between': 'always',
pathGroups: [ // ensures the import of React is always on top
{
pattern: 'react',
group: 'builtin',
position: 'before'
}
],
pathGroupsExcludedImportTypes: ['react']
}],
'sort-imports': ['error', {
ignoreCase: true,
ignoreDeclarationSort: true,
ignoreMemberSort: false,
}],
'no-duplicate-imports': 'error',
'prefer-const': ['error', {
destructuring: 'any',
}],
'no-console': 'error',
'eqeqeq': 'error',
'array-callback-return': 'warn',
'@typescript-eslint/ban-ts-comment': ['error', {
'ts-expect-error': 'allow-with-description',
'ts-ignore': 'allow-with-description',
'ts-nocheck': true,
'ts-check': true,
minimumDescriptionLength: 5,
}],
'@typescript-eslint/ban-types': 'off',
'@typescript-eslint/no-explicit-any': 'error',
'@typescript-eslint/no-unsafe-function-type': 'error',
'@typescript-eslint/no-require-imports': 'error',
'disable-autofix/@typescript-eslint/no-unnecessary-condition': 'warn',
'no-unused-vars': 'off', // disable js rule in favor of @typescript-eslint's rule
'@typescript-eslint/no-unused-vars': [
'error',
{
argsIgnorePattern: '^_',
varsIgnorePattern: '^_',
},
],
'jsx-a11y/no-autofocus': 'off',
'prettier/prettier': ['error', {
semi: true,
tabWidth: 2,
singleQuote: true,
jsxSingleQuote: true,
bracketSpacing: true,
tsxSingleQuote: true,
tsSingleQuote: true,
printWidth: 80,
trailingComma: 'all',
}],
},
settings: {
react: {
version: 'detect', // Automatically detect React version
},
},
},
{ // Override for test files
files: ['src/test/**/*.{ts,tsx}'],
plugins: {
'jest-dom': jestDom,
'testing-library': pluginTestingLibrary,
},
rules: {
...jestDom.configs.recommended.rules,
...pluginTestingLibrary.configs.react.rules,
'react/display-name': 'off',
'react/prop-types': 'off',
'testing-library/no-debugging-utils': 'error'
},
},
{ // Override for Playwright tests
files: ['playwright/**/*.ts'],
plugins: {
playwright: pluginPlaywright,
},
rules: {
...pluginPlaywright.configs.recommended.rules,
'playwright/no-conditional-in-test': 'off',
'playwright/no-conditional-expect': 'off',
'playwright/no-skipped-test': [
'error',
{
'allowConditional': true
}
]
},
},
]);

150
fec.config.js Normal file
View file

@ -0,0 +1,150 @@
/* eslint-disable @typescript-eslint/no-var-requires */
const path = require('path');
const CopyPlugin = require('copy-webpack-plugin');
const { sentryWebpackPlugin } = require('@sentry/webpack-plugin');
const webpack = require('webpack');
const plugins = [];
function add_define(key, value) {
const definePluginIndex = plugins.findIndex(
(plugin) => plugin instanceof webpack.DefinePlugin
);
if (definePluginIndex !== -1) {
const definePlugin = plugins[definePluginIndex];
const newDefinePlugin = new webpack.DefinePlugin({
...definePlugin.definitions,
[key]: JSON.stringify(value),
});
plugins[definePluginIndex] = newDefinePlugin;
} else {
plugins.push(
new webpack.DefinePlugin({
[key]: JSON.stringify(value),
})
);
}
}
if (process.env.MSW) {
// Copy mockServiceWorker.js to ./dist/ so it is served with the bundle
plugins.push(
new CopyPlugin({
patterns: [
{ from: 'src/mockServiceWorker.js', to: 'mockServiceWorker.js' },
],
})
);
/*
We would like the client to be able to determine whether or not to start
the service worker at run time based on the value of process.env.MSW. We can
add that variable to process.env via the DefinesPlugin plugin, but
DefinePlugin has already been added by config() to the default webpackConfig.
Therefore, we find it in the `plugins` array based on its type, then update
it to add our new process.env.MSW variable.
*/
add_define('process.env.MSW', process.env.MSW);
}
if (process.env.NODE_ENV) {
add_define('process.env.NODE_ENV', process.env.NODE_ENV);
}
if (process.env.ENABLE_SENTRY) {
plugins.push(
sentryWebpackPlugin({
...(process.env.SENTRY_AUTH_TOKEN && {
authToken: process.env.SENTRY_AUTH_TOKEN,
}),
org: 'red-hat-it',
project: 'image-builder-rhel',
moduleMetadata: ({ release }) => ({
dsn: 'https://f4b4288bbb7cf6c0b2ac1a2b90a076bf@o490301.ingest.us.sentry.io/4508297557901312',
org: 'red-hat-it',
project: 'image-builder-rhel',
release,
}),
})
);
}
module.exports = {
sassPrefix: '.imageBuilder',
debug: true,
useFileHash: true,
/*
mockServiceWorker.js will be served from /beta/apps/image-builder, which
will become its default scope. Setting the Service-Worker-Allowed header to
'/' allows the worker's scope to be expanded to the root route '/'.
The default webpackConfig for stage does not contain any headers.
Caution: The default webpackConfig for prod *does* contain headers, so this
code will need to be modified if using MSW in prod-beta or prod-stable so that
those headers are not overwritten.
*/
devServer: process.env.MSW && {
headers: { 'Service-Worker-Allowed': '/' },
},
devtool: 'hidden-source-map',
appUrl: '/insights/image-builder',
useProxy: true,
useAgent: true,
bounceProd: false,
proxyVerbose: true,
resolve: {
alias: {
// we don't wan't these packages bundled with
// the service frontend, so we can set the aliases
// to false
cockpit: false,
'cockpit/fsinfo': false,
'os-release': false,
},
},
module: {
rules: [
{
// running `make` on cockpit plugin creates './pkg'
// directory, the generated files do not pass
// `npm run build` outputing failures
// this ensures the directory is exluded during build time
exclude: ',/pkg',
},
],
},
routes: {
...(process.env.CONFIG_PORT && {
[`${process.env.BETA ? '/beta' : ''}/config`]: {
host: `http://localhost:${process.env.CONFIG_PORT}`,
},
}),
...(process.env.LOCAL_API && {
...(process.env.LOCAL_API.split(',') || []).reduce((acc, curr) => {
const [appName, appConfig] = (curr || '').split(':');
const [appPort = 8003, protocol = 'http', host = 'localhost'] =
appConfig.split('~');
return {
...acc,
[`/apps/${appName}`]: { host: `${protocol}://${host}:${appPort}` },
[`/beta/apps/${appName}`]: {
host: `${protocol}://${host}:${appPort}`,
},
};
}, {}),
}),
},
plugins: plugins,
moduleFederation: {
exposes: {
'./RootApp': path.resolve(__dirname, './src/AppEntry.tsx'),
},
shared: [{ 'react-router-dom': { singleton: true, version: '*' } }],
exclude: ['react-router-dom'],
},
};

View file

@ -1,11 +0,0 @@
import 'whatwg-fetch';
import { server } from './src/test/mocks/server';
jest.mock('@unleash/proxy-client-react', () => ({
useUnleashContext: () => jest.fn(),
useFlag: jest.fn(() => true),
}));
beforeAll(() => server.listen());
afterEach(() => server.resetHandlers());
afterAll(() => server.close());

33925
package-lock.json generated

File diff suppressed because it is too large Load diff

View file

@ -7,121 +7,121 @@
"npm": ">=7.0.0"
},
"dependencies": {
"@data-driven-forms/pf4-component-mapper": "3.20.13",
"@data-driven-forms/react-form-renderer": "3.21.7",
"@patternfly/patternfly": "4.224.2",
"@patternfly/react-core": "4.276.8",
"@patternfly/react-table": "4.113.3",
"@redhat-cloud-services/frontend-components": "3.11.2",
"@redhat-cloud-services/frontend-components-notifications": "3.2.14",
"@redhat-cloud-services/frontend-components-utilities": "3.7.4",
"@reduxjs/toolkit": "^1.9.5",
"@scalprum/react-core": "^0.5.1",
"@unleash/proxy-client-react": "^3.6.0",
"classnames": "2.3.2",
"@ltd/j-toml": "1.38.0",
"@patternfly/patternfly": "6.3.1",
"@patternfly/react-code-editor": "6.3.1",
"@patternfly/react-core": "6.3.1",
"@patternfly/react-table": "6.3.1",
"@redhat-cloud-services/frontend-components": "7.0.3",
"@redhat-cloud-services/frontend-components-notifications": "6.1.5",
"@redhat-cloud-services/frontend-components-utilities": "7.0.3",
"@redhat-cloud-services/types": "3.0.1",
"@reduxjs/toolkit": "2.8.2",
"@scalprum/react-core": "0.9.5",
"@sentry/webpack-plugin": "4.1.1",
"@unleash/proxy-client-react": "5.0.1",
"classnames": "2.5.1",
"jwt-decode": "4.0.0",
"lodash": "4.17.21",
"react": "18.2.0",
"react-dom": "18.2.0",
"react-redux": "8.1.2",
"react-router-dom": "6.16.0",
"redux": "4.2.1",
"redux-promise-middleware": "6.1.3"
},
"jest": {
"coverageDirectory": "./coverage/",
"collectCoverage": true,
"collectCoverageFrom": [
"src/**/*.js",
"!src/**/stories/*",
"!src/entry-dev.js"
],
"testEnvironment": "jsdom",
"roots": [
"<rootDir>/src/"
],
"moduleNameMapper": {
"\\.(css|scss)$": "identity-obj-proxy"
},
"transformIgnorePatterns": [
"node_modules/(?!(@scalprum|@openshift|lodash-es|uuid)/)"
],
"setupFiles": [
"jest-canvas-mock"
],
"setupFilesAfterEnv": [
"./src/test/jest.setup.js"
],
"testTimeout": 10000
"react": "18.3.1",
"react-dom": "18.3.1",
"react-redux": "9.2.0",
"react-router-dom": "6.27.0",
"redux": "5.0.1",
"redux-promise-middleware": "6.2.0"
},
"devDependencies": {
"@babel/core": "7.22.10",
"@babel/eslint-parser": "^7.22.9",
"@babel/plugin-proposal-object-rest-spread": "7.20.7",
"@babel/plugin-transform-runtime": "7.22.10",
"@babel/preset-env": "7.22.9",
"@babel/preset-react": "7.22.5",
"@babel/preset-typescript": "^7.22.5",
"@redhat-cloud-services/eslint-config-redhat-cloud-services": "2.0.3",
"@redhat-cloud-services/frontend-components-config": "5.0.5",
"@rtk-query/codegen-openapi": "^1.0.0",
"@testing-library/dom": "9.3.1",
"@testing-library/jest-dom": "6.1.3",
"@testing-library/react": "14.0.0",
"@testing-library/user-event": "14.4.3",
"@types/jest": "^29.5.3",
"@types/react": "^18.2.21",
"@types/react-dom": "^18.2.7",
"@typescript-eslint/eslint-plugin": "^6.4.1",
"@typescript-eslint/parser": "^6.2.1",
"babel-jest": "29.6.2",
"babel-plugin-dual-import": "1.2.1",
"babel-plugin-transform-imports": "2.0.0",
"copy-webpack-plugin": "^11.0.0",
"css-loader": "6.8.1",
"eslint": "^8.46.0",
"eslint-config-react-app": "^7.0.1",
"eslint-plugin-import": "2.28.1",
"eslint-plugin-jest-dom": "5.1.0",
"eslint-plugin-react": "7.33.0",
"eslint-plugin-testing-library": "5.11.1",
"@babel/core": "7.28.0",
"@babel/preset-env": "7.28.0",
"@babel/preset-react": "7.27.1",
"@babel/preset-typescript": "7.27.1",
"@currents/playwright": "1.15.3",
"@eslint/js": "9.32.0",
"@patternfly/react-icons": "6.3.1",
"@playwright/test": "1.51.1",
"@redhat-cloud-services/eslint-config-redhat-cloud-services": "3.0.0",
"@redhat-cloud-services/frontend-components-config": "6.3.8",
"@redhat-cloud-services/tsc-transform-imports": "1.0.25",
"@rtk-query/codegen-openapi": "2.0.0",
"@testing-library/dom": "10.4.1",
"@testing-library/jest-dom": "6.6.4",
"@testing-library/react": "16.3.0",
"@testing-library/user-event": "14.6.1",
"@types/node": "24.3.0",
"@types/react": "18.3.12",
"@types/react-dom": "18.3.1",
"@types/react-redux": "7.1.34",
"@types/uuid": "10.0.0",
"@typescript-eslint/eslint-plugin": "8.40.0",
"@typescript-eslint/parser": "8.40.0",
"@vitejs/plugin-react": "4.7.0",
"@vitest/coverage-v8": "3.2.4",
"babel-loader": "10.0.0",
"chart.js": "4.5.0",
"chartjs-adapter-moment": "1.0.1",
"chartjs-plugin-annotation": "3.1.0",
"copy-webpack-plugin": "13.0.0",
"css-loader": "7.1.2",
"eslint": "9.33.0",
"eslint-plugin-disable-autofix": "5.0.1",
"eslint-plugin-import": "2.32.0",
"eslint-plugin-jest-dom": "5.5.0",
"eslint-plugin-jsx-a11y": "6.10.2",
"eslint-plugin-playwright": "2.2.2",
"eslint-plugin-prettier": "5.5.4",
"eslint-plugin-react": "7.37.5",
"eslint-plugin-react-hooks": "5.2.0",
"eslint-plugin-react-redux": "4.2.2",
"eslint-plugin-testing-library": "7.6.6",
"git-revision-webpack-plugin": "5.0.0",
"globals": "16.3.0",
"history": "5.3.0",
"identity-obj-proxy": "3.0.0",
"jest": "^29.6.2",
"jest-canvas-mock": "2.5.2",
"jest-environment-jsdom": "29.6.3",
"jest-fail-on-console": "^3.1.1",
"msw": "^1.2.3",
"jsdom": "26.1.0",
"madge": "8.0.0",
"mini-css-extract-plugin": "2.9.2",
"moment": "2.30.1",
"msw": "2.10.5",
"npm-run-all": "4.1.5",
"path-browserify": "1.0.1",
"postcss-scss": "4.0.9",
"prop-types": "15.8.1",
"redux-mock-store": "1.5.4",
"sass": "1.66.1",
"sass-loader": "13.3.2",
"stylelint": "15.10.3",
"stylelint-config-recommended-scss": "12.0.0",
"ts-node": "^10.9.1",
"typescript": "5.1.6",
"uuid": "9.0.0",
"webpack-bundle-analyzer": "4.9.0",
"whatwg-fetch": "^3.6.17"
"react-chartjs-2": "5.3.0",
"redux-mock-store": "1.5.5",
"sass": "1.90.0",
"sass-loader": "16.0.5",
"stylelint": "16.23.1",
"stylelint-config-recommended-scss": "16.0.0",
"ts-node": "10.9.2",
"ts-patch": "3.3.0",
"typescript": "5.8.3",
"typescript-eslint": "8.40.0",
"uuid": "11.1.0",
"vitest": "3.2.4",
"vitest-canvas-mock": "0.3.3",
"webpack-bundle-analyzer": "4.10.2",
"whatwg-fetch": "3.6.20"
},
"scripts": {
"lint": "npm-run-all lint:*",
"lint:js": "eslint config src",
"lint:js:fix": "eslint config src --fix",
"lint:sass": "stylelint 'src/**/*.scss' --config .stylelintrc.json",
"devel": "webpack serve --config config/devel.webpack.config.js",
"prod-beta": "BETA=true PROXY=true webpack serve --config config/dev.webpack.config.js",
"prod-stable": "PROXY=true webpack serve --config config/dev.webpack.config.js",
"stage-stable": "STAGE=true npm run prod-stable",
"stage-beta": "STAGE=true npm run prod-beta",
"stage-beta:msw": "MSW=TRUE npm run stage-beta",
"test": "TZ=UTC jest --verbose --no-cache",
"test:single": "jest --verbose -w 1",
"build": "webpack --config config/prod.webpack.config.js",
"api": "bash api.sh",
"verify": "npm-run-all build lint test"
"lint:js": "eslint src playwright",
"lint:js:fix": "eslint src playwright --fix",
"start": "fec dev",
"start:stage": "fec dev --clouddotEnv=stage",
"start:prod": "fec dev --clouddotEnv=prod",
"start:msw:stage": "NODE_ENV=development MSW=TRUE fec dev --clouddotEnv=stage",
"start:federated": "fec static",
"patch:hosts": "fec patch-etc-hosts",
"test": "TZ=UTC vitest run",
"test:watch": "TZ=UTC vitest",
"test:coverage": "TZ=UTC vitest run --coverage",
"test:cockpit": "src/test/cockpit-tests.sh",
"build": "fec build",
"build:cockpit": "webpack --config cockpit/webpack.config.ts",
"api": "bash api/codegen.sh",
"verify": "npm-run-all build lint test",
"postinstall": "ts-patch install",
"circular": "madge --circular ./src --extensions js,ts,tsx",
"circular:graph": "madge --circular ./src --extensions js,ts,tsx -i deps.png"
},
"insights": {
"appname": "image-builder"

66
packit.yaml Normal file
View file

@ -0,0 +1,66 @@
upstream_project_url: https://github.com/osbuild/image-builder-frontend
specfile_path: cockpit/cockpit-image-builder.spec
upstream_package_name: cockpit-image-builder
downstream_package_name: cockpit-image-builder
# use the nicely formatted release description from our upstream release, instead of git shortlog
copy_upstream_release_description: true
upstream_tag_template: v{version}
actions:
create-archive:
- npm ci
- make dist
srpm_build_deps:
- make
- npm
jobs:
- job: tests
identifier: self
trigger: pull_request
tmt_plan: /plans/all/main
targets:
- centos-stream-10
- fedora-41
- fedora-42
- job: copr_build
trigger: pull_request
targets: &build_targets
- centos-stream-9
- centos-stream-9-aarch64
- centos-stream-10
- centos-stream-10-aarch64
- fedora-all
- job: copr_build
trigger: commit
branch: "^main$"
owner: "@osbuild"
project: "cockpit-image-builder-main"
preserve_project: True
targets: *build_targets
- job: copr_build
trigger: release
owner: "@osbuild"
project: "cockpit-image-builder"
preserve_project: True
targets: *build_targets
actions:
create-archive:
- npm ci
- make dist
- job: propose_downstream
trigger: release
dist_git_branches:
- fedora-42
- fedora-rawhide
- job: koji_build
trigger: commit
dist_git_branches:
- fedora-42
- fedora-rawhide

14
plans/all.fmf Normal file
View file

@ -0,0 +1,14 @@
summary: cockpit-image-builder playwright tests
prepare:
how: install
package:
- cockpit-image-builder
discover:
how: fmf
execute:
how: tmt
/main:
summary: playwright tests
discover+:
test: /schutzbot/playwright

47
playwright.config.ts Normal file
View file

@ -0,0 +1,47 @@
import {
defineConfig,
devices,
type ReporterDescription,
} from '@playwright/test';
import 'dotenv/config';
const reporters: ReporterDescription[] = [['html'], ['list']];
if (process.env.CURRENTS_PROJECT_ID && process.env.CURRENTS_RECORD_KEY) {
reporters.push(['@currents/playwright']);
}
export default defineConfig({
testDir: 'playwright',
fullyParallel: true,
workers: 4,
forbidOnly: !!process.env.CI,
retries: process.env.CI ? 1 : 0,
reporter: reporters,
globalTimeout: 29.5 * 60 * 1000, // 29.5m, Set because of codebuild, we want PW to timeout before CB to get the results.
timeout: 3 * 60 * 1000, // 3m
expect: { timeout: 50_000 }, // 50s
use: {
actionTimeout: 30_000, // 30s
navigationTimeout: 30_000, // 30s
headless: true,
baseURL: process.env.BASE_URL
? process.env.BASE_URL
: 'http://127.0.0.1:9090',
video: 'retain-on-failure',
trace: 'on',
ignoreHTTPSErrors: true,
},
projects: [
{ name: 'setup', testMatch: /.*\.setup\.ts/ },
{
name: 'chromium',
use: {
...devices['Desktop Chrome'],
storageState: '.auth/user.json',
},
dependencies: ['setup'],
},
],
});

View file

@ -0,0 +1,214 @@
import { expect } from '@playwright/test';
import { v4 as uuidv4 } from 'uuid';
import { test } from '../fixtures/customizations';
import { isHosted } from '../helpers/helpers';
import { ensureAuthenticated } from '../helpers/login';
import {
ibFrame,
navigateToLandingPage,
navigateToOptionalSteps,
} from '../helpers/navHelpers';
import {
createBlueprint,
deleteBlueprint,
exportBlueprint,
fillInDetails,
fillInImageOutputGuest,
importBlueprint,
registerLater,
} from '../helpers/wizardHelpers';
const validCallbackUrl =
'https://controller.url/api/controller/v2/job_templates/9/callback/';
const validHttpCallbackUrl =
'http://controller.url/api/controller/v2/job_templates/9/callback/';
const validHostConfigKey = 'hostconfigkey';
const validCertificate = `-----BEGIN CERTIFICATE-----
MIIDXTCCAkWgAwIBAgIJAOEzx5ezZ9EIMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV
BAYTAklOMQswCQYDVQQIDAJLUjEMMAoGA1UEBwwDS1JHMRAwDgYDVQQKDAdUZXN0
IENBMB4XDTI1MDUxNTEyMDAwMFoXDTI2MDUxNTEyMDAwMFowRTELMAkGA1UEBhMC
SU4xCzAJBgNVBAgMAktSMQwwCgYDVQQHDANSR0sxEDAOBgNVBAoMB1Rlc3QgQ0Ew
ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC+R4gfN5pyJQo5qBTTtN+7
eE9CSXZJ8SVVaE3U54IgqQoqsSoBY5QtExy7v5C6l6mW4E6dzK/JecmvTTO/BvlG
A5k2hxB6bOQxtxYwfgElH+RFWN9P4xxhtEiQgHoG1rDfnXuDJk1U3YEkCQELUebz
fF3EIDU1yR0Sz2bA+Sl2VXe8og1MEZfytq8VZUVltxtn2PfW7zI5gOllBR2sKeUc
K6h8HXN7qMgfEvsLIXxTw7fU/zA3ibcxfRCl3m6QhF8hwRh6F9Wtz2s8hCzGegV5
z0M39nY7X8C3GZQ4Ly8v8DdY+FbEix7K3SSBRbWtdPfAHRFlX9Er2Wf8DAr7O2hH
AgMBAAGjUDBOMB0GA1UdDgQWBBTXXz2eIDgK+BhzDUAGzptn0OMcpDAfBgNVHSME
GDAWgBTXXz2eIDgK+BhzDUAGzptn0OMcpDAMBgNVHRMEBTADAQH/MA0GCSqGSIb3
DQEBCwUAA4IBAQAoUgY4jsuBMB3el9cc7JS2rcOhhJzn47Hj2UANfJq52g5lbjo7
XDc7Wb3VDcV+1LzjdzayT1qO1WzHb6FDPW9L9f6h4s8lj6MvJ+xhOWgD11srdIt3
vbQaQW4zDfeVRcKXzqbcUX8BLXAdzJPqVwZ+Z4EDjYrJ7lF9k+IqfZm0MsYX7el9
kvdRHbLuF4Q0sZ05CXMFkhM0Ulhu4MZ+1FcsQa7nWfZzTmbjHOuWJPB4z5WwrB7z
U8YYvWJ3qxToWGbATqJxkRKGGqLrNrmwcfzgPqkpuCRYi0Kky6gJ1RvL+DRopY9x
uD+ckf3oH2wYAB6RpPRMkfVxe7lGMvq/yEZ6
-----END CERTIFICATE-----`;
const invalidCertificate = `-----BEGIN CERTIFICATE-----
ThisIs*Not+Valid/Base64==
-----END CERTIFICATE-----`;
test('Create a blueprint with AAP registration customization', async ({
page,
cleanup,
}) => {
const blueprintName = 'test-' + uuidv4();
// Skip entirely in Cockpit/on-premise where AAP customization is unavailable
test.skip(!isHosted(), 'AAP customization is not available in the plugin');
// Delete the blueprint after the run fixture
await cleanup.add(() => deleteBlueprint(page, blueprintName));
await ensureAuthenticated(page);
// Navigate to IB landing page and get the frame
await navigateToLandingPage(page);
const frame = await ibFrame(page);
await test.step('Navigate to optional steps in Wizard', async () => {
await navigateToOptionalSteps(frame);
await registerLater(frame);
});
await test.step('Select and fill the AAP step with valid configuration', async () => {
await frame
.getByRole('button', { name: 'Ansible Automation Platform' })
.click();
await frame
.getByRole('textbox', { name: 'ansible callback url' })
.fill(validCallbackUrl);
await frame
.getByRole('textbox', { name: 'host config key' })
.fill(validHostConfigKey);
await frame
.getByRole('textbox', { name: 'File upload' })
.fill(validCertificate);
await expect(frame.getByRole('button', { name: 'Next' })).toBeEnabled();
});
await test.step('Test TLS confirmation checkbox for HTTPS URLs', async () => {
// TLS confirmation checkbox should appear for HTTPS URLs
await expect(
frame.getByRole('checkbox', {
name: 'Insecure',
}),
).toBeVisible();
// Check TLS confirmation and verify CA input is hidden
await frame
.getByRole('checkbox', {
name: 'Insecure',
})
.check();
await expect(
frame.getByRole('textbox', { name: 'File upload' }),
).toBeHidden();
await frame
.getByRole('checkbox', {
name: 'Insecure',
})
.uncheck();
await expect(
frame.getByRole('textbox', { name: 'File upload' }),
).toBeVisible();
});
await test.step('Test certificate validation', async () => {
await frame.getByRole('textbox', { name: 'File upload' }).clear();
await frame
.getByRole('textbox', { name: 'File upload' })
.fill(invalidCertificate);
await expect(frame.getByText(/Certificate.*is not valid/)).toBeVisible();
await frame.getByRole('textbox', { name: 'File upload' }).clear();
await frame
.getByRole('textbox', { name: 'File upload' })
.fill(validCertificate);
await expect(frame.getByText('Certificate was uploaded')).toBeVisible();
});
await test.step('Test HTTP URL behavior', async () => {
await frame.getByRole('textbox', { name: 'ansible callback url' }).clear();
await frame
.getByRole('textbox', { name: 'ansible callback url' })
.fill(validHttpCallbackUrl);
// TLS confirmation checkbox should NOT appear for HTTP URLs
await expect(
frame.getByRole('checkbox', {
name: 'Insecure',
}),
).toBeHidden();
await expect(
frame.getByRole('textbox', { name: 'File upload' }),
).toBeVisible();
await frame.getByRole('textbox', { name: 'ansible callback url' }).clear();
await frame
.getByRole('textbox', { name: 'ansible callback url' })
.fill(validCallbackUrl);
});
await test.step('Complete AAP configuration and proceed to review', async () => {
await frame.getByRole('button', { name: 'Review and finish' }).click();
});
await test.step('Fill the BP details', async () => {
await fillInDetails(frame, blueprintName);
});
await test.step('Create BP', async () => {
await createBlueprint(frame, blueprintName);
});
await test.step('Edit BP and verify AAP configuration persists', async () => {
await frame.getByRole('button', { name: 'Edit blueprint' }).click();
await frame.getByLabel('Revisit Ansible Automation Platform step').click();
await expect(
frame.getByRole('textbox', { name: 'ansible callback url' }),
).toHaveValue(validCallbackUrl);
await expect(
frame.getByRole('textbox', { name: 'host config key' }),
).toHaveValue(validHostConfigKey);
await expect(
frame.getByRole('textbox', { name: 'File upload' }),
).toHaveValue(validCertificate);
await frame.getByRole('button', { name: 'Review and finish' }).click();
await frame
.getByRole('button', { name: 'Save changes to blueprint' })
.click();
});
// This is for hosted service only as these features are not available in cockpit plugin
await test.step('Export BP', async (step) => {
step.skip(!isHosted(), 'Exporting is not available in the plugin');
await exportBlueprint(page, blueprintName);
});
await test.step('Import BP', async (step) => {
step.skip(!isHosted(), 'Importing is not available in the plugin');
await importBlueprint(page, blueprintName);
});
await test.step('Review imported BP', async (step) => {
step.skip(!isHosted(), 'Importing is not available in the plugin');
await fillInImageOutputGuest(page);
await page
.getByRole('button', { name: 'Ansible Automation Platform' })
.click();
await expect(
page.getByRole('textbox', { name: 'ansible callback url' }),
).toHaveValue(validCallbackUrl);
await expect(
page.getByRole('textbox', { name: 'host config key' }),
).toBeEmpty();
await expect(
page.getByRole('textbox', { name: 'File upload' }),
).toHaveValue(validCertificate);
await page.getByRole('button', { name: 'Cancel' }).click();
});
});

View file

@ -0,0 +1,230 @@
import { expect } from '@playwright/test';
import { v4 as uuidv4 } from 'uuid';
import { FILE_SYSTEM_CUSTOMIZATION_URL } from '../../src/constants';
import { test } from '../fixtures/cleanup';
import { isHosted } from '../helpers/helpers';
import { ensureAuthenticated } from '../helpers/login';
import {
ibFrame,
navigateToLandingPage,
navigateToOptionalSteps,
} from '../helpers/navHelpers';
import {
createBlueprint,
deleteBlueprint,
exportBlueprint,
fillInDetails,
fillInImageOutputGuest,
importBlueprint,
registerLater,
} from '../helpers/wizardHelpers';
test('Create a blueprint with Filesystem customization', async ({
page,
cleanup,
}) => {
const blueprintName = 'test-' + uuidv4();
// Delete the blueprint after the run fixture
await cleanup.add(() => deleteBlueprint(page, blueprintName));
await ensureAuthenticated(page);
// Login, navigate to IB and get the frame
await navigateToLandingPage(page);
const frame = await ibFrame(page);
await test.step('Navigate to optional steps in Wizard', async () => {
await navigateToOptionalSteps(frame);
await registerLater(frame);
});
await test.step('Check URLs for documentation', async () => {
await frame
.getByRole('button', { name: 'File system configuration' })
.click();
await frame
.getByRole('radio', { name: 'Use automatic partitioning' })
.click();
const [newPageAutomatic] = await Promise.all([
page.context().waitForEvent('page'),
frame
.getByRole('link', {
name: 'Customizing file systems during the image creation',
})
.click(),
]);
await newPageAutomatic.waitForLoadState();
const finalUrlAutomatic = newPageAutomatic.url();
expect(finalUrlAutomatic).toContain(FILE_SYSTEM_CUSTOMIZATION_URL);
await newPageAutomatic.close();
await frame
.getByRole('radio', { name: 'Manually configure partitions' })
.click();
const [newPageManual] = await Promise.all([
page.context().waitForEvent('page'),
frame
.getByRole('link', {
name: 'Read more about manual configuration here',
})
.click(),
]);
await newPageManual.waitForLoadState();
const finalUrlManual = newPageManual.url();
expect(finalUrlManual).toContain(FILE_SYSTEM_CUSTOMIZATION_URL);
await newPageManual.close();
});
await test.step('Fill manually selected partitions', async () => {
await expect(frame.getByRole('button', { name: '/' })).toBeDisabled();
const closeRootButton = frame
.getByRole('row', {
name: 'Draggable row draggable button / xfs 10 GiB',
})
.getByRole('button')
.nth(3);
await expect(closeRootButton).toBeDisabled();
await frame.getByRole('button', { name: 'Add partition' }).click();
await frame.getByRole('button', { name: '/home' }).click();
await frame.getByRole('option', { name: '/tmp' }).click();
await frame
.getByRole('textbox', { name: 'mountpoint suffix' })
.fill('/usb');
await frame
.getByRole('gridcell', { name: '1', exact: true })
.getByPlaceholder('File system')
.fill('1000');
await frame.getByRole('button', { name: 'GiB' }).nth(1).click();
await frame.getByRole('option', { name: 'KiB' }).click();
const closeTmpButton = frame
.getByRole('row', {
name: 'Draggable row draggable button /tmp /usb xfs 1000 KiB',
})
.getByRole('button')
.nth(3);
await expect(closeTmpButton).toBeEnabled();
});
await test.step('Fill the BP details', async () => {
await frame.getByRole('button', { name: 'Review and finish' }).click();
await fillInDetails(frame, blueprintName);
});
await test.step('Create BP', async () => {
await createBlueprint(frame, blueprintName);
});
await test.step('Edit BP', async () => {
await frame.getByRole('button', { name: 'Edit blueprint' }).click();
await frame.getByLabel('Revisit File system configuration step').click();
const closeRootButton = frame
.getByRole('row', {
name: 'Draggable row draggable button / xfs 10 GiB',
})
.getByRole('button')
.nth(3);
await expect(closeRootButton).toBeDisabled();
const closeTmpButton = frame
.getByRole('row', {
name: 'Draggable row draggable button /tmp /usb xfs 1000 KiB',
})
.getByRole('button')
.nth(3);
await expect(closeTmpButton).toBeEnabled();
const usbTextbox = frame.getByRole('textbox', {
name: 'mountpoint suffix',
});
await expect(usbTextbox).toHaveValue('/usb');
await frame
.getByRole('gridcell', { name: '1000', exact: true })
.getByPlaceholder('File system')
.click();
await frame
.getByRole('gridcell', { name: '1000', exact: true })
.getByPlaceholder('File system')
.fill('1024');
await frame.getByRole('button', { name: '/tmp' }).click();
await frame.getByRole('option', { name: '/usr' }).click();
await expect(
frame.getByText(
'Sub-directories for the /usr mount point are no longer supported',
),
).toBeVisible();
await frame.getByRole('button', { name: '/usr' }).click();
await frame.getByRole('option', { name: '/srv' }).click();
await frame
.getByRole('textbox', { name: 'mountpoint suffix' })
.fill('/data');
await frame.getByRole('button', { name: 'KiB' }).click();
await frame.getByRole('option', { name: 'MiB' }).click();
await frame.getByRole('button', { name: 'Review and finish' }).click();
await frame
.getByRole('button', { name: 'Save changes to blueprint' })
.click();
});
// This is for hosted service only as these features are not available in cockpit plugin
await test.step('Export BP', async (step) => {
step.skip(!isHosted(), 'Exporting is not available in the plugin');
await exportBlueprint(page, blueprintName);
});
await test.step('Import BP', async (step) => {
step.skip(!isHosted(), 'Importing is not available in the plugin');
await importBlueprint(page, blueprintName);
});
await test.step('Review imported BP', async (step) => {
step.skip(!isHosted(), 'Importing is not available in the plugin');
await fillInImageOutputGuest(page);
await frame
.getByRole('button', { name: 'File system configuration' })
.click();
const closeRootButton = frame
.getByRole('row', {
name: 'Draggable row draggable button / xfs 10 GiB',
})
.getByRole('button')
.nth(3);
await expect(closeRootButton).toBeDisabled();
const closeTmpButton = frame
.getByRole('row', {
name: 'Draggable row draggable button /srv /data xfs 1 GiB',
})
.getByRole('button')
.nth(3);
await expect(closeTmpButton).toBeEnabled();
const dataTextbox = frame.getByRole('textbox', {
name: 'mountpoint suffix',
});
await expect(dataTextbox).toHaveValue('/data');
const size = frame
.getByRole('gridcell', { name: '1', exact: true })
.getByPlaceholder('File system');
await expect(size).toHaveValue('1');
const unitButton = frame.getByRole('button', { name: 'GiB' }).nth(1);
await expect(unitButton).toBeVisible();
await page.getByRole('button', { name: 'Cancel' }).click();
});
});

View file

@ -0,0 +1,155 @@
import { expect } from '@playwright/test';
import { v4 as uuidv4 } from 'uuid';
import { test } from '../fixtures/customizations';
import { isHosted } from '../helpers/helpers';
import { ensureAuthenticated } from '../helpers/login';
import {
ibFrame,
navigateToLandingPage,
navigateToOptionalSteps,
} from '../helpers/navHelpers';
import {
createBlueprint,
deleteBlueprint,
exportBlueprint,
fillInDetails,
fillInImageOutputGuest,
importBlueprint,
registerLater,
} from '../helpers/wizardHelpers';
test('Create a blueprint with Firewall customization', async ({
page,
cleanup,
}) => {
const blueprintName = 'test-' + uuidv4();
// Delete the blueprint after the run fixture
await cleanup.add(() => deleteBlueprint(page, blueprintName));
await ensureAuthenticated(page);
// Navigate to IB landing page and get the frame
await navigateToLandingPage(page);
const frame = await ibFrame(page);
await test.step('Navigate to optional steps in Wizard', async () => {
await navigateToOptionalSteps(frame);
await registerLater(frame);
});
await test.step('Select and correctly fill the ports in Firewall step', async () => {
await frame.getByRole('button', { name: 'Firewall' }).click();
await frame.getByPlaceholder('Add ports').fill('80:tcp');
await frame.getByRole('button', { name: 'Add ports' }).click();
await expect(frame.getByText('80:tcp')).toBeVisible();
});
await test.step('Select and correctly fill the disabled services in Firewall step', async () => {
await frame
.getByPlaceholder('Add disabled service')
.fill('disabled_service');
await frame.getByRole('button', { name: 'Add disabled service' }).click();
await expect(frame.getByText('disabled_service')).toBeVisible();
});
await test.step('Select and correctly fill the enabled services in Firewall step', async () => {
await frame.getByPlaceholder('Add enabled service').fill('enabled_service');
await frame.getByRole('button', { name: 'Add enabled service' }).click();
await expect(frame.getByText('enabled_service')).toBeVisible();
});
await test.step('Select and incorrectly fill the ports in Firewall step', async () => {
await frame.getByPlaceholder('Add ports').fill('x');
await frame.getByRole('button', { name: 'Add ports' }).click();
await expect(
frame
.getByText(
'Expected format: <port/port-name>:<protocol>. Example: 8080:tcp, ssh:tcp',
)
.nth(0),
).toBeVisible();
});
await test.step('Select and incorrectly fill the disabled services in Firewall step', async () => {
await frame.getByPlaceholder('Add disabled service').fill('1');
await frame.getByRole('button', { name: 'Add disabled service' }).click();
await expect(
frame.getByText('Expected format: <service-name>. Example: sshd').nth(0),
).toBeVisible();
});
await test.step('Select and incorrectly fill the enabled services in Firewall step', async () => {
await frame.getByPlaceholder('Add enabled service').fill('ťčš');
await frame.getByRole('button', { name: 'Add enabled service' }).click();
await expect(
frame.getByText('Expected format: <service-name>. Example: sshd').nth(1),
).toBeVisible();
});
await test.step('Fill the BP details', async () => {
await frame.getByRole('button', { name: 'Review and finish' }).click();
await fillInDetails(frame, blueprintName);
});
await test.step('Create BP', async () => {
await createBlueprint(frame, blueprintName);
});
await test.step('Edit BP', async () => {
await frame.getByRole('button', { name: 'Edit blueprint' }).click();
await frame.getByLabel('Revisit Firewall step').click();
await frame.getByPlaceholder('Add ports').fill('90:tcp');
await frame.getByRole('button', { name: 'Add ports' }).click();
await frame.getByPlaceholder('Add disabled service').fill('x');
await frame.getByRole('button', { name: 'Add disabled service' }).click();
await frame.getByPlaceholder('Add enabled service').fill('y');
await frame.getByRole('button', { name: 'Add enabled service' }).click();
await frame.getByRole('button', { name: 'Close 80:tcp' }).click();
await frame.getByRole('button', { name: 'Close enabled_service' }).click();
await frame.getByRole('button', { name: 'Close disabled_service' }).click();
await expect(frame.getByText('90:tcp')).toBeVisible();
await expect(frame.getByText('x').nth(0)).toBeVisible();
await expect(frame.getByText('y').nth(0)).toBeVisible();
await expect(frame.getByText('80:tcp')).toBeHidden();
await expect(frame.getByText('disabled_service')).toBeHidden();
await expect(frame.getByText('enabled_service')).toBeHidden();
await frame.getByRole('button', { name: 'Review and finish' }).click();
await frame
.getByRole('button', { name: 'Save changes to blueprint' })
.click();
});
// This is for hosted service only as these features are not available in cockpit plugin
await test.step('Export BP', async (step) => {
step.skip(!isHosted(), 'Exporting is not available in the plugin');
await exportBlueprint(page, blueprintName);
});
await test.step('Import BP', async (step) => {
step.skip(!isHosted(), 'Importing is not available in the plugin');
await importBlueprint(page, blueprintName);
});
await test.step('Review imported BP', async (step) => {
step.skip(!isHosted(), 'Importing is not available in the plugin');
await fillInImageOutputGuest(page);
await page.getByRole('button', { name: 'Firewall' }).click();
await expect(frame.getByText('90:tcp')).toBeVisible();
await expect(frame.getByText('x').nth(0)).toBeVisible();
await expect(frame.getByText('y').nth(0)).toBeVisible();
await expect(frame.getByText('80:tcp')).toBeHidden();
await expect(frame.getByText('disabled_service')).toBeHidden();
await expect(frame.getByText('enabled_service')).toBeHidden();
await page.getByRole('button', { name: 'Cancel' }).click();
});
});

View file

@ -0,0 +1,90 @@
import { expect } from '@playwright/test';
import { v4 as uuidv4 } from 'uuid';
import { test } from '../fixtures/customizations';
import { isHosted } from '../helpers/helpers';
import { ensureAuthenticated } from '../helpers/login';
import {
ibFrame,
navigateToLandingPage,
navigateToOptionalSteps,
} from '../helpers/navHelpers';
import {
createBlueprint,
deleteBlueprint,
exportBlueprint,
fillInDetails,
fillInImageOutputGuest,
importBlueprint,
registerLater,
} from '../helpers/wizardHelpers';
test('Create a blueprint with Hostname customization', async ({
page,
cleanup,
}) => {
const blueprintName = 'test-' + uuidv4();
const hostname = 'testsystem';
// Delete the blueprint after the run fixture
await cleanup.add(() => deleteBlueprint(page, blueprintName));
await ensureAuthenticated(page);
// Navigate to IB landing page and get the frame
await navigateToLandingPage(page);
const frame = await ibFrame(page);
await test.step('Navigate to optional steps in Wizard', async () => {
await navigateToOptionalSteps(frame);
await registerLater(frame);
});
await test.step('Select and fill the Hostname step', async () => {
await frame.getByRole('button', { name: 'Hostname' }).click();
await frame.getByRole('textbox', { name: 'hostname input' }).fill(hostname);
await frame.getByRole('button', { name: 'Review and finish' }).click();
});
await test.step('Fill the BP details', async () => {
await fillInDetails(frame, blueprintName);
});
await test.step('Create BP', async () => {
await createBlueprint(frame, blueprintName);
});
await test.step('Edit BP', async () => {
await frame.getByRole('button', { name: 'Edit blueprint' }).click();
await frame.getByLabel('Revisit Hostname step').click();
await frame.getByRole('textbox', { name: 'hostname input' }).click();
await frame
.getByRole('textbox', { name: 'hostname input' })
.fill(hostname + 'edited');
await frame.getByRole('button', { name: 'Review and finish' }).click();
await frame
.getByRole('button', { name: 'Save changes to blueprint' })
.click();
});
// This is for hosted service only as these features are not available in cockpit plugin
await test.step('Export BP', async (step) => {
step.skip(!isHosted(), 'Exporting is not available in the plugin');
await exportBlueprint(page, blueprintName);
});
await test.step('Import BP', async (step) => {
step.skip(!isHosted(), 'Importing is not available in the plugin');
await importBlueprint(page, blueprintName);
});
await test.step('Review imported BP', async (step) => {
step.skip(!isHosted(), 'Importing is not available in the plugin');
await fillInImageOutputGuest(page);
await page.getByRole('button', { name: 'Hostname' }).click();
await expect(
page.getByRole('textbox', { name: 'hostname input' }),
).toHaveValue(hostname + 'edited');
await page.getByRole('button', { name: 'Cancel' }).click();
});
});

View file

@ -0,0 +1,133 @@
import { expect } from '@playwright/test';
import { v4 as uuidv4 } from 'uuid';
import { test } from '../fixtures/customizations';
import { isHosted } from '../helpers/helpers';
import { ensureAuthenticated } from '../helpers/login';
import {
ibFrame,
navigateToLandingPage,
navigateToOptionalSteps,
} from '../helpers/navHelpers';
import {
createBlueprint,
deleteBlueprint,
exportBlueprint,
fillInDetails,
fillInImageOutputGuest,
importBlueprint,
registerLater,
} from '../helpers/wizardHelpers';
test('Create a blueprint with Kernel customization', async ({
page,
cleanup,
}) => {
const blueprintName = 'test-' + uuidv4();
// Delete the blueprint after the run fixture
await cleanup.add(() => deleteBlueprint(page, blueprintName));
await ensureAuthenticated(page);
// Navigate to IB landing page and get the frame
await navigateToLandingPage(page);
const frame = await ibFrame(page);
await test.step('Navigate to optional steps in Wizard', async () => {
await navigateToOptionalSteps(frame);
await registerLater(frame);
});
await test.step('Select and fill the Kernel step', async () => {
await frame.getByRole('button', { name: 'Kernel' }).click();
await frame.getByRole('button', { name: 'Menu toggle' }).click();
await frame.getByRole('option', { name: 'kernel', exact: true }).click();
await frame.getByPlaceholder('Add kernel argument').fill('rootwait');
await frame.getByRole('button', { name: 'Add kernel argument' }).click();
await frame
.getByPlaceholder('Add kernel argument')
.fill('invalid$argument');
await frame.getByRole('button', { name: 'Add kernel argument' }).click();
await expect(
frame.getByText(
'Expected format: <kernel-argument>. Example: console=tty0',
),
).toBeVisible();
await frame.getByPlaceholder('Select kernel package').fill('new-package');
await frame
.getByRole('option', { name: 'Custom kernel package "new-' })
.click();
await expect(
frame.getByRole('heading', { name: 'Warning alert: Custom kernel' }),
).toBeVisible();
await frame.getByRole('button', { name: 'Clear input' }).first().click();
await frame.getByRole('button', { name: 'Menu toggle' }).click();
await expect(
frame.getByRole('option', { name: 'new-package' }),
).toBeVisible();
await frame.getByPlaceholder('Select kernel package').fill('f');
await expect(
frame.getByRole('option', {
name: '"f" is not a valid kernel package name',
}),
).toBeVisible();
await frame.getByPlaceholder('Add kernel argument').fill('console=tty0');
await frame.getByRole('button', { name: 'Add kernel argument' }).click();
await frame.getByPlaceholder('Add kernel argument').fill('xxnosmp');
await frame.getByRole('button', { name: 'Add kernel argument' }).click();
await frame
.getByPlaceholder('Add kernel argument')
.fill('console=ttyS0,115200n8');
await frame.getByRole('button', { name: 'Add kernel argument' }).click();
await frame.getByRole('button', { name: 'Review and finish' }).click();
});
await test.step('Fill the BP details', async () => {
await fillInDetails(frame, blueprintName);
});
await test.step('Create BP', async () => {
await createBlueprint(frame, blueprintName);
});
await test.step('Edit BP', async () => {
await frame.getByRole('button', { name: 'Edit blueprint' }).click();
await frame.getByLabel('Revisit Kernel step').click();
await frame.getByRole('button', { name: 'Menu toggle' }).click();
await frame.getByRole('option', { name: 'kernel', exact: true }).click();
await frame.getByPlaceholder('Add kernel argument').fill('new=argument');
await frame.getByRole('button', { name: 'Add kernel argument' }).click();
await frame.getByRole('button', { name: 'Close xxnosmp' }).click();
await frame.getByRole('button', { name: 'Review and finish' }).click();
await frame
.getByRole('button', { name: 'Save changes to blueprint' })
.click();
});
// This is for hosted service only as these features are not available in cockpit plugin
await test.step('Export BP', async (step) => {
step.skip(!isHosted(), 'Exporting is not available in the plugin');
await exportBlueprint(page, blueprintName);
});
await test.step('Import BP', async (step) => {
step.skip(!isHosted(), 'Importing is not available in the plugin');
await importBlueprint(page, blueprintName);
});
await test.step('Review imported BP', async (step) => {
step.skip(!isHosted(), 'Importing is not available in the plugin');
await fillInImageOutputGuest(frame);
await frame.getByRole('button', { name: 'Kernel' }).click();
await expect(frame.getByPlaceholder('Select kernel package')).toHaveValue(
'kernel',
);
await expect(frame.getByText('rootwait')).toBeVisible();
await expect(frame.getByText('console=tty0')).toBeVisible();
await expect(frame.getByText('console=ttyS0,115200n8')).toBeVisible();
await expect(frame.getByText('new=argument')).toBeVisible();
await expect(frame.getByText('xxnosmp')).toBeHidden();
await frame.getByRole('button', { name: 'Cancel' }).click();
});
});

View file

@ -0,0 +1,159 @@
import { expect } from '@playwright/test';
import { v4 as uuidv4 } from 'uuid';
import { test } from '../fixtures/customizations';
import { isHosted } from '../helpers/helpers';
import { ensureAuthenticated } from '../helpers/login';
import {
ibFrame,
navigateToLandingPage,
navigateToOptionalSteps,
} from '../helpers/navHelpers';
import {
createBlueprint,
deleteBlueprint,
exportBlueprint,
fillInDetails,
fillInImageOutputGuest,
importBlueprint,
registerLater,
} from '../helpers/wizardHelpers';
test('Create a blueprint with Locale customization', async ({
page,
cleanup,
}) => {
const blueprintName = 'test-' + uuidv4();
// Delete the blueprint after the run fixture
await cleanup.add(() => deleteBlueprint(page, blueprintName));
await ensureAuthenticated(page);
// Navigate to IB landing page and get the frame
await navigateToLandingPage(page);
const frame = await ibFrame(page);
await test.step('Navigate to optional steps in Wizard', async () => {
await navigateToOptionalSteps(frame);
await registerLater(frame);
});
await test.step('Select and fill the Locale step', async () => {
await frame.getByRole('button', { name: 'Locale' }).click();
await frame.getByPlaceholder('Select a language').fill('fy');
await frame
.getByRole('option', { name: 'Western Frisian - Germany (fy_DE.UTF-8)' })
.click();
await expect(
frame.getByRole('button', {
name: 'Close Western Frisian - Germany (fy_DE.UTF-8)',
}),
).toBeEnabled();
await frame
.getByRole('button', {
name: 'Close Western Frisian - Germany (fy_DE.UTF-8)',
})
.click();
await expect(
frame.getByRole('button', {
name: 'Close Western Frisian - Germany (fy_DE.UTF-8)',
}),
).toBeHidden();
await frame.getByPlaceholder('Select a language').fill('fy');
await frame
.getByRole('option', { name: 'Western Frisian - Germany (fy_DE.UTF-8)' })
.click();
await expect(
frame.getByRole('button', {
name: 'Close Western Frisian - Germany (fy_DE.UTF-8)',
}),
).toBeEnabled();
await frame.getByPlaceholder('Select a language').fill('aa');
await frame
.getByRole('option', { name: 'aa - Djibouti (aa_DJ.UTF-8)' })
.click();
await expect(
frame.getByRole('button', { name: 'Close aa - Djibouti (aa_DJ.UTF-8)' }),
).toBeEnabled();
await frame.getByPlaceholder('Select a language').fill('aa');
await expect(
frame.getByText(
'aa - Djibouti (aa_DJ.UTF-8)Language already addedaa - Eritrea (aa_ER.UTF-8)aa - Ethiopia (aa_ET.UTF-8)',
),
).toBeAttached();
await frame.getByPlaceholder('Select a language').fill('xxx');
await expect(frame.getByText('No results found for')).toBeAttached();
await frame.getByRole('button', { name: 'Menu toggle' }).nth(1).click();
await frame.getByPlaceholder('Select a keyboard').fill('ami');
await frame.getByRole('option', { name: 'amiga-de' }).click();
await frame.getByRole('button', { name: 'Review and finish' }).click();
});
await test.step('Fill the BP details', async () => {
await fillInDetails(frame, blueprintName);
});
await test.step('Create BP', async () => {
await createBlueprint(frame, blueprintName);
});
await test.step('Edit BP', async () => {
await frame.getByRole('button', { name: 'Edit blueprint' }).click();
await frame.getByLabel('Revisit Locale step').click();
await expect(
frame.getByRole('button', {
name: 'Close Western Frisian - Germany (fy_DE.UTF-8)',
}),
).toBeEnabled();
await expect(
frame.getByRole('button', { name: 'Close aa - Djibouti (aa_DJ.UTF-8)' }),
).toBeEnabled();
await frame.getByPlaceholder('Select a language').fill('aa');
await frame
.getByRole('option', { name: 'aa - Eritrea (aa_ER.UTF-8)' })
.click();
await expect(
frame.getByRole('button', { name: 'Close aa - Eritrea (aa_ER.UTF-8)' }),
).toBeEnabled();
await frame.getByRole('button', { name: 'Clear input' }).click();
await frame.getByRole('button', { name: 'Menu toggle' }).nth(1).click();
await frame.getByRole('option', { name: 'ANSI-dvorak' }).click();
await frame.getByRole('button', { name: 'Review and finish' }).click();
await frame
.getByRole('button', { name: 'Save changes to blueprint' })
.click();
});
// This is for hosted service only as these features are not available in cockpit plugin
await test.step('Export BP', async (step) => {
step.skip(!isHosted(), 'Exporting is not available in the plugin');
await exportBlueprint(page, blueprintName);
});
await test.step('Import BP', async (step) => {
step.skip(!isHosted(), 'Importing is not available in the plugin');
await importBlueprint(page, blueprintName);
});
await test.step('Review imported BP', async (step) => {
step.skip(!isHosted(), 'Importing is not available in the plugin');
await fillInImageOutputGuest(page);
await page.getByRole('button', { name: 'Locale' }).click();
await expect(
frame.getByRole('button', {
name: 'Close Western Frisian - Germany (fy_DE.UTF-8)',
}),
).toBeEnabled();
await expect(
frame.getByRole('button', { name: 'Close aa - Djibouti (aa_DJ.UTF-8)' }),
).toBeEnabled();
await expect(
frame.getByRole('button', { name: 'Close aa - Eritrea (aa_ER.UTF-8)' }),
).toBeEnabled();
await expect(frame.getByPlaceholder('Select a keyboard')).toHaveValue(
'ANSI-dvorak',
);
await page.getByRole('button', { name: 'Cancel' }).click();
});
});

View file

@ -0,0 +1,189 @@
import { expect } from '@playwright/test';
import { v4 as uuidv4 } from 'uuid';
import { test } from '../fixtures/cleanup';
import { isHosted } from '../helpers/helpers';
import { ensureAuthenticated } from '../helpers/login';
import { ibFrame, navigateToLandingPage } from '../helpers/navHelpers';
import {
createBlueprint,
deleteBlueprint,
exportBlueprint,
fillInDetails,
fillInImageOutputGuest,
importBlueprint,
registerLater,
} from '../helpers/wizardHelpers';
test('Create a blueprint with OpenSCAP customization', async ({
page,
cleanup,
}) => {
const blueprintName = 'test-' + uuidv4();
test.skip(!isHosted(), 'Exporting is not available in the plugin');
// Delete the blueprint after the run fixture
await cleanup.add(() => deleteBlueprint(page, blueprintName));
await ensureAuthenticated(page);
// Navigate to IB landing page and get the frame
await navigateToLandingPage(page);
const frame = await ibFrame(page);
await test.step('Select RHEL 9 and go to optional steps in Wizard', async () => {
await frame.getByRole('button', { name: 'Create image blueprint' }).click();
await frame.getByTestId('release_select').click();
await frame
.getByRole('option', {
name: 'Red Hat Enterprise Linux (RHEL) 9 Full support ends: May 2027 | Maintenance',
})
.click();
await frame.getByRole('checkbox', { name: 'Virtualization' }).click();
await frame.getByRole('button', { name: 'Next' }).click();
await registerLater(frame);
});
await test.step('Select only OpenSCAP, and check if dependencies are preselected', async () => {
await frame.getByRole('button', { name: 'Compliance' }).click();
await frame.getByRole('textbox', { name: 'Type to filter' }).fill('cis');
await frame
.getByRole('option', {
name: 'CIS Red Hat Enterprise Linux 9 Benchmark for Level 1 - Server This profile',
})
.click();
await frame
.getByRole('button', { name: 'File system configuration' })
.click();
await expect(
frame
.getByRole('row', {
name: 'Draggable row draggable button /tmp xfs 1 GiB',
})
.getByRole('button')
.nth(3),
).toBeVisible();
await frame.getByRole('button', { name: 'Additional packages' }).click();
await frame.getByRole('button', { name: 'Selected (8)' }).click();
await expect(frame.getByRole('gridcell', { name: 'aide' })).toBeVisible();
await expect(frame.getByRole('gridcell', { name: 'chrony' })).toBeVisible();
await expect(
frame.getByRole('gridcell', { name: 'firewalld' }),
).toBeVisible();
await expect(
frame.getByRole('gridcell', { name: 'libpwquality' }),
).toBeVisible();
await expect(
frame.getByRole('gridcell', { name: 'libselinux' }),
).toBeVisible();
await expect(
frame.getByRole('gridcell', { name: 'nftables' }),
).toBeVisible();
await expect(frame.getByRole('gridcell', { name: 'sudo' })).toBeVisible();
await expect(
frame.getByRole('gridcell', { name: 'systemd-journal-remote' }),
).toBeVisible();
await frame.getByRole('button', { name: 'Systemd services' }).click();
await expect(
frame.getByText('Required by OpenSCAPcrondfirewalldsystemd-journald'),
).toBeVisible();
await frame.getByPlaceholder('Add masked service').fill('nftables');
await frame.getByPlaceholder('Add masked service').press('Enter');
await expect(
frame.getByText('Masked service already exists'),
).toBeVisible();
await expect(frame.getByText('Required by OpenSCAPcupsnfs-')).toBeVisible();
await expect(frame.getByText('nfs-server')).toBeVisible();
await expect(frame.getByText('rpcbind')).toBeVisible();
await expect(frame.getByText('avahi-daemon')).toBeVisible();
await expect(frame.getByText('autofs')).toBeVisible();
await expect(frame.getByText('bluetooth')).toBeVisible();
await expect(frame.getByText('nftables')).toBeVisible();
await frame.getByRole('button', { name: 'Review and finish' }).click();
});
await test.step('Fill the BP details', async () => {
await fillInDetails(frame, blueprintName);
});
await test.step('Create BP', async () => {
await createBlueprint(frame, blueprintName);
});
await test.step('Edit BP', async () => {
await frame.getByRole('button', { name: 'Edit blueprint' }).click();
await frame.getByRole('button', { name: 'Compliance' }).click();
await expect(frame.getByText('Level 1 - Server')).toBeVisible();
await frame.getByRole('textbox', { name: 'Type to filter' }).fill('cis');
await frame
.getByRole('option', {
name: 'CIS Red Hat Enterprise Linux 9 Benchmark for Level 2 - Server This profile',
})
.click();
await frame.getByRole('button', { name: 'Kernel' }).click();
await expect(
frame.getByText('Required by OpenSCAPaudit_backlog_limit=8192audit='),
).toBeVisible();
await frame.getByRole('button', { name: 'Additional packages' }).click();
await frame.getByRole('button', { name: 'Selected (10)' }).click();
await expect(frame.getByRole('gridcell', { name: 'aide' })).toBeVisible();
await expect(
frame.getByRole('gridcell', { name: 'audit-libs' }),
).toBeVisible();
await expect(frame.getByRole('gridcell', { name: 'chrony' })).toBeVisible();
await expect(
frame.getByRole('gridcell', { name: 'firewalld' }),
).toBeVisible();
await expect(
frame.getByRole('gridcell', { name: 'libpwquality' }),
).toBeVisible();
await expect(
frame.getByRole('gridcell', { name: 'libselinux' }),
).toBeVisible();
await expect(
frame.getByRole('gridcell', { name: 'nftables' }),
).toBeVisible();
await expect(frame.getByRole('gridcell', { name: 'sudo' })).toBeVisible();
await frame.getByRole('button', { name: 'Systemd services' }).click();
await expect(
frame.getByText(
'Required by OpenSCAPauditdcrondfirewalldsystemd-journald',
),
).toBeVisible();
await frame.getByPlaceholder('Add masked service').fill('nftables');
await frame.getByPlaceholder('Add masked service').press('Enter');
await expect(
frame.getByText('Masked service already exists'),
).toBeVisible();
await expect(frame.getByText('Required by OpenSCAPcupsnfs-')).toBeVisible();
await expect(frame.getByText('nfs-server')).toBeVisible();
await expect(frame.getByText('rpcbind')).toBeVisible();
await expect(frame.getByText('avahi-daemon')).toBeVisible();
await expect(frame.getByText('autofs')).toBeVisible();
await expect(frame.getByText('bluetooth')).toBeVisible();
await expect(frame.getByText('nftables')).toBeVisible();
await frame.getByRole('button', { name: 'Review and finish' }).click();
await frame
.getByRole('button', { name: 'Save changes to blueprint' })
.click();
});
// This is for hosted service only as these features are not available in cockpit plugin
await test.step('Export BP', async () => {
await exportBlueprint(page, blueprintName);
});
await test.step('Import BP', async () => {
await importBlueprint(page, blueprintName);
});
await test.step('Review imported BP', async () => {
await fillInImageOutputGuest(page);
await page.getByRole('button', { name: 'Compliance' }).click();
await expect(frame.getByText('Level 2 - Server')).toBeVisible();
await page.getByRole('button', { name: 'Cancel' }).click();
});
});

View file

@ -0,0 +1,156 @@
import { expect } from '@playwright/test';
import { v4 as uuidv4 } from 'uuid';
import { test } from '../fixtures/customizations';
import { isHosted } from '../helpers/helpers';
import { ensureAuthenticated } from '../helpers/login';
import {
ibFrame,
navigateToLandingPage,
navigateToOptionalSteps,
} from '../helpers/navHelpers';
import {
createBlueprint,
deleteBlueprint,
exportBlueprint,
fillInDetails,
fillInImageOutputGuest,
importBlueprint,
registerLater,
} from '../helpers/wizardHelpers';
test('Create a blueprint with Systemd customization', async ({
page,
cleanup,
}) => {
const blueprintName = 'test-' + uuidv4();
// Delete the blueprint after the run fixture
await cleanup.add(() => deleteBlueprint(page, blueprintName));
await ensureAuthenticated(page);
// Navigate to IB landing page and get the frame
await navigateToLandingPage(page);
const frame = await ibFrame(page);
await test.step('Navigate to optional steps in Wizard', async () => {
await navigateToOptionalSteps(frame);
await registerLater(frame);
});
await test.step('Select and correctly fill all of the service fields', async () => {
await frame.getByRole('button', { name: 'Systemd services' }).click();
await frame
.getByPlaceholder('Add disabled service')
.fill('systemd-dis.service');
await frame.getByRole('button', { name: 'Add disabled service' }).click();
await expect(frame.getByText('systemd-dis.service')).toBeVisible();
await frame
.getByPlaceholder('Add enabled service')
.fill('systemd-en.service');
await frame.getByRole('button', { name: 'Add enabled service' }).click();
await expect(frame.getByText('systemd-en.service')).toBeVisible();
await frame
.getByPlaceholder('Add masked service')
.fill('systemd-m.service');
await frame.getByRole('button', { name: 'Add masked service' }).click();
await expect(frame.getByText('systemd-m.service')).toBeVisible();
});
await test.step('Select and incorrectly fill all of the service fields', async () => {
await frame.getByPlaceholder('Add disabled service').fill('&&');
await frame.getByRole('button', { name: 'Add disabled service' }).click();
await expect(
frame.getByText('Expected format: <service-name>. Example: sshd').nth(0),
).toBeVisible();
await frame.getByPlaceholder('Add enabled service').fill('áá');
await frame.getByRole('button', { name: 'Add enabled service' }).click();
await expect(
frame.getByText('Expected format: <service-name>. Example: sshd').nth(1),
).toBeVisible();
await frame.getByPlaceholder('Add masked service').fill('78');
await frame.getByRole('button', { name: 'Add masked service' }).click();
await expect(
frame.getByText('Expected format: <service-name>. Example: sshd').nth(2),
).toBeVisible();
});
await test.step('Fill the BP details', async () => {
await frame.getByRole('button', { name: 'Review and finish' }).click();
await fillInDetails(frame, blueprintName);
});
await test.step('Create BP', async () => {
await createBlueprint(frame, blueprintName);
});
await test.step('Edit BP', async () => {
await frame.getByRole('button', { name: 'Edit blueprint' }).click();
await frame.getByLabel('Revisit Systemd services step').click();
await frame
.getByPlaceholder('Add disabled service')
.fill('disabled-service');
await frame.getByRole('button', { name: 'Add disabled service' }).click();
await frame.getByPlaceholder('Add enabled service').fill('enabled-service');
await frame.getByRole('button', { name: 'Add enabled service' }).click();
await frame.getByPlaceholder('Add masked service').fill('masked-service');
await frame.getByRole('button', { name: 'Add masked service' }).click();
await frame
.getByRole('button', { name: 'Close systemd-m.service' })
.click();
await frame
.getByRole('button', { name: 'Close systemd-en.service' })
.click();
await frame
.getByRole('button', { name: 'Close systemd-dis.service' })
.click();
await expect(frame.getByText('enabled-service')).toBeVisible();
await expect(frame.getByText('disabled-service')).toBeVisible();
await expect(frame.getByText('masked-service')).toBeVisible();
await expect(frame.getByText('systemd-en.service')).toBeHidden();
await expect(frame.getByText('systemd-dis.service')).toBeHidden();
await expect(frame.getByText('systemd-m.service')).toBeHidden();
await frame.getByRole('button', { name: 'Review and finish' }).click();
await frame
.getByRole('button', { name: 'Save changes to blueprint' })
.click();
});
// This is for hosted service only as these features are not available in cockpit plugin
await test.step('Export BP', async (step) => {
step.skip(!isHosted(), 'Exporting is not available in the plugin');
await exportBlueprint(page, blueprintName);
});
await test.step('Import BP', async (step) => {
step.skip(!isHosted(), 'Importing is not available in the plugin');
await importBlueprint(page, blueprintName);
});
await test.step('Review imported BP', async (step) => {
step.skip(!isHosted(), 'Importing is not available in the plugin');
await fillInImageOutputGuest(page);
await page.getByRole('button', { name: 'Systemd services' }).click();
await expect(frame.getByText('enabled-service')).toBeVisible();
await expect(frame.getByText('disabled-service')).toBeVisible();
await expect(frame.getByText('masked-service')).toBeVisible();
await expect(frame.getByText('systemd-en.service')).toBeHidden();
await expect(frame.getByText('systemd-dis.service')).toBeHidden();
await expect(frame.getByText('systemd-m.service')).toBeHidden();
await page.getByRole('button', { name: 'Cancel' }).click();
});
});

View file

@ -0,0 +1,128 @@
import { expect } from '@playwright/test';
import { v4 as uuidv4 } from 'uuid';
import { test } from '../fixtures/customizations';
import { isHosted } from '../helpers/helpers';
import { ensureAuthenticated } from '../helpers/login';
import {
ibFrame,
navigateToLandingPage,
navigateToOptionalSteps,
} from '../helpers/navHelpers';
import {
createBlueprint,
deleteBlueprint,
exportBlueprint,
fillInDetails,
fillInImageOutputGuest,
importBlueprint,
registerLater,
} from '../helpers/wizardHelpers';
test('Create a blueprint with Timezone customization', async ({
page,
cleanup,
}) => {
const blueprintName = 'test-' + uuidv4();
// Delete the blueprint after the run fixture
await cleanup.add(() => deleteBlueprint(page, blueprintName));
await ensureAuthenticated(page);
// Navigate to IB landing page and get the frame
await navigateToLandingPage(page);
const frame = await ibFrame(page);
await test.step('Navigate to optional steps in Wizard', async () => {
await navigateToOptionalSteps(frame);
await registerLater(frame);
});
await test.step('Select and fill the Timezone step', async () => {
await frame.getByRole('button', { name: 'Timezone' }).click();
await frame.getByPlaceholder('Select a timezone').fill('Canada');
await frame.getByRole('option', { name: 'Canada/Saskatchewan' }).click();
await frame.getByRole('button', { name: 'Clear input' }).first().click();
await frame.getByPlaceholder('Select a timezone').fill('Europe');
await frame.getByRole('option', { name: 'Europe/Stockholm' }).click();
await frame.getByPlaceholder('Add NTP servers').fill('0.nl.pool.ntp.org');
await frame.getByRole('button', { name: 'Add NTP server' }).click();
await expect(frame.getByText('0.nl.pool.ntp.org')).toBeVisible();
await frame.getByPlaceholder('Add NTP servers').fill('0.nl.pool.ntp.org');
await frame.getByRole('button', { name: 'Add NTP server' }).click();
await expect(frame.getByText('NTP server already exists.')).toBeVisible();
await frame.getByPlaceholder('Add NTP servers').fill('xxxx');
await frame.getByRole('button', { name: 'Add NTP server' }).click();
await expect(
frame
.getByText('Expected format: <ntp-server>. Example: time.redhat.com')
.nth(0),
).toBeVisible();
await frame.getByPlaceholder('Add NTP servers').fill('0.cz.pool.ntp.org');
await frame.getByRole('button', { name: 'Add NTP server' }).click();
await expect(frame.getByText('0.cz.pool.ntp.org')).toBeVisible();
await frame.getByPlaceholder('Add NTP servers').fill('0.de.pool.ntp.org');
await frame.getByRole('button', { name: 'Add NTP server' }).click();
await expect(frame.getByText('0.de.pool.ntp.org')).toBeVisible();
await frame
.getByRole('button', { name: 'Close 0.cz.pool.ntp.org' })
.click();
await expect(frame.getByText('0.cz.pool.ntp.org')).toBeHidden();
await frame.getByRole('button', { name: 'Review and finish' }).click();
});
await test.step('Fill the BP details', async () => {
await fillInDetails(frame, blueprintName);
});
await test.step('Create BP', async () => {
await createBlueprint(frame, blueprintName);
});
await test.step('Edit BP', async () => {
await frame.getByRole('button', { name: 'Edit blueprint' }).click();
await frame.getByLabel('Revisit Timezone step').click();
await expect(frame.getByText('Canada/Saskatchewan')).toBeHidden();
await expect(frame.getByPlaceholder('Select a timezone')).toHaveValue(
'Europe/Stockholm',
);
await frame.getByPlaceholder('Select a timezone').fill('Europe');
await frame.getByRole('option', { name: 'Europe/Oslo' }).click();
await expect(frame.getByPlaceholder('Select a timezone')).toHaveValue(
'Europe/Oslo',
);
await expect(frame.getByText('0.nl.pool.ntp.org')).toBeVisible();
await expect(frame.getByText('0.de.pool.ntp.org')).toBeVisible();
await expect(frame.getByText('0.cz.pool.ntp.org')).toBeHidden();
await frame.getByRole('button', { name: 'Review and finish' }).click();
await frame
.getByRole('button', { name: 'Save changes to blueprint' })
.click();
});
// This is for hosted service only as these features are not available in cockpit plugin
await test.step('Export BP', async (step) => {
step.skip(!isHosted(), 'Exporting is not available in the plugin');
await exportBlueprint(page, blueprintName);
});
await test.step('Import BP', async (step) => {
step.skip(!isHosted(), 'Importing is not available in the plugin');
await importBlueprint(page, blueprintName);
});
await test.step('Review imported BP', async (step) => {
step.skip(!isHosted(), 'Importing is not available in the plugin');
await fillInImageOutputGuest(page);
await frame.getByRole('button', { name: 'Timezone' }).click();
await expect(frame.getByPlaceholder('Select a timezone')).toHaveValue(
'Europe/Oslo',
);
await expect(frame.getByText('0.nl.pool.ntp.org')).toBeVisible();
await expect(frame.getByText('0.de.pool.ntp.org')).toBeVisible();
await expect(frame.getByText('0.cz.pool.ntp.org')).toBeHidden();
await frame.getByRole('button', { name: 'Cancel' }).click();
});
});

View file

@ -0,0 +1,44 @@
import { test as oldTest } from '@playwright/test';
type WithCleanup = {
cleanup: Cleanup;
};
export interface Cleanup {
add: (cleanupFn: () => Promise<unknown>) => symbol;
runAndAdd: (cleanupFn: () => Promise<unknown>) => Promise<symbol>;
remove: (key: symbol) => void;
}
export const test = oldTest.extend<WithCleanup>({
cleanup: async ({}, use) => {
const cleanupFns: Map<symbol, () => Promise<unknown>> = new Map();
// eslint-disable-next-line react-hooks/rules-of-hooks
await use({
add: (cleanupFn) => {
const key = Symbol();
cleanupFns.set(key, cleanupFn);
return key;
},
runAndAdd: async (cleanupFn) => {
await cleanupFn();
const key = Symbol();
cleanupFns.set(key, cleanupFn);
return key;
},
remove: (key) => {
cleanupFns.delete(key);
},
});
await test.step(
'Post-test cleanup',
async () => {
await Promise.all(Array.from(cleanupFns).map(([, fn]) => fn()));
},
{ box: true },
);
},
});

View file

@ -0,0 +1,8 @@
// This is a common fixture for the customizations tests
import { mergeTests } from '@playwright/test';
import { test as cleanupTest } from './cleanup';
import { test as popupTest } from './popupHandler';
// Combine the fixtures into one
export const test = mergeTests(cleanupTest, popupTest);

View file

@ -0,0 +1,18 @@
import { test as base } from '@playwright/test';
import { closePopupsIfExist } from '../helpers/helpers';
export interface PopupHandlerFixture {
popupHandler: void;
}
// This fixture will close any popups that might get opened during the test execution
export const test = base.extend<PopupHandlerFixture>({
popupHandler: [
async ({ page }, use) => {
await closePopupsIfExist(page);
await use(undefined);
},
{ auto: true },
],
});

View file

@ -0,0 +1,12 @@
import { test as setup } from '@playwright/test';
import { login, storeStorageStateAndToken } from './helpers/login';
setup.describe('Setup', () => {
setup.describe.configure({ retries: 3 });
setup('Authenticate', async ({ page }) => {
await login(page);
await storeStorageStateAndToken(page);
});
});

View file

@ -0,0 +1,87 @@
import { execSync } from 'child_process';
import { readFileSync } from 'node:fs';
import { expect, type Page } from '@playwright/test';
export const togglePreview = async (page: Page) => {
const toggleSwitch = page.locator('#preview-toggle');
if (!(await toggleSwitch.isChecked())) {
await toggleSwitch.click();
}
const turnOnButton = page.getByRole('button', { name: 'Turn on' });
if (await turnOnButton.isVisible()) {
await turnOnButton.click();
}
await expect(toggleSwitch).toBeChecked();
};
export const isHosted = (): boolean => {
return process.env.BASE_URL?.includes('redhat.com') || false;
};
export const closePopupsIfExist = async (page: Page) => {
const locatorsToCheck = [
page.locator('.pf-v6-c-alert.notification-item button'), // This closes all toast pop-ups
page.locator(`button[id^="pendo-close-guide-"]`), // This closes the pendo guide pop-up
page.locator(`button[id="truste-consent-button"]`), // This closes the trusted consent pop-up
page.getByLabel('close-notification'), // This closes a one off info notification (May be covered by the toast above, needs recheck.)
page
.locator('iframe[name="intercom-modal-frame"]')
.contentFrame()
.getByRole('button', { name: 'Close' }), // This closes the intercom pop-up
page
.locator('iframe[name="intercom-notifications-frame"]')
.contentFrame()
.getByRole('button', { name: 'Profile image for Rob Rob' })
.last(), // This closes the intercom pop-up notification at the bottom of the screen, the last notification is displayed first if stacked (different from the modal popup handled above)
];
for (const locator of locatorsToCheck) {
await page.addLocatorHandler(locator, async () => {
await locator.first().click({ timeout: 10_000, noWaitAfter: true }); // There can be multiple toast pop-ups
});
}
};
// copied over from constants
const ON_PREM_RELEASES = new Map([
['centos-10', 'CentOS Stream 10'],
['fedora-41', 'Fedora Linux 41'],
['fedora-42', 'Fedora Linux 42'],
['rhel-10', 'Red Hat Enterprise Linux (RHEL) 10'],
]);
/* eslint-disable @typescript-eslint/no-explicit-any */
export const getHostDistroName = (): string => {
const osRelData = readFileSync('/etc/os-release');
const lines = osRelData
.toString('utf-8')
.split('\n')
.filter((l) => l !== '');
const osRel = {};
for (const l of lines) {
const lineData = l.split('=');
(osRel as any)[lineData[0]] = lineData[1].replace(/"/g, '');
}
// strip minor version from rhel
const distro = ON_PREM_RELEASES.get(
`${(osRel as any)['ID']}-${(osRel as any)['VERSION_ID'].split('.')[0]}`,
);
if (distro === undefined) {
/* eslint-disable no-console */
console.error('getHostDistroName failed, os-release config:', osRel);
throw new Error('getHostDistroName failed, distro undefined');
}
return distro;
};
export const getHostArch = (): string => {
return execSync('uname -m').toString('utf-8').replace(/\s/g, '');
};

138
playwright/helpers/login.ts Normal file
View file

@ -0,0 +1,138 @@
import path from 'path';
import { expect, type Page } from '@playwright/test';
import { closePopupsIfExist, isHosted, togglePreview } from './helpers';
import { ibFrame } from './navHelpers';
/**
* Logs in to either Cockpit or Console, will distinguish between them based on the environment
* @param page - the page object
*/
export const login = async (page: Page) => {
if (!process.env.PLAYWRIGHT_USER || !process.env.PLAYWRIGHT_PASSWORD) {
throw new Error('user or password not set in environment');
}
const user = process.env.PLAYWRIGHT_USER;
const password = process.env.PLAYWRIGHT_PASSWORD;
if (isHosted()) {
return loginConsole(page, user, password);
}
return loginCockpit(page, user, password);
};
/**
* Checks if the user is already authenticated, if not, logs them in
* @param page - the page object
*/
export const ensureAuthenticated = async (page: Page) => {
// Navigate to the target page
if (isHosted()) {
await page.goto('/insights/image-builder/landing');
} else {
await page.goto('/cockpit-image-builder');
}
// Check for authentication success indicator
const successIndicator = isHosted()
? page.getByRole('heading', { name: 'All images' })
: ibFrame(page).getByRole('heading', { name: 'All images' });
let isAuthenticated = false;
try {
// Give it a 30 second period to load, it's less expensive than having to rerun the test
await expect(successIndicator).toBeVisible({ timeout: 30000 });
isAuthenticated = true;
} catch {
isAuthenticated = false;
}
if (!isAuthenticated) {
// Not authenticated, need to login
await login(page);
}
};
const loginCockpit = async (page: Page, user: string, password: string) => {
await page.goto('/cockpit-image-builder');
await page.getByRole('textbox', { name: 'User name' }).fill(user);
await page.getByRole('textbox', { name: 'Password' }).fill(password);
await page.getByRole('button', { name: 'Log in' }).click();
// image-builder lives inside an iframe
const frame = ibFrame(page);
try {
// Check if the user already has administrative access
await expect(
page.getByRole('button', { name: 'Administrative access' }),
).toBeVisible();
} catch {
// If not, try to gain it
// cockpit-image-builder needs superuser, expect an error message
// when the user does not have admin priviliges
await expect(
frame.getByRole('heading', { name: 'Access is limited' }),
).toBeVisible();
await page.getByRole('button', { name: 'Limited access' }).click();
// different popup opens based on type of account (can be passwordless)
const authenticateButton = page.getByRole('button', {
name: 'Authenticate',
});
const closeButton = page.getByText('Close');
await expect(authenticateButton.or(closeButton)).toBeVisible();
if (await authenticateButton.isVisible()) {
// with password
await page.getByRole('textbox', { name: 'Password' }).fill(password);
await authenticateButton.click();
}
if (await closeButton.isVisible()) {
// passwordless
await closeButton.click();
}
}
// expect to have administrative access
await expect(
page.getByRole('button', { name: 'Administrative access' }),
).toBeVisible();
await expect(
frame.getByRole('heading', { name: 'All images' }),
).toBeVisible();
};
const loginConsole = async (page: Page, user: string, password: string) => {
await closePopupsIfExist(page);
await page.goto('/insights/image-builder/landing');
await page.getByRole('textbox', { name: 'Red Hat login' }).fill(user);
await page.getByRole('button', { name: 'Next' }).click();
await page.getByRole('textbox', { name: 'Password' }).fill(password);
await page.getByRole('button', { name: 'Log in' }).click();
await togglePreview(page);
await expect(page.getByRole('heading', { name: 'All images' })).toBeVisible();
};
export const storeStorageStateAndToken = async (page: Page) => {
const { cookies } = await page
.context()
.storageState({ path: path.join(__dirname, '../../.auth/user.json') });
if (isHosted()) {
// For hosted service, look for cs_jwt token
process.env.TOKEN = `Bearer ${
cookies.find((cookie) => cookie.name === 'cs_jwt')?.value
}`;
} else {
// For Cockpit, we don't need a TOKEN but we can still store it for consistency
const cockpitCookie = cookies.find((cookie) => cookie.name === 'cockpit');
if (cockpitCookie) {
process.env.TOKEN = cockpitCookie.value;
}
}
// eslint-disable-next-line playwright/no-wait-for-timeout
await page.waitForTimeout(100);
};

View file

@ -0,0 +1,45 @@
import { expect, FrameLocator, Page } from '@playwright/test';
import { getHostArch, getHostDistroName, isHosted } from './helpers';
/**
* Opens the wizard, fills out the "Image Output" step, and navigates to the optional steps
* @param page - the page object
*/
export const navigateToOptionalSteps = async (page: Page | FrameLocator) => {
await page.getByRole('button', { name: 'Create image blueprint' }).click();
if (!isHosted()) {
// wait until the distro and architecture aligns with the host
await expect(page.getByTestId('release_select')).toHaveText(
getHostDistroName(),
);
await expect(page.getByTestId('arch_select')).toHaveText(getHostArch());
}
await page.getByRole('checkbox', { name: 'Virtualization' }).click();
await page.getByRole('button', { name: 'Next' }).click();
};
/**
* Returns the FrameLocator object in case we are using cockpit plugin, else it returns the page object
* @param page - the page object
*/
export const ibFrame = (page: Page): FrameLocator | Page => {
if (isHosted()) {
return page;
}
return page
.locator('iframe[name="cockpit1\\:localhost\\/cockpit-image-builder"]')
.contentFrame();
};
/**
* Navigates to the landing page of the Image Builder
* @param page - the page object
*/
export const navigateToLandingPage = async (page: Page) => {
if (isHosted()) {
await page.goto('/insights/image-builder/landing');
} else {
await page.goto('/cockpit-image-builder');
}
};

View file

@ -0,0 +1,145 @@
import { expect, FrameLocator, type Page, test } from '@playwright/test';
import { closePopupsIfExist, isHosted } from './helpers';
import { ibFrame, navigateToLandingPage } from './navHelpers';
/**
* Clicks the create button, handles the modal, clicks the button again and selecets the BP in the list
* @param page - the page object
* @param blueprintName - the name of the created blueprint
*/
export const createBlueprint = async (
page: Page | FrameLocator,
blueprintName: string,
) => {
await page.getByRole('button', { name: 'Create blueprint' }).click();
await page.getByRole('button', { name: 'Close' }).first().click();
await page.getByRole('button', { name: 'Create blueprint' }).click();
await page.getByRole('textbox', { name: 'Search input' }).fill(blueprintName);
// the clickable blueprint cards are a bit awkward, so use the
// button's id instead
await page.locator(`button[id="${blueprintName}"]`).click();
};
/**
* Fill in the "Details" step in the wizard
* This method assumes that the "Details" step is ENABLED!
* After filling the step, it will click the "Next" button
* Description defaults to "Testing blueprint"
* @param page - the page object
* @param blueprintName - the name of the blueprint to create
*/
export const fillInDetails = async (
page: Page | FrameLocator,
blueprintName: string,
) => {
await page.getByRole('listitem').filter({ hasText: 'Details' }).click();
await page
.getByRole('textbox', { name: 'Blueprint name' })
.fill(blueprintName);
await page
.getByRole('textbox', { name: 'Blueprint description' })
.fill('Testing blueprint');
await page.getByRole('button', { name: 'Next' }).click();
};
/**
* Select "Register later" option in the wizard
* This function executes only on the hosted service
* @param page - the page object
*/
export const registerLater = async (page: Page | FrameLocator) => {
if (isHosted()) {
await page.getByRole('button', { name: 'Register' }).click();
await page.getByRole('radio', { name: 'Register later' }).click();
}
};
/**
* Fill in the image output step in the wizard by selecting the Guest Image
* @param page - the page object
*/
export const fillInImageOutputGuest = async (page: Page | FrameLocator) => {
await page.getByRole('checkbox', { name: 'Virtualization' }).click();
await page.getByRole('button', { name: 'Next' }).click();
};
/**
* Delete the blueprint with the given name
* Will locate to the Image Builder page and search for the blueprint first
* If the blueprint is not found, it will fail gracefully
* @param page - the page object
* @param blueprintName - the name of the blueprint to delete
*/
export const deleteBlueprint = async (page: Page, blueprintName: string) => {
// Since new browser is opened during the BP cleanup, we need to call the popup closer again
await closePopupsIfExist(page);
await test.step(
'Delete the blueprint with name: ' + blueprintName,
async () => {
// Locate back to the Image Builder page every time because the test can fail at any stage
await navigateToLandingPage(page);
const frame = await ibFrame(page);
await frame
.getByRole('textbox', { name: 'Search input' })
.fill(blueprintName);
// Check if no blueprints found -> that means no blueprint was created -> fail gracefully and do not raise error
try {
await expect(
frame.getByRole('heading', { name: 'No blueprints found' }),
).toBeVisible({ timeout: 5_000 }); // Shorter timeout to avoid hanging uncessarily
return; // Fail gracefully, no blueprint to delete
// eslint-disable-next-line @typescript-eslint/no-unused-vars
} catch (error) {
// If the No BP heading was not found, it means the blueprint (possibly) was created -> continue with deletion
}
// the clickable blueprint cards are a bit awkward, so use the
// button's id instead
await frame.locator(`button[id="${blueprintName}"]`).click();
await frame.getByRole('button', { name: 'Menu toggle' }).click();
await frame.getByRole('menuitem', { name: 'Delete blueprint' }).click();
await frame.getByRole('button', { name: 'Delete' }).click();
},
{ box: true },
);
};
/**
* Export the blueprint
* This function executes only on the hosted service
* @param page - the page object
*/
export const exportBlueprint = async (page: Page, blueprintName: string) => {
if (isHosted()) {
await page.getByRole('button', { name: 'Menu toggle' }).click();
const downloadPromise = page.waitForEvent('download');
await page
.getByRole('menuitem', { name: 'Download blueprint (.json)' })
.click();
const download = await downloadPromise;
await download.saveAs('../../downloads/' + blueprintName + '.json');
}
};
/**
* Import the blueprint
* This function executes only on the hosted service
* @param page - the page object
*/
export const importBlueprint = async (
page: Page | FrameLocator,
blueprintName: string,
) => {
if (isHosted()) {
await page.getByRole('button', { name: 'Import' }).click();
const dragBoxSelector = page.getByRole('presentation').first();
await dragBoxSelector
.locator('input[type=file]')
.setInputFiles('../../downloads/' + blueprintName + '.json');
await expect(
page.getByRole('textbox', { name: 'File upload' }),
).not.toBeEmpty();
await page.getByRole('button', { name: 'Review and Finish' }).click();
}
};

314
playwright/test.spec.ts Normal file
View file

@ -0,0 +1,314 @@
import { readFileSync } from 'node:fs';
import TOML from '@ltd/j-toml';
import { expect, test } from '@playwright/test';
import { v4 as uuidv4 } from 'uuid';
import { closePopupsIfExist, isHosted } from './helpers/helpers';
import { ensureAuthenticated } from './helpers/login';
import { ibFrame, navigateToLandingPage } from './helpers/navHelpers';
test.describe.serial('test', () => {
const blueprintName = uuidv4();
test('create blueprint', async ({ page }) => {
await ensureAuthenticated(page);
await closePopupsIfExist(page);
// Navigate to IB landing page and get the frame
await navigateToLandingPage(page);
const frame = await ibFrame(page);
frame.getByRole('heading', { name: 'Images About image builder' });
frame.getByRole('heading', { name: 'Blueprints' });
await frame.getByTestId('blueprints-create-button').click();
frame.getByRole('heading', { name: 'Image output' });
await frame
.getByRole('checkbox', { name: /Virtualization guest image/i })
.click();
await frame.getByRole('button', { name: 'Next', exact: true }).click();
if (isHosted()) {
frame.getByRole('heading', {
name: 'Register systems using this image',
});
await page.getByRole('radio', { name: /Register later/i }).click();
await frame.getByRole('button', { name: 'Next', exact: true }).click();
}
frame.getByRole('heading', { name: 'Compliance' });
await frame.getByRole('button', { name: 'Next', exact: true }).click();
frame.getByRole('heading', { name: 'File system configuration' });
await frame.getByRole('button', { name: 'Next', exact: true }).click();
if (isHosted()) {
frame.getByRole('heading', { name: 'Repository snapshot' });
await frame.getByRole('button', { name: 'Next', exact: true }).click();
frame.getByRole('heading', { name: 'Custom repositories' });
await frame.getByRole('button', { name: 'Next', exact: true }).click();
}
frame.getByRole('heading', { name: 'Additional packages' });
await frame.getByRole('button', { name: 'Next', exact: true }).click();
frame.getByRole('heading', { name: 'Users' });
await frame.getByRole('button', { name: 'Next', exact: true }).click();
frame.getByRole('heading', { name: 'Timezone' });
await frame.getByRole('button', { name: 'Next', exact: true }).click();
frame.getByRole('heading', { name: 'Locale' });
await frame.getByRole('button', { name: 'Next', exact: true }).click();
frame.getByRole('heading', { name: 'Hostname' });
await frame.getByRole('button', { name: 'Next', exact: true }).click();
frame.getByRole('heading', { name: 'Kernel' });
await frame.getByRole('button', { name: 'Next', exact: true }).click();
frame.getByRole('heading', { name: 'Firewall' });
await frame.getByRole('button', { name: 'Next', exact: true }).click();
frame.getByRole('heading', { name: 'Systemd services' });
await frame.getByRole('button', { name: 'Next', exact: true }).click();
if (isHosted()) {
frame.getByRole('heading', { name: 'Ansible Automation Platform' });
await frame.getByRole('button', { name: 'Next', exact: true }).click();
}
if (isHosted()) {
frame.getByRole('heading', { name: 'First boot configuration' });
await frame.getByRole('button', { name: 'Next', exact: true }).click();
}
frame.getByRole('heading', { name: 'Details' });
await frame.getByTestId('blueprint').fill(blueprintName);
await expect(frame.getByTestId('blueprint')).toHaveValue(blueprintName);
await frame.getByRole('button', { name: 'Next', exact: true }).click();
await frame.getByRole('button', { name: 'Create blueprint' }).click();
await frame.getByTestId('close-button-saveandbuild-modal').click();
await frame.getByRole('button', { name: 'Create blueprint' }).click();
await expect(
frame.locator('.pf-v6-c-card__title-text').getByText(
// if the name is too long, the blueprint card will have a truncated name.
blueprintName.length > 24
? blueprintName.slice(0, 24) + '...'
: blueprintName,
),
).toBeVisible();
});
test('edit blueprint', async ({ page }) => {
await ensureAuthenticated(page);
await closePopupsIfExist(page);
// package searching is really slow the first time in cockpit
if (!isHosted()) {
test.setTimeout(300000);
}
// Navigate to IB landing page and get the frame
await navigateToLandingPage(page);
const frame = await ibFrame(page);
await frame
.getByRole('textbox', { name: 'Search input' })
.fill(blueprintName);
// the clickable blueprint cards are a bit awkward, so use the
// button's id instead
await frame.locator(`button[id="${blueprintName}"]`).click();
await frame.getByRole('button', { name: 'Edit blueprint' }).click();
await frame.getByRole('button', { name: 'Additional packages' }).click();
await frame
.getByTestId('packages-search-input')
.locator('input')
.fill('osbuild-composer');
frame.getByTestId('packages-table').getByText('Searching');
frame.getByRole('gridcell', { name: 'osbuild-composer' }).first();
await frame.getByRole('checkbox', { name: 'Select row 0' }).check();
await frame.getByRole('button', { name: 'Review and finish' }).click();
await frame.getByRole('button', { name: 'About packages' }).click();
frame.getByRole('gridcell', { name: 'osbuild-composer' });
await frame.getByRole('button', { name: 'Close', exact: true }).click();
await frame
.getByRole('button', { name: 'Save changes to blueprint' })
.click();
await frame.getByRole('button', { name: 'Edit blueprint' }).click();
await frame.getByRole('button', { name: 'About packages' }).click();
frame.getByRole('gridcell', { name: 'osbuild-composer' });
await frame.getByRole('button', { name: 'Close', exact: true }).click();
await frame.getByRole('button', { name: 'Cancel', exact: true }).click();
frame.getByRole('heading', { name: 'All images' });
});
test('build blueprint', async ({ page }) => {
await ensureAuthenticated(page);
await closePopupsIfExist(page);
// Navigate to IB landing page and get the frame
await navigateToLandingPage(page);
const frame = await ibFrame(page);
await frame
.getByRole('textbox', { name: 'Search input' })
.fill(blueprintName);
// the clickable blueprint cards are a bit awkward, so use the
// button's id instead
await frame.locator(`button[id="${blueprintName}"]`).click();
await frame.getByTestId('blueprint-build-image-menu-option').click();
// make sure the image is present
await frame
.getByTestId('images-table')
.getByRole('button', { name: 'Details' })
.click();
frame.getByText('Build Information');
});
test('delete blueprint', async ({ page }) => {
await ensureAuthenticated(page);
await closePopupsIfExist(page);
// Navigate to IB landing page and get the frame
await navigateToLandingPage(page);
const frame = await ibFrame(page);
await frame
.getByRole('textbox', { name: 'Search input' })
.fill(blueprintName);
// the clickable blueprint cards are a bit awkward, so use the
// button's id instead
await frame.locator(`button[id="${blueprintName}"]`).click();
await frame.getByRole('button', { name: /blueprint menu toggle/i }).click();
await frame.getByRole('menuitem', { name: 'Delete blueprint' }).click();
await frame.getByRole('button', { name: 'Delete' }).click();
});
test('cockpit worker config', async ({ page }) => {
if (isHosted()) {
return;
}
await ensureAuthenticated(page);
await closePopupsIfExist(page);
// Navigate to IB landing page and get the frame
await navigateToLandingPage(page);
await page.goto('/cockpit-image-builder');
const frame = ibFrame(page);
const header = frame.getByText('Configure AWS Uploads');
if (!(await header.isVisible())) {
await frame
.getByRole('button', { name: 'Configure Cloud Providers' })
.click();
await expect(header).toBeVisible();
}
const bucket = 'cockpit-ib-playwright-bucket';
const credentials = '/test/credentials';
const switchInput = frame.locator('#aws-config-switch');
await expect(switchInput).toBeVisible();
// introduce a wait time, since it takes some time to load the
// worker config file.
await page.waitForTimeout(1000);
// If this test fails for any reason, the config should already be loaded
// and visible on the retury. If it is go back to the landing page
if (await switchInput.isChecked()) {
await frame.getByRole('button', { name: 'Cancel' }).click();
await expect(
frame.getByRole('heading', { name: 'All images' }),
).toBeVisible();
} else {
const switchToggle = frame.locator('.pf-v6-c-switch');
await switchToggle.click();
await frame
.getByPlaceholder('AWS bucket')
// this doesn't need to exist, we're just testing that
// the form works as expected
.fill(bucket);
await frame.getByPlaceholder('Path to AWS credentials').fill(credentials);
await frame.getByRole('button', { name: 'Submit' }).click();
await expect(
frame.getByRole('heading', { name: 'All images' }),
).toBeVisible();
}
await frame
.getByRole('button', { name: 'Configure Cloud Providers' })
.click();
await expect(header).toBeVisible();
// introduce a wait time, since it takes some time to load the
// worker config file.
await page.waitForTimeout(1500);
await expect(frame.locator('#aws-config-switch')).toBeChecked();
await expect(frame.getByPlaceholder('AWS bucket')).toHaveValue(bucket);
await expect(frame.getByPlaceholder('Path to AWS credentials')).toHaveValue(
credentials,
);
await frame.getByRole('button', { name: 'Cancel' }).click();
const config = readFileSync('/etc/osbuild-worker/osbuild-worker.toml');
// this is for testing, the field `aws` should exist
// eslint-disable-next-line
const parsed = TOML.parse(config) as any;
expect(parsed.aws?.bucket).toBe(bucket);
expect(parsed.aws?.credentials).toBe(credentials);
});
const cockpitBlueprintname = uuidv4();
test('cockpit cloud upload', async ({ page }) => {
if (isHosted()) {
return;
}
await ensureAuthenticated(page);
await closePopupsIfExist(page);
// Navigate to IB landing page and get the frame
await navigateToLandingPage(page);
await page.goto('/cockpit-image-builder');
const frame = ibFrame(page);
frame.getByRole('heading', { name: 'Images About image builder' });
frame.getByRole('heading', { name: 'Blueprints' });
await frame.getByTestId('blueprints-create-button').click();
frame.getByRole('heading', { name: 'Image output' });
// the first card should be the AWS card
await frame.locator('.pf-v6-c-card').first().click();
await frame.getByRole('button', { name: 'Next', exact: true }).click();
await frame.getByRole('button', { name: 'Next', exact: true }).click();
await frame.getByRole('button', { name: 'Review and finish' }).click();
await frame.getByRole('button', { name: 'Back', exact: true }).click();
frame.getByRole('heading', { name: 'Details' });
await frame.getByTestId('blueprint').fill(cockpitBlueprintname);
await expect(frame.getByTestId('blueprint')).toHaveValue(
cockpitBlueprintname,
);
await frame.getByRole('button', { name: 'Next', exact: true }).click();
await frame.getByRole('button', { name: 'Create blueprint' }).click();
await frame.getByTestId('close-button-saveandbuild-modal').click();
await frame.getByRole('button', { name: 'Create blueprint' }).click();
await frame
.getByRole('textbox', { name: 'Search input' })
.fill(cockpitBlueprintname);
// the clickable blueprint cards are a bit awkward, so use the
// button's id instead
await frame.locator(`button[id="${cockpitBlueprintname}"]`).click();
await frame.getByTestId('blueprint-build-image-menu-option').click();
// make sure the image is present
await frame
.getByTestId('images-table')
.getByRole('button', { name: 'Details' })
.click();
frame.getByText('Build Information');
});
});

6
playwright_example.env Normal file
View file

@ -0,0 +1,6 @@
PLAYWRIGHT_USER="" # Required
PLAYWRIGHT_PASSWORD="" # Required
BASE_URL="https://stage.foo.redhat.com:1337" # Required
CI="" # This is set to true for CI jobs, if checking for CI do !!process.env.CI
TOKEN="" # This is handled programmatically.
PROXY="" # Set this if running directly against stage (not using "yarn local")

View file

@ -1,52 +0,0 @@
#!/bin/bash
# --------------------------------------------
# Export vars for helper scripts to use
# --------------------------------------------
# name of app-sre "application" folder this component lives in; needs to match for quay
export COMPONENT_NAME="image-builder-frontend"
# IMAGE should match the quay repo set by app.yaml in app-interface
export IMAGE="quay.io/cloudservices/image-builder-frontend"
export WORKSPACE=${WORKSPACE:-$APP_ROOT} # if running in jenkins, use the build's workspace
export APP_ROOT=$(pwd)
#16 is the default Node version. Change this to override it.
export NODE_BUILD_VERSION=16
COMMON_BUILDER=https://raw.githubusercontent.com/RedHatInsights/insights-frontend-builder-common/master
# --------------------------------------------
# Options that must be configured by app owner
# --------------------------------------------
export IQE_PLUGINS="image-builder"
export IQE_CJI_TIMEOUT="60m"
export IQE_MARKER_EXPRESSION="ui"
export IQE_SELENIUM="true"
export IQE_ENV="ephemeral"
export IQE_IMAGE_TAG="image-builder"
export RESERVE_DURATION="2h"
# bootstrap bonfire and it's config
CICD_URL=https://raw.githubusercontent.com/RedHatInsights/bonfire/master/cicd
curl -s "$CICD_URL"/bootstrap.sh > .cicd_bootstrap.sh && source .cicd_bootstrap.sh
# # source is preferred to | bash -s in this case to avoid a subshell
source <(curl -sSL $COMMON_BUILDER/src/frontend-build.sh)
# reserve ephemeral namespace
export DEPLOY_FRONTENDS="true"
export EXTRA_DEPLOY_ARGS="provisioning sources content-sources rhsm-api-proxy --set-template-ref rhsm-api-proxy=master"
export APP_NAME="image-builder-crc"
export DEPLOY_TIMEOUT="1200"
export REF_ENV="insights-stage"
source "$CICD_ROOT"/deploy_ephemeral_env.sh
# Run smoke tests using a ClowdJobInvocation (preferred)
# The contents of this script can be found at:
# https://raw.githubusercontent.com/RedHatInsights/bonfire/master/cicd/cji_smoke_test.sh
export COMPONENT_NAME="image-builder"
source "$CICD_ROOT"/cji_smoke_test.sh
# Post a comment with test run IDs to the PR
# The contents of this script can be found at:
# https://raw.githubusercontent.com/RedHatInsights/bonfire/master/cicd/post_test_results.sh
source "$CICD_ROOT"/post_test_results.sh

11
renovate.json Normal file
View file

@ -0,0 +1,11 @@
{
"extends": [
"github>konflux-ci/mintmaker//config/renovate/renovate.json"
],
"schedule": [
"on Monday after 3am and before 10am"
],
"ignorePaths": [
".pre-commit-config.yaml"
]
}

Binary file not shown.

56
schutzbot/ci_details.sh Executable file
View file

@ -0,0 +1,56 @@
#!/bin/bash
# Dumps details about the instance running the CI job.
PRIMARY_IP=$(ip route get 8.8.8.8 | head -n 1 | cut -d' ' -f7)
EXTERNAL_IP=$(curl --retry 5 -s -4 icanhazip.com)
PTR=$(curl --retry 5 -s -4 icanhazptr.com)
CPUS=$(nproc)
MEM=$(free -m | grep -oP '\d+' | head -n 1)
DISK=$(df --output=size -h / | sed '1d;s/[^0-9]//g')
HOSTNAME=$(uname -n)
USER=$(whoami)
ARCH=$(uname -m)
KERNEL=$(uname -r)
echo -e "\033[0;36m"
cat << EOF
------------------------------------------------------------------------------
CI MACHINE SPECS
------------------------------------------------------------------------------
Hostname: ${HOSTNAME}
User: ${USER}
Primary IP: ${PRIMARY_IP}
External IP: ${EXTERNAL_IP}
Reverse DNS: ${PTR}
CPUs: ${CPUS}
RAM: ${MEM} GB
DISK: ${DISK} GB
ARCH: ${ARCH}
KERNEL: ${KERNEL}
------------------------------------------------------------------------------
EOF
echo -e "\033[0m"
echo "List of system repositories:"
sudo yum repolist -v
echo "------------------------------------------------------------------------------"
echo "List of installed packages:"
rpm -qa | sort
echo "------------------------------------------------------------------------------"
# gcp runners don't use cloud-init and some of the images have python36 installed
if [[ "$RUNNER" != *"gcp"* ]];then
# Ensure cloud-init has completely finished on the instance. This ensures that
# the instance is fully ready to go.
while true; do
if [[ -f /var/lib/cloud/instance/boot-finished ]]; then
break
fi
echo -e "\n🤔 Waiting for cloud-init to finish running..."
sleep 5
done
fi

View file

@ -0,0 +1,25 @@
#!/bin/bash
set -euo pipefail
source /etc/os-release
sudo dnf install -y \
libappstream-glib
if [[ "$ID" == rhel && ${VERSION_ID%.*} == 10 ]]; then
sudo dnf install -y nodejs-npm \
sqlite # node fails to pull this in
elif [[ "$ID" == rhel ]]; then
sudo dnf install -y npm
elif [[ "$ID" == fedora ]]; then
sudo dnf install -y \
nodejs-npm \
sqlite \
gettext
fi
npm ci
make rpm
sudo dnf install -y rpmbuild/RPMS/noarch/*rpm

8
schutzbot/playwright.fmf Normal file
View file

@ -0,0 +1,8 @@
summary: run playwright tests
test: ./playwright_tests.sh
require:
- cockpit-image-builder
- podman
- nodejs
- nodejs-npm
duration: 30m

89
schutzbot/playwright_tests.sh Executable file
View file

@ -0,0 +1,89 @@
#!/bin/bash
set -euo pipefail
TMT_SOURCE_DIR=${TMT_SOURCE_DIR:-}
if [ -n "$TMT_SOURCE_DIR" ]; then
# Move to the directory with sources
cd "${TMT_SOURCE_DIR}/cockpit-image-builder"
npm ci
elif [ "${CI:-}" != "true" ]; then
# packit drops us into the schutzbot directory
cd ../
npm ci
fi
sudo systemctl enable --now cockpit.socket
sudo useradd admin -p "$(openssl passwd foobar)"
sudo usermod -aG wheel admin
echo "admin ALL=(ALL:ALL) NOPASSWD: ALL" | sudo tee "/etc/sudoers.d/admin-nopasswd"
function upload_artifacts {
if [ -n "${TMT_TEST_DATA:-}" ]; then
mv playwright-report "$TMT_TEST_DATA"/playwright-report
else
USER="$(whoami)"
sudo chown -R "$USER:$USER" playwright-report
mv playwright-report /tmp/artifacts/
fi
}
trap upload_artifacts EXIT
# to make package search work, the cdn repositories need to be replaced
# with the nightly repositories
sudo mkdir -p /etc/osbuild-composer/repositories
cat <<EOF | sudo tee -a /etc/osbuild-composer/repositories/rhel-9.json
{
"x86_64": [
{
"name": "baseos",
"baseurl": "http://download.devel.redhat.com/rhel-9/nightly/RHEL-9/latest-RHEL-9/compose/BaseOS/x86_64/os/",
"check_gpg": false
},
{
"name": "appstream",
"baseurl": "http://download.devel.redhat.com/rhel-9/nightly/RHEL-9/latest-RHEL-9/compose/AppStream/x86_64/os/",
"check_gpg": false
}
]
}
EOF
cat <<EOF | sudo tee -a /etc/osbuild-composer/repositories/rhel-10.json
{
"x86_64": [
{
"name": "baseos",
"baseurl": "http://download.devel.redhat.com/rhel-10/nightly/RHEL-10/latest-RHEL-10/compose/BaseOS/x86_64/os/",
"check_gpg": false
},
{
"name": "appstream",
"baseurl": "http://download.devel.redhat.com/rhel-10/nightly/RHEL-10/latest-RHEL-10/compose/AppStream/x86_64/os/",
"check_gpg": false
}
]
}
EOF
sudo systemctl enable --now osbuild-composer.socket osbuild-local-worker.socket
sudo systemctl start osbuild-worker@1
sudo podman run \
-e "PLAYWRIGHT_HTML_OPEN=never" \
-e "CI=true" \
-e "PLAYWRIGHT_USER=admin" \
-e "PLAYWRIGHT_PASSWORD=foobar" \
-e "CURRENTS_PROJECT_ID=${CURRENTS_PROJECT_ID:-}" \
-e "CURRENTS_RECORD_KEY=${CURRENTS_RECORD_KEY:-}" \
--net=host \
-v "$PWD:/tests" \
-v '/etc:/etc' \
-v '/etc/os-release:/etc/os-release' \
--privileged \
--rm \
--init \
mcr.microsoft.com/playwright:v1.51.1-noble \
/bin/sh -c "cd tests && npx -y playwright@1.51.1 test"

7
schutzbot/save_journal.sh Executable file
View file

@ -0,0 +1,7 @@
#!/bin/bash
# use tee, otherwise shellcheck complains
sudo journalctl --boot | tee journal-log >/dev/null
# copy journal to artifacts folder which is then uploaded to secure S3 location
cp journal-log "${ARTIFACTS:-/tmp/artifacts}"

View file

@ -1,30 +0,0 @@
#!/bin/bash
set -euxo pipefail
SONAR_SCANNER_CLI_VERSION=${SONAR_SCANNER_CLI_VERSION:-4.6.2.2472}
export SONAR_SCANNER_OPTS="-Djavax.net.ssl.trustStore=schutzbot/RH-IT-Root-CA.keystore -Djavax.net.ssl.trustStorePassword=$KEYSTORE_PASS"
sudo dnf install -y unzip nodejs
curl "https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-$SONAR_SCANNER_CLI_VERSION-linux.zip" -o sonar-scanner-cli.zip
unzip -q sonar-scanner-cli.zip
SONAR_SCANNER_CMD="sonar-scanner-$SONAR_SCANNER_CLI_VERSION-linux/bin/sonar-scanner"
SCANNER_OPTS="-Dsonar.projectKey=osbuild:image-builder-frontend -Dsonar.sources=. -Dsonar.host.url=https://sonarqube.corp.redhat.com -Dsonar.login=$SONAR_SCANNER_TOKEN"
# add options for branch analysis if not running on main
if [ "$CI_COMMIT_BRANCH" != "main" ];then
SCANNER_OPTS="$SCANNER_OPTS -Dsonar.pullrequest.branch=$CI_COMMIT_BRANCH -Dsonar.pullrequest.key=$CI_COMMIT_SHA -Dsonar.pullrequest.base=main"
fi
# run the sonar-scanner
eval "$SONAR_SCANNER_CMD $SCANNER_OPTS"
SONARQUBE_URL="https://sonarqube.corp.redhat.com/dashboard?id=osbuild%3Aimage-builder-frontend&pullRequest=$CI_COMMIT_SHA"
# Report back to GitHub
curl \
-u "${SCHUTZBOT_LOGIN}" \
-X POST \
-H "Accept: application/vnd.github.v3+json" \
"https://api.github.com/repos/RedHatInsights/image-builder-frontend/statuses/${CI_COMMIT_SHA}" \
-d '{"state":"success", "description": "SonarQube scan sent for analysis", "context": "SonarQube", "target_url": "'"${SONARQUBE_URL}"'"}'

Some files were not shown because too many files have changed in this diff Show more