-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ZKUI-396 // Veeam Configuration Summary Page
Update Veeam UI elements and package dependencies Update dependencies and fix minor code issues Add Veeam constants and update Veeam configuration UI
- Loading branch information
1 parent
6b54d20
commit 242a280
Showing
10 changed files
with
778 additions
and
154 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
export const BUCKET_TAG_USECASE = 'X-Scality-Usecase'; | ||
export const VEEAMVERSION11 = 'Veeam 11'; | ||
export const VEEAMVERSION12 = 'Veeam 12'; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
import VeeamTable from './VeeamTable'; | ||
import VeeamConfiguration from './VeeamConfiguration'; | ||
import { VeeamSummary } from './VeeamSummary'; | ||
import { Stepper } from '@scality/core-ui'; | ||
|
||
export const VEEAM_STEPS = [ | ||
{ | ||
label: 'Configuration', | ||
Component: VeeamConfiguration, | ||
}, | ||
{ | ||
label: 'Repository Table', | ||
Component: VeeamTable, | ||
}, | ||
{ | ||
label: 'Repository Summary', | ||
Component: VeeamSummary, | ||
}, | ||
] as const; | ||
|
||
export enum VeeamStepsIndexes { | ||
Configuration, | ||
Table, | ||
Summary, | ||
} | ||
|
||
export default function VeeamSteppers() { | ||
return ( | ||
<div style={{ paddingTop: '2rem', paddingBottom: '2rem' }}> | ||
<Stepper steps={VEEAM_STEPS} /> | ||
</div> | ||
); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,159 @@ | ||
import { Banner, Form, Icon, Text } from '@scality/core-ui'; | ||
import { Button, CopyButton } from '@scality/core-ui/dist/next'; | ||
import { Stack } from '@scality/core-ui/dist/spacing'; | ||
import { spacing } from '@scality/core-ui/dist/style/theme'; | ||
import { useHistory } from 'react-router-dom'; | ||
import { Clipboard } from '../Clipboard'; | ||
import { HideCredential } from '../Hide'; | ||
import { ModalBody } from '../Modal'; | ||
import Table, * as T from '../TableKeyValue'; | ||
|
||
type VeeamSummaryProps = Record<string, never>; | ||
|
||
export const VeeamSummary = (_: VeeamSummaryProps) => { | ||
const history = useHistory(); | ||
|
||
return ( | ||
<Form | ||
layout={{ | ||
title: 'Veeam Repository preparation summary', | ||
kind: 'page', | ||
}} | ||
rightActions={ | ||
<Stack gap="r16"> | ||
<p></p> | ||
<Button | ||
variant="primary" | ||
label={'Continue'} | ||
onClick={() => { | ||
history.push('/'); | ||
}} | ||
/> | ||
</Stack> | ||
} | ||
> | ||
<ModalBody> | ||
<Text isEmphazed> | ||
The following configuration has been applied in order to make ARTESCA | ||
ready for Veeam. <br /> | ||
You can now use this information to set up the Veeam Server. | ||
</Text>{' '} | ||
<CopyButton | ||
textToCopy={`Username\tveeam\nAccess key ID\tJLVWC9DX45XLY0K9PVEX\nSecret Access key\tEPJGOdLwTK`} | ||
label="all" | ||
variant="outline" | ||
tooltip={{ | ||
overlay: | ||
'Copy all the information below and paste it in a safe place. You will not be able to retrieve the Secret Access key afterwards.', | ||
placement: 'right', | ||
}} | ||
size="inline" | ||
/> | ||
<br /> | ||
<Table style={{ marginTop: spacing.sp16 }}> | ||
<T.Body> | ||
<T.Row> | ||
<T.Key> Account name </T.Key> | ||
<T.Value> veeam </T.Value> | ||
</T.Row> | ||
<T.Row> | ||
<T.Key> Certificate </T.Key> | ||
<T.Value> | ||
<Button | ||
label="Artesca-CA Root" | ||
variant="outline" | ||
size="inline" | ||
icon={<Icon name="Download" />} | ||
tooltip={{ | ||
overlay: | ||
'Download the Artesca-CA root certificate and add it to your Veeam Server.', | ||
placement: 'right', | ||
}} | ||
></Button>{' '} | ||
</T.Value> | ||
</T.Row> | ||
<T.Row> | ||
<T.Key> Service point </T.Key> | ||
<T.Value> https://s3.pod-choco.local </T.Value> | ||
<T.ExtraCell> | ||
{' '} | ||
<Clipboard text={'https://s3.pod-choco.local'} />{' '} | ||
</T.ExtraCell> | ||
</T.Row> | ||
<T.Row> | ||
<T.Key> Region </T.Key> | ||
<T.Value> us-east-1 </T.Value> | ||
<T.ExtraCell> | ||
{' '} | ||
<Clipboard text={'us-east-1'} />{' '} | ||
</T.ExtraCell> | ||
</T.Row> | ||
</T.Body> | ||
</Table> | ||
<br /> | ||
<b>Credentials</b> | ||
<br /> | ||
<br /> | ||
<Banner icon={<Icon name="Exclamation-triangle" />} variant="warning"> | ||
The Secret Access key cannot be retrieved afterwards, so make sure to | ||
keep and secure it now. <br /> | ||
You will be able to create new Access keys at any time. | ||
</Banner> | ||
<Table | ||
style={{ | ||
marginTop: spacing.sp16, | ||
}} | ||
> | ||
<T.Body> | ||
<T.Row> | ||
<T.Key> Access key ID </T.Key> | ||
<T.Value>JLVWC9DX45XLY0K9PVEX</T.Value> | ||
<T.ExtraCell> | ||
{' '} | ||
<Clipboard text={'JLVWC9DX45XLY0K9PVEX'} />{' '} | ||
</T.ExtraCell> | ||
</T.Row> | ||
<T.Row> | ||
<T.Key> Secret Access key </T.Key> | ||
<T.Value> | ||
{' '} | ||
<HideCredential credentials={'EPJGOdLwTK'} />{' '} | ||
</T.Value> | ||
<T.ExtraCell> | ||
{' '} | ||
<Clipboard text={'EPJGOdLwTK'} />{' '} | ||
</T.ExtraCell> | ||
</T.Row> | ||
</T.Body> | ||
</Table> | ||
<br /> | ||
<b>Bucket</b> | ||
<br /> | ||
<br /> | ||
<Table> | ||
<T.Body> | ||
<T.Row> | ||
<T.Key> Name </T.Key> | ||
<T.Value> veeam-bucket </T.Value> | ||
<T.ExtraCell> | ||
{' '} | ||
<Clipboard text={'veeam-repository'} />{' '} | ||
</T.ExtraCell> | ||
</T.Row> | ||
<T.Row> | ||
<T.Key> Immutable backup </T.Key> | ||
<T.Value> | ||
Active | ||
<br /> | ||
<Text variant="Smaller" color="textSecondary"> | ||
Make sure to check the "Make recent backups immutable" | ||
checkbox when configuring the bucket in the Veeam Server. | ||
</Text> | ||
</T.Value> | ||
</T.Row> | ||
</T.Body> | ||
</Table> | ||
</ModalBody> | ||
</Form> | ||
); | ||
}; |
Oops, something went wrong.