Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -2553,6 +2553,11 @@
{% else %}
"enableOldUIForEmailProvider": false,
{% endif %}
{% if console.ui.enable_provisioning_connection_v2 is defined %}
"enableProvisioningConnectionV2": {{ console.ui.enable_provisioning_connection_v2 }},
{% else %}
"enableProvisioningConnectionV2": false,
{% endif %}
{% if console.ui.enable_custom_sms_templates is defined %}
"enableCustomSmsTemplates": {{ console.ui.enable_custom_sms_templates }},
{% else %}
Expand Down
1 change: 1 addition & 0 deletions apps/console/src/public/deployment.config.json
Original file line number Diff line number Diff line change
Expand Up @@ -334,6 +334,7 @@
"enableIdentityClaims": true,
"enableLegacySessionBoundTokenBehaviour": false,
"enableOldUIForEmailProvider": false,
"enableProvisioningConnectionV2": true,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

# First, let's look at the file around line 337
cat -n apps/console/src/public/deployment.config.json | sed -n '330,345p'

Repository: wso2/identity-apps

Length of output: 769


🏁 Script executed:

# Search for all occurrences of enableProvisioningConnectionV2 in the codebase
rg "enableProvisioningConnectionV2" -A 2 -B 2

Repository: wso2/identity-apps

Length of output: 5371


🏁 Script executed:

# Check if there are other deployment config files with different values
fd "deployment.config" --type f

Repository: wso2/identity-apps

Length of output: 654


🏁 Script executed:

# Check myaccount public config
cat -n apps/myaccount/src/public/deployment.config.json | sed -n '300,340p' | grep -A 5 -B 5 "enableProvisioningConnectionV2"

Repository: wso2/identity-apps

Length of output: 44


🏁 Script executed:

# Check the template file to see the full context
cat -n apps/console/java/org.wso2.identity.apps.console.server.feature/resources/deployment.config.json.j2 | sed -n '250,290p'

Repository: wso2/identity-apps

Length of output: 2113


🏁 Script executed:

# Search for any documentation or comments about this feature in issue trackers or comments
rg "provisioning.*v2" -i --type md --type txt -B 2 -A 2 | head -50

Repository: wso2/identity-apps

Length of output: 44


🏁 Script executed:

# Search more broadly for myaccount config with enableProvisioningConnectionV2
rg "enableProvisioningConnectionV2" apps/myaccount/

Repository: wso2/identity-apps

Length of output: 44


🏁 Script executed:

# Get more context around the template file setting
cat apps/console/java/org.wso2.identity.apps.console.server.feature/resources/deployment.config.json.j2 | sed -n '150,180p'

Repository: wso2/identity-apps

Length of output: 1408


🏁 Script executed:

# Find the exact line in the template where enableProvisioningConnectionV2 is set
rg -n "enableProvisioningConnectionV2" apps/console/java/org.wso2.identity.apps.console.server.feature/resources/deployment.config.json.j2 -B 2 -A 2

Repository: wso2/identity-apps

Length of output: 446


🏁 Script executed:

# Check if myaccount public config has any provisioning-related settings
cat apps/myaccount/src/public/deployment.config.json | grep -i provision

Repository: wso2/identity-apps

Length of output: 44


🏁 Script executed:

# Look for any git history or recent changes to understand intent
git log --oneline --all -- "*deployment.config.json" | head -20

Repository: wso2/identity-apps

Length of output: 1273


Resolve config inconsistency between public sample and production template defaults.

Line 337 sets enableProvisioningConnectionV2 to true in the public sample config, but the production template (deployment.config.json.j2) defaults this to false when not explicitly configured (lines 2556–2560). Align these defaults to prevent confusion and behavioral differences between sample and production deployments.

🤖 Prompt for AI Agents
In `@apps/console/src/public/deployment.config.json` at line 337, The public
sample config currently sets the boolean flag enableProvisioningConnectionV2 to
true while the production template deployment.config.json.j2 defaults it to
false; update the public sample to match the production default by changing
enableProvisioningConnectionV2 to false (or alternatively update the template to
true if the intended default is true) so both artifacts use the same default
behavior and avoid divergence between sample and prod.

"features": {
"accountLogin": {
"disabledFeatures": [],
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
*/

import { useRequiredScopes } from "@wso2is/access-control";
import useUIConfig from "@wso2is/admin.core.v1/hooks/use-ui-configs";
import { FeatureConfigInterface } from "@wso2is/admin.core.v1/models/config";
import { IdentifiableComponentInterface, SBACInterface } from "@wso2is/core/models";
import { EmphasizedSegment } from "@wso2is/react-components";
Expand Down Expand Up @@ -70,9 +71,12 @@ export const ProvisioningSettings: FunctionComponent<ProvisioningSettingsPropsIn
[ "data-componentid" ]: componentId
} = props;

const { UIConfig } = useUIConfig();

const shouldShowOutboundProvisioningConfigurations: boolean = useMemo(() => {
return application?.provisioningConfigurations?.outboundProvisioningIdps?.length > 0;
}, [ application ]);
return UIConfig?.enableProvisioningConnectionV2 ||
application?.provisioningConfigurations?.outboundProvisioningIdps?.length > 0;
}, [ UIConfig?.enableProvisioningConnectionV2, application ]);

const hasApplicationUpdatePermissions: boolean = useRequiredScopes(featureConfig?.applications?.scopes?.update);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,11 @@ export const useGetConnectionTemplates = <Data = ConnectionTemplateInterface[],
.CONNECTION_TEMPLATE_IDS.TRUSTED_TOKEN_ISSUER);
}

if (!UIConfig?.enableProvisioningConnectionV2) {
hiddenConnectionTemplateIds.push(CommonAuthenticatorConstants
.CONNECTION_TEMPLATE_IDS.OUTBOUND_PROVISIONING_CONNECTION);
}

const fetchedConnectionTemplates: ConnectionTemplateInterface[] = data as ConnectionTemplateInterface[];

// Filter out the hidden connection templates.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -134,20 +134,6 @@ export const CreateConnectionWizard: FC<CreateConnectionWizardPropsInterface> =
/**
* Track wizard steps from wizard component.
*/
useEffect(() => {
setConnectionMetaDetails(wizStep + 1);
}, [ wizStep ]);

/**
* Track wizard steps from wizard component.
*/
useEffect(() => {
setCurrentWizardStep(wizStep + 1);
}, [ wizStep ]);

/**
* Track wizard steps from wizard component.
*/
useEffect(() => {
setCurrentWizardStep(wizStep + 1);
}, [ wizStep ]);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ import { useSelector } from "react-redux";
import { CreateConnectionWizard } from "./add-connection-wizard";
import CustomAuthenticatorCreateWizard from "./custom-authenticator-create-wizard";
import { EnterpriseConnectionCreateWizard } from "./enterprise-connection-create-wizard";
import { OutboundProvisioningConnectionCreateWizard } from "./outbound-provisioning-connection-create-wizard";
import { useGetConnectionTemplate, useGetConnections } from "../../api/connections";
import { CommonAuthenticatorConstants } from "../../constants/common-authenticator-constants";
import {
Expand Down Expand Up @@ -354,6 +355,23 @@ export const AuthenticatorCreateWizardFactory: FC<AuthenticatorCreateWizardFacto
/>
);

case CommonAuthenticatorConstants.CONNECTION_TEMPLATE_IDS.OUTBOUND_PROVISIONING_CONNECTION:
return (
<OutboundProvisioningConnectionCreateWizard
title={ selectedTemplateWithUniqueName?.name }
subTitle={ selectedTemplateWithUniqueName?.description }
onWizardClose={ () => {
setSelectedTemplateWithUniqueName(undefined);
setSelectedTemplate(undefined);
handleModalVisibility(false);
onWizardClose();
} }
template={ selectedTemplateWithUniqueName }
data-componentid={ selectedTemplate?.templateId }
{ ...rest }
/>
);

default:
return (
<CreateConnectionWizard
Expand Down
Loading
Loading