mirror of
https://github.com/logto-io/logto.git
synced 2025-01-27 21:39:16 -05:00
fix: initConnector use hasConnector (#195)
This commit is contained in:
parent
070506f934
commit
7d182e2b46
2 changed files with 11 additions and 4 deletions
|
@ -1,10 +1,11 @@
|
|||
import RequestError from '@/errors/RequestError';
|
||||
import { findConnectorById, insertConnector } from '@/queries/connector';
|
||||
import { findConnectorById, hasConnector, insertConnector } from '@/queries/connector';
|
||||
|
||||
import * as AliyunDM from './aliyun-dm';
|
||||
import * as GitHub from './github';
|
||||
import { ConnectorInstance } from './types';
|
||||
|
||||
const allConnectors: ConnectorInstance[] = [AliyunDM];
|
||||
const allConnectors: ConnectorInstance[] = [AliyunDM, GitHub];
|
||||
|
||||
export const getConnectorInstances = async (): Promise<ConnectorInstance[]> => {
|
||||
return Promise.all(
|
||||
|
@ -32,8 +33,7 @@ export const getConnectorInstanceById = async (id: string): Promise<ConnectorIns
|
|||
export const initConnectors = async () => {
|
||||
await Promise.all(
|
||||
allConnectors.map(async ({ metadata: { id } }) => {
|
||||
const record = await findConnectorById(id);
|
||||
if (record) {
|
||||
if (await hasConnector(id)) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -21,6 +21,13 @@ export const findConnectorById = async (id: string) =>
|
|||
where ${fields.id}=${id}
|
||||
`);
|
||||
|
||||
export const hasConnector = async (id: string) =>
|
||||
pool.exists(sql`
|
||||
select ${sql.join(Object.values(fields), sql`, `)}
|
||||
from ${table}
|
||||
where ${fields.id}=${id}
|
||||
`);
|
||||
|
||||
export const insertConnector = buildInsertInto<CreateConnector, Connector>(pool, Connectors, {
|
||||
returning: true,
|
||||
});
|
||||
|
|
Loading…
Add table
Reference in a new issue