diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 0000000000..8303247a39
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,8 @@
+.* eol=crlf
+*.html eol=crlf
+*.java eol=crlf
+*.txt eol=crlf
+*.css eol=crlf
+*.xml eol=crlf
+*.js eol=crlf
+*.properties eol=crlf
\ No newline at end of file
diff --git a/.gitignore b/.gitignore
index 15e7a949a8..2d6c2f8ac5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,37 +1,37 @@
-*.class
-
-# Eclipse
-.classpath
-.settings
-.project
-
-# Intellij
-.idea/
-*.iml
-*.iws
-
-# Mac
-.DS_Store
-
-# Maven
-target
-*.log
-*.log.*
-
-# Mobile Tools for Java (J2ME)
-
-.mtj
-.tmp/
-
-# Package Files #
-
-*.jar
-*.war
-*.ear
-
-# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
-
-hs_err_pid*
-
-# Alfresco
+*.class
+
+# Eclipse
+.classpath
+.settings
+.project
+
+# Intellij
+.idea/
+*.iml
+*.iws
+
+# Mac
+.DS_Store
+
+# Maven
+target
+*.log
+*.log.*
+
+# Mobile Tools for Java (J2ME)
+
+.mtj
+.tmp/
+
+# Package Files #
+
+*.jar
+*.war
+*.ear
+
+# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
+
+hs_err_pid*
+
+# Alfresco
alf_data/
\ No newline at end of file
diff --git a/README.md b/README.md
new file mode 100644
index 0000000000..846049e2a7
--- /dev/null
+++ b/README.md
@@ -0,0 +1,92 @@
+# Full Community Packaging for Alfresco Content Services
+
+This project contains the code for packaging the entire Alfresco Content Services product Community edition.
+
+## General
+### Build:
+* ```mvn clean install``` in the root of the project will build everything.
+Note: It is not easy to build the full installer locally (and impossible on Windows) so, most likely you don't want to create the installer locally. Comment out the installer in the root pom.xml in order to avoid building the installer locally.
+
+## Docker-compose & Kubernetes
+Build and start Alfresco Content Services Community using docker-compose or Kubernetes, containing:
+1. Alfresco Repository for community, with:
+1.1. Alfresco Share Services amp
+1.2. Alfresco AOS amp
+1.3. Alfresco vti-bin war - that helps with AOS integration
+1.4. Alfresco Google Docs Repo amp
+2. Alfresco Share, with:
+2.1 Alfresco Google Docks Share amp
+3. A Postgres DB
+4. Alfresco Solr6
+
+### Docker Compose Instructions:
+#### Prerequisite:
+* Docker installed locally
+* Access to docker-internal.alfresco.com and quay.io repositories - Platform Services team is working on getting the images in [Docker Hub](https://hub.docker.com/u/alfresco/) registry.
+
+#### Steps
+1. Go to **docker-compose** folder
+2. Run ```docker-compose up```
+3. Check that everything starts up with the browser: http://localhost:8082/alfresco and http://localhost:8080/share and http://localhost:8083/solr/
+
+#### Notes:
+* Make sure the local machine has the ports (5432, 8080, 8082, 8083) set up in the docker-compose.yml file free.
+* The images used in the docker-compose.yml are images that are build in the 'docker-alfresco' and 'docker-share' subfolders of the project - see the relevant sections below
+* If you don't have access to the docker-internal.alfresco.com and quay.io images, or if you want custom data in your docker images, you can use the 'docker-alfresco' and 'docker-share' folders to customize and build your customized docker images that are used in the docker-compose project. Just make sure you use proper tags when you create the images and update the docker-compose.yml with these proper tags that you created.
+
+### Kubernetes Instructions:
+#### Prerequisite:
+* Deploy the infrastructure chart as specified in https://github.com/Alfresco/alfresco-infrastructure-deployment
+* Access to docker-internal.alfresco.com and quay.io repositories - Platform Services team is working on getting the images in [Docker Hub](https://hub.docker.com/u/alfresco/) registry.
+* A kubernetes secret (quay-registry-secret) with the above mentioned credentials created in your cluster.
+
+**Note!** You do not need to pull this repo in order to deploy Alfresco Content Services in Kubernetes
+
+#### Steps
+1. Run ```helm repo add alfresco-incubator http://kubernetes-charts.alfresco.com/incubator``` to add the Alfresco Kubernetes repository to helm.
+2. Deploy Alfresco Content Services:
+
+```bash
+#On MINIKUBE
+helm install alfresco-incubator/alfresco-content-services \
+--set dnsaddress="http://$ELBADDRESS:$INFRAPORT" \
+--namespace=$DESIREDNAMESPACE
+#On AWS
+helm install alfresco-incubator/alfresco-content-services \
+--set dnsaddress="http://$ELBADDRESS" \
+--namespace=$DESIREDNAMESPACE
+```
+
+3. After deploying the helm chart you will get information for obtaining the URL for repository, share and solr.
+
+#### Notes:
+
+* The images used in the alfresco-content-services/values.yml are images that are built in the 'docker-alfresco' and 'docker-share' subfolders of the project - see the relevant sections below.
+* If you don't have access to the docker-internal.alfresco.com and quay.io images, or if you want custom data in your docker images, you can use the 'docker-alfresco' and 'docker-share' folders to customize and build your customized docker images that are used in the docker-compose project. Just make sure you build them in the minikube docker environment and update the alfresco-content-services/values.yml with the tags that you created.
+* You can also change those values when deploying the helm chart by running ```helm install alfresco-incubator/alfresco-content-services --set repository.image.tag="yourTag" --set share.image.tag="yourTag"```.
+* Hint: Run ```eval $(minikube docker-env)``` to switch to your minikube docker environment on osx.
+
+## Docker images
+These images are used to build the images used by the docker-compose.yml project to bring up an ACS Community, similar to what the installer did/does.
+The images are based on *pure* _content services_ and _share_ images done by the _acs-packaging_ and _share_ projects and adds the amps and settings necessary for running the images in a similar fashion to what the ACS deployment with the installer did/does.
+
+### Docker Alfresco
+1. Go to docker-alfreco folder
+2. Run *mvn clean install* if you have not done so
+3. Build the docker image: ```docker build . --tag my-acs-repo:6.0.test```
+4. Check that the image has been created locally with your desired name/tag: ```docker images```
+
+### Docker Share
+1. Go to docker-share folder
+2. Run *mvn clean install* if you have not done so
+3. Build the docker image: ```docker build . --tag my-share:5.2.test```
+4. Check that the image has been created locally with your desired name/tag: ```docker images```
+
+
+## Distribution zip
+
+In this folder the distribution zip is build. It contains all the war files, libraries, certificates and settings files you need to deploy alfresco on the supported application servers.
+
+## Installer
+
+In this folder the installer binaries are built for all the supported platforms.
diff --git a/distribution/pom.xml b/distribution/pom.xml
new file mode 100644
index 0000000000..9691a05a27
--- /dev/null
+++ b/distribution/pom.xml
@@ -0,0 +1,117 @@
+
+ 4.0.0
+
+ org.alfresco
+ full-community-packaging
+ 6.0.4-SNAPSHOT
+ ../pom.xml
+
+ alfresco-content-services-community-full-distribution
+ jar
+ Alfresco Content Services Community Full Distribution
+
+
+
+ 8080
+
+
+
+
+ org.alfresco
+ alfresco-content-services-community-distribution
+ zip
+
+
+ *
+ *
+
+
+
+
+ org.alfresco
+ alfresco-solr4-distribution
+ zip
+
+
+ *
+ *
+
+
+
+
+ org.alfresco
+ alfresco-content-services-share-distribution
+ zip
+
+
+ *
+ *
+
+
+
+
+
+
+ ${project.artifactId}-${installer.version.name}
+
+
+ src/main/resources
+ true
+
+
+
+
+ maven-dependency-plugin
+
+
+ extract-keystore
+ generate-resources
+
+ unpack
+
+
+
+
+ org.alfresco
+ alfresco-content-services-community-distribution
+ zip
+
+
+ org.alfresco
+ alfresco-solr4-distribution
+ zip
+ ${project.build.directory}/dependency/solr4
+
+
+ org.alfresco
+ alfresco-content-services-share-distribution
+ zip
+
+
+
+
+
+
+
+
+ maven-assembly-plugin
+
+
+ make-assembly
+ package
+
+ single
+
+
+ false
+
+ src/assembly/full-distribution.xml
+
+
+
+
+
+
+
+
+
diff --git a/distribution/src/assembly/full-distribution.xml b/distribution/src/assembly/full-distribution.xml
new file mode 100644
index 0000000000..d07810582d
--- /dev/null
+++ b/distribution/src/assembly/full-distribution.xml
@@ -0,0 +1,56 @@
+
+ distribution
+
+ false
+
+
+ zip
+
+
+
+
+
+ target/classes
+
+
+
+
+
+ ${project.build.directory}/dependency/alfresco-content-services-community-distribution-${dependency.acs-community-packaging.version}
+
+
+
+
+
+ ${project.build.directory}/dependency/solr4
+ solr4
+
+ solr4.war
+
+
+
+ ${project.build.directory}/dependency/solr4
+ web-server/webapps
+
+ solr4.war
+
+
+
+
+
+ ${project.build.directory}/dependency/alfresco-content-services-share-distribution-${alfresco.share.version}
+
+
+ web-server/**
+ modules/**
+ amps/**
+
+
+
+ ${project.build.directory}/dependency/alfresco-content-services-share-distribution-${alfresco.share.version}/web-extension-samples
+ web-server/shared/classes/alfresco/web-extension
+
+
+
+
diff --git a/distribution/src/main/resources/README.txt b/distribution/src/main/resources/README.txt
new file mode 100644
index 0000000000..7cd221d0dd
--- /dev/null
+++ b/distribution/src/main/resources/README.txt
@@ -0,0 +1,8 @@
+Alfresco Community (Build: ${installer.version.name})
+===============================
+
+Contains:
+ - Alfresco Content Services Community: ${dependency.acs-community-packaging.version}
+ - Alfresco Share: ${alfresco.share.version}
+
+For users of Alfresco Community Edition, more information on this release is available at https://community.alfresco.com/community/ecm
diff --git a/docker-alfresco/Dockerfile b/docker-alfresco/Dockerfile
new file mode 100644
index 0000000000..79455806a9
--- /dev/null
+++ b/docker-alfresco/Dockerfile
@@ -0,0 +1,8 @@
+FROM quay.io/alfresco/alfresco-content-services-community:latest
+
+RUN mkdir -p /usr/local/tomcat/amps
+
+COPY target/amps /usr/local/tomcat/amps
+
+RUN java -jar /usr/local/tomcat/alfresco-mmt/alfresco-mmt*.jar install \
+ /usr/local/tomcat/amps /usr/local/tomcat/webapps/alfresco -directory -nobackup -force
diff --git a/docker-alfresco/pom.xml b/docker-alfresco/pom.xml
new file mode 100644
index 0000000000..eac9c59af6
--- /dev/null
+++ b/docker-alfresco/pom.xml
@@ -0,0 +1,89 @@
+
+ 4.0.0
+ content-services-community-full-docker-alfresco
+ ACS Community full Docker image builder for Alfresco
+ pom
+
+
+ org.alfresco
+ full-community-packaging
+ 6.0.4-SNAPSHOT
+ ../pom.xml
+
+
+
+
+ org.alfresco
+ alfresco-share-services
+ ${alfresco.share.version}
+ amp
+
+
+ org.alfresco.aos-module
+ alfresco-aos-module
+ ${alfresco.aos-module.version}
+ amp
+
+
+ org.alfresco.aos-module
+ alfresco-vti-bin
+ ${alfresco.aos-module.version}
+ war
+
+
+ org.alfresco.integrations
+ alfresco-googledocs-repo
+ ${alfresco.googledocs.version}
+ amp
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-dependency-plugin
+ 3.0.2
+
+
+ copy-resources
+ process-resources
+
+ copy
+
+
+
+
+ org.alfresco
+ alfresco-share-services
+ ${alfresco.share.version}
+ amp
+ false
+ ${project.build.directory}/amps
+
+
+ org.alfresco.aos-module
+ alfresco-aos-module
+ ${alfresco.aos-module.version}
+ amp
+ false
+ ${project.build.directory}/amps
+
+
+ org.alfresco.integrations
+ alfresco-googledocs-repo
+ ${alfresco.googledocs.version}
+ amp
+ false
+ ${project.build.directory}/amps
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/docker-compose/.env b/docker-compose/.env
new file mode 100644
index 0000000000..928384fa73
--- /dev/null
+++ b/docker-compose/.env
@@ -0,0 +1,2 @@
+ALFRESCO_TAG=latest
+SHARE_TAG=5.2.X
diff --git a/docker-compose/docker-compose.yml b/docker-compose/docker-compose.yml
new file mode 100644
index 0000000000..30e6bbe00a
--- /dev/null
+++ b/docker-compose/docker-compose.yml
@@ -0,0 +1,50 @@
+version: "3"
+
+services:
+ alfresco:
+ image: quay.io/alfresco/alfresco-full-content-services-community:${ALFRESCO_TAG}
+ environment:
+ JAVA_OPTS : "
+ -Ddb.driver=org.postgresql.Driver
+ -Ddb.username=alfresco
+ -Ddb.password=alfresco
+ -Ddb.url=jdbc:postgresql://postgres:5432/alfresco
+ -Dsolr.host=solr6
+ -Dsolr.port=8983
+ -Dsolr.secureComms=none
+ -Dsolr.base.url=/solr
+ -Dindex.subsystem.name=solr6
+ "
+ ports:
+ - 8082:8080 #Browser port
+
+ share:
+ image: quay.io/alfresco/alfresco-full-share:${SHARE_TAG}
+ environment:
+ - REPO_HOST=alfresco
+ - REPO_PORT=8080
+ ports:
+ - 8080:8080
+
+ postgres:
+ image: docker.io/library/postgres:9.4.12
+ environment:
+ - POSTGRES_PASSWORD=alfresco
+ - POSTGRES_USER=alfresco
+ - POSTGRES_DB=alfresco
+ ports:
+ - 5432:5432
+
+ solr6:
+ image: quay.io/alfresco/search-services:1.2.0-SNAPSHOT
+ environment:
+ #Solr needs to know how to register itself with Alfresco
+ - SOLR_ALFRESCO_HOST=alfresco
+ - SOLR_ALFRESCO_PORT=8080
+ #Alfresco needs to know how to call solr
+ - SOLR_SOLR_HOST=solr6
+ - SOLR_SOLR_PORT=8983
+ #Create the default alfresco and archive cores
+ - SOLR_CREATE_ALFRESCO_DEFAULTS=alfresco,archive
+ ports:
+ - 8083:8983 #Browser port
diff --git a/docker-share/Dockerfile b/docker-share/Dockerfile
new file mode 100644
index 0000000000..6fff3d816d
--- /dev/null
+++ b/docker-share/Dockerfile
@@ -0,0 +1,9 @@
+FROM quay.io/alfresco/alfresco-share:5.2.X
+
+RUN mkdir -p /usr/local/tomcat/amps_share
+
+COPY target/alfresco-mmt/* /usr/local/tomcat/alfresco-mmt/
+COPY target/amps_share /usr/local/tomcat/amps_share
+
+RUN java -jar /usr/local/tomcat/alfresco-mmt/alfresco-mmt*.jar install \
+ /usr/local/tomcat/amps_share /usr/local/tomcat/webapps/share -directory -nobackup -force
\ No newline at end of file
diff --git a/docker-share/pom.xml b/docker-share/pom.xml
new file mode 100644
index 0000000000..28721647fa
--- /dev/null
+++ b/docker-share/pom.xml
@@ -0,0 +1,68 @@
+
+ 4.0.0
+ content-services-community-full-docker-share
+ ACS Community full Docker image builder for Share
+ pom
+
+
+ org.alfresco
+ full-community-packaging
+ 6.0.4-SNAPSHOT
+ ../pom.xml
+
+
+
+
+ org.alfresco
+ alfresco-mmt
+ ${dependency.alfresco-mmt.version}
+
+
+ org.alfresco.integrations
+ alfresco-googledocs-share
+ ${alfresco.googledocs.version}
+ amp
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-dependency-plugin
+ 3.0.2
+
+
+ copy-resources
+ process-resources
+
+ copy
+
+
+
+
+ org.alfresco
+ alfresco-mmt
+ ${dependency.alfresco-mmt.version}
+ jar
+ false
+ ${project.build.directory}/alfresco-mmt
+
+
+ org.alfresco.integrations
+ alfresco-googledocs-share
+ ${alfresco.googledocs.version}
+ amp
+ false
+ ${project.build.directory}/amps_share
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/helm/alfresco-content-services/.helmignore b/helm/alfresco-content-services/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/helm/alfresco-content-services/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/helm/alfresco-content-services/Chart.yaml b/helm/alfresco-content-services/Chart.yaml
new file mode 100644
index 0000000000..9091863fda
--- /dev/null
+++ b/helm/alfresco-content-services/Chart.yaml
@@ -0,0 +1,13 @@
+name: alfresco-content-services
+version: 0.0.1
+description: A Helm chart for deploying Alfresco Content Services
+keywords:
+- content
+- content services
+- alfresco
+- community
+- alfresco community
+home: https://www.alfresco.com
+sources:
+- https://github.com/Alfresco/acs-community-full-packaging/tree/master/helm
+icon: https://avatars0.githubusercontent.com/u/391127?s=200&v=4
\ No newline at end of file
diff --git a/helm/alfresco-content-services/requirements.yaml b/helm/alfresco-content-services/requirements.yaml
new file mode 100644
index 0000000000..c9adec13f6
--- /dev/null
+++ b/helm/alfresco-content-services/requirements.yaml
@@ -0,0 +1,10 @@
+
+dependencies:
+- name: postgresql
+ version: 0.8.5
+ repository: https://kubernetes-charts.storage.googleapis.com/
+ condition: postgresql.enabled
+- name: nginx-ingress
+ version: ^0.8.21
+ repository: https://kubernetes-charts.storage.googleapis.com
+ condition: alfresco-content-services.nginx-ingress.enabled
\ No newline at end of file
diff --git a/helm/alfresco-content-services/templates/NOTES.txt b/helm/alfresco-content-services/templates/NOTES.txt
new file mode 100644
index 0000000000..5bffa0a5b2
--- /dev/null
+++ b/helm/alfresco-content-services/templates/NOTES.txt
@@ -0,0 +1,16 @@
+
+{{ if .Values.dnsaddress }}
+
+You can access all components of Alfresco Content Services using the same root address, but different paths as follows:
+
+ Content: {{ .Values.dnsaddress }}/alfresco
+ Share: {{ .Values.dnsaddress }}/share
+ Solr: {{ .Values.dnsaddress }}/solr
+
+{{ else }}
+
+If you have a specific DNS address for the cluster please run the following commands to get the application paths:
+
+helm upgrade --reuse-values {{ .Release.Name }} --set dnsaddress="Your DNS address ex: http://myenv.com" alfresco-incubator/alfresco-content-services
+
+{{ end }}
diff --git a/helm/alfresco-content-services/templates/_helpers.tpl b/helm/alfresco-content-services/templates/_helpers.tpl
new file mode 100644
index 0000000000..272ae223bd
--- /dev/null
+++ b/helm/alfresco-content-services/templates/_helpers.tpl
@@ -0,0 +1,53 @@
+{{/*
+Create a default fully qualified name.
+We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
+*/}}
+{{- define "content-services.fullname" -}}
+{{- $name := default .Chart.Name .Values.nameOverride -}}
+{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
+{{- end -}}
+
+{{/*
+Get the Database hostname depending on the Database type
+*/}}
+{{- define "database.hostname" -}}
+{{- if eq ( .Values.database.type | toString ) "postgresql" }}
+{{- printf "%s-%s" .Release.Name .Values.postgresql.nameOverride -}}
+{{- end }}
+{{- end -}}
+
+{{/*
+Get the Database port depending on the Database type
+*/}}
+{{- define "database.port" -}}
+{{- if eq ( .Values.database.type | toString ) "postgresql" }}
+{{- print .Values.postgresql.service.port -}}
+{{- end }}
+{{- end -}}
+
+{{/*
+Create the Database driver depending on the Database type
+*/}}
+{{- define "database.driver" -}}
+{{- if eq ( .Values.database.type | toString ) "postgresql" }}
+{{- print .Values.postgresql.driver -}}
+{{- end }}
+{{- end -}}
+
+{{/*
+Get the Database user depending on the Database type
+*/}}
+{{- define "database.user" -}}
+{{- if eq ( .Values.database.type | toString ) "postgresql" }}
+{{- print .Values.postgresql.postgresUser -}}
+{{- end }}
+{{- end -}}
+
+{{/*
+Get the Database password depending on the Database type
+*/}}
+{{- define "database.password" }}
+{{- if eq ( .Values.database.type | toString ) "postgresql" -}}
+{{- print .Values.postgresql.postgresPassword -}}
+{{- end }}
+{{- end -}}
diff --git a/helm/alfresco-content-services/templates/config-repository.yaml b/helm/alfresco-content-services/templates/config-repository.yaml
new file mode 100644
index 0000000000..5f16955e51
--- /dev/null
+++ b/helm/alfresco-content-services/templates/config-repository.yaml
@@ -0,0 +1,25 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ template "content-services.fullname" . }}-repository-configmap
+ labels:
+ heritage: {{ .Release.Service }}
+ release: {{ .Release.Name }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+data:
+ {{- if .Values.repository.environment }}
+ {{- range $key, $val := .Values.repository.environment }}
+ {{ $key }}: {{ $val | quote }}
+ {{- end }}
+ {{- end }}
+ RELEASE_NAME: {{ .Release.Name }}
+ CATALINA_OPTS: "-Dalfresco.host={{ template "content-services.fullname" . }}-repository
+ -Dalfresco.port={{ .Values.repository.service.externalPort }}
+ -Dshare.host={{ template "content-services.fullname" . }}-share
+ -Dshare.port={{ .Values.share.service.externalPort }}
+ -Ddb.driver={{ template "database.driver" . }}
+ -Ddb.username={{ template "database.user" . }}
+ -Ddb.password={{ template "database.password" . }}
+ -Ddb.url=jdbc:{{ .Values.database.type }}://{{ template "database.hostname" . }}:{{ template "database.port" . }}/{{ .Values.postgresql.postgresDatabase }}
+ -Dsolr.host={{ template "content-services.fullname" . }}-solr
+ -Dsolr.port={{ .Values.solr.service.externalPort }}"
diff --git a/helm/alfresco-content-services/templates/config-share.yaml b/helm/alfresco-content-services/templates/config-share.yaml
new file mode 100644
index 0000000000..078ecbcc90
--- /dev/null
+++ b/helm/alfresco-content-services/templates/config-share.yaml
@@ -0,0 +1,11 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ template "content-services.fullname" . }}-share-configmap
+ labels:
+ heritage: {{ .Release.Service }}
+ release: {{ .Release.Name }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+data:
+ REPO_HOST: "{{ template "content-services.fullname" . }}-repository"
+ REPO_PORT: "{{ .Values.repository.service.externalPort }}"
\ No newline at end of file
diff --git a/helm/alfresco-content-services/templates/config-solr.yaml b/helm/alfresco-content-services/templates/config-solr.yaml
new file mode 100644
index 0000000000..d24bfb4264
--- /dev/null
+++ b/helm/alfresco-content-services/templates/config-solr.yaml
@@ -0,0 +1,18 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ template "content-services.fullname" . }}-solr-configmap
+ labels:
+ heritage: {{ .Release.Service }}
+ release: {{ .Release.Name }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+data:
+ SOLR_ALFRESCO_HOST: "{{ template "content-services.fullname" . }}-repository"
+ SOLR_ALFRESCO_PORT: "{{ .Values.repository.service.externalPort }}"
+ SOLR_SOLR_HOST: "{{ template "content-services.fullname" . }}-solr"
+ SOLR_SOLR_PORT: "{{ .Values.solr.image.internalPort }}"
+ {{- if .Values.solr.environment }}
+ {{- range $key, $val := .Values.solr.environment }}
+ {{ $key }}: {{ $val | quote }}
+ {{- end }}
+ {{- end }}
\ No newline at end of file
diff --git a/helm/alfresco-content-services/templates/deployment-repository.yaml b/helm/alfresco-content-services/templates/deployment-repository.yaml
new file mode 100644
index 0000000000..84ecceb699
--- /dev/null
+++ b/helm/alfresco-content-services/templates/deployment-repository.yaml
@@ -0,0 +1,34 @@
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ template "content-services.fullname" . }}-repository
+ labels:
+ app: {{ template "content-services.fullname" . }}-repository
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.repository.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ template "content-services.fullname" . }}-repository
+ release: {{ .Release.Name }}
+ spec:
+ imagePullSecrets:
+ - name: {{ .Values.registryPullSecrets }}
+ containers:
+ - name: {{ .Chart.Name }}
+ image: "{{ .Values.repository.image.repository }}:{{ .Values.repository.image.tag }}"
+ imagePullPolicy: {{ .Values.repository.image.pullPolicy }}
+ envFrom:
+ - configMapRef:
+ name: {{ template "content-services.fullname" . }}-repository-configmap
+ ports:
+ - containerPort: {{ .Values.repository.image.internalPort }}
+ resources:
+{{ toYaml .Values.repository.resources | indent 12 }}
+ initContainers:
+ - name: init-db
+ image: busybox
+ command: ['sh', '-c', 'until nc -w1 {{ template "database.hostname" . }} {{ template "database.port" . }}; do echo "waiting for {{ .Values.database.type }}"; sleep 2; done;']
diff --git a/helm/alfresco-content-services/templates/deployment-share.yaml b/helm/alfresco-content-services/templates/deployment-share.yaml
new file mode 100644
index 0000000000..6f268a30f4
--- /dev/null
+++ b/helm/alfresco-content-services/templates/deployment-share.yaml
@@ -0,0 +1,30 @@
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ template "content-services.fullname" . }}-share
+ labels:
+ app: {{ template "content-services.fullname" . }}-share
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.share.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ template "content-services.fullname" . }}-share
+ release: {{ .Release.Name }}
+ spec:
+ imagePullSecrets:
+ - name: {{ .Values.registryPullSecrets }}
+ containers:
+ - name: {{ .Chart.Name }}
+ image: "{{ .Values.share.image.repository }}:{{ .Values.share.image.tag }}"
+ imagePullPolicy: {{ .Values.share.image.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.share.image.internalPort }}
+ resources:
+{{ toYaml .Values.share.resources | indent 12 }}
+ envFrom:
+ - configMapRef:
+ name: {{ template "content-services.fullname" . }}-share-configmap
\ No newline at end of file
diff --git a/helm/alfresco-content-services/templates/deployment-solr.yaml b/helm/alfresco-content-services/templates/deployment-solr.yaml
new file mode 100644
index 0000000000..7a8901e9c2
--- /dev/null
+++ b/helm/alfresco-content-services/templates/deployment-solr.yaml
@@ -0,0 +1,30 @@
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ template "content-services.fullname" . }}-solr
+ labels:
+ app: {{ template "content-services.fullname" . }}-solr
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.solr.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ template "content-services.fullname" . }}-solr
+ release: {{ .Release.Name }}
+ spec:
+ imagePullSecrets:
+ - name: {{ .Values.registryPullSecrets }}
+ containers:
+ - name: {{ .Chart.Name }}
+ image: "{{ .Values.solr.image.repository }}:{{ .Values.solr.image.tag }}"
+ imagePullPolicy: {{ .Values.solr.image.pullPolicy }}
+ envFrom:
+ - configMapRef:
+ name: {{ template "content-services.fullname" . }}-solr-configmap
+ ports:
+ - containerPort: {{ .Values.solr.image.internalPort }}
+ resources:
+{{ toYaml .Values.solr.resources | indent 12 }}
\ No newline at end of file
diff --git a/helm/alfresco-content-services/templates/ingress-repository.yaml b/helm/alfresco-content-services/templates/ingress-repository.yaml
new file mode 100644
index 0000000000..c5b56d9824
--- /dev/null
+++ b/helm/alfresco-content-services/templates/ingress-repository.yaml
@@ -0,0 +1,15 @@
+apiVersion: extensions/v1beta1
+kind: Ingress
+metadata:
+ name: {{ template "content-services.fullname" . }}-repository
+ annotations:
+ kubernetes.io/ingress.class: "nginx"
+ ingress.kubernetes.io/ssl-redirect: "false"
+spec:
+ rules:
+ - http:
+ paths:
+ - path: {{ .Values.repository.ingress.path }}
+ backend:
+ serviceName: {{ template "content-services.fullname" . }}-repository
+ servicePort: {{ .Values.repository.service.externalPort }}
\ No newline at end of file
diff --git a/helm/alfresco-content-services/templates/ingress-share.yaml b/helm/alfresco-content-services/templates/ingress-share.yaml
new file mode 100644
index 0000000000..c04f8ea2b6
--- /dev/null
+++ b/helm/alfresco-content-services/templates/ingress-share.yaml
@@ -0,0 +1,15 @@
+apiVersion: extensions/v1beta1
+kind: Ingress
+metadata:
+ name: {{ template "content-services.fullname" . }}-share
+ annotations:
+ kubernetes.io/ingress.class: "nginx"
+ ingress.kubernetes.io/ssl-redirect: "false"
+spec:
+ rules:
+ - http:
+ paths:
+ - path: {{ .Values.share.ingress.path }}
+ backend:
+ serviceName: {{ template "content-services.fullname" . }}-share
+ servicePort: {{ .Values.share.service.externalPort }}
\ No newline at end of file
diff --git a/helm/alfresco-content-services/templates/ingress-solr.yaml b/helm/alfresco-content-services/templates/ingress-solr.yaml
new file mode 100644
index 0000000000..64a6d16af0
--- /dev/null
+++ b/helm/alfresco-content-services/templates/ingress-solr.yaml
@@ -0,0 +1,15 @@
+apiVersion: extensions/v1beta1
+kind: Ingress
+metadata:
+ name: {{ template "content-services.fullname" . }}-solr
+ annotations:
+ kubernetes.io/ingress.class: "nginx"
+ ingress.kubernetes.io/ssl-redirect: "false"
+spec:
+ rules:
+ - http:
+ paths:
+ - path: {{ .Values.solr.ingress.path }}
+ backend:
+ serviceName: {{ template "content-services.fullname" . }}-solr
+ servicePort: {{ .Values.solr.service.externalPort }}
\ No newline at end of file
diff --git a/helm/alfresco-content-services/templates/svc-repository.yaml b/helm/alfresco-content-services/templates/svc-repository.yaml
new file mode 100644
index 0000000000..848830ce00
--- /dev/null
+++ b/helm/alfresco-content-services/templates/svc-repository.yaml
@@ -0,0 +1,18 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ template "content-services.fullname" . }}-repository
+ labels:
+ app: {{ template "content-services.fullname" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.repository.service.type }}
+ ports:
+ - port: {{ .Values.repository.service.externalPort }}
+ targetPort: {{ .Values.repository.image.internalPort }}
+ name: {{ .Values.repository.service.name }}
+ selector:
+ app: {{ template "content-services.fullname" . }}-repository
+ release: {{ .Release.Name }}
\ No newline at end of file
diff --git a/helm/alfresco-content-services/templates/svc-share.yaml b/helm/alfresco-content-services/templates/svc-share.yaml
new file mode 100644
index 0000000000..15f4bd6a87
--- /dev/null
+++ b/helm/alfresco-content-services/templates/svc-share.yaml
@@ -0,0 +1,18 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ template "content-services.fullname" . }}-share
+ labels:
+ app: {{ template "content-services.fullname" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.share.service.type }}
+ ports:
+ - port: {{ .Values.share.service.externalPort }}
+ targetPort: {{ .Values.share.image.internalPort }}
+ name: {{ .Values.share.service.name }}
+ selector:
+ app: {{ template "content-services.fullname" . }}-share
+ release: {{ .Release.Name }}
\ No newline at end of file
diff --git a/helm/alfresco-content-services/templates/svc-solr.yaml b/helm/alfresco-content-services/templates/svc-solr.yaml
new file mode 100644
index 0000000000..8e4d8e7d9b
--- /dev/null
+++ b/helm/alfresco-content-services/templates/svc-solr.yaml
@@ -0,0 +1,18 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ template "content-services.fullname" . }}-solr
+ labels:
+ app: {{ template "content-services.fullname" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.solr.service.type }}
+ ports:
+ - port: {{ .Values.solr.service.externalPort }}
+ targetPort: {{ .Values.solr.image.internalPort }}
+ name: {{ .Values.solr.service.name }}
+ selector:
+ app: {{ template "content-services.fullname" . }}-solr
+ release: {{ .Release.Name }}
\ No newline at end of file
diff --git a/helm/alfresco-content-services/values.yaml b/helm/alfresco-content-services/values.yaml
new file mode 100644
index 0000000000..9d81af9e9f
--- /dev/null
+++ b/helm/alfresco-content-services/values.yaml
@@ -0,0 +1,91 @@
+# Default values for alfresco-acs.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+
+registryPullSecrets: quay-registry-secret
+
+repository:
+ replicaCount: 1
+ image:
+ repository: quay.io/alfresco/alfresco-full-content-services-community
+ tag: "latest"
+ pullPolicy: Always
+ internalPort: 8080
+ service:
+ name: alfresco
+ type: NodePort
+ externalPort: 80
+ ingress:
+ path: /alfresco
+ environment:
+ JAVA_OPTS: " -Dsolr.base.url=/solr
+ -Dsolr.secureComms=none
+ -Dindex.subsystem.name=solr6"
+ resources:
+ requests:
+ memory: "1000Mi"
+ limits:
+ memory: "4000Mi"
+
+share:
+ replicaCount: 1
+ image:
+ repository: quay.io/alfresco/alfresco-full-share
+ tag: "5.2.X"
+ pullPolicy: Always
+ internalPort: 8080
+ service:
+ name: share
+ type: NodePort
+ externalPort: 80
+ ingress:
+ path: /share
+ resources:
+ requests:
+ memory: "500Mi"
+ limits:
+ memory: "1000Mi"
+
+solr:
+ replicaCount: 1
+ image:
+ repository: quay.io/alfresco/search-services
+ tag: "1.2.0-SNAPSHOT"
+ pullPolicy: IfNotPresent
+ internalPort: 8983
+ service:
+ name: solr
+ type: NodePort
+ externalPort: 80
+ ingress:
+ path: /solr
+ environment:
+ SOLR_CREATE_ALFRESCO_DEFAULTS: alfresco,archive
+ resources:
+ requests:
+ memory: "250Mi"
+ limits:
+ memory: "500Mi"
+
+database:
+ type: postgresql
+
+postgresql:
+ ## If true, install the postgresql chart alongside Alfresco Content Services
+ enabled: true
+ nameOverride: postgresql-acs
+ imageTag: "9.4.12"
+ postgresUser: alfresco
+ postgresPassword: alfresco
+ postgresDatabase: alfresco
+ persistence:
+ existingClaim: "alfresco-volume-claim"
+ subPath: "alfresco-content-services/database-data"
+ resources:
+ requests:
+ memory: "250Mi"
+ limits:
+ memory: "500Mi"
+ driver: org.postgresql.Driver
+
+replicaCount: 1
diff --git a/public-javadoc/pom.xml b/public-javadoc/pom.xml
new file mode 100644
index 0000000000..de218a1014
--- /dev/null
+++ b/public-javadoc/pom.xml
@@ -0,0 +1,100 @@
+
+ 4.0.0
+ alfresco-public-javadoc
+ Alfresco Content Services Public API Javadoc
+
+ org.alfresco
+ full-community-packaging
+ 6.0.4-SNAPSHOT
+ ../pom.xml
+
+ pom
+
+
+ 1.6.1
+
+
+
+
+
+ org.alfresco
+ alfresco-remote-api
+
+
+ org.alfresco
+ share
+ classes
+ ${alfresco.share.version}
+
+
+
+
+ com.docflex
+ docflex-alfresco-license
+ 1.0
+ license
+ provided
+
+
+
+
+
+
+
+ maven-dependency-plugin
+
+
+
+ default-cli
+ false
+
+ unpack
+
+
+
+
+ com.docflex
+ docflex-javadoc
+ ${docflex.version}
+ zip
+
+
+ ${project.build.directory}
+
+
+
+
+
+
+ maven-javadoc-plugin
+
+ com.docflex.javadoc.Doclet
+ ${project.build.directory}/docflex-javadoc-${docflex.version}/lib/docflex-javadoc.jar
+
+ -license ${settings.localRepository}/com/docflex/docflex-alfresco-license/1.0/docflex-alfresco-license-1.0.license
+ -template ${project.build.directory}/docflex-javadoc-${docflex.version}/templates/JavadocPro/FramedDoc.tpl
+ -nodialog
+ -launchviewer=false
+ -p:filter.byAnns.include.classes=org.alfresco.api.AlfrescoPublicApi
+ -p:docTitle "Alfresco ${project.version} Public API"
+ -p:windowTitle "Alfresco ${project.version} Public API"
+
+ true
+ true
+
+ org.alfresco:*
+
+
+ org.alfresco:alfresco-xmlfactory
+ org.alfresco:alfresco-text-gen
+
+ org.customer,org.apache
+
+
+
+
+
+
+