mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-24 17:32:48 +00:00
Does not include chemistry-opencmis 1.1.0 (downgraded to 1.0.0) or jackson-databind 2.11.2 (downgraded to 2.10.1) due to test failures. Original upgrades by dependabot.
* Fix latest T-Engine versions and remove redundantly versions in pom.xml files
* Changes from acs-packaging
* From alfresco-core (included json change after 7.0.0-A7)
Bump commons-io from 2.7 to 2.8.0 (#160)
(cherry picked from commit c5a8f5ffb3988bd87719aa43b7089851607b7308)
MNT-21879 : [Security] Multiple json-java vulnerabilities
- updated org.json.json version
(cherry picked from commit edaffa350b29157bdcd1de3737fa491b88093378)
[revert] MNT-21879 : [Security] Multiple json-java vulnerabilities
- updated org.json.json version
(cherry picked from commit 48e2cffb287adb5c5a1d5092ae7fde895c8d0836)
* from alfresco-data-model
SEARCH-2362: Consider changing properties from mandatory/enforced/pro… (#313)
* SEARCH-2362: Consider changing properties from mandatory/enforced/protected to NON mandatory/enforced/protected as incremental changes
* SEARCH-2362 Update tests to check whole set of returned diffs at once.
Co-authored-by: Tom Page <thomas.page@alfresco.com>
(cherry picked from commit 576601564251038311627f230f286b96ea950383)
Bump dependency.cxf.version from 3.3.7 to 3.4.0 (#309)
(cherry picked from commit dc689a911d83b608d49572cada5c2d16441c1eea)
Bump chemistry-opencmis-commons-impl from 1.0.0 to 1.1.0 (#305)
(cherry picked from commit 98fa7b66851aeada1bb6ea05bd6e747e3c55b342)
Bump commons-compress from 1.19 to 1.20 (#303)
(cherry picked from commit f6a950d4a36f05083536638cc5ff7866436f191d)
Bump pdfbox from 2.0.17 to 2.0.20 (#304)
(cherry picked from commit 435b786817ee18c28b84d093c6fbfbc330434e4c)
* From alfresco-remote-api
MNT-21702 : Kerberos SSO fallback mechanism for WebDAV (#765)
Reinstated 'part' of the reverted code change originally made in MNT-16931 to handle fallback correctly for WebDAV in a kerberos environment.
(cherry picked from commit 4091cb9d4b1cd643f9678a4c5c9654963a72c266)
[MNT-21758] Cannot map an AOS / WebDAV drive with Kerberos SSO enabled (#784)
- Add multi catch for Illegal Argument and Not Found when findWebScript is called.
(cherry picked from commit 59517076d2dfc0477870007a7d136cdf907e322f)
SEARCH-2363: Escape special characters when serializing ChildAssociationRefs and AssociationRefs objects (#788)
(cherry picked from commit f941a6e283517c0949f57fefdb1e7e8d7cfb46c4)
ACS-580: Direct access urls - revert initial api version (#792)
(cherry picked from commit 7f4959fdfaeaf1b7debd78df5dcacd4a5b9e809a)
* From alfresco-repository
SEARCH-2289: Restore the support for SOLR 4 in ACS 6.2+ deployments. (#1063)
This configuration is recommended for upgrading scenarios, where you need to upgrade ACS and to re-index the repository with SOLR 6 while using the system with SOLR 4.
(cherry picked from commit e8bba3ca13880be782c2e4c1d82223e70c370f28)
[MNT-21847] - Aync permissions fail when new nodes are created (#1188)
Fix:
*Changed method setFixedAcls on class ADMAccessControlListDAO to continue to propagate through children to apply the correct acl not only when the current child acl matches the shared acl to replace but also when the current child acl matches the new shared acl
Unit Test:
*Refactored the unit test FixedAclUpdaterTest to be able to add in a new test without repeating code: separating the operations that set the permissions from the one that triggers the job into separate methods
*As it was if one test failed, leaving aspects to be processed, the test would run indefinitely (it was programmed to keep running the job while there where nodes with the aspect). Added a verification to stop triggering the job if the number of nodes with the pendingFixAcl did not change between executions.
*Also, if one test failed, it would leave nodes with pendingFixAcl aspect in the database, and the other tests that ran after would also fail, not completing the goal of processing all nodes with the aspect. If a test fails, the folder structure it ran is now deleted so no nodes with the aspect from that structure are processed by the other tests.
*Added a test to find the first folder in a tree where permissions where set async that has the pendingFixAcl aspect and that creates a new node in it to verify the issue
(cherry picked from commit 443e5e226430a2760492fb82214ad520e7e1cb75)
Bump dependency.pdfbox.version from 2.0.20 to 2.0.21 (#1170)
(cherry picked from commit b93d73dec5f0e94d83f62721842b92e617dfba79)
Bump rhino from 1.7.12 to 1.7.13 (#1185)
(cherry picked from commit a5b5f072c64511999d3d27087a1a82f949371ac8)
Bump spring-security-core from 5.2.1.RELEASE to 5.3.4.RELEASE (#1167)
(cherry picked from commit 54f68d823333254cef74343288e99107494b1e28)
REPO-5339 Improve concurrency of SimplePermissionReference (#1189)
* REPO-5339 Improve concurrency of SimplePermissionReference
* REPO-5339 Change locks to synchronised block
* [REPO-5339] Improve concurrency of SimplePermissionReference
- Move to ConcurrentHashMap
- Capacity set to hold Repo + RM + slight overage for custom permissions
- Getting new SimplePermissionReference will not block while getting existing value.
- If a new value needs to be added to the Map, it will block when adding
- If blocked it will wait, in order, until it can attempt to add
- If it was blocked before it will check first if another operation added before adding as an atomic action
* [REPO-5339] Improve concurrency of SimplePermissionReference
- Simplify getPermissionReference by removing Future
* [REPO-5339] Thread Lock detected for AclReadersGet invocations
- Add load capacity and concurrency level
Co-authored-by: Jared Ottley <jared.ottley@alfresco.com>
(cherry picked from commit 39ded1cc0a364d24f737584eed22bef0918a5359)
[MNT-21766]: Significant degradation of performance as file and site count increase (#1217)
* [MNT-21766]: Significant degradation of performance as file and site
count increase
- Added the following indexes on alf_transaction:
idx_alf_txn_ctms_sc, cols (commit_time_ms)
idx_alf_txn_id_ctms, cols (id, commit_time_ms)
- Added the following indexes on alf_node:
idx_alf_node_ver, cols (version)
idx_alf_node_txn, cols (transaction_id)
- Created patch patch.db-V6.3-add-indexes-node-transaction
- Updated version.schema to 14002
- Added system property system.new-node-transaction-indexes.ignored, set
as true by default to not apply the patch automatically
- Created the MySQL update dbscripts to add the new indexes - and also
drop and recreate the pre-existing index idx_alf_txn_ctms on alf_transaction that was
inconsistent with the other DBMS: was indexing only commit_time_ms when
on all other DBMS index idx_alf_txn_ctms was on (commit_time_ms, id)
- Created the Postgres update dbscripts to add the new indexes
(cherry picked from commit d70746f63a6e6a2154d2e37c577955a17c42256e)
SEARCH-2450 Don't expose properties from solr endpoint if the model says not to index them. (#1228)
(cherry picked from commit 2fea6c9484def402e2bfd7c3717071ff8df69c01)
Fix/MNT-21800 CMIS Web Service Check Out returns error (#1232)
* MNT-21800 : CMIS Web Service Check Out returns error
Integrate path into codebase.
(cherry picked from commit 51a7793668ba1c969c5de37603190244e3839cd0)
* Revert dependency.opencmis.version change 1.1.0 back to 1.0.0 done by dependabot on 08/09/2020 as the upgraded failed in alfresco-remote-api tests which are now part of the same repo.
* Trial build with previous rino version
* Revert cxf upgrade to 3.4.0 from 3.7.7 as dependabot failed to apply it in acs-packaging
Revert org-json to 20160212 from 20090211 as dependabot failed to apply it in alfresco-repository
* Revert "Trial build with previous rino version"
This reverts commit 40f8120d5d
.
* Remove READMEs that have been moved to the top level.
* Fix location of keystore
Only copy win64 and linux pdf-renderer to dist zip
Sort out what get included in dist jar and zip
* jackson databind revert
104 lines
4.8 KiB
Docker
104 lines
4.8 KiB
Docker
# Fetch image based on Tomcat 8.5 and Java 11
|
|
# More infos about this image: https://github.com/Alfresco/alfresco-docker-base-tomcat
|
|
FROM alfresco/alfresco-base-tomcat:8.5.51-java-11-openjdk-centos-7
|
|
|
|
# Set default docker_context.
|
|
ARG resource_path=target
|
|
|
|
# Set default user information
|
|
ARG GROUPNAME=Alfresco
|
|
ARG GROUPID=1000
|
|
ARG IMAGEUSERNAME=alfresco
|
|
ARG USERID=33000
|
|
|
|
# Set default environment args
|
|
ARG TOMCAT_DIR=/usr/local/tomcat
|
|
|
|
|
|
# Create prerequisite to store tools and properties
|
|
RUN mkdir -p ${TOMCAT_DIR}/shared/classes/alfresco/extension/mimetypes && \
|
|
mkdir -p ${TOMCAT_DIR}/shared/classes/alfresco/extension/transform/renditions && \
|
|
mkdir -p ${TOMCAT_DIR}/shared/classes/alfresco/extension/transform/pipelines && \
|
|
mkdir /licenses && \
|
|
mkdir -p ${TOMCAT_DIR}/shared/classes/alfresco/extension/keystore && \
|
|
mkdir ${TOMCAT_DIR}/alfresco-mmt && \
|
|
touch ${TOMCAT_DIR}/shared/classes/alfresco-global.properties
|
|
|
|
# You need to run `mvn clean install` in the root of this project to update the following dependencies
|
|
# Copy the WAR files to the appropriate location for your application server
|
|
# Copy the JDBC drivers for the database you are using to the lib/ directory.
|
|
# Copy the alfresco-mmt.jar
|
|
# Copy Licenses to the root of the Docker image
|
|
# Copy default keystore
|
|
COPY ${resource_path}/war ${TOMCAT_DIR}/webapps
|
|
COPY ${resource_path}/connector/* ${TOMCAT_DIR}/lib/
|
|
COPY ${resource_path}/alfresco-mmt/* ${TOMCAT_DIR}/alfresco-mmt/
|
|
COPY ${resource_path}/dependency/licenses/ /licenses/
|
|
COPY ${resource_path}/dependency/keystore/metadata-keystore/keystore ${TOMCAT_DIR}/shared/classes/alfresco/extension/keystore
|
|
|
|
# Change the value of the shared.loader= property to the following:
|
|
# shared.loader=${catalina.base}/shared/classes
|
|
RUN sed -i "s/shared.loader=/shared.loader=\${catalina.base}\/shared\/classes/" ${TOMCAT_DIR}/conf/catalina.properties
|
|
|
|
RUN mkdir -p ${TOMCAT_DIR}/amps
|
|
|
|
#RUN echo -e '\n\
|
|
#log4j.logger.org.alfresco.repo.content.transform.TransformerDebug=debug\n\
|
|
#' >> ${TOMCAT_DIR}/shared/classes/alfresco/extension/custom-log4j.propertiesRUN mkdir -p ${TOMCAT_DIR}/amps
|
|
|
|
# Copy the amps from build context to the appropriate location for your application server
|
|
COPY ${resource_path}/amps ${TOMCAT_DIR}/amps
|
|
|
|
# Install amps on alfresco.war
|
|
RUN java -jar ${TOMCAT_DIR}/alfresco-mmt/alfresco-mmt*.jar install \
|
|
${TOMCAT_DIR}/amps \
|
|
${TOMCAT_DIR}/webapps/alfresco -directory -nobackup
|
|
|
|
# Move the log file
|
|
RUN sed -i -e "s_log4j.appender.File.File\=alfresco.log_log4j.appender.File.File\=${TOMCAT_DIR}/logs\/alfresco.log_" \
|
|
${TOMCAT_DIR}/webapps/alfresco/WEB-INF/classes/log4j.properties && \
|
|
|
|
# Add catalina.policy to ROOT.war and alfresco.war
|
|
# Grant all security permissions to alfresco webapp because of numerous permissions required in order to work properly.
|
|
# Grant only deployXmlPermission to ROOT webapp.
|
|
sed -i -e "\$a\grant\ codeBase\ \"file:\$\{catalina.base\}\/webapps\/alfresco\/-\" \{\n\ permission\ java.security.AllPermission\;\n\};\ngrant\ codeBase\ \"file:\$\{catalina.base\}\/webapps\/ROOT\/-\" \{\n\ permission org.apache.catalina.security.DeployXmlPermission \"ROOT\";\n\};" ${TOMCAT_DIR}/conf/catalina.policy
|
|
|
|
# fontconfig is required by Activiti worflow diagram generator
|
|
# installing pinned dependencies as well
|
|
RUN yum install -y fontconfig-2.13.0-4.3.el7 \
|
|
dejavu-fonts-common-2.33-6.el7 \
|
|
fontpackages-filesystem-1.44-8.el7 \
|
|
freetype-2.8-12.el7 \
|
|
libpng-1.5.13-7.el7_2 \
|
|
dejavu-sans-fonts-2.33-6.el7 && \
|
|
yum clean all
|
|
|
|
# The standard configuration is to have all Tomcat files owned by root with group GROUPNAME and whilst owner has read/write privileges,
|
|
# group only has restricted permissions and world has no permissions.
|
|
RUN mkdir -p ${TOMCAT_DIR}/conf/Catalina/localhost && \
|
|
mkdir -p ${TOMCAT_DIR}/alf_data && \
|
|
groupadd -g ${GROUPID} ${GROUPNAME} && \
|
|
useradd -u ${USERID} -G ${GROUPNAME} ${IMAGEUSERNAME} && \
|
|
chgrp -R ${GROUPNAME} ${TOMCAT_DIR} && \
|
|
chmod g+rx ${TOMCAT_DIR}/conf && \
|
|
chmod -R g+r ${TOMCAT_DIR}/conf && \
|
|
find ${TOMCAT_DIR}/webapps -type d -exec chmod 0750 {} \; && \
|
|
find ${TOMCAT_DIR}/webapps -type f -exec chmod 0640 {} \; && \
|
|
chmod -R g+r ${TOMCAT_DIR}/webapps && \
|
|
chmod g+r ${TOMCAT_DIR}/conf/Catalina && \
|
|
chmod g+rwx ${TOMCAT_DIR}/alf_data && \
|
|
chmod g+rwx ${TOMCAT_DIR}/logs && \
|
|
chmod o-w ${TOMCAT_DIR}/logs && \
|
|
chmod g+rwx ${TOMCAT_DIR}/temp && \
|
|
chmod g+rwx ${TOMCAT_DIR}/work && \
|
|
chmod o-w ${TOMCAT_DIR}/work && \
|
|
chmod 664 ${TOMCAT_DIR}/alfresco-mmt/alfresco-mmt-*.jar && \
|
|
find /licenses -type d -exec chmod 0755 {} \; && \
|
|
find /licenses -type f -exec chmod 0644 {} \;
|
|
|
|
EXPOSE 10001
|
|
|
|
# For remote debug
|
|
EXPOSE 8000
|
|
|
|
USER ${IMAGEUSERNAME} |