From 968e67330dd7662de0b7fcd74331887fb624d07e Mon Sep 17 00:00:00 2001 From: Juergen Kunz Date: Fri, 15 Aug 2025 12:17:04 +0000 Subject: [PATCH] fix(services): Update S3 credentials naming and add S3_ENDPOINT/S3_USESSL support for improved MinIO integration --- changelog.md | 21 +++++++++++++------ ts/00_commitinfo_data.ts | 2 +- .../classes.serviceconfiguration.ts | 13 ++++++++++-- ts/mod_services/classes.servicemanager.ts | 1 + 4 files changed, 28 insertions(+), 9 deletions(-) diff --git a/changelog.md b/changelog.md index d25cbfb..3b573c0 100644 --- a/changelog.md +++ b/changelog.md @@ -1,12 +1,21 @@ # Changelog -## 2025-08-15 - 1.17.4 - fix(services) -Update S3 credentials naming and add S3_ENDPOINT support for improved MinIO integration +## 2025-08-15 - 1.17.5 - fix(services) +Update S3 credentials naming and add S3_ENDPOINT/S3_USESSL support for improved MinIO integration -- Replaced S3_USER/S3_PASS with S3_ACCESSKEY/S3_SECRETKEY in ServiceConfiguration. -- Added S3_ENDPOINT field with default endpoint in ServiceConfiguration. -- Updated ServiceManager to use new credential names in container setup and logging. -- Introduced .claude/settings.local.json for permission settings. +- Replaced S3_USER/S3_PASS with S3_ACCESSKEY/S3_SECRETKEY in ServiceConfiguration +- Added S3_ENDPOINT field with automatic protocol selection based on S3_USESSL +- Introduced S3_USESSL boolean field for SSL/TLS configuration +- Updated ServiceManager logging to display new S3_USESSL configuration +- Added .claude/settings.local.json for local permission settings + +## 2025-08-15 - 1.17.4 - fix(services) +Update S3 credentials naming and add S3_ENDPOINT/S3_USESSL support for improved MinIO integration + +- Replaced S3_USER/S3_PASS with S3_ACCESSKEY/S3_SECRETKEY in ServiceConfiguration +- Added S3_ENDPOINT field with automatic protocol selection based on S3_USESSL +- Added S3_USESSL boolean field for SSL/TLS configuration support +- Updated ServiceManager to use new credential names in container setup and logging ## 2025-08-15 - 1.17.3 - fix(serviceconfig) Update service configuration to include dynamic MongoDB connection string and add local permissions settings diff --git a/ts/00_commitinfo_data.ts b/ts/00_commitinfo_data.ts index 6febf68..80a8b53 100644 --- a/ts/00_commitinfo_data.ts +++ b/ts/00_commitinfo_data.ts @@ -3,6 +3,6 @@ */ export const commitinfo = { name: '@git.zone/cli', - version: '1.17.4', + version: '1.17.5', description: 'A comprehensive CLI tool for enhancing and managing local development workflows with gitzone utilities, focusing on project setup, version control, code formatting, and template management.' } diff --git a/ts/mod_services/classes.serviceconfiguration.ts b/ts/mod_services/classes.serviceconfiguration.ts index 66c1799..3f4eaec 100644 --- a/ts/mod_services/classes.serviceconfiguration.ts +++ b/ts/mod_services/classes.serviceconfiguration.ts @@ -17,6 +17,7 @@ export interface IServiceConfig { S3_SECRETKEY: string; S3_BUCKET: string; S3_ENDPOINT: string; + S3_USESSL: boolean; } export class ServiceConfiguration { @@ -119,7 +120,8 @@ export class ServiceConfiguration { S3_ACCESSKEY: 'defaultadmin', S3_SECRETKEY: 'defaultpass', S3_BUCKET: `${projectName}-documents`, - S3_ENDPOINT: `http://${s3Host}:${s3PortStr}` + S3_ENDPOINT: `http://${s3Host}:${s3PortStr}`, + S3_USESSL: false }; await this.saveConfig(); @@ -228,9 +230,16 @@ export class ServiceConfiguration { updated = true; } + if (!this.config.S3_USESSL) { + this.config.S3_USESSL = false; + fieldsAdded.push('S3_USESSL'); + updated = true; + } + // Always update S3_ENDPOINT based on current settings const oldEndpoint = this.config.S3_ENDPOINT; - this.config.S3_ENDPOINT = `http://${this.config.S3_HOST}:${this.config.S3_PORT}`; + const protocol = this.config.S3_USESSL ? 'https' : 'http'; + this.config.S3_ENDPOINT = `${protocol}://${this.config.S3_HOST}:${this.config.S3_PORT}`; if (oldEndpoint !== this.config.S3_ENDPOINT) { fieldsAdded.push('S3_ENDPOINT'); updated = true; diff --git a/ts/mod_services/classes.servicemanager.ts b/ts/mod_services/classes.servicemanager.ts index 85cda6a..8843fb0 100644 --- a/ts/mod_services/classes.servicemanager.ts +++ b/ts/mod_services/classes.servicemanager.ts @@ -297,6 +297,7 @@ export class ServiceManager { logger.log('info', ` Access Key: ${config.S3_ACCESSKEY}`); logger.log('info', ' Secret Key: ***'); logger.log('info', ` Bucket: ${config.S3_BUCKET}`); + logger.log('info', ` Use SSL: ${config.S3_USESSL}`); logger.log('info', ` Container: ${this.config.getContainerNames().minio}`); logger.log('info', ` Data: ${this.config.getDataDirectories().minio}`); logger.log('info', ` Endpoint: ${config.S3_ENDPOINT}`);