diff --git a/plugins/scaffolder/src/components/fields/RepoUrlPicker/AzureRepoPicker.tsx b/plugins/scaffolder/src/components/fields/RepoUrlPicker/AzureRepoPicker.tsx
index a88120e480..c001e8f97f 100644
--- a/plugins/scaffolder/src/components/fields/RepoUrlPicker/AzureRepoPicker.tsx
+++ b/plugins/scaffolder/src/components/fields/RepoUrlPicker/AzureRepoPicker.tsx
@@ -24,15 +24,27 @@ import { Select, SelectItem } from '@backstage/core-components';
export const AzureRepoPicker = (props: {
allowedOrganizations?: string[];
+ allowedOwners?: string[];
rawErrors: string[];
state: RepoUrlPickerState;
onChange: (state: RepoUrlPickerState) => void;
}) => {
- const { allowedOrganizations = [], rawErrors, state, onChange } = props;
+ const {
+ allowedOrganizations = [],
+ allowedOwners = [],
+ rawErrors,
+ state,
+ onChange,
+ } = props;
+
const organizationItems: SelectItem[] = allowedOrganizations
? allowedOrganizations.map(i => ({ label: i, value: i }))
: [{ label: 'Loading...', value: 'loading' }];
+ const ownerItems: SelectItem[] = allowedOwners
+ ? allowedOwners.map(i => ({ label: i, value: i }))
+ : [{ label: 'Loading...', value: 'loading' }];
+
const { organization, owner } = state;
return (
@@ -72,12 +84,27 @@ export const AzureRepoPicker = (props: {
required
error={rawErrors?.length > 0 && !owner}
>
- Owner
- onChange({ owner: e.target.value })}
- value={owner}
- />
+ {allowedOwners?.length ? (
+