Skip to content

Commit 09cccd5

Browse files
authored
feat(helm): added cert-postgresql template to helm (#1620)
* feat(helm): added cert-postgresql template to helm * use js-tiktoken (pure js) in favor of tiktoken (wasm)
1 parent 1773530 commit 09cccd5

File tree

8 files changed

+89
-15
lines changed

8 files changed

+89
-15
lines changed

apps/sim/lib/tokenization/estimators.ts

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
* Token estimation and accurate counting functions for different providers
33
*/
44

5-
import { encoding_for_model, type Tiktoken } from 'tiktoken'
5+
import { encodingForModel, type Tiktoken } from 'js-tiktoken'
66
import { createLogger } from '@/lib/logs/console/logger'
77
import { MIN_TEXT_LENGTH_FOR_ESTIMATION, TOKENIZATION_CONFIG } from '@/lib/tokenization/constants'
88
import type { TokenEstimate } from '@/lib/tokenization/types'
@@ -21,12 +21,12 @@ function getEncoding(modelName: string): Tiktoken {
2121
}
2222

2323
try {
24-
const encoding = encoding_for_model(modelName as Parameters<typeof encoding_for_model>[0])
24+
const encoding = encodingForModel(modelName as Parameters<typeof encodingForModel>[0])
2525
encodingCache.set(modelName, encoding)
2626
return encoding
2727
} catch (error) {
2828
logger.warn(`Failed to get encoding for model ${modelName}, falling back to cl100k_base`)
29-
const encoding = encoding_for_model('gpt-4')
29+
const encoding = encodingForModel('gpt-4')
3030
encodingCache.set(modelName, encoding)
3131
return encoding
3232
}
@@ -79,7 +79,7 @@ export function truncateToTokenLimit(
7979
}
8080

8181
const truncatedTokens = tokens.slice(0, maxTokens)
82-
const truncatedText = new TextDecoder().decode(encoding.decode(truncatedTokens))
82+
const truncatedText = encoding.decode(truncatedTokens)
8383

8484
logger.warn(
8585
`Truncated text from ${tokens.length} to ${maxTokens} tokens (${text.length} to ${truncatedText.length} chars)`
@@ -160,9 +160,6 @@ export function batchByTokenLimit(
160160
* Clean up cached encodings (call when shutting down)
161161
*/
162162
export function clearEncodingCache(): void {
163-
for (const encoding of encodingCache.values()) {
164-
encoding.free()
165-
}
166163
encodingCache.clear()
167164
logger.info('Cleared tiktoken encoding cache')
168165
}

apps/sim/next.config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ const nextConfig: NextConfig = {
7575
turbopack: {
7676
resolveExtensions: ['.tsx', '.ts', '.jsx', '.js', '.mjs', '.json'],
7777
},
78-
serverExternalPackages: ['pdf-parse', 'tiktoken'],
78+
serverExternalPackages: ['pdf-parse'],
7979
experimental: {
8080
optimizeCss: true,
8181
turbopackSourceMaps: false,

apps/sim/package.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@
8282
"input-otp": "^1.4.2",
8383
"ioredis": "^5.6.0",
8484
"jose": "6.0.11",
85+
"js-tiktoken": "1.0.21",
8586
"js-yaml": "4.1.0",
8687
"jwt-decode": "^4.0.0",
8788
"lucide-react": "^0.479.0",
@@ -119,6 +120,7 @@
119120
},
120121
"devDependencies": {
121122
"@testing-library/jest-dom": "^6.6.3",
123+
"@trigger.dev/build": "4.0.4",
122124
"@types/html-to-text": "9.0.4",
123125
"@types/js-yaml": "4.0.9",
124126
"@types/jsdom": "21.1.7",

apps/sim/trigger.config.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import { additionalPackages } from '@trigger.dev/build/extensions/core'
12
import { defineConfig } from '@trigger.dev/sdk'
23
import { env } from './lib/env'
34

@@ -13,4 +14,12 @@ export default defineConfig({
1314
},
1415
},
1516
dirs: ['./background'],
17+
build: {
18+
extensions: [
19+
// pdf-parse has native bindings, keep as external package
20+
additionalPackages({
21+
packages: ['pdf-parse'],
22+
}),
23+
],
24+
},
1625
})

bun.lock

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
"postgres": "^3.4.5",
1212
"remark-gfm": "4.0.1",
1313
"socket.io-client": "4.8.1",
14-
"tiktoken": "1.0.22",
1514
"twilio": "5.9.0",
1615
},
1716
"devDependencies": {
@@ -117,6 +116,7 @@
117116
"input-otp": "^1.4.2",
118117
"ioredis": "^5.6.0",
119118
"jose": "6.0.11",
119+
"js-tiktoken": "1.0.21",
120120
"js-yaml": "4.1.0",
121121
"jwt-decode": "^4.0.0",
122122
"lucide-react": "^0.479.0",
@@ -154,6 +154,7 @@
154154
},
155155
"devDependencies": {
156156
"@testing-library/jest-dom": "^6.6.3",
157+
"@trigger.dev/build": "4.0.4",
157158
"@types/html-to-text": "9.0.4",
158159
"@types/js-yaml": "4.0.9",
159160
"@types/jsdom": "21.1.7",
@@ -1218,6 +1219,8 @@
12181219

12191220
"@tokenizer/token": ["@tokenizer/[email protected]", "", {}, "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A=="],
12201221

1222+
"@trigger.dev/build": ["@trigger.dev/[email protected]", "", { "dependencies": { "@trigger.dev/core": "4.0.4", "pkg-types": "^1.1.3", "tinyglobby": "^0.2.2", "tsconfck": "3.1.3" } }, "sha512-W3mP+RBkcYOrNYTTmQ/WdU6LB+2Tk1S6r3OjEWqXEPsXLEEw6BzHTHZBirHYX4lWRBL9jVkL+/H74ycyNfzRjg=="],
1223+
12211224
"@trigger.dev/core": ["@trigger.dev/[email protected]", "", { "dependencies": { "@bugsnag/cuid": "^3.1.1", "@electric-sql/client": "1.0.0-beta.1", "@google-cloud/precise-date": "^4.0.0", "@jsonhero/path": "^1.0.21", "@opentelemetry/api": "1.9.0", "@opentelemetry/api-logs": "0.203.0", "@opentelemetry/core": "2.0.1", "@opentelemetry/exporter-logs-otlp-http": "0.203.0", "@opentelemetry/exporter-trace-otlp-http": "0.203.0", "@opentelemetry/instrumentation": "0.203.0", "@opentelemetry/resources": "2.0.1", "@opentelemetry/sdk-logs": "0.203.0", "@opentelemetry/sdk-trace-base": "2.0.1", "@opentelemetry/sdk-trace-node": "2.0.1", "@opentelemetry/semantic-conventions": "1.36.0", "dequal": "^2.0.3", "eventsource": "^3.0.5", "eventsource-parser": "^3.0.0", "execa": "^8.0.1", "humanize-duration": "^3.27.3", "jose": "^5.4.0", "nanoid": "3.3.8", "prom-client": "^15.1.0", "socket.io": "4.7.4", "socket.io-client": "4.7.5", "std-env": "^3.8.1", "superjson": "^2.2.1", "tinyexec": "^0.3.2", "uncrypto": "^0.1.3", "zod": "3.25.76", "zod-error": "1.5.0", "zod-validation-error": "^1.5.0" } }, "sha512-c5myttkNhqaqvLlEz3ttE1qEsULlD6ILBge5FAfEtMv9HVS/pNlgvMKrdFMefaGO/bE4HoxrNGdJsY683Kq32w=="],
12221225

12231226
"@trigger.dev/sdk": ["@trigger.dev/[email protected]", "", { "dependencies": { "@opentelemetry/api": "1.9.0", "@opentelemetry/semantic-conventions": "1.36.0", "@trigger.dev/core": "4.0.4", "chalk": "^5.2.0", "cronstrue": "^2.21.0", "debug": "^4.3.4", "evt": "^2.4.13", "slug": "^6.0.0", "ulid": "^2.3.0", "uncrypto": "^0.1.3", "uuid": "^9.0.0", "ws": "^8.11.0" }, "peerDependencies": { "ai": "^4.2.0 || ^5.0.0", "zod": "^3.0.0 || ^4.0.0" }, "optionalPeers": ["ai"] }, "sha512-54krRw9SN1CGm5u17JBzu0hNzRf1u37jKbSFFngPJjUOltOgi/owey5+KNu1rGthabhOBK2VKzvKEd4sn08RCA=="],
@@ -1612,7 +1615,7 @@
16121615

16131616
"concurrently": ["[email protected]", "", { "dependencies": { "chalk": "4.1.2", "rxjs": "7.8.2", "shell-quote": "1.8.3", "supports-color": "8.1.1", "tree-kill": "1.2.2", "yargs": "17.7.2" }, "bin": { "conc": "dist/bin/concurrently.js", "concurrently": "dist/bin/concurrently.js" } }, "sha512-fsfrO0MxV64Znoy8/l1vVIjjHa29SZyyqPgQBwhiDcaW8wJc2W3XWVOGx4M3oJBnv/zdUZIIp1gDeS98GzP8Ng=="],
16141617

1615-
"confbox": ["confbox@0.2.2", "", {}, "sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ=="],
1618+
"confbox": ["confbox@0.1.8", "", {}, "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w=="],
16161619

16171620
"consola": ["[email protected]", "", {}, "sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA=="],
16181621

@@ -2116,6 +2119,8 @@
21162119

21172120
"joycon": ["[email protected]", "", {}, "sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw=="],
21182121

2122+
"js-tiktoken": ["[email protected]", "", { "dependencies": { "base64-js": "^1.5.1" } }, "sha512-biOj/6M5qdgx5TKjDnFT1ymSpM5tbd3ylwDtrQvFQSu0Z7bBYko2dF+W/aUkXUPuk6IVpRxk/3Q2sHOzGlS36g=="],
2123+
21192124
"js-tokens": ["[email protected]", "", {}, "sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ=="],
21202125

21212126
"js-yaml": ["[email protected]", "", { "dependencies": { "argparse": "^2.0.1" }, "bin": { "js-yaml": "bin/js-yaml.js" } }, "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA=="],
@@ -2384,6 +2389,8 @@
23842389

23852390
"minizlib": ["[email protected]", "", { "dependencies": { "minipass": "^7.1.2" } }, "sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw=="],
23862391

2392+
"mlly": ["[email protected]", "", { "dependencies": { "acorn": "^8.15.0", "pathe": "^2.0.3", "pkg-types": "^1.3.1", "ufo": "^1.6.1" } }, "sha512-l8D9ODSRWLe2KHJSifWGwBqpTZXIXTeo8mlKjY+E2HAakaTeNpqAyBZ8GSqLzHgw4XmHmC8whvpjJNMbFZN7/g=="],
2393+
23872394
"module-details-from-path": ["[email protected]", "", {}, "sha512-EGWKgxALGMgzvxYF1UyGTy0HXX/2vHLkw6+NvDKW2jypWbHpjQuj4UMcqQWXHERJhVGKikolT06G3bcKe4fi7w=="],
23882395

23892396
"mongodb": ["[email protected]", "", { "dependencies": { "@mongodb-js/saslprep": "^1.1.9", "bson": "^6.10.4", "mongodb-connection-string-url": "^3.0.0" }, "peerDependencies": { "@aws-sdk/credential-providers": "^3.188.0", "@mongodb-js/zstd": "^1.1.0 || ^2.0.0", "gcp-metadata": "^5.2.0", "kerberos": "^2.0.1", "mongodb-client-encryption": ">=6.0.0 <7", "snappy": "^7.3.2", "socks": "^2.7.1" }, "optionalPeers": ["@aws-sdk/credential-providers", "@mongodb-js/zstd", "gcp-metadata", "kerberos", "mongodb-client-encryption", "snappy", "socks"] }, "sha512-H3GtYujOJdeKIMLKBT9PwlDhGrQfplABNF1G904w6r5ZXKWyv77aB0X9B+rhmaAwjtllHzaEkvi9mkGVZxs2Bw=="],
@@ -2548,7 +2555,7 @@
25482555

25492556
"pkce-challenge": ["[email protected]", "", {}, "sha512-ueGLflrrnvwB3xuo/uGob5pd5FN7l0MsLf0Z87o/UQmRtwjvfylfc9MurIxRAWywCYTgrvpXBcqjV4OfCYGCIQ=="],
25502557

2551-
"pkg-types": ["pkg-types@2.3.0", "", { "dependencies": { "confbox": "^0.2.2", "exsolve": "^1.0.7", "pathe": "^2.0.3" } }, "sha512-SIqCzDRg0s9npO5XQ3tNZioRY1uK06lA41ynBC1YmFTmnY6FjUjVt6s4LoADmwoig1qqD0oK8h1p/8mlMx8Oig=="],
2558+
"pkg-types": ["pkg-types@1.3.1", "", { "dependencies": { "confbox": "^0.1.8", "mlly": "^1.7.4", "pathe": "^2.0.1" } }, "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ=="],
25522559

25532560
"platform": ["[email protected]", "", {}, "sha512-fnWVljUchTro6RiCFvCXBbNhJc2NijN7oIQxbwsyL0buWJPG85v81ehlHI9fXrJsMNgTofEoWIQeClKpgxFLrg=="],
25542561

@@ -2922,8 +2929,6 @@
29222929

29232930
"through": ["[email protected]", "", {}, "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg=="],
29242931

2925-
"tiktoken": ["[email protected]", "", {}, "sha512-PKvy1rVF1RibfF3JlXBSP0Jrcw2uq3yXdgcEXtKTYn3QJ/cBRBHDnrJ5jHky+MENZ6DIPwNUGWpkVx+7joCpNA=="],
2926-
29272932
"tiny-inflate": ["[email protected]", "", {}, "sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw=="],
29282933

29292934
"tinybench": ["[email protected]", "", {}, "sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg=="],
@@ -2962,7 +2967,7 @@
29622967

29632968
"tsafe": ["[email protected]", "", {}, "sha512-2bBiNHk6Ts4LZQ4+6OxF/BtkJ8YWqo1VMbMo6qrRIZoqAwM8xuwWUx9g3C/p6cCdUmNWeOWIaiJzgO5zWy1Cdg=="],
29642969

2965-
"tsconfck": ["[email protected].6", "", { "peerDependencies": { "typescript": "^5.0.0" }, "optionalPeers": ["typescript"], "bin": { "tsconfck": "bin/tsconfck.js" } }, "sha512-ks6Vjr/jEw0P1gmOVwutM3B7fWxoWBL2KRDb1JfqGVawBmO5UsvmWOQFGHBPl5yxYz4eERr19E6L7NMv+Fej4w=="],
2970+
"tsconfck": ["[email protected].3", "", { "peerDependencies": { "typescript": "^5.0.0" }, "optionalPeers": ["typescript"], "bin": { "tsconfck": "bin/tsconfck.js" } }, "sha512-ulNZP1SVpRDesxeMLON/LtWM8HIgAJEIVpVVhBM6gsmvQ8+Rh+ZG7FWGvHh7Ah3pRABwVJWklWCr/BTZSv0xnQ=="],
29662971

29672972
"tsconfig-paths": ["[email protected]", "", { "dependencies": { "json5": "^2.2.2", "minimist": "^1.2.6", "strip-bom": "^3.0.0" } }, "sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg=="],
29682973

@@ -2994,6 +2999,8 @@
29942999

29953000
"typescript": ["[email protected]", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A=="],
29963001

3002+
"ufo": ["[email protected]", "", {}, "sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA=="],
3003+
29973004
"ulid": ["[email protected]", "", { "bin": { "ulid": "bin/cli.js" } }, "sha512-fIRiVTJNcSRmXKPZtGzFQv9WRrZ3M9eoptl/teFJvjOzmpU+/K/JH6HZ8deBfb5vMEpicJcLn7JmvdknlMq7Zg=="],
29983005

29993006
"uncrypto": ["[email protected]", "", {}, "sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q=="],
@@ -3498,6 +3505,8 @@
34983505

34993506
"npm-run-path/path-key": ["[email protected]", "", {}, "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ=="],
35003507

3508+
"nypm/pkg-types": ["[email protected]", "", { "dependencies": { "confbox": "^0.2.2", "exsolve": "^1.0.7", "pathe": "^2.0.3" } }, "sha512-SIqCzDRg0s9npO5XQ3tNZioRY1uK06lA41ynBC1YmFTmnY6FjUjVt6s4LoADmwoig1qqD0oK8h1p/8mlMx8Oig=="],
3509+
35013510
"nypm/tinyexec": ["[email protected]", "", {}, "sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA=="],
35023511

35033512
"oauth2-mock-server/jose": ["[email protected]", "", {}, "sha512-s+3Al/p9g32Iq+oqXxkW//7jk2Vig6FF1CFqzVXoTUXt2qz89YWbL+OwS17NFYEvxC35n0FKeGO2LGYSxeM2Gg=="],
@@ -3598,6 +3607,8 @@
35983607

35993608
"unicode-trie/pako": ["[email protected]", "", {}, "sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA=="],
36003609

3610+
"vite-tsconfig-paths/tsconfck": ["[email protected]", "", { "peerDependencies": { "typescript": "^5.0.0" }, "optionalPeers": ["typescript"], "bin": { "tsconfck": "bin/tsconfck.js" } }, "sha512-ks6Vjr/jEw0P1gmOVwutM3B7fWxoWBL2KRDb1JfqGVawBmO5UsvmWOQFGHBPl5yxYz4eERr19E6L7NMv+Fej4w=="],
3611+
36013612
"vitest/tinyexec": ["[email protected]", "", {}, "sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA=="],
36023613

36033614
"xml-crypto/xpath": ["[email protected]", "", {}, "sha512-NNXnzrkDrAzalLhIUc01jO2mOzXGXh1JwPgkihcLLzw98c0WgYDmmjSh1Kl3wzaxSVWMuA+fe0WTWOBDWCBmNA=="],
@@ -3796,6 +3807,8 @@
37963807

37973808
"log-update/wrap-ansi/string-width": ["[email protected]", "", { "dependencies": { "eastasianwidth": "^0.2.0", "emoji-regex": "^9.2.2", "strip-ansi": "^7.0.1" } }, "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA=="],
37983809

3810+
"nypm/pkg-types/confbox": ["[email protected]", "", {}, "sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ=="],
3811+
37993812
"openai/@types/node/undici-types": ["[email protected]", "", {}, "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA=="],
38003813

38013814
"openai/node-fetch/whatwg-url": ["[email protected]", "", { "dependencies": { "tr46": "~0.0.3", "webidl-conversions": "^3.0.0" } }, "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw=="],
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
{{- if and .Values.postgresql.enabled .Values.postgresql.tls.enabled }}
2+
apiVersion: cert-manager.io/v1
3+
kind: Certificate
4+
metadata:
5+
name: {{ include "sim.fullname" . }}-postgresql-tls-certificate
6+
namespace: {{ .Release.Namespace }}
7+
labels:
8+
{{- include "sim.postgresql.labels" . | nindent 4 }}
9+
spec:
10+
secretName: {{ .Values.postgresql.tls.certificatesSecret }}
11+
duration: {{ .Values.postgresql.tls.duration | default "87600h" }} # Default: 10 years
12+
renewBefore: {{ .Values.postgresql.tls.renewBefore | default "2160h" }} # Default: 90 days before expiry
13+
isCA: false
14+
{{- if .Values.postgresql.tls.rotationPolicy }}
15+
rotationPolicy: {{ .Values.postgresql.tls.rotationPolicy }}
16+
{{- end }}
17+
privateKey:
18+
algorithm: {{ .Values.postgresql.tls.privateKey.algorithm | default "RSA" }}
19+
size: {{ .Values.postgresql.tls.privateKey.size | default 4096 }}
20+
usages:
21+
- server auth
22+
- client auth
23+
dnsNames:
24+
- {{ include "sim.fullname" . }}-postgresql
25+
- {{ include "sim.fullname" . }}-postgresql.{{ .Release.Namespace }}.svc.cluster.local
26+
{{- with .Values.postgresql.tls.additionalDnsNames }}
27+
{{- toYaml . | nindent 2 }}
28+
{{- end }}
29+
issuerRef:
30+
name: {{ .Values.postgresql.tls.issuerRef.name }}
31+
kind: {{ .Values.postgresql.tls.issuerRef.kind | default "ClusterIssuer" }}
32+
{{- if .Values.postgresql.tls.issuerRef.group }}
33+
group: {{ .Values.postgresql.tls.issuerRef.group }}
34+
{{- end }}
35+
{{- end }}

helm/sim/values.yaml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -290,9 +290,28 @@ postgresql:
290290
- ReadWriteOnce
291291

292292
# SSL/TLS configuration (enable for production deployments with certificates)
293+
# Requires cert-manager to be installed in the cluster
293294
tls:
294295
enabled: false
295296
certificatesSecret: postgres-tls-secret
297+
# Certificate configuration (only used if enabled)
298+
duration: "87600h" # 10 years (default)
299+
renewBefore: "2160h" # Renew 90 days before expiry (default)
300+
rotationPolicy: "" # Set to "Always" to rotate private key on renewal (recommended for security)
301+
privateKey:
302+
algorithm: RSA # RSA or ECDSA
303+
size: 4096 # Key size in bits
304+
# Issuer reference (REQUIRED if tls.enabled is true)
305+
issuerRef:
306+
name: selfsigned-cluster-issuer # Name of your cert-manager Issuer/ClusterIssuer
307+
kind: ClusterIssuer # ClusterIssuer or Issuer
308+
group: "" # Optional: cert-manager.io (leave empty for default)
309+
# Additional DNS names (optional)
310+
additionalDnsNames: []
311+
# Example:
312+
# additionalDnsNames:
313+
# - postgres.example.com
314+
# - db.example.com
296315

297316
# PostgreSQL configuration
298317
config:

package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,6 @@
4242
"postgres": "^3.4.5",
4343
"remark-gfm": "4.0.1",
4444
"socket.io-client": "4.8.1",
45-
"tiktoken": "1.0.22",
4645
"twilio": "5.9.0"
4746
},
4847
"devDependencies": {

0 commit comments

Comments
 (0)