0
Fork 0
mirror of https://github.com/logto-io/logto.git synced 2025-01-27 21:39:16 -05:00

feat(console): add SAML app flow (#6944)

* feat(console): add SAML app

* fix: integration test setup
This commit is contained in:
Darcy Ye 2025-01-17 11:42:10 +08:00 committed by GitHub
parent 6541749f9b
commit 55c4489108
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 10 additions and 9 deletions

View file

@ -16,7 +16,9 @@ jobs:
matrix:
# Run the integration tests with and without dev features enabled
dev-features-enabled: [true, false]
runs-on: ubuntu-latest
# An error will occur if we use a newer version of Ubuntu in the CI environment, as it has restrictions on unprivileged user namespaces and sandbox usage, which prevents Chromium (used by Puppeteer) from launching properly during integration tests. So we lock the Ubuntu version to 22.04.
# See error record: https://github.com/logto-io/logto/actions/runs/12803809008/job/35697654974
runs-on: ubuntu-22.04
env:
INTEGRATION_TEST: true
DEV_FEATURES_ENABLED: ${{ matrix.dev-features-enabled }}
@ -35,7 +37,7 @@ jobs:
# Run the integration tests with and without dev features enabled
dev-features-enabled: [true, false]
needs: package
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
env:
INTEGRATION_TEST: true
DEV_FEATURES_ENABLED: ${{ matrix.dev-features-enabled }}
@ -53,7 +55,7 @@ jobs:
rerun-on-failure:
needs: run-logto
if: failure() && fromJSON(github.run_attempt) < 3
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
steps:
- env:
GH_REPO: ${{ github.repository }}

View file

@ -6,7 +6,7 @@ const metadata = Object.freeze({
name: 'SAML',
description: 'Use Logto as a SAML identity provider (IdP) for your application.',
target: ApplicationType.SAML,
isThirdParty: true,
isThirdParty: false,
skipGuideAfterCreation: true,
isCloud: true,
isDevFeature: true,

View file

@ -1,4 +1,3 @@
import { ApplicationType } from '@logto/schemas';
import { useCallback, useMemo } from 'react';
import { guides } from '@/assets/docs/guides';
@ -17,6 +16,7 @@ const defaultStructuredMetadata: StructuredAppGuideMetadata = {
Native: [],
MachineToMachine: [],
Protected: [],
SAML: [],
ThirdParty: [],
};
@ -100,9 +100,7 @@ export const useAppGuideMetadata = (): {
return accumulated;
}
// We have ensured that SAML applications are always third party in DB schema, we use `||` here to make TypeScript happy.
// TODO: @darcy fix this when SAML third-party app guide is ready
if (target === ApplicationType.SAML || isThirdParty) {
if (isThirdParty) {
return {
...accumulated,
[thirdPartyAppCategory]: [...accumulated[thirdPartyAppCategory], guide],

View file

@ -25,6 +25,7 @@ export const allAppGuideCategories = Object.freeze([
'Native',
'Protected',
'MachineToMachine',
'SAML',
thirdPartyAppCategory,
] as const);

View file

@ -9,7 +9,7 @@ const guide = {
MachineToMachine: 'Machine-to-machine',
Protected: 'Non-SDK Integration',
ThirdParty: 'Third-party app',
SAML: 'SAML',
SAML: 'SAML app',
},
filter: {
title: 'Filter framework',