ACS Helm Deployment with Microsoft 365 Connector
The Alfresco Microsoft 365 Connector enables Office Online Integration (OOI) within Alfresco Digital Workspace such that users can share and co-author Office documents stored within ACS using the Microsoft 365. By default, this feature is disabled.
This example describes how to deploy ACS onto EKS with OOI enabled.
Architecture
graph LR
classDef alf fill:#0b0,color:#fff
classDef aws fill:#fa0,color:#fff
classDef k8s fill:#326ce5,stroke:#326ce5,stroke-width:2px,color:#fff
classDef thrdP fill:#e098a6,color:#000
Client("👥 Clients")
subgraph Helm enterprise
direction LR
subgraph workloads
Deployment_alfresco-repository(Deployment: alfresco-repository):::alf
Deployment_connector_ms365(Deployment: connector-ms365):::alf
end
subgraph ingress
Ingress_connector_ms365(Ingress: connector-ms365):::k8s
end
end
subgraph ms365
onedrive(Onedrive Graph API)
onedrive-auth(Auth API)
end
Client --> Ingress_connector_ms365 --> Deployment_connector_ms365
Deployment_connector_ms365 --> onedrive
Deployment_connector_ms365 --> onedrive-auth
Deployment_connector_ms365 --> Deployment_alfresco-repository
Prerequisites
Follow the AWS Services example up until the Deploy section and return to this page.
Deploy
When we bring all this together we can deploy ACS using the command below (replacing all the YOUR-XZY
properties with the values gathered during the setup of the services):
helm install acs alfresco/alfresco-content-services \
--set alfresco-repository.persistence.enabled=false \
--set alfresco-transform-service.filestore.persistence.enabled=true \
--set alfresco-transform-service.filestore.persistence.storageClass="nfs-client" \
--set global.known_urls=https://acs.YOUR-DOMAIN-NAME \
--set global.search.sharedSecret:=$(openssl rand -hex 24) \
--set global.alfrescoRegistryPullSecrets=quay-registry-secret \
--set postgresql.enabled=false \
--set database.external=true \
--set database.driver="org.postgresql.Driver" \
--set database.url="jdbc:postgresql://YOUR-DATABASE-ENDPOINT:5432/" \
--set database.user="alfresco" \
--set database.password="YOUR-DATABASE-PASSWORD" \
--set activemq.enabled=false \
--set messageBroker.url="YOUR-MQ-ENDPOINT" \
--set messageBroker.user="alfresco" \
--set messageBroker.password="YOUR-MQ-PASSWORD" \
--set alfresco-connector-ms365.enabled=true \
--set-string alfresco-digital-workspace.env.APP_CONFIG_PLUGIN_MICROSOFT_ONLINE="true" \
--set alfresco-digital-workspace.env.APP_CONFIG_MICROSOFT_ONLINE_OOI_URL="https://YOUR-EXTERNAL-HOST/ooi-service/api/-default-/private/office-integration/versions/1/edit-sessions/" \
--set alfresco-digital-workspace.env.APP_CONFIG_MICROSOFT_ONLINE_CLIENTID="YOUR-ADW-MS-ONLINE-CLIENT-ID" \
--set alfresco-digital-workspace.env.APP_CONFIG_MICROSOFT_ONLINE_AUTHORITY="https://login.microsoftonline.com/ADW-MS-ONLINE-TENANT-ID" \
--set alfresco-digital-workspace.env.APP_CONFIG_MICROSOFT_ONLINE_REDIRECT="https://YOUR-EXTERNAL-HOST" \
--atomic \
--timeout 10m0s \
--namespace=alfresco
Note: as per the
helm install
example above, you will need to specify--set-string alfresco-digital-workspace.env.APP_CONFIG_PLUGIN_MICROSOFT_ONLINE="true"
otherwise you may see an error such as
Error: template: alfresco-content-services/charts/adw/templates/deployment.yaml:48:28: executing "alfresco-content-services/charts/adw/templates/deployment.yaml" at <$val>: wrong type for value; expected string; got bool