Swift publication on DX Cloud
The Swift publication module reads its configuration through MicroProfile Config, which resolves values from sources including magnolia.properties, JVM system properties, and environment variables.
On DX Cloud, you supply those same properties as entries in the env: section of your values.yml, for both the author and public instances.
The property keys are identical; only the delivery mechanism differs.
On DX Cloud, you do not provision your own S3 bucket. The bucket is provisioned for you by Magnolia DX Cloud support.
Instructions
Before configuring Swift versioning:
- Open a HELPDESK ticket requesting S3 bucket provisioning for Swift publication.
- Magnolia DX Cloud support provisions the bucket and returns the values you need for your Helm configuration (see the example below).
- Add those values to the
env:section of yourvalues.yml, then start the instance.
values.yml example
magnoliaAuthor:
env:
# Customer-chosen — which workspaces to version and retention depth
- name: swift.versioning.workspaces[0].name
value: website
- name: swift.versioning.workspaces[0].maxVersions
value: "10"
# Credentials — defined by DX Cloud support as GitLab CI/CD variables; referenced here, not defined by you
- name: swift.versioning.s3.access-key-id <1>
value: {{ .Env.AWS_ACCESS_KEY_ID | quote }}
- name: swift.versioning.s3.secret-access-key <1>
value: {{ .Env.AWS_SECRET_ACCESS_KEY | quote }}
# Bucket details — confirmed by DX Cloud support
- name: swift.versioning.s3.bucket
value: <bucket name from DX Cloud support>
- name: swift.versioning.s3.region
value: <region from DX Cloud support>
- name: swift.versioning.s3.rootFolder
value: your-folder-{{ .Env.DEPLOYMENT | quote }}
magnoliaPublic:
env:
# Customer-chosen — which workspaces to version and retention depth
- name: swift.versioning.workspaces[0].name
value: website
- name: swift.versioning.workspaces[0].maxVersions
value: "10"
# Credentials — defined by DX Cloud support as GitLab CI/CD variables; referenced here, not defined by you
- name: swift.versioning.s3.access-key-id <1>
value: {{ .Env.AWS_ACCESS_KEY_ID | quote }}
- name: swift.versioning.s3.secret-access-key <1>
value: {{ .Env.AWS_SECRET_ACCESS_KEY | quote }}
# Bucket details — confirmed by DX Cloud support
- name: swift.versioning.s3.bucket
value: <bucket name from DX Cloud support>
- name: swift.versioning.s3.region
value: <region from DX Cloud support>
- name: swift.versioning.s3.rootFolder
value: your-folder-{{ .Env.DEPLOYMENT | quote }}
The swift.versioning.s3.access-key-id and swift.versioning.s3.secret-access-key values reference the AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY GitLab CI/CD variables, which Magnolia DX Cloud support defines for your project during bucket provisioning.
You reference these variables in your values.yml.
You do not define them, and your own AWS credentials are not used.