Separate environment configs (#6597)
* Separate environment configs * wip * wip * test * plugins * test * test * .sequelizerc, unfortunately can't go through /utils/environment due to not supporting TS * docker-compose -> docker compose * fix: .local wipes .development * Add custom validation message for invalid SECRET_KEY (often confused)
This commit is contained in:
@@ -16,17 +16,18 @@ import {
|
||||
IsUUID,
|
||||
PrimaryKey,
|
||||
} from "sequelize-typescript";
|
||||
import env from "@server/env";
|
||||
import Model from "@server/models/base/Model";
|
||||
import AzureClient from "@server/utils/azure";
|
||||
import GoogleClient from "@server/utils/google";
|
||||
import OIDCClient from "@server/utils/oidc";
|
||||
import { ValidationError } from "../errors";
|
||||
import Team from "./Team";
|
||||
import UserAuthentication from "./UserAuthentication";
|
||||
import Fix from "./decorators/Fix";
|
||||
import Length from "./validators/Length";
|
||||
|
||||
// TODO: Avoid this hardcoding of plugins
|
||||
import AzureClient from "plugins/azure/server/azure";
|
||||
import GoogleClient from "plugins/google/server/google";
|
||||
import OIDCClient from "plugins/oidc/server/oidc";
|
||||
|
||||
@Table({
|
||||
tableName: "authentication_providers",
|
||||
modelName: "authentication_provider",
|
||||
@@ -86,20 +87,11 @@ class AuthenticationProvider extends Model<
|
||||
get oauthClient() {
|
||||
switch (this.name) {
|
||||
case "google":
|
||||
return new GoogleClient(
|
||||
env.GOOGLE_CLIENT_ID || "",
|
||||
env.GOOGLE_CLIENT_SECRET || ""
|
||||
);
|
||||
return new GoogleClient();
|
||||
case "azure":
|
||||
return new AzureClient(
|
||||
env.AZURE_CLIENT_ID || "",
|
||||
env.AZURE_CLIENT_SECRET || ""
|
||||
);
|
||||
return new AzureClient();
|
||||
case "oidc":
|
||||
return new OIDCClient(
|
||||
env.OIDC_CLIENT_ID || "",
|
||||
env.OIDC_CLIENT_SECRET || ""
|
||||
);
|
||||
return new OIDCClient();
|
||||
default:
|
||||
return undefined;
|
||||
}
|
||||
|
||||
@@ -6,6 +6,7 @@ import find from "lodash/find";
|
||||
import sortBy from "lodash/sortBy";
|
||||
import env from "@server/env";
|
||||
import Team from "@server/models/Team";
|
||||
import environment from "@server/utils/environment";
|
||||
|
||||
export type AuthenticationProviderConfig = {
|
||||
id: string;
|
||||
@@ -49,7 +50,7 @@ export default class AuthenticationHelper {
|
||||
|
||||
// Test the all required env vars are set for the auth provider
|
||||
const enabled = (config.requiredEnvVars ?? []).every(
|
||||
(name: string) => !!env[name]
|
||||
(name: string) => !!environment[name]
|
||||
);
|
||||
|
||||
if (enabled) {
|
||||
|
||||
Reference in New Issue
Block a user