Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
D
dify
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ai-tech
dify
Commits
07dd8b94
Unverified
Commit
07dd8b94
authored
Feb 01, 2024
by
Yeuoly
Committed by
GitHub
Feb 01, 2024
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: check empty tool provider credentials (#2332)
parent
ef308fd1
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
8 additions
and
7 deletions
+8
-7
builtin_tool_provider.py
api/core/tools/provider/builtin_tool_provider.py
+8
-7
No files found.
api/core/tools/provider/builtin_tool_provider.py
View file @
07dd8b94
...
@@ -231,25 +231,26 @@ class BuiltinToolProviderController(ToolProviderController):
...
@@ -231,25 +231,26 @@ class BuiltinToolProviderController(ToolProviderController):
if
credential_schema
==
ToolProviderCredentials
.
CredentialsType
.
SECRET_INPUT
or
\
if
credential_schema
==
ToolProviderCredentials
.
CredentialsType
.
SECRET_INPUT
or
\
credential_schema
==
ToolProviderCredentials
.
CredentialsType
.
TEXT_INPUT
:
credential_schema
==
ToolProviderCredentials
.
CredentialsType
.
TEXT_INPUT
:
if
not
isinstance
(
credentials
[
credential_name
],
str
):
if
not
isinstance
(
credentials
[
credential_name
],
str
):
raise
ToolProviderCredentialValidationError
(
f
'credential {credential_
name
} should be string'
)
raise
ToolProviderCredentialValidationError
(
f
'credential {credential_
schema.label.en_US
} should be string'
)
elif
credential_schema
.
type
==
ToolProviderCredentials
.
CredentialsType
.
SELECT
:
elif
credential_schema
.
type
==
ToolProviderCredentials
.
CredentialsType
.
SELECT
:
if
not
isinstance
(
credentials
[
credential_name
],
str
):
if
not
isinstance
(
credentials
[
credential_name
],
str
):
raise
ToolProviderCredentialValidationError
(
f
'credential {credential_
name
} should be string'
)
raise
ToolProviderCredentialValidationError
(
f
'credential {credential_
schema.label.en_US
} should be string'
)
options
=
credential_schema
.
options
options
=
credential_schema
.
options
if
not
isinstance
(
options
,
list
):
if
not
isinstance
(
options
,
list
):
raise
ToolProviderCredentialValidationError
(
f
'credential {credential_
name
} options should be list'
)
raise
ToolProviderCredentialValidationError
(
f
'credential {credential_
schema.label.en_US
} options should be list'
)
if
credentials
[
credential_name
]
not
in
[
x
.
value
for
x
in
options
]:
if
credentials
[
credential_name
]
not
in
[
x
.
value
for
x
in
options
]:
raise
ToolProviderCredentialValidationError
(
f
'credential {credential_name} should be one of {options}'
)
raise
ToolProviderCredentialValidationError
(
f
'credential {credential_schema.label.en_US} should be one of {options}'
)
credentials_need_to_validate
.
pop
(
credential_name
)
if
credentials
[
credential_name
]:
credentials_need_to_validate
.
pop
(
credential_name
)
for
credential_name
in
credentials_need_to_validate
:
for
credential_name
in
credentials_need_to_validate
:
credential_schema
=
credentials_need_to_validate
[
credential_name
]
credential_schema
=
credentials_need_to_validate
[
credential_name
]
if
credential_schema
.
required
:
if
credential_schema
.
required
:
raise
ToolProviderCredentialValidationError
(
f
'credential {credential_
name
} is required'
)
raise
ToolProviderCredentialValidationError
(
f
'credential {credential_
schema.label.en_US
} is required'
)
# the credential is not set currently, set the default value if needed
# the credential is not set currently, set the default value if needed
if
credential_schema
.
default
is
not
None
:
if
credential_schema
.
default
is
not
None
:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment