UNPKG

@deploystack/docker-to-iac

Version:

Translate docker run and docker compose file to Infrastructure as Code

145 lines (144 loc) 5.05 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.helmDatabaseConfig = void 0; exports.isDatabaseService = isDatabaseService; exports.getDatabaseConfig = getDatabaseConfig; exports.helmDatabaseConfig = { databases: { 'docker.io/library/mysql': { chart: 'mysql', repository: 'https://charts.bitnami.com/bitnami', version: '^9.0.0', portNumber: 3306, connectionTemplate: 'mysql://{{username}}:{{password}}@{{host}}:{{port}}/{{database}}', valueTemplate: { auth: { rootPassword: '${MYSQL_ROOT_PASSWORD}', database: '${MYSQL_DATABASE}', username: '${MYSQL_USER}', password: '${MYSQL_PASSWORD}' }, primary: { service: { ports: { mysql: 3306 } }, persistence: { enabled: true, size: '8Gi' } } } }, 'docker.io/library/mariadb': { chart: 'mariadb', repository: 'https://charts.bitnami.com/bitnami', version: '^11.0.0', portNumber: 3306, connectionTemplate: 'mysql://{{username}}:{{password}}@{{host}}:{{port}}/{{database}}', valueTemplate: { auth: { rootPassword: '${MARIADB_ROOT_PASSWORD}', database: '${MARIADB_DATABASE}', username: '${MARIADB_USER}', password: '${MARIADB_PASSWORD}' }, primary: { service: { ports: { mysql: 3306 } }, persistence: { enabled: true, size: '8Gi' } } } }, 'docker.io/library/postgres': { chart: 'postgresql', repository: 'https://charts.bitnami.com/bitnami', version: '^12.0.0', portNumber: 5432, connectionTemplate: 'postgresql://{{username}}:{{password}}@{{host}}:{{port}}/{{database}}', valueTemplate: { auth: { postgres: { password: '${POSTGRES_PASSWORD}' }, database: '${POSTGRES_DB}', username: '${POSTGRES_USER}', password: '${POSTGRES_PASSWORD}' }, primary: { service: { ports: { postgresql: 5432 } }, persistence: { enabled: true, size: '8Gi' } } } }, 'docker.io/library/redis': { chart: 'redis', repository: 'https://charts.bitnami.com/bitnami', version: '^17.0.0', portNumber: 6379, connectionTemplate: 'redis://{{username}}:{{password}}@{{host}}:{{port}}', valueTemplate: { auth: { enabled: true, password: '${REDIS_PASSWORD}' }, master: { service: { ports: { redis: 6379 } }, persistence: { enabled: true, size: '8Gi' } } } }, 'docker.io/library/mongodb': { chart: 'mongodb', repository: 'https://charts.bitnami.com/bitnami', version: '^13.0.0', portNumber: 27017, connectionTemplate: 'mongodb://{{username}}:{{password}}@{{host}}:{{port}}/{{database}}', valueTemplate: { auth: { rootPassword: '${MONGODB_ROOT_PASSWORD}', database: '${MONGODB_DATABASE}', username: '${MONGODB_USERNAME}', password: '${MONGODB_PASSWORD}' }, service: { ports: { mongodb: 27017 } }, persistence: { enabled: true, size: '8Gi' } } } } }; function isDatabaseService(imageString) { return imageString.split(':')[0] in exports.helmDatabaseConfig.databases; } function getDatabaseConfig(imageString) { const baseImage = imageString.split(':')[0]; return exports.helmDatabaseConfig.databases[baseImage] || null; }