scaffolder: remove mock editor data

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
This commit is contained in:
Patrik Oldsberg
2022-04-24 17:16:55 +02:00
parent a818ce53a7
commit d989e0c203
2 changed files with 3 additions and 382 deletions
@@ -52,323 +52,14 @@ interface DryRunProviderProps {
children: ReactNode;
}
const fakeResults: DryRunResult[] = [
{
id: 1,
content: [
{
path: 'catalog-info.yaml',
executable: false,
base64Content:
'CmFwaVZlcnNpb246IGJhY2tzdGFnZS5pby92MWFscGhhMQpraW5kOiBDb21wb25lbnQKbWV0YWRhdGE6CiAgbmFtZTogImFzZCIKc3BlYzoKICB0eXBlOiB3ZWJzaXRlCiAgbGlmZWN5Y2xlOiBleHBlcmltZW50YWwKICBvd25lcjogCg==',
},
{
path: 'catalog-info.yaml1',
executable: false,
base64Content:
'CmFwaVZlcnNpb246IGJhY2tzdGFnZS5pby92MWFscGhhMQpraW5kOiBDb21wb25lbnQKbWV0YWRhdGE6CiAgbmFtZTogImFzZCIKc3BlYzoKICB0eXBlOiB3ZWJzaXRlCiAgbGlmZWN5Y2xlOiBleHBlcmltZW50YWwKICBvd25lcjogCg==',
},
{
path: 'catalog-info.yaml2',
executable: false,
base64Content:
'CmFwaVZlcnNpb246IGJhY2tzdGFnZS5pby92MWFscGhhMQpraW5kOiBDb21wb25lbnQKbWV0YWRhdGE6CiAgbmFtZTogImFzZCIKc3BlYzoKICB0eXBlOiB3ZWJzaXRlCiAgbGlmZWN5Y2xlOiBleHBlcmltZW50YWwKICBvd25lcjogCg==',
},
{
path: 'catalog-info.yaml3',
executable: false,
base64Content:
'CmFwaVZlcnNpb246IGJhY2tzdGFnZS5pby92MWFscGhhMQpraW5kOiBDb21wb25lbnQKbWV0YWRhdGE6CiAgbmFtZTogImFzZCIKc3BlYzoKICB0eXBlOiB3ZWJzaXRlCiAgbGlmZWN5Y2xlOiBleHBlcmltZW50YWwKICBvd25lcjogCg==',
},
{
path: 'catalog-info.yaml4',
executable: false,
base64Content:
'CmFwaVZlcnNpb246IGJhY2tzdGFnZS5pby92MWFscGhhMQpraW5kOiBDb21wb25lbnQKbWV0YWRhdGE6CiAgbmFtZTogImFzZCIKc3BlYzoKICB0eXBlOiB3ZWJzaXRlCiAgbGlmZWN5Y2xlOiBleHBlcmltZW50YWwKICBvd25lcjogCg==',
},
{
path: 'catalog-info.yaml5',
executable: false,
base64Content:
'CmFwaVZlcnNpb246IGJhY2tzdGFnZS5pby92MWFscGhhMQpraW5kOiBDb21wb25lbnQKbWV0YWRhdGE6CiAgbmFtZTogImFzZCIKc3BlYzoKICB0eXBlOiB3ZWJzaXRlCiAgbGlmZWN5Y2xlOiBleHBlcmltZW50YWwKICBvd25lcjogCg==',
},
{
path: 'catalog-info.yaml6',
executable: false,
base64Content:
'CmFwaVZlcnNpb246IGJhY2tzdGFnZS5pby92MWFscGhhMQpraW5kOiBDb21wb25lbnQKbWV0YWRhdGE6CiAgbmFtZTogImFzZCIKc3BlYzoKICB0eXBlOiB3ZWJzaXRlCiAgbGlmZWN5Y2xlOiBleHBlcmltZW50YWwKICBvd25lcjogCg==',
},
{
path: 'catalog-info.yaml7',
executable: false,
base64Content:
'CmFwaVZlcnNpb246IGJhY2tzdGFnZS5pby92MWFscGhhMQpraW5kOiBDb21wb25lbnQKbWV0YWRhdGE6CiAgbmFtZTogImFzZCIKc3BlYzoKICB0eXBlOiB3ZWJzaXRlCiAgbGlmZWN5Y2xlOiBleHBlcmltZW50YWwKICBvd25lcjogCg==',
},
{
path: 'catalog-info.yaml8',
executable: false,
base64Content:
'CmFwaVZlcnNpb246IGJhY2tzdGFnZS5pby92MWFscGhhMQpraW5kOiBDb21wb25lbnQKbWV0YWRhdGE6CiAgbmFtZTogImFzZCIKc3BlYzoKICB0eXBlOiB3ZWJzaXRlCiAgbGlmZWN5Y2xlOiBleHBlcmltZW50YWwKICBvd25lcjogCg==',
},
{
path: 'catalog-info.yaml9',
executable: false,
base64Content:
'CmFwaVZlcnNpb246IGJhY2tzdGFnZS5pby92MWFscGhhMQpraW5kOiBDb21wb25lbnQKbWV0YWRhdGE6CiAgbmFtZTogImFzZCIKc3BlYzoKICB0eXBlOiB3ZWJzaXRlCiAgbGlmZWN5Y2xlOiBleHBlcmltZW50YWwKICBvd25lcjogCg==',
},
{
path: 'catalog-info.yaml10',
executable: false,
base64Content:
'CmFwaVZlcnNpb246IGJhY2tzdGFnZS5pby92MWFscGhhMQpraW5kOiBDb21wb25lbnQKbWV0YWRhdGE6CiAgbmFtZTogImFzZCIKc3BlYzoKICB0eXBlOiB3ZWJzaXRlCiAgbGlmZWN5Y2xlOiBleHBlcmltZW50YWwKICBvd25lcjogCg==',
},
{
path: 'catalog-info.yaml11',
executable: false,
base64Content:
'CmFwaVZlcnNpb246IGJhY2tzdGFnZS5pby92MWFscGhhMQpraW5kOiBDb21wb25lbnQKbWV0YWRhdGE6CiAgbmFtZTogImFzZCIKc3BlYzoKICB0eXBlOiB3ZWJzaXRlCiAgbGlmZWN5Y2xlOiBleHBlcmltZW50YWwKICBvd25lcjogCg==',
},
{
path: 'catalog-info.yaml12',
executable: false,
base64Content:
'CmFwaVZlcnNpb246IGJhY2tzdGFnZS5pby92MWFscGhhMQpraW5kOiBDb21wb25lbnQKbWV0YWRhdGE6CiAgbmFtZTogImFzZCIKc3BlYzoKICB0eXBlOiB3ZWJzaXRlCiAgbGlmZWN5Y2xlOiBleHBlcmltZW50YWwKICBvd25lcjogCg==',
},
{
path: 'catalog-info.yaml13',
executable: false,
base64Content:
'CmFwaVZlcnNpb246IGJhY2tzdGFnZS5pby92MWFscGhhMQpraW5kOiBDb21wb25lbnQKbWV0YWRhdGE6CiAgbmFtZTogImFzZCIKc3BlYzoKICB0eXBlOiB3ZWJzaXRlCiAgbGlmZWN5Y2xlOiBleHBlcmltZW50YWwKICBvd25lcjogCg==',
},
{
path: 'catalog-info.yaml14',
executable: false,
base64Content:
'CmFwaVZlcnNpb246IGJhY2tzdGFnZS5pby92MWFscGhhMQpraW5kOiBDb21wb25lbnQKbWV0YWRhdGE6CiAgbmFtZTogImFzZCIKc3BlYzoKICB0eXBlOiB3ZWJzaXRlCiAgbGlmZWN5Y2xlOiBleHBlcmltZW50YWwKICBvd25lcjogCg==',
},
],
steps: [
{
id: 'fetch-base',
name: 'Fetch stuff',
action: 'fetch:plain',
},
{
id: 'fetch-base2',
name: 'Fetch stuff',
action: 'fetch:plain',
},
{
id: 'fetch-base3',
name: 'Fetch stuff',
action: 'fetch:plain',
},
{
id: 'fetch-base4',
name: 'Fetch stuff',
action: 'fetch:plain',
},
{
id: 'fetch-base5',
name: 'Fetch stuff',
action: 'fetch:plain',
},
{
id: 'publish',
name: 'Publish Stuff',
action: 'publish:github',
},
{
id: 'register',
name: 'Register Stuff',
action: 'catalog:register',
},
],
log: [
{
message: 'Starting up task with 4 steps',
},
{
stepId: 'fetch-base',
status: 'processing',
message: 'Beginning step Fetch Base',
},
{
stepId: 'fetch-base',
message:
'\u001b[32minfo\u001b[39m: Fetching template content from remote URL {"timestamp":"2022-04-18T11:25:46.888Z"}',
},
{
stepId: 'fetch-base',
message:
'\u001b[32minfo\u001b[39m: Listing files and directories in template {"timestamp":"2022-04-18T11:25:46.889Z"}',
},
{
stepId: 'fetch-base',
message:
'\u001b[32minfo\u001b[39m: Processing 1 template files/directories with input values {"name":"asd","timestamp":"2022-04-18T11:25:46.890Z"}',
},
{
stepId: 'fetch-base',
message:
'\u001b[32minfo\u001b[39m: Writing file catalog-info.yaml to template output path with mode 33188. {"timestamp":"2022-04-18T11:25:46.932Z"}',
},
{
stepId: 'fetch-base',
message:
'\u001b[32minfo\u001b[39m: Template result written to /var/folders/ll/hcvgyy216t70dkjxwkk7csn00000gn/T/dry-run-5c024be8-8a08-4a10-a502-b43c64ed9061 {"timestamp":"2022-04-18T11:25:46.936Z"}',
},
{
stepId: 'fetch-base',
message:
'\u001b[32minfo\u001b[39m: Template result written to /var/folders/ll/hcvgyy216t70dkjxwkk7csn00000gn/T/dry-run-5c024be8-8a08-4a10-a502-b43c64ed9061 {"timestamp":"2022-04-18T11:25:46.936Z"}',
},
{
stepId: 'fetch-base',
message:
'\u001b[32minfo\u001b[39m: Template result written to /var/folders/ll/hcvgyy216t70dkjxwkk7csn00000gn/T/dry-run-5c024be8-8a08-4a10-a502-b43c64ed9061 {"timestamp":"2022-04-18T11:25:46.936Z"}',
},
{
stepId: 'fetch-base',
message:
'\u001b[32minfo\u001b[39m: Template result written to /var/folders/ll/hcvgyy216t70dkjxwkk7csn00000gn/T/dry-run-5c024be8-8a08-4a10-a502-b43c64ed9061 {"timestamp":"2022-04-18T11:25:46.936Z"}',
},
{
stepId: 'fetch-base',
message:
'\u001b[32minfo\u001b[39m: Template result written to /var/folders/ll/hcvgyy216t70dkjxwkk7csn00000gn/T/dry-run-5c024be8-8a08-4a10-a502-b43c64ed9061 {"timestamp":"2022-04-18T11:25:46.936Z"}',
},
{
stepId: 'fetch-base',
message:
'\u001b[32minfo\u001b[39m: Template result written to /var/folders/ll/hcvgyy216t70dkjxwkk7csn00000gn/T/dry-run-5c024be8-8a08-4a10-a502-b43c64ed9061 {"timestamp":"2022-04-18T11:25:46.936Z"}',
},
{
stepId: 'fetch-base',
message:
'\u001b[32minfo\u001b[39m: Template result written to /var/folders/ll/hcvgyy216t70dkjxwkk7csn00000gn/T/dry-run-5c024be8-8a08-4a10-a502-b43c64ed9061 {"timestamp":"2022-04-18T11:25:46.936Z"}',
},
{
stepId: 'fetch-base',
message:
'\u001b[32minfo\u001b[39m: Template result written to /var/folders/ll/hcvgyy216t70dkjxwkk7csn00000gn/T/dry-run-5c024be8-8a08-4a10-a502-b43c64ed9061 {"timestamp":"2022-04-18T11:25:46.936Z"}',
},
{
stepId: 'fetch-base',
message:
'\u001b[32minfo\u001b[39m: Template result written to /var/folders/ll/hcvgyy216t70dkjxwkk7csn00000gn/T/dry-run-5c024be8-8a08-4a10-a502-b43c64ed9061 {"timestamp":"2022-04-18T11:25:46.936Z"}',
},
{
stepId: 'fetch-base',
message:
'\u001b[32minfo\u001b[39m: Template result written to /var/folders/ll/hcvgyy216t70dkjxwkk7csn00000gn/T/dry-run-5c024be8-8a08-4a10-a502-b43c64ed9061 {"timestamp":"2022-04-18T11:25:46.936Z"}',
},
{
stepId: 'fetch-base',
message:
'\u001b[32minfo\u001b[39m: Template result written to /var/folders/ll/hcvgyy216t70dkjxwkk7csn00000gn/T/dry-run-5c024be8-8a08-4a10-a502-b43c64ed9061 {"timestamp":"2022-04-18T11:25:46.936Z"}',
},
{
stepId: 'fetch-base',
message:
'\u001b[32minfo\u001b[39m: Template result written to /var/folders/ll/hcvgyy216t70dkjxwkk7csn00000gn/T/dry-run-5c024be8-8a08-4a10-a502-b43c64ed9061 {"timestamp":"2022-04-18T11:25:46.936Z"}',
},
{
stepId: 'fetch-base',
message:
'\u001b[32minfo\u001b[39m: Template result written to /var/folders/ll/hcvgyy216t70dkjxwkk7csn00000gn/T/dry-run-5c024be8-8a08-4a10-a502-b43c64ed9061 {"timestamp":"2022-04-18T11:25:46.936Z"}',
},
{
stepId: 'fetch-base',
message:
'\u001b[32minfo\u001b[39m: Template result written to /var/folders/ll/hcvgyy216t70dkjxwkk7csn00000gn/T/dry-run-5c024be8-8a08-4a10-a502-b43c64ed9061 {"timestamp":"2022-04-18T11:25:46.936Z"}',
},
{
stepId: 'fetch-base',
message:
'\u001b[32minfo\u001b[39m: Template result written to /var/folders/ll/hcvgyy216t70dkjxwkk7csn00000gn/T/dry-run-5c024be8-8a08-4a10-a502-b43c64ed9061 {"timestamp":"2022-04-18T11:25:46.936Z"}',
},
{
stepId: 'fetch-base',
message:
'\u001b[32minfo\u001b[39m: Template result written to /var/folders/ll/hcvgyy216t70dkjxwkk7csn00000gn/T/dry-run-5c024be8-8a08-4a10-a502-b43c64ed9061 {"timestamp":"2022-04-18T11:25:46.936Z"}',
},
{
stepId: 'fetch-base',
status: 'completed',
message: 'Finished step Fetch Base',
},
{
stepId: 'fetch-base2',
status: 'completed',
message: 'Finished step Fetch Base',
},
{
stepId: 'fetch-base3',
status: 'completed',
message: 'Finished step Fetch Base',
},
{
stepId: 'fetch-base4',
status: 'completed',
message: 'Finished step Fetch Base',
},
{
stepId: 'fetch-base5',
status: 'completed',
message: 'Finished step Fetch Base',
},
{
stepId: 'publish',
status: 'processing',
message: 'Beginning step Publish',
},
{
stepId: 'publish',
status: 'completed',
message: 'Skipping because publish:bitbucket does not support dry-run',
},
{
stepId: 'register',
status: 'processing',
message: 'Beginning step Register',
},
{
stepId: 'register',
status: 'completed',
message: 'Skipping because catalog:register does not support dry-run',
},
],
output: {
links: [
{
title: 'Repository',
url: '<example>',
},
{
title: 'Open in catalog',
icon: 'catalog',
entityRef: 'entity',
},
],
},
},
];
export function DryRunProvider(props: DryRunProviderProps) {
const scaffolderApi = useApi(scaffolderApiRef);
const [state, setState] = useState<
Pick<DryRun, 'results' | 'selectedResult'>
>({
results: [
{ ...fakeResults[0], id: 1 },
{ ...fakeResults[0], id: 2 },
{ ...fakeResults[0], id: 3 },
{ ...fakeResults[0], id: 4 },
{ ...fakeResults[0], id: 5 },
],
selectedResult: fakeResults[0],
results: [],
selectedResult: undefined,
});
const idRef = useRef(1);
@@ -23,7 +23,6 @@ import { EditorIntro } from './EditorIntro';
import { TemplateEditor } from './TemplateEditor';
import { TemplateFormEditor } from './TemplateFormEditor';
import { FieldExtensionOptions } from '../../extensions';
import { MockFileSystemAccess } from '../../lib/filesystem/MockFileSystemAccess';
type Selection =
| {
@@ -40,76 +39,7 @@ interface TemplateEditorPageProps {
}
export function TemplateEditorPage(props: TemplateEditorPageProps) {
const [selection, setSelection] = useState<Selection>({
type: 'local',
directory: MockFileSystemAccess.createMockDirectory({
'template.yaml': `
apiVersion: scaffolder.backstage.io/v1beta3
kind: Template
metadata:
name: bitbucket-demo
spec:
type: service
parameters:
- title: Choose a name and location
required:
- name
- repoUrl
properties:
name:
title: Name
type: string
repoUrl:
title: Repository Location
type: string
ui:field: RepoUrlPicker
ui:options:
allowedHosts:
- github.com
steps:
- id: fetch-base
name: Fetch Base
action: fetch:template
input:
url: ./template
values:
name: \${{ parameters.name }}
- id: publish
name: Publish
action: publish:bitbucket
input:
description: This is \${{ parameters.name }}
repoUrl: \${{ parameters.repoUrl }}
- id: register
name: Register
action: catalog:register
input:
repoContentsUrl: \${{ steps.publish.output.repoContentsUrl }}
catalogInfoPath: '/catalog-info.yaml'
output:
links:
- title: Repository
url: \${{ steps.publish.output.remoteUrl }}
- title: Open in catalog
icon: catalog
entityRef: \${{ steps.register.output.entityRef }}
`,
'template/catalog-info.yaml': `
apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
name: \${{values.name | dump}}
spec:
type: website
lifecycle: experimental
owner: \${{values.owner | dump}}
`,
}),
});
const [selection, setSelection] = useState<Selection>();
let content: JSX.Element | null = null;
if (selection?.type === 'local') {