mirror of
https://github.com/graphql-hive/console
synced 2026-05-23 09:08:34 +00:00
* add supertoken container to docker-compose file * yeah I am sorry this one big commit and I am ashamed of it * use logOut function * feat: show header on 404 page * feat: better handling for organization cookie when not authenticated * wrap it * check session within server side props * add is_admin flag user migration * simplify and annotate the config * fix: handle status codes + fix email/password sign up with import from auth0 * no hardcoded env pls * decode process.env * secure update user id mapping via a key * fix: login form * lol we don't need to hit the API * fix: do graphql api authorization via authorization header instead of cookie * implement isAdmin flag * fix: types :) * skipit * yo we can run this * set env variables * disable because it annoys the hell out of me * use the right host * add not about token length * refactor: decode environment variables * feat: store external user id from guthub/google provider in the database * workaround supertokens omitting null values from the token * re-enable check * i have no time for this shit * add missing env variable * fix: email test; missing domain extension * configure pulumi deployment Co-authored-by: Kamil Kisiela <kamil.kisiela@gmail.com> Co-authored-by: Dotan Simha <dotansimha@gmail.com> * configure pulumi deployment Co-authored-by: Kamil Kisiela <kamil.kisiela@gmail.com> Co-authored-by: Dotan Simha <dotansimha@gmail.com> * configure pulumi deployment Co-authored-by: Kamil Kisiela <kamil.kisiela@gmail.com> Co-authored-by: Dotan Simha <dotansimha@gmail.com> * configure pulumi deployment Co-authored-by: Kamil Kisiela <kamil.kisiela@gmail.com> * fix: env names * fix: link google account to the correct db record * feat: email confirmation emails * ? * bump ts-node * fix types * omit package form the bundle * remove it from dependencies... * add emails apckage to dev deps * resolve eslint issues * remove comments * update dev info + change env variable (no need to expose it on the frontend) * use correct user id lol Co-authored-by: Kamil Kisiela <kamil.kisiela@gmail.com> Co-authored-by: Dotan Simha <dotansimha@gmail.com>
61 lines
1.6 KiB
TypeScript
61 lines
1.6 KiB
TypeScript
import * as pulumi from '@pulumi/pulumi';
|
|
import * as kx from '@pulumi/kubernetesx';
|
|
import { serviceLocalEndpoint } from '../utils/local-endpoint';
|
|
import { Output } from '@pulumi/pulumi';
|
|
|
|
export function deploySuperTokens({ apiKey }: { apiKey: Output<string> }) {
|
|
const apiConfig = new pulumi.Config('api');
|
|
|
|
const port = 3567;
|
|
const pb = new kx.PodBuilder({
|
|
restartPolicy: 'Always',
|
|
containers: [
|
|
{
|
|
image: 'registry.supertokens.io/supertokens/supertokens-postgresql:3.9',
|
|
name: 'supertokens',
|
|
ports: {
|
|
http: port,
|
|
},
|
|
readinessProbe: {
|
|
initialDelaySeconds: 5,
|
|
periodSeconds: 20,
|
|
failureThreshold: 5,
|
|
timeoutSeconds: 5,
|
|
httpGet: {
|
|
path: '/hello',
|
|
port,
|
|
},
|
|
},
|
|
livenessProbe: {
|
|
initialDelaySeconds: 3,
|
|
periodSeconds: 20,
|
|
failureThreshold: 10,
|
|
timeoutSeconds: 5,
|
|
httpGet: {
|
|
path: '/hello',
|
|
port,
|
|
},
|
|
},
|
|
env: {
|
|
POSTGRESQL_TABLE_NAMES_PREFIX: 'supertokens',
|
|
POSTGRESQL_CONNECTION_URI: apiConfig
|
|
.requireSecret('postgresConnectionString')
|
|
.apply(str => str.replace('postgres://', 'postgresql://')),
|
|
API_KEYS: apiKey,
|
|
},
|
|
},
|
|
],
|
|
});
|
|
|
|
const deployment = new kx.Deployment('supertokens', {
|
|
spec: pb.asDeploymentSpec({ replicas: 1 }), // <-- here,
|
|
});
|
|
|
|
const service = deployment.createService({});
|
|
|
|
return {
|
|
deployment,
|
|
service,
|
|
localEndpoint: serviceLocalEndpoint(service),
|
|
};
|
|
}
|