fix(integrations): avoid slack crashing when env does not exist
This commit is contained in:
@@ -8,18 +8,27 @@ const SLACK_CLIENT_SECRET = process.env.SLACK_CLIENT_SECRET;
|
|||||||
const SLACK_OAUTH_REDIRECT_URL = process.env.SLACK_OAUTH_REDIRECT_URL;
|
const SLACK_OAUTH_REDIRECT_URL = process.env.SLACK_OAUTH_REDIRECT_URL;
|
||||||
const SLACK_STATE_SECRET = process.env.SLACK_STATE_SECRET;
|
const SLACK_STATE_SECRET = process.env.SLACK_STATE_SECRET;
|
||||||
|
|
||||||
export const slackInstaller = new InstallProvider({
|
export const slackInstaller = SLACK_CLIENT_ID
|
||||||
clientId: SLACK_CLIENT_ID!,
|
? new InstallProvider({
|
||||||
clientSecret: SLACK_CLIENT_SECRET!,
|
clientId: SLACK_CLIENT_ID!,
|
||||||
stateSecret: SLACK_STATE_SECRET,
|
clientSecret: SLACK_CLIENT_SECRET!,
|
||||||
logLevel: process.env.NODE_ENV === 'development' ? LogLevel.DEBUG : undefined,
|
stateSecret: SLACK_STATE_SECRET,
|
||||||
});
|
logLevel:
|
||||||
|
process.env.NODE_ENV === 'development' ? LogLevel.DEBUG : undefined,
|
||||||
|
})
|
||||||
|
: ({
|
||||||
|
generateInstallUrl: () => {},
|
||||||
|
stateStore: {},
|
||||||
|
} as unknown as InstallProvider);
|
||||||
|
|
||||||
export const getSlackInstallUrl = ({
|
export const getSlackInstallUrl = ({
|
||||||
integrationId,
|
integrationId,
|
||||||
organizationId,
|
organizationId,
|
||||||
projectId,
|
projectId,
|
||||||
}: { integrationId: string; organizationId: string; projectId: string }) => {
|
}: { integrationId: string; organizationId: string; projectId: string }) => {
|
||||||
|
if (!SLACK_CLIENT_ID) {
|
||||||
|
throw new Error('SLACK_CLIENT_ID is not set (slack.ts)');
|
||||||
|
}
|
||||||
return slackInstaller.generateInstallUrl({
|
return slackInstaller.generateInstallUrl({
|
||||||
scopes: [
|
scopes: [
|
||||||
'incoming-webhook',
|
'incoming-webhook',
|
||||||
|
|||||||
Reference in New Issue
Block a user