diff --git a/.circleci/config.yml b/.circleci/config.yml index bdbdeea29..28c6e8c90 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -259,6 +259,7 @@ jobs: S3_SECRET_KEY: 'minioadmin' S3_BUCKET: 'speckle-server' S3_CREATE_BUCKET: 'true' + S3_REGION: '' # optional, defaults to 'us-east-1' steps: - checkout - restore_cache: diff --git a/docker-compose-speckle.yml b/docker-compose-speckle.yml index a090ccf17..5f1262bbe 100644 --- a/docker-compose-speckle.yml +++ b/docker-compose-speckle.yml @@ -39,6 +39,7 @@ services: S3_SECRET_KEY: 'minioadmin' S3_BUCKET: 'speckle-server' S3_CREATE_BUCKET: 'true' + S3_REGION: '' # optional, defaults to 'us-east-1' FILE_SIZE_LIMIT_MB: 100 preview-service: @@ -77,5 +78,6 @@ services: S3_ACCESS_KEY: 'minioadmin' S3_SECRET_KEY: 'minioadmin' S3_BUCKET: 'speckle-server' + S3_REGION: '' # optional, defaults to 'us-east-1' SPECKLE_SERVER_URL: 'http://speckle-server:3000' diff --git a/packages/server/modules/blobstorage/objectStorage.js b/packages/server/modules/blobstorage/objectStorage.js index db681a589..7b1be8c73 100644 --- a/packages/server/modules/blobstorage/objectStorage.js +++ b/packages/server/modules/blobstorage/objectStorage.js @@ -27,7 +27,7 @@ const getS3Config = () => { forcePathStyle: true, // s3ForcePathStyle: true, // signatureVersion: 'v4', - region: 'us-east-1' + region: process.env.S3_REGION || 'us-east-1' } } return s3Config diff --git a/utils/1click_image_scripts/template-docker-compose.yml b/utils/1click_image_scripts/template-docker-compose.yml index c6737fc36..0e2529d22 100644 --- a/utils/1click_image_scripts/template-docker-compose.yml +++ b/utils/1click_image_scripts/template-docker-compose.yml @@ -79,6 +79,7 @@ services: S3_SECRET_KEY: 'minioadmin' S3_BUCKET: 'speckle-server' S3_CREATE_BUCKET: 'true' + S3_REGION: '' # optional, defaults to 'us-east-1' FILE_SIZE_LIMIT_MB: 100 @@ -116,5 +117,6 @@ services: S3_ACCESS_KEY: 'minioadmin' S3_SECRET_KEY: 'minioadmin' S3_BUCKET: 'speckle-server' + S3_REGION: '' # optional, defaults to 'us-east-1' SPECKLE_SERVER_URL: 'http://speckle-server:3000' diff --git a/utils/helm/speckle-server/templates/fileimport_service/deployment.yml b/utils/helm/speckle-server/templates/fileimport_service/deployment.yml index 64c3b758b..e0a20cb6b 100644 --- a/utils/helm/speckle-server/templates/fileimport_service/deployment.yml +++ b/utils/helm/speckle-server/templates/fileimport_service/deployment.yml @@ -92,6 +92,8 @@ spec: secretKeyRef: name: {{ .Values.secretName }} key: s3_secret_key + - name: S3_REGION + value: "{{ .Values.s3.region }}" - name: FILE_IMPORT_TIME_LIMIT_MIN value: {{ .Values.fileimport_service.time_limit_min | quote }} diff --git a/utils/helm/speckle-server/templates/server/deployment.yml b/utils/helm/speckle-server/templates/server/deployment.yml index 59b585251..c9449eab6 100644 --- a/utils/helm/speckle-server/templates/server/deployment.yml +++ b/utils/helm/speckle-server/templates/server/deployment.yml @@ -141,6 +141,8 @@ spec: key: s3_secret_key - name: S3_CREATE_BUCKET value: "{{ .Values.s3.create_bucket }}" + - name: S3_REGION + value: "{{ .Values.s3.region }}" {{- end }} diff --git a/utils/helm/speckle-server/values.yaml b/utils/helm/speckle-server/values.yaml index 6597de9c9..5d89ceb83 100644 --- a/utils/helm/speckle-server/values.yaml +++ b/utils/helm/speckle-server/values.yaml @@ -27,6 +27,7 @@ s3: bucket: '' access_key: '' create_bucket: 'false' + region: '' # optional, defaults to 'us-east-1' # secret_key: secret -> s3_secret_key networkPolicy: # if network policy is enabled for any service, this provides the networkPolicy with the necessary details to allow egress connections to the s3 compatible storage externalToCluster: # use if the s3 compatible storage is external to the kubernetes cluster