Compare commits

...

270 Commits

Author SHA1 Message Date
Travis CI User
169e5efca2 [maven-release-plugin][skip ci] prepare release 23.1.0.27 2022-05-09 11:58:35 +00:00
kcichonczyk
8edfd4bdce [ACS-2747] Prevent private action execution from the V1 HTTP API. Added end-to-end test method. (#1108) 2022-05-09 13:14:10 +02:00
Travis CI User
810cd9f067 [maven-release-plugin][skip ci] prepare for next development iteration 2022-05-06 04:36:18 +00:00
Travis CI User
63f5bc534b [maven-release-plugin][skip ci] prepare release 23.1.0.26 2022-05-06 04:36:15 +00:00
Sbisht19
ebb6e333d3 Origin/feature/apps 1164 alfresco logs (#1102)
* Added test group for alfresco logs test cases to make them skipped in single pipeline

* Added import statement for TestGroup

* Added import statement for TestGroup

Co-authored-by: Suneet Gupta <suneet.gupta@hyland.com>
2022-05-05 20:57:57 +05:30
Travis CI User
8f141aed1e [maven-release-plugin][skip ci] prepare for next development iteration 2022-05-04 11:22:08 +00:00
Travis CI User
2a734c5a78 [maven-release-plugin][skip ci] prepare release 23.1.0.25 2022-05-04 11:22:05 +00:00
evasques
a7cceff6bf MNT-22968 - Bump Freemarker (#1093) 2022-05-04 10:39:33 +01:00
Alfresco CI User
7cafcb6a6b [force] Force release for 2022-05-01. 2022-05-01 00:03:58 +00:00
Travis CI User
652e10e5a3 [maven-release-plugin][skip ci] prepare for next development iteration 2022-04-24 00:10:33 +00:00
Travis CI User
ea7a1631c2 [maven-release-plugin][skip ci] prepare release 23.1.0.24 2022-04-24 00:10:31 +00:00
Alfresco CI User
e18aab83c5 [force] Force release for 2022-04-24. 2022-04-24 00:03:07 +00:00
Travis CI User
d6dce92351 [maven-release-plugin][skip ci] prepare for next development iteration 2022-04-22 13:06:28 +00:00
Travis CI User
5c31774753 [maven-release-plugin][skip ci] prepare release 23.1.0.23 2022-04-22 13:06:26 +00:00
alandavis
e331e4bd08 ACS-2768 tidy up start-compose.sh 2022-04-22 13:21:44 +01:00
Travis CI User
c9d27e55d6 [maven-release-plugin][skip ci] prepare for next development iteration 2022-04-21 17:28:10 +00:00
Travis CI User
d647c96ae4 [maven-release-plugin][skip ci] prepare release 23.1.0.22 2022-04-21 17:28:03 +00:00
Kacper Magdziarz
5a6f9a60f3 ACS-2768 Fix of Automate update of t-router and t-engine references in repositories (#1081) 2022-04-21 17:47:50 +01:00
Travis CI User
ce2c0e2ac2 [maven-release-plugin][skip ci] prepare for next development iteration 2022-04-21 10:21:11 +00:00
Travis CI User
dfa9e754d5 [maven-release-plugin][skip ci] prepare release 23.1.0.21 2022-04-21 10:21:07 +00:00
Kacper Magdziarz
860065cf6c ACS-2768 Automate update of t-router and t-engine references in repositories (#1067)
* ACS-2768 reduce places need update of t-router and t-engine references in repositories
replace alfresco-transform-model with alfresco-transform-core property

Co-authored-by: alandavis <alan.davis@alfresco.com>
2022-04-21 11:11:43 +02:00
Travis CI User
2d7f8fba87 [maven-release-plugin][skip ci] prepare for next development iteration 2022-04-20 13:14:27 +00:00
Travis CI User
c2c4171756 [maven-release-plugin][skip ci] prepare release 23.1.0.20 2022-04-20 13:14:24 +00:00
Marcin Strankowski
af884cbb0e Fix/acs 2851 intermittent integration full tests bulk 2 (#1074)
* ACS-2851: Reverting commented out unstable test, as the intermittent failure seems unreproducible
2022-04-20 14:39:30 +02:00
Travis CI User
fb0be16155 [maven-release-plugin][skip ci] prepare for next development iteration 2022-04-20 09:57:27 +00:00
Travis CI User
f9d95136b2 [maven-release-plugin][skip ci] prepare release 23.1.0.19 2022-04-20 09:57:25 +00:00
Damian Ujma
26453c4112 ACS-2674 - fix/ACS-2674_delete_existing_rendition (#1073)
* ACS-2674 Preventive delete an existing rendition of the file

* ACS-2674 Correct the comment
2022-04-20 11:03:27 +02:00
Travis CI User
cb26098e8b [maven-release-plugin][skip ci] prepare for next development iteration 2022-04-17 00:08:03 +00:00
Travis CI User
6766bfcfdf [maven-release-plugin][skip ci] prepare release 23.1.0.18 2022-04-17 00:08:01 +00:00
Alfresco CI User
48df1e25ed [force] Force release for 2022-04-17. 2022-04-17 00:03:05 +00:00
Travis CI User
52918e4ff5 [maven-release-plugin][skip ci] prepare for next development iteration 2022-04-13 21:45:40 +00:00
Travis CI User
40d70e797c [maven-release-plugin][skip ci] prepare release 23.1.0.17 2022-04-13 21:45:37 +00:00
alandavis
6011868759 Pick up t-core 2.6.0-A3 2022-04-13 19:45:13 +01:00
Travis CI User
79ad480ddb [maven-release-plugin][skip ci] prepare for next development iteration 2022-04-13 09:44:54 +00:00
Travis CI User
c12d8f98be [maven-release-plugin][skip ci] prepare release 23.1.0.16 2022-04-13 09:44:52 +00:00
Damian Ujma
d2faadac57 ACS-2794 Use SearchEngineResultSet interface rather than concrete implementation (#1063) 2022-04-13 11:10:22 +02:00
Travis CI User
7f1d28a417 [maven-release-plugin][skip ci] prepare for next development iteration 2022-04-12 14:14:52 +00:00
Travis CI User
fab02e5484 [maven-release-plugin][skip ci] prepare release 23.1.0.15 2022-04-12 14:14:48 +00:00
Marcin Strankowski
5274687ec1 Feature/acs 2787 split travis jobs to reduce max time (#1062)
* ACS-2787: Splitting AGS 01 job to 2 parts (01, 04)

For MySQL the job executes for 31-35 minutes, split this job into 2 parts to reduce max execution time for community-repo

* ACS-2787: Intermittent test failure commented out, issue created ACS-2850

* ACS-2787: Commenting out intermittent failure, issue created ACS-2851
2022-04-12 15:40:08 +02:00
Travis CI User
b52e67b7df [maven-release-plugin][skip ci] prepare for next development iteration 2022-04-12 13:27:02 +00:00
Travis CI User
77f414dbf1 [maven-release-plugin][skip ci] prepare release 23.1.0.14 2022-04-12 13:26:59 +00:00
dependabot[bot]
c45ce63bd2 Bump docker-maven-plugin from 0.38.0 to 0.39.1 (#987)
Bumps [docker-maven-plugin](https://github.com/fabric8io/docker-maven-plugin) from 0.38.0 to 0.39.1.
- [Release notes](https://github.com/fabric8io/docker-maven-plugin/releases)
- [Changelog](https://github.com/fabric8io/docker-maven-plugin/blob/master/doc/changelog.md)
- [Commits](https://github.com/fabric8io/docker-maven-plugin/compare/v0.38.0...v0.39.1)

---
updated-dependencies:
- dependency-name: io.fabric8:docker-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-12 14:38:13 +02:00
Travis CI User
0a784a0674 [maven-release-plugin][skip ci] prepare for next development iteration 2022-04-10 00:08:08 +00:00
Travis CI User
1da1506160 [maven-release-plugin][skip ci] prepare release 23.1.0.13 2022-04-10 00:08:05 +00:00
Alfresco CI User
79dd212428 [force] Force release for 2022-04-10. 2022-04-10 00:02:57 +00:00
Travis CI User
fd859a4191 [maven-release-plugin][skip ci] prepare for next development iteration 2022-04-08 10:41:14 +00:00
Travis CI User
e61f6df323 [maven-release-plugin][skip ci] prepare release 23.1.0.12 2022-04-08 10:41:09 +00:00
Piotr Żurek
64998b5c53 ACS-2744 Private action validation logic (#1051) 2022-04-08 11:56:31 +02:00
Travis CI User
784c9d47b3 [maven-release-plugin][skip ci] prepare for next development iteration 2022-04-07 14:00:59 +00:00
Travis CI User
b5617c3bd9 [maven-release-plugin][skip ci] prepare release 23.1.0.11 2022-04-07 14:00:56 +00:00
Vítor Moreira
53777cd5b9 MNT-22946: bump spring version to 5.3.18 (#1054) 2022-04-07 14:05:07 +01:00
Travis CI User
ddb8ad16ac [maven-release-plugin][skip ci] prepare for next development iteration 2022-04-07 11:00:32 +00:00
Travis CI User
a3ed766957 [maven-release-plugin][skip ci] prepare release 23.1.0.10 2022-04-07 11:00:30 +00:00
dependabot[bot]
22a0343c41 Bump dependency.webscripts.version from 8.28 to 8.29 (#1052) 2022-04-07 09:58:16 +00:00
Travis CI User
43fb3cfdc5 [maven-release-plugin][skip ci] prepare for next development iteration 2022-04-07 08:32:04 +00:00
Travis CI User
8accceb08e [maven-release-plugin][skip ci] prepare release 23.1.0.9 2022-04-07 08:32:01 +00:00
Marcin Strankowski
71eab3e347 Feature/acs 2787 improve build speed of community repo (#1049)
* ACS-2787: Improving cache management for community repo
2022-04-07 09:33:32 +02:00
alandavis
8d378fc340 ACS-2765 t-model is now part of t-core 2.6.0-A2 2022-04-07 08:03:59 +01:00
Travis CI User
73a8ac61ed [maven-release-plugin][skip ci] prepare for next development iteration 2022-04-06 11:50:05 +00:00
Travis CI User
67d3159650 [maven-release-plugin][skip ci] prepare release 23.1.0.8 2022-04-06 11:50:02 +00:00
alandavis
ec8a760122 ACS-2765 Upgrade to t-core 2.5.7 2022-04-06 12:04:39 +01:00
Travis CI User
3d0ceca6da [maven-release-plugin][skip ci] prepare for next development iteration 2022-04-05 15:32:17 +00:00
Travis CI User
8c25d1f7e6 [maven-release-plugin][skip ci] prepare release 23.1.0.7 2022-04-05 15:32:14 +00:00
Travis CI User
1e0972eaa1 [maven-release-plugin][skip ci] prepare for next development iteration 2022-04-03 00:13:20 +00:00
Travis CI User
616c666114 [maven-release-plugin][skip ci] prepare release 23.1.0.6 2022-04-03 00:13:17 +00:00
Alfresco CI User
8520548e72 [force] Force release for 2022-04-03. 2022-04-03 00:03:10 +00:00
Travis CI User
63f7f07465 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-28 09:04:17 +00:00
Travis CI User
35a3ff8032 [maven-release-plugin][skip ci] prepare release 23.1.0.5 2022-03-28 09:04:14 +00:00
Kacper Magdziarz
695bf90891 [ACS-962] - Attempt to fix concurrency failing in test. (#1019)
ACS-962 Extract waitForMethodToFinish for TestHelper to avoid code duplication.
2022-03-28 10:18:16 +02:00
Travis CI User
d4dcc4fe2c [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-27 00:12:34 +00:00
Travis CI User
ee44b6afa2 [maven-release-plugin][skip ci] prepare release 23.1.0.4 2022-03-27 00:12:31 +00:00
Alfresco CI User
28b580b9fc [force] Force release for 2022-03-27. 2022-03-27 00:02:43 +00:00
Travis CI User
7dc7a743f5 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-24 12:02:47 +00:00
Travis CI User
4bc92df38e [maven-release-plugin][skip ci] prepare release 23.1.0.3 2022-03-24 12:02:43 +00:00
Alfresco CI User
048df99d91 [force] Force release for 2022-03-24. 2022-03-24 11:52:55 +00:00
Travis CI User
b477d122f3 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-22 12:28:22 +00:00
Travis CI User
0cc2fe46cf [maven-release-plugin][skip ci] prepare release 23.1.0.2 2022-03-22 12:28:19 +00:00
Tom Page
671e1934bd ACS-2735 Update hardcoded version number to 23.1.0. 2022-03-22 11:42:09 +00:00
Tom Page
d0452aaddb Revert "Revert "ACS-2608 Support force directive. (#992)""
This reverts commit 464db778fa.
2022-03-22 10:45:16 +00:00
Tom Page
464db778fa Revert "ACS-2608 Support force directive. (#992)"
This reverts commit 905e813aa4.
2022-03-22 10:44:55 +00:00
Tom Page
905e813aa4 ACS-2608 Support force directive. (#992)
* ACS-2608 Support force directive.

* ACS-2608 Rename bash variable to match convention.

* ACS-2608 Use 14.121.x for branch.

* [force 7.2.0-A27.1] ACS-2608 Test force release.

* [force 7.2.0-A27.1] ACS-2608 Fix regex for force.

* [maven-release-plugin][skip ci] prepare release 14.121.1

* [maven-release-plugin][skip ci] prepare for next development iteration

* [force 7.2.0-A27.2] ACS-2608 Test force release.

* [maven-release-plugin][skip ci] prepare release 14.121.2

* [maven-release-plugin][skip ci] prepare for next development iteration

* [force 7.2.0-A27.3] ACS-2608 Test force release.

* [maven-release-plugin][skip ci] prepare release 14.121.3

* [maven-release-plugin][skip ci] prepare for next development iteration

* [force 7.2.0-A27.4] ACS-2608 Test force release.

* [maven-release-plugin][skip ci] prepare release 14.121.4

* [maven-release-plugin][skip ci] prepare for next development iteration

* ACS-2608 Revert change to version.

Co-authored-by: Travis CI User <build@alfresco.com>
2022-03-22 10:35:09 +00:00
alandavis
b55ba47c5e amp.min.version now has a 1 as its 1st digit with the new Hyland version number scheme such as 23.1 2022-03-21 17:11:03 +00:00
alandavis
0607bb1485 Set acs.version.major/minor versions 23.1.0 2022-03-21 17:07:53 +00:00
Travis CI User
f7c8298308 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-21 13:23:25 +00:00
Travis CI User
86de88ebaa [maven-release-plugin][skip ci] prepare release 23.1.0.1 2022-03-21 13:23:22 +00:00
alandavis
76ba0a38e5 Switch master branch ready for 23.1.0 development 2022-03-21 12:38:08 +00:00
Travis CI User
3ad642f388 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-21 11:30:57 +00:00
Travis CI User
e113eb3561 [maven-release-plugin][skip ci] prepare release 14.146 2022-03-21 11:30:55 +00:00
alandavis
1dc1852a69 Increment version.schema to next multiple of 1000. i.e. 17000 for the next major/minor version 2022-03-21 10:18:29 +00:00
Travis CI User
5ecd4c2593 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-16 19:34:33 +00:00
Travis CI User
b4a2e2d8cf [maven-release-plugin][skip ci] prepare release 14.145 2022-03-16 19:34:30 +00:00
alandavis
bdf4fd7e16 Build again with replacement alfresco.aos-module 1.4.1 2022-03-16 18:48:07 +00:00
Travis CI User
e3b3e4b099 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-16 10:07:00 +00:00
Travis CI User
895ab9dbbf [maven-release-plugin][skip ci] prepare release 14.144 2022-03-16 10:06:57 +00:00
dependabot[bot]
85054a7649 Bump license-maven-plugin from 2.0.1.alfresco-1 to 2.0.1.alfresco-2 (#1021)
Bumps [license-maven-plugin](https://github.com/mojohaus/license-maven-plugin) from 2.0.1.alfresco-1 to 2.0.1.alfresco-2.
- [Release notes](https://github.com/mojohaus/license-maven-plugin/releases)
- [Commits](https://github.com/mojohaus/license-maven-plugin/commits)

---
updated-dependencies:
- dependency-name: org.codehaus.mojo:license-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-16 09:21:46 +00:00
Travis CI User
c60a182b89 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-15 16:43:19 +00:00
Travis CI User
94ba463db8 [maven-release-plugin][skip ci] prepare release 14.143 2022-03-15 16:43:16 +00:00
Domenico Sibilio
cf67b6791a ACS-2307 Update IE/SS to 2.0.3 2022-03-15 16:25:31 +01:00
Travis CI User
506441a7ec [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-14 14:21:41 +00:00
Travis CI User
9b01a3fa1f [maven-release-plugin][skip ci] prepare release 14.142 2022-03-14 14:21:37 +00:00
Piotr Żurek
3dc00da2a5 ACS-2658 Fix missing metadata extraction while uploading new version (#1016) 2022-03-14 14:37:47 +01:00
Travis CI User
c20bdd754f [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-13 11:52:06 +00:00
Travis CI User
d3a52be71a [maven-release-plugin][skip ci] prepare release 14.141 2022-03-13 11:52:04 +00:00
Domenico Sibilio
07c3ca5bab ACS-2307 Update IE/SS to 2.0.3-RC5 2022-03-13 12:08:48 +01:00
Travis CI User
e593a17e88 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-12 18:10:01 +00:00
Travis CI User
1975729174 [maven-release-plugin][skip ci] prepare release 14.140 2022-03-12 18:09:58 +00:00
Andrea Ligios
1491a9a7dd ACS-2664 - Bump Alfresco Messaging Repo to 1.2.19 2022-03-12 18:19:54 +01:00
Andrea Ligios
3923560588 ACS-2664 - Bump Alfresco Messaging Repo to 1.2.18 2022-03-12 16:59:29 +01:00
Andrea Ligios
af1aa6528b Bumped alfresco-messaging-repo to 1.2.17
To cope with the `camel-spring-xml` split from `camel-spring` in Camel 3.9
2022-03-11 18:01:49 +01:00
Nithin Nambiar
8cf9cd3ed5 ACS-1601 Node cleanup job improvements for Postgres 2022-03-11 17:58:22 +01:00
Travis CI User
b2dd06eef8 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-11 11:36:52 +00:00
Travis CI User
8d46151e41 [maven-release-plugin][skip ci] prepare release 14.139 2022-03-11 11:36:49 +00:00
alandavis
3d5166b5d2 ACS-2669 Upgrade to t-core 2.5.7 2022-03-11 10:19:52 +00:00
Travis CI User
847af44db0 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-10 14:34:55 +00:00
Travis CI User
66cd9d4194 [maven-release-plugin][skip ci] prepare release 14.138 2022-03-10 14:34:52 +00:00
Domenico Sibilio
a26eeef847 ACS-2307 Update SS/IE to 2.0.3-RC4 2022-03-10 14:43:20 +01:00
Travis CI User
7ba414eff9 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-10 12:44:42 +00:00
Travis CI User
55abd66da6 [maven-release-plugin][skip ci] prepare release 14.137 2022-03-10 12:44:39 +00:00
Piotr Żurek
6ed43a9a87 ACS-2318 Upgrade tomcat base docker images (#1012) 2022-03-10 12:54:32 +01:00
Travis CI User
e657c2a1f7 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-09 09:48:16 +00:00
Travis CI User
31aa55366f [maven-release-plugin][skip ci] prepare release 14.136 2022-03-09 09:48:13 +00:00
alandavis
c7f1f808a1 Upgrade to t-core 2.5.7-A11 2022-03-09 08:57:51 +00:00
Travis CI User
40b537b589 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-08 18:58:18 +00:00
Travis CI User
902b569b41 [maven-release-plugin][skip ci] prepare release 14.135 2022-03-08 18:58:15 +00:00
Sara
5c3bf1772a Bump dependency tas-restapi from 1.78 to 1.79 (#1009) 2022-03-08 18:06:25 +00:00
Travis CI User
7ffea85c17 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-08 17:52:57 +00:00
Travis CI User
4ea51d7229 [maven-release-plugin][skip ci] prepare release 14.134 2022-03-08 17:52:54 +00:00
Piotr Żurek
5f5f6a1577 ACS-2318 Upgrade base docker images (#1007) 2022-03-08 17:17:46 +01:00
Travis CI User
74f27b68c2 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-08 13:50:22 +00:00
Travis CI User
592dabfbd0 [maven-release-plugin][skip ci] prepare release 14.133 2022-03-08 13:50:19 +00:00
George Evangelopoulos
275a19b634 ACS-2614 Upgraded REST-API-explorer to 7.2.0 (#1008) 2022-03-08 12:58:47 +00:00
Travis CI User
ee95350a7a [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-07 23:41:00 +00:00
Travis CI User
6d78c0eafc [maven-release-plugin][skip ci] prepare release 14.132 2022-03-07 23:40:56 +00:00
alandavis
ba8ad595cc Upgrade to t-core 2.5.7-A10 2022-03-07 22:19:08 +00:00
alandavis
cd49f188ea ACS-2641 truncate Direct Access URLs in TransformerDebug [skip ci] 2022-03-07 18:30:22 +00:00
Travis CI User
5bcff826d2 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-06 22:12:27 +00:00
Travis CI User
d62cc18604 [maven-release-plugin][skip ci] prepare release 14.131 2022-03-06 22:12:24 +00:00
Jamal Kaabi-Mofrad
e23d356da7 ACS-2307: Updated Solr. 2022-03-06 21:22:48 +00:00
Travis CI User
4ac828acca [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-06 13:35:59 +00:00
Travis CI User
0cad7c4c89 [maven-release-plugin][skip ci] prepare release 14.130 2022-03-06 13:35:56 +00:00
alandavis
d6bb44343c Upgrade to t-core 2.5.7-A9 2022-03-06 12:46:48 +00:00
Travis CI User
4b46fd6e10 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-04 15:39:25 +00:00
Travis CI User
3cc3fb081f [maven-release-plugin][skip ci] prepare release 14.129 2022-03-04 15:39:22 +00:00
Piotr Żurek
82add3f32f ACS-2631 Upgrade AOS module (#1001) 2022-03-04 15:49:16 +01:00
Travis CI User
76b0d5ee5a [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-04 09:08:06 +00:00
Travis CI User
3b36d26609 [maven-release-plugin][skip ci] prepare release 14.128 2022-03-04 09:08:03 +00:00
Aleksandra Onych
76ce1db950 Feature/acs 2562 disallow secure comms none (#994)
ACS-2562 Disallow SecureComms=none
Co-authored-by: Domenico Sibilio <domenicosibilio@gmail.com>
Co-authored-by: Stefan Kopf <stefan.kopf@alfresco.com>
2022-03-04 09:18:36 +01:00
Travis CI User
cd11c54422 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-03 20:28:40 +00:00
Travis CI User
bd4bdab0ff [maven-release-plugin][skip ci] prepare release 14.127 2022-03-03 20:28:37 +00:00
alandavis
9ad7175237 Upgrade to t-core 2.5.7-A6 2022-03-03 19:39:05 +00:00
Travis CI User
15b5bf93af [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-03 18:07:42 +00:00
Travis CI User
bb6d3b0716 [maven-release-plugin][skip ci] prepare release 14.126 2022-03-03 18:07:39 +00:00
Piotr Żurek
ac68fbdf09 ACS-2627 Upgrade base docker images (#1000) [skip ci] 2022-03-03 17:28:11 +01:00
Travis CI User
3dae151864 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-03 14:52:33 +00:00
Travis CI User
ae4d0f695e [maven-release-plugin][skip ci] prepare release 14.125 2022-03-03 14:52:30 +00:00
kcichonczyk
1b44b5825c [MNT-22462] 7.2.0-A4 rest-api-explorer version bump (#999) 2022-03-03 14:59:51 +01:00
Travis CI User
a51a4e7cf2 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-03 11:01:26 +00:00
Travis CI User
d82b35a2c6 [maven-release-plugin][skip ci] prepare release 14.124 2022-03-03 11:01:22 +00:00
Piotr Żurek
2b081589ea ACS-2620 tas rest api failures (#998) 2022-03-03 11:10:06 +01:00
kcichonczyk
d6974d8504 cm:versionable mandatory aspect cause the node creation REST API to create 2 versions instead of one (#993)
* [MNT-22462] Covered with tests all required combintations of creating a new node with versioningEnabled/majorVersion flags for multipart and json
2022-03-03 10:45:42 +01:00
Travis CI User
f319377697 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-02 21:24:35 +00:00
Travis CI User
72801ae27f [maven-release-plugin][skip ci] prepare release 14.123 2022-03-02 21:24:32 +00:00
Sara
bc4bc6703f Revert "Bump dependency.tas-restapi from 1.71 to 1.77 [skip tests] [no downstream] (#995)" (#996)
This reverts commit ee2b80ab13.
2022-03-02 21:13:53 +00:00
Travis CI User
f501050285 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-02 20:58:07 +00:00
Travis CI User
a38c428a9e [maven-release-plugin][skip ci] prepare release 14.122 2022-03-02 20:58:04 +00:00
Sara
ee2b80ab13 Bump dependency.tas-restapi from 1.71 to 1.77 [skip tests] [no downstream] (#995) 2022-03-02 20:47:02 +00:00
Travis CI User
bfda737651 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-02 17:43:31 +00:00
Travis CI User
280e29f326 [maven-release-plugin][skip ci] prepare release 14.121 2022-03-02 17:43:28 +00:00
alandavis
d60d8e1f5b Revert "Bump dependency.tas-restapi from 1.71 to 1.76"
This reverts commit b7ed25a741.
2022-03-02 16:50:34 +00:00
alandavis
40679b3f59 Upgrade to t-core 2.5.7-A5 2022-03-02 15:55:50 +00:00
Travis CI User
c3adbcdf3f [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-02 12:39:57 +00:00
Travis CI User
1487a8ecca [maven-release-plugin][skip ci] prepare release 14.120 2022-03-02 12:39:55 +00:00
alandavis
0e0a7831be Bump dependency.tas-restapi from 1.71 to 1.76
[skip tests] [no downstream] so Sara can try out something quickly in S3
2022-03-02 12:29:40 +00:00
alandavis
b7ed25a741 Bump dependency.tas-restapi from 1.71 to 1.76
[skip ci] [no downstream]
2022-03-02 12:28:04 +00:00
Travis CI User
bec9cf86b1 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-02 10:47:11 +00:00
Travis CI User
ec2a8962a1 [maven-release-plugin][skip ci] prepare release 14.119 2022-03-02 10:47:08 +00:00
Alan Davis
ea5ef05197 ACS-2493/ACS-2494 Repo Transform requests using a DAU (#988)
* Test code to follow - need to create image for the single pipeline
2022-03-02 09:58:56 +00:00
Shubham Jain
29df0e9bb2 [APPS-1242] (#985)
* [APPS-1242]

* [APPS-1242]-Commenting reduntant changes.

* [APPS-1242]-Removed unused code

* [APPS-1242]-Removed unused code

* [APPS-1242]-Changes with respect to review comments

Co-authored-by: shubhamjain10 <shubham.jain@globallogic.com>
2022-03-02 15:04:30 +05:30
Travis CI User
dee9b51274 [maven-release-plugin][skip ci] prepare for next development iteration 2022-03-01 08:21:54 +00:00
Travis CI User
0f985d5ded [maven-release-plugin][skip ci] prepare release 14.118 2022-03-01 08:21:51 +00:00
Piotr Żurek
bb1f5d18b6 ATS-983 Downgrade reload4j (#983)
* ATS-983 Downgrade reload4j and provide a test to make sure we still have classes needed by the current implementation of the logging console
2022-03-01 08:34:26 +01:00
Travis CI User
5c05001256 [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-28 10:11:59 +00:00
Travis CI User
67d03b6996 [maven-release-plugin][skip ci] prepare release 14.117 2022-02-28 10:11:56 +00:00
Tom Page
1d1563c1f6 ACS-2072 Enable third party license enforcement. (#984) 2022-02-28 09:22:50 +00:00
Travis CI User
ad965d49fb [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-24 02:14:34 +00:00
Travis CI User
11e3d2d549 [maven-release-plugin][skip ci] prepare release 14.116 2022-02-24 02:14:31 +00:00
alandavis
b68b565a4f Pick up T-Engines 2.5.7-A4 and T-Model 1.4.11 2022-02-24 01:27:00 +00:00
Travis CI User
5963ccffdd [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-23 09:11:59 +00:00
Travis CI User
5265105149 [maven-release-plugin][skip ci] prepare release 14.115 2022-02-23 09:11:55 +00:00
mpichura
abd9ec4eef ACS-2348: removing @Experimental annotation on Storage Properties related methods. (#980) 2022-02-23 09:24:32 +01:00
Travis CI User
397539bbbe [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-22 14:09:03 +00:00
Travis CI User
1287eefd4f [maven-release-plugin][skip ci] prepare release 14.114 2022-02-22 14:09:00 +00:00
Travis CI User
637415554c [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-22 12:26:34 +00:00
Travis CI User
7231b20c41 [maven-release-plugin][skip ci] prepare release 14.113 2022-02-22 12:26:31 +00:00
dependabot[bot]
fea6b0dc4f Bump mybatis-spring from 2.0.6 to 2.0.7 (#922)
Bumps [mybatis-spring](https://github.com/mybatis/spring) from 2.0.6 to 2.0.7.
- [Release notes](https://github.com/mybatis/spring/releases)
- [Commits](https://github.com/mybatis/spring/compare/mybatis-spring-2.0.6...mybatis-spring-2.0.7)

---
updated-dependencies:
- dependency-name: org.mybatis:mybatis-spring
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-22 11:29:35 +00:00
montgolfiere
8c97443073 ACS-2476: Update to Camel 3.15.0 (#981)
* ACS-2476: Update to Camel 3.15.0 (inc Netty 4.1.73.Final)

- note: also Gytheio 0.16 (~ Camel 3.15.0)
- see also ACS-2561
2022-02-22 11:08:42 +00:00
alandavis
22d0f97ce3 Pick up T-Engines 2.5.7-A3 2022-02-22 10:27:57 +00:00
Travis CI User
50ee974ddf [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-22 09:53:23 +00:00
Travis CI User
984bbbd8bf [maven-release-plugin][skip ci] prepare release 14.112 2022-02-22 09:53:20 +00:00
dependabot[bot]
8b57af9cb5 Bump gytheio-messaging-camel from 0.13 to 0.16 (#977)
Bumps gytheio-messaging-camel from 0.13 to 0.16.

---
updated-dependencies:
- dependency-name: org.gytheio:gytheio-messaging-camel
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-22 09:57:57 +01:00
Travis CI User
b06924908d [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-17 14:56:12 +00:00
Travis CI User
e2bba31603 [maven-release-plugin][skip ci] prepare release 14.111 2022-02-17 14:56:09 +00:00
Damian Ujma
3b65b30bd5 MNT-22780: fix rule behavior (#950)
* MNT-22780 Remove properties if node has aspect

* MNT-22780 Add remove features test

* MNT-22780 Remove wildcard imports + fix test

* MNT-22780 Remove aspect when only node has aspect

* MNT-22780 Fix if statement
2022-02-17 15:06:28 +01:00
Travis CI User
2177ffcea8 [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-15 11:05:03 +00:00
Travis CI User
2ce43b09d8 [maven-release-plugin][skip ci] prepare release 14.110 2022-02-15 11:05:00 +00:00
dependabot[bot]
05660a94ab Bump gytheio-messaging-camel from 0.12 to 0.13 (#968)
Bumps gytheio-messaging-camel from 0.12 to 0.13.

---
updated-dependencies:
- dependency-name: org.gytheio:gytheio-messaging-camel
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-15 10:14:14 +00:00
kcichonczyk
3e4c191ff9 [ACS-2557] Moved test methods to more appropriate test class (#966) 2022-02-15 11:10:24 +01:00
Travis CI User
8a3817649b [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-15 08:24:26 +00:00
Travis CI User
82b737062b [maven-release-plugin][skip ci] prepare release 14.109 2022-02-15 08:24:23 +00:00
alandavis
e6b32e7e61 Pick up T-Engines 2.5.7-A1 2022-02-15 07:02:05 +00:00
Travis CI User
b9979caf40 [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-14 19:05:52 +00:00
Travis CI User
e6367cdc70 [maven-release-plugin][skip ci] prepare release 14.108 2022-02-14 19:05:49 +00:00
Alex Chapellon
eceba2679c move AGS API war to multistage build (#912) 2022-02-14 19:13:16 +01:00
Travis CI User
cf4abfe101 [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-14 13:57:44 +00:00
Travis CI User
2a5f03889e [maven-release-plugin][skip ci] prepare release 14.107 2022-02-14 13:57:41 +00:00
kcichonczyk
0e11091d19 Add further tests for ReST integration tests (#945)
* [ACS-1982] Extended tests for REST integration tests
2022-02-14 14:08:54 +01:00
Travis CI User
3cb838865a [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-14 10:54:30 +00:00
Travis CI User
f89d85b431 [maven-release-plugin][skip ci] prepare release 14.106 2022-02-14 10:54:27 +00:00
Sara
9d91ee4cae ACS-2557 Enable system-wide DAUs (#964) 2022-02-14 10:02:19 +00:00
Travis CI User
1e792eb625 [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-11 15:59:25 +00:00
Travis CI User
3d881b9022 [maven-release-plugin][skip ci] prepare release 14.105 2022-02-11 15:59:21 +00:00
George Evangelopoulos
b890af95b4 Revert "ACS-2476 Bump Camel version to 3.8.0 (#957)" (#959)
This reverts commit 64b9564dc7.
2022-02-11 15:10:57 +00:00
Travis CI User
706aac3ffa [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-11 12:26:55 +00:00
Travis CI User
22230ea04b [maven-release-plugin][skip ci] prepare release 14.104 2022-02-11 12:26:52 +00:00
Sara
798a3faa5b ACS-1988 Implement DAU Version Renditions code (#931)
* ACS-1988 Implement DAU Version Renditions code

* ACS-1988 Replace directAccessUrlRequest with request-direct-access-url

* ACS-1988 fix and move DAU version rendition test

* ACS-1988 Add NodeVersionRenditionsApiTest to test suite

* ACS-1988 Remove unused import

* ACS-1988 add error response tests

* ACS-1988 remove redundant constant

* ACS-1988 updates from review

* ACS-1988 updates from review
2022-02-11 11:35:28 +00:00
Domenico Sibilio
105c83ca7e ACS-2276 Add missing indexControl on hidden nodes to avoid Elasticsearch indexing
* ACS-2276 - Add indexControl to extensions and module-deployments

* ACS-2276 - Remove unnecessary test import
2022-02-11 11:44:48 +01:00
George Evangelopoulos
64b9564dc7 ACS-2476 Bump Camel version to 3.8.0 (#957) 2022-02-11 09:26:51 +00:00
Travis CI User
a3ccf20a74 [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-10 12:49:45 +00:00
Travis CI User
fa7f74f2ee [maven-release-plugin][skip ci] prepare release 14.103 2022-02-10 12:49:43 +00:00
Vítor Moreira
30e339db12 MNT-22807: improve sitesTest test (#925) (#951)
(cherry picked from commit 1b42d80f94)
2022-02-10 12:00:02 +00:00
dependabot[bot]
8f5aed72d2 Bump restapi from 1.68 to 1.71 (#953)
Bumps [restapi](https://github.com/Alfresco/alfresco-tas-restapi) from 1.68 to 1.71.
- [Release notes](https://github.com/Alfresco/alfresco-tas-restapi/releases)
- [Commits](https://github.com/Alfresco/alfresco-tas-restapi/compare/v1.68...v1.71)

---
updated-dependencies:
- dependency-name: org.alfresco.tas:restapi
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-10 10:34:34 +01:00
Travis CI User
dc0582b1ab [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-09 15:07:27 +00:00
Travis CI User
92eb339237 [maven-release-plugin][skip ci] prepare release 14.102 2022-02-09 15:07:24 +00:00
Jan Vonka
3b6983170b Revert "Bump mysql-connector-java from 8.0.27 to 8.0.28 (#901)"
This reverts commit 085e2acaac.
2022-02-09 14:17:06 +00:00
Alan Davis
338e2b93dd ACS-2498 Add coreVersion to T-Engine config (#937)
Added isSupported(CoreFunction function, String transformerName) and isSupported(CoreFunction function, LocalTransform transform) ready for work on the ACS-2493 & ACS-2494.
2022-02-09 13:39:57 +00:00
Stefan Kopf
fea50a2206 PRODSEC-6083 migrate to reload4j (#949) 2022-02-09 11:15:26 +01:00
evasques
85b5b2660e MNT-22710 - ContentURLs with CRC collision and same last 12 chars are assumed as duplicates and node is linked to the wrong contentURL (#944)
* Added a validation to assure the URL is the same and if it is not, throw an error
* Added a unit test to replicate the problem
2022-02-08 18:22:18 +00:00
dependabot[bot]
085e2acaac Bump mysql-connector-java from 8.0.27 to 8.0.28 (#901)
Bumps [mysql-connector-java](https://github.com/mysql/mysql-connector-j) from 8.0.27 to 8.0.28.
- [Release notes](https://github.com/mysql/mysql-connector-j/releases)
- [Changelog](https://github.com/mysql/mysql-connector-j/blob/release/8.0/CHANGES)
- [Commits](https://github.com/mysql/mysql-connector-j/commits)

---
updated-dependencies:
- dependency-name: mysql:mysql-connector-java
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-08 17:44:28 +00:00
Travis CI User
58b4d9f18f [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-08 09:42:14 +00:00
Travis CI User
336e7cf817 [maven-release-plugin][skip ci] prepare release 14.101 2022-02-08 09:42:11 +00:00
dependabot[bot]
13a2bea2ce Bump postgresql from 42.3.1 to 42.3.2 (#927)
Bumps [postgresql](https://github.com/pgjdbc/pgjdbc) from 42.3.1 to 42.3.2.
- [Release notes](https://github.com/pgjdbc/pgjdbc/releases)
- [Changelog](https://github.com/pgjdbc/pgjdbc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/pgjdbc/pgjdbc/compare/REL42.3.1...REL42.3.2)

---
updated-dependencies:
- dependency-name: org.postgresql:postgresql
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-08 08:48:13 +00:00
Travis CI User
9139500fa5 [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-04 17:31:26 +00:00
Travis CI User
2a43657e2f [maven-release-plugin][skip ci] prepare release 14.100 2022-02-04 17:31:23 +00:00
dependabot[bot]
8145e2ea39 Bump json-path from 2.5.0 to 2.7.0 (#921)
Bumps [json-path](https://github.com/jayway/JsonPath) from 2.5.0 to 2.7.0.
- [Release notes](https://github.com/jayway/JsonPath/releases)
- [Changelog](https://github.com/json-path/JsonPath/blob/master/changelog.md)
- [Commits](https://github.com/jayway/JsonPath/compare/json-path-2.5.0...json-path-2.7.0)

---
updated-dependencies:
- dependency-name: com.jayway.jsonpath:json-path
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-04 16:33:52 +00:00
Travis CI User
db1bc1d9e2 [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-04 13:34:53 +00:00
Travis CI User
2f0f3aa310 [maven-release-plugin][skip ci] prepare release 14.99 2022-02-04 13:34:50 +00:00
kcichonczyk
873508bfb7 [ACS-2504] 7.2.0-A3 (#932) 2022-02-04 13:41:16 +01:00
Travis CI User
e71f681e6e [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-03 18:25:41 +00:00
Travis CI User
4cb4f6f023 [maven-release-plugin][skip ci] prepare release 14.98 2022-02-03 18:25:38 +00:00
dependabot[bot]
98aebf77ad Bump xercesImpl from 2.12.1 to 2.12.2 (#913)
Bumps xercesImpl from 2.12.1 to 2.12.2.

---
updated-dependencies:
- dependency-name: xerces:xercesImpl
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-03 17:34:11 +00:00
Travis CI User
25b7d8c480 [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-03 14:38:05 +00:00
Travis CI User
641ea57895 [maven-release-plugin][skip ci] prepare release 14.97 2022-02-03 14:38:01 +00:00
dependabot[bot]
c0d2d444ca Bump dependency.jackson.version from 2.13.0 to 2.13.1 (#854) 2022-02-03 13:41:02 +00:00
dependabot[bot]
212c2cefec Bump dependency.slf4j.version from 1.7.33 to 1.7.35 (#911) 2022-02-03 13:40:37 +00:00
dependabot[bot]
6bacd51841 Bump junrar from 7.4.0 to 7.4.1 (#914) 2022-02-03 13:40:27 +00:00
Travis CI User
2db4bf0a90 [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-03 12:11:24 +00:00
Travis CI User
7381e578a8 [maven-release-plugin][skip ci] prepare release 14.96 2022-02-03 12:11:21 +00:00
dependabot[bot]
44a8acddd0 Bump reflections from 0.9.12 to 0.10.2 (#776) 2022-02-03 10:51:48 +00:00
Travis CI User
9bcf7eed9a [maven-release-plugin][skip ci] prepare for next development iteration 2022-02-01 09:10:17 +00:00
Travis CI User
d540a25a88 [maven-release-plugin][skip ci] prepare release 14.95 2022-02-01 09:10:14 +00:00
Domenico Sibilio
f113724f9a ACS-2245 Mitigate intermittent failure of FixedAclUpdaterTest (#916)
* ACS-2245 - Trigger CI build

* ACS-2245 - Add RepeatAtMostRule for flaky tests

* ACS-2245 - Add RepeatAtMostRuleTest to the AllUnitTestsSuite

* ACS-2245 - Rename RepeatAtMostRule to RetryAtMostRule
2022-02-01 09:14:53 +01:00
Travis CI User
ad04e79141 [maven-release-plugin][skip ci] prepare for next development iteration 2022-01-31 19:00:40 +00:00
Travis CI User
51ed184126 [maven-release-plugin][skip ci] prepare release 14.94 2022-01-31 19:00:37 +00:00
montgolfiere
5d740eba37 ACS-2104: Remove Camel exclusion from DependABot - to enable future suggestions (#917)
- ie. should prompt with 3.7.7 to 3.14.0 (or maybe 3.14.1)
- also logged ACS-2476 (in case of compile-time/run-time incompatibilities and aligning with Netty)
2022-01-31 18:06:40 +00:00
Travis CI User
5c9cc4dd04 [maven-release-plugin][skip ci] prepare for next development iteration 2022-01-28 19:01:14 +00:00
Travis CI User
430e92dbce [maven-release-plugin][skip ci] prepare release 14.93 2022-01-28 19:01:11 +00:00
dependabot[bot]
f0aa9b6004 Bump dependency.alfresco-transform-model.version from 1.4.7 to 1.4.8 (#915)
Bumps `dependency.alfresco-transform-model.version` from 1.4.7 to 1.4.8.

Updates `alfresco-transform-model` from 1.4.7 to 1.4.8
- [Release notes](https://github.com/Alfresco/alfresco-transform-model/releases)
- [Commits](https://github.com/Alfresco/alfresco-transform-model/commits)

Updates `alfresco-transform-model` from 1.4.7 to 1.4.8
- [Release notes](https://github.com/Alfresco/alfresco-transform-model/releases)
- [Commits](https://github.com/Alfresco/alfresco-transform-model/commits)

---
updated-dependencies:
- dependency-name: org.alfresco:alfresco-transform-model
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.alfresco:alfresco-transform-model:tests
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-28 18:08:59 +00:00
Travis CI User
4471654e40 [maven-release-plugin][skip ci] prepare for next development iteration 2022-01-27 23:34:29 +00:00
Travis CI User
e1fa082b6e [maven-release-plugin][skip ci] prepare release 14.92 2022-01-27 23:34:26 +00:00
alandavis
903672b82b ACS-2479 Pick up T-Core 2.5.6 2022-01-27 21:50:43 +00:00
182 changed files with 4368 additions and 1184 deletions

View File

@@ -38,27 +38,6 @@ updates:
- dependency-name: org.activiti:activiti-spring
versions:
- ">= 7.1.a, < 7.2"
- dependency-name: org.apache.camel:camel-activemq
versions:
- "> 3.7.1"
- dependency-name: org.apache.camel:camel-amqp
versions:
- "> 3.7.1"
- dependency-name: org.apache.camel:camel-direct
versions:
- "> 3.7.1"
- dependency-name: org.apache.camel:camel-directvm
versions:
- "> 3.7.1"
- dependency-name: org.apache.camel:camel-jackson
versions:
- "> 3.7.1"
- dependency-name: org.apache.camel:camel-mock
versions:
- "> 3.7.1"
- dependency-name: org.apache.camel:camel-spring
versions:
- "> 3.7.1"
- dependency-name: org.apache.chemistry.opencmis:chemistry-opencmis-client-impl
versions:
- "> 1.0.0"

View File

@@ -26,13 +26,16 @@ branches:
env:
global:
- TRANSFORMERS_TAG=$(mvn help:evaluate -Dexpression=dependency.alfresco-transform-core.version -q -DforceStdout)
- TAS_SCRIPTS=../alfresco-community-repo/packaging/tests/scripts
- TAS_ENVIRONMENT=./packaging/tests/environment
- LOG_WARN="-Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn"
stages:
- name: prepare
if: commit_message !~ /\[skip tests\]/ AND commit_message !~ /\[force[^\]]*\]/
- name: test
if: commit_message !~ /\[skip tests\]/
if: commit_message !~ /\[skip tests\]/ AND commit_message !~ /\[force[^\]]*\]/
- name: release
if: commit_message !~ /\[no release\]/ AND (branch = master OR branch =~ /release\/.*/) AND type != pull_request AND fork = false
- name: update_downstream
@@ -43,7 +46,13 @@ install: travis_retry travis_wait 40 bash scripts/travis/build.sh
jobs:
include:
- name: "Prepare"
stage: prepare
install: skip
script: travis_retry travis_wait 80 bash scripts/travis/prepare.sh
- name: "Source Clear Scan (SCA)"
stage: test
if: branch = master OR branch =~ /release\/.*/
# Run Veracode
install: skip
@@ -51,43 +60,49 @@ jobs:
- name: "Core, Data-Model, Repository - AllUnitTestsSuite - Build and test"
if: commit_message !~ /\[skip repo\]/
install: skip
script:
- travis_retry mvn -B test -pl core,data-model
- travis_retry mvn -B test -pl repository -Dtest=AllUnitTestsSuite
- travis_retry mvn -B test -pl core,data-model -am -DfailIfNoTests=false
- travis_retry mvn -B test -pl "repository,mmt" -am "-Dtest=AllUnitTestsSuite,AllMmtUnitTestSuite" -DfailIfNoTests=false
- name: "Repository - AppContext01TestSuite"
if: commit_message !~ /\[skip repo\]/
install: skip
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:13.3 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
- docker run -d -p 8090:8090 -e JAVA_OPTS=" -Xms256m -Xmx256m" alfresco/alfresco-transform-core-aio:2.5.5
script: travis_wait 20 mvn -B test -pl repository -Dtest=AppContext01TestSuite -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- docker run -d -p 8090:8090 -e JAVA_OPTS=" -Xms256m -Xmx256m" alfresco/alfresco-transform-core-aio:${TRANSFORMERS_TAG}
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=AppContext01TestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- name: "Repository - AppContext02TestSuite"
if: commit_message !~ /\[skip repo\]/
install: skip
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:13.3 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
script: travis_wait 20 mvn -B test -pl repository -Dtest=AppContext02TestSuite -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=AppContext02TestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- name: "Repository - AppContext03TestSuite"
if: commit_message !~ /\[skip repo\]/
install: skip
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:13.3 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
- docker run -d -p 8090:8090 -e JAVA_OPTS=" -Xms256m -Xmx256m" alfresco/alfresco-transform-core-aio:2.5.5
script: travis_wait 20 mvn -B test -pl repository -Dtest=AppContext03TestSuite -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- docker run -d -p 8090:8090 -e JAVA_OPTS=" -Xms256m -Xmx256m" alfresco/alfresco-transform-core-aio:${TRANSFORMERS_TAG}
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=AppContext03TestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- name: "Repository - AppContext04TestSuite"
if: commit_message !~ /\[skip repo\]/
install: skip
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:13.3 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
- docker run -d -p 8090:8090 -e JAVA_OPTS=" -Xms256m -Xmx256m" alfresco/alfresco-transform-core-aio:2.5.5
script: travis_wait 20 mvn -B test -pl repository -Dtest=AppContext04TestSuite -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- docker run -d -p 8090:8090 -e JAVA_OPTS=" -Xms256m -Xmx256m" alfresco/alfresco-transform-core-aio:${TRANSFORMERS_TAG}
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=AppContext04TestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- name: "Repository - AppContext05TestSuite"
if: commit_message !~ /\[skip repo\]/
install: skip
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:13.3 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
@@ -95,142 +110,161 @@ jobs:
- cp repository/src/test/resources/realms/alfresco-realm.json "${HOME}/tmp"
- export HOST_IP=$(hostname -I | cut -f1 -d' ')
- docker run -d -e KEYCLOAK_USER=admin -e KEYCLOAK_PASSWORD=admin -e DB_VENDOR=h2 -p 8999:8080 -e KEYCLOAK_IMPORT=/tmp/alfresco-realm.json -v $HOME/tmp/alfresco-realm.json:/tmp/alfresco-realm.json alfresco/alfresco-identity-service:1.2
script: travis_wait 20 mvn -B test -pl repository -Dtest=AppContext05TestSuite -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco "-Didentity-service.auth-server-url=http://${HOST_IP}:8999/auth"
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=AppContext05TestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco "-Didentity-service.auth-server-url=http://${HOST_IP}:8999/auth"
- name: "Repository - AppContext06TestSuite"
if: commit_message !~ /\[skip repo\]/
install: skip
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:13.3 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
- docker run -d -p 8090:8090 -e JAVA_OPTS=" -Xms256m -Xmx256m" alfresco/alfresco-transform-core-aio:2.5.5
script: travis_wait 20 mvn -B test -pl repository -Dtest=AppContext06TestSuite -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- docker run -d -p 8090:8090 -e JAVA_OPTS=" -Xms256m -Xmx256m" alfresco/alfresco-transform-core-aio:${TRANSFORMERS_TAG}
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=AppContext06TestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- name: "Repository - AppContextExtraTestSuite"
if: commit_message !~ /\[skip repo\]/
install: skip
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:13.3 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
- docker run -d -p 8090:8090 -e JAVA_OPTS=" -Xms256m -Xmx256m" alfresco/alfresco-transform-core-aio:2.5.5
script: travis_wait 20 mvn -B test -pl repository -Dtest=AppContextExtraTestSuite -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- docker run -d -p 8090:8090 -e JAVA_OPTS=" -Xms256m -Xmx256m" alfresco/alfresco-transform-core-aio:${TRANSFORMERS_TAG}
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=AppContextExtraTestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- name: "Repository - MiscContextTestSuite"
if: commit_message !~ /\[skip repo\]/
install: skip
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:13.3 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
- docker run -d -p 8090:8090 -e JAVA_OPTS=" -Xms256m -Xmx256m" alfresco/alfresco-transform-core-aio:2.5.5
script: travis_wait 20 mvn -B test -pl repository -Dtest=MiscContextTestSuite -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- docker run -d -p 8090:8090 -e JAVA_OPTS=" -Xms256m -Xmx256m" alfresco/alfresco-transform-core-aio:${TRANSFORMERS_TAG}
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=MiscContextTestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- name: "Repository - SearchTestSuite"
if: commit_message !~ /\[skip repo\]/
install: skip
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:13.3 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
script: travis_wait 20 mvn -B test -pl repository -Dtest=SearchTestSuite -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco -Dindex.subsystem.name=solr6
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=SearchTestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco -Dindex.subsystem.name=solr6
- name: "Repository - MariaDB 10.2.18 tests"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip db\]/ AND type != pull_request) OR commit_message =~ /\[db\]/
install: skip
before_script:
- docker run -d -p 3307:3306 --name mariadb -e MYSQL_ROOT_PASSWORD=alfresco -e MYSQL_USER=alfresco -e MYSQL_DATABASE=alfresco -e MYSQL_PASSWORD=alfresco mariadb:10.2.18 --transaction-isolation=READ-COMMITTED --max-connections=300 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
script: travis_wait 20 mvn -B test -pl repository -Dtest=AllDBTestsTestSuite -Ddb.name=alfresco -Ddb.url=jdbc:mariadb://localhost:3307/alfresco?useUnicode=yes\&characterEncoding=UTF-8 -Ddb.username=alfresco -Ddb.password=alfresco -Ddb.driver=org.mariadb.jdbc.Driver
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=AllDBTestsTestSuite -DfailIfNoTests=false -Ddb.name=alfresco -Ddb.url=jdbc:mariadb://localhost:3307/alfresco?useUnicode=yes\&characterEncoding=UTF-8 -Ddb.username=alfresco -Ddb.password=alfresco -Ddb.driver=org.mariadb.jdbc.Driver
- name: "Repository - MariaDB 10.4 tests"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip db\]/ AND type != pull_request) OR commit_message =~ /\[db\]/
install: skip
before_script:
- docker run -d -p 3307:3306 --name mariadb -e MYSQL_ROOT_PASSWORD=alfresco -e MYSQL_USER=alfresco -e MYSQL_DATABASE=alfresco -e MYSQL_PASSWORD=alfresco mariadb:10.4 --transaction-isolation=READ-COMMITTED --max-connections=300 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
script: travis_wait 20 mvn -B test -pl repository -Dtest=AllDBTestsTestSuite -Ddb.name=alfresco -Ddb.url=jdbc:mariadb://localhost:3307/alfresco?useUnicode=yes\&characterEncoding=UTF-8 -Ddb.username=alfresco -Ddb.password=alfresco -Ddb.driver=org.mariadb.jdbc.Driver
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=AllDBTestsTestSuite -DfailIfNoTests=false -Ddb.name=alfresco -Ddb.url=jdbc:mariadb://localhost:3307/alfresco?useUnicode=yes\&characterEncoding=UTF-8 -Ddb.username=alfresco -Ddb.password=alfresco -Ddb.driver=org.mariadb.jdbc.Driver
- name: "Repository - MariaDB 10.5 tests"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip db\]/ AND type != pull_request) OR commit_message =~ /\[db\]/
install: skip
before_script:
- docker run -d -p 3307:3306 --name mariadb -e MYSQL_ROOT_PASSWORD=alfresco -e MYSQL_USER=alfresco -e MYSQL_DATABASE=alfresco -e MYSQL_PASSWORD=alfresco mariadb:10.5 --transaction-isolation=READ-COMMITTED --max-connections=300 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
script: travis_wait 20 mvn -B test -pl repository -Dtest=AllDBTestsTestSuite -Ddb.name=alfresco -Ddb.url=jdbc:mariadb://localhost:3307/alfresco?useUnicode=yes\&characterEncoding=UTF-8 -Ddb.username=alfresco -Ddb.password=alfresco -Ddb.driver=org.mariadb.jdbc.Driver
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=AllDBTestsTestSuite -DfailIfNoTests=false -Ddb.name=alfresco -Ddb.url=jdbc:mariadb://localhost:3307/alfresco?useUnicode=yes\&characterEncoding=UTF-8 -Ddb.username=alfresco -Ddb.password=alfresco -Ddb.driver=org.mariadb.jdbc.Driver
- name: "Repository - MariaDB 10.6 tests"
# We run tests on the latest version of MariaDB on pull requests plus the normal master and release branches - ignored on feature branches
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip db\]/ ) OR commit_message =~ /\[db\]/ OR commit_message =~ /\[latest db\]/
install: skip
before_script:
- docker run -d -p 3307:3306 --name mariadb -e MYSQL_ROOT_PASSWORD=alfresco -e MYSQL_USER=alfresco -e MYSQL_DATABASE=alfresco -e MYSQL_PASSWORD=alfresco mariadb:10.6 --transaction-isolation=READ-COMMITTED --max-connections=300 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
script: travis_wait 20 mvn -B test -pl repository -Dtest=AllDBTestsTestSuite -Ddb.name=alfresco -Ddb.url=jdbc:mariadb://localhost:3307/alfresco?useUnicode=yes\&characterEncoding=UTF-8 -Ddb.username=alfresco -Ddb.password=alfresco -Ddb.driver=org.mariadb.jdbc.Driver
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=AllDBTestsTestSuite -DfailIfNoTests=false -Ddb.name=alfresco -Ddb.url=jdbc:mariadb://localhost:3307/alfresco?useUnicode=yes\&characterEncoding=UTF-8 -Ddb.username=alfresco -Ddb.password=alfresco -Ddb.driver=org.mariadb.jdbc.Driver
- name: "Repository - MySQL 5.7.23 tests"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip db\]/ AND type != pull_request) OR commit_message =~ /\[db\]/
install: skip
before_script:
- docker run -d -p 3307:3306 -e MYSQL_ROOT_PASSWORD=alfresco -e MYSQL_USER=alfresco -e MYSQL_DATABASE=alfresco -e MYSQL_PASSWORD=alfresco mysql:5.7.23 --transaction-isolation='READ-COMMITTED' --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
script: travis_wait 20 mvn -B test -pl repository -Dtest=AllDBTestsTestSuite -Ddb.driver=com.mysql.jdbc.Driver -Ddb.name=alfresco -Ddb.url=jdbc:mysql://localhost:3307/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=AllDBTestsTestSuite -DfailIfNoTests=false -Ddb.driver=com.mysql.jdbc.Driver -Ddb.name=alfresco -Ddb.url=jdbc:mysql://localhost:3307/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- name: "Repository - MySQL 8 tests"
# We run tests on the latest version of MySQL on pull requests plus the normal master and release branches - ignored on feature branches
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip db\]/ ) OR commit_message =~ /\[db\]/ OR commit_message =~ /\[latest db\]/
install: skip
before_script:
- docker run -d -p 3307:3306 -e MYSQL_ROOT_PASSWORD=alfresco -e MYSQL_USER=alfresco -e MYSQL_DATABASE=alfresco -e MYSQL_PASSWORD=alfresco mysql:8 --transaction-isolation='READ-COMMITTED'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
script: travis_wait 20 mvn -B test -pl repository -Dtest=AllDBTestsTestSuite -Ddb.driver=com.mysql.jdbc.Driver -Ddb.name=alfresco -Ddb.url=jdbc:mysql://localhost:3307/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=AllDBTestsTestSuite -DfailIfNoTests=false -Ddb.driver=com.mysql.jdbc.Driver -Ddb.name=alfresco -Ddb.url=jdbc:mysql://localhost:3307/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- name: "Repository - PostgreSQL 10.9 tests"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip db\]/ AND type != pull_request) OR commit_message =~ /\[db\]/
install: skip
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:10.9 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
script: travis_wait 20 mvn -B test -pl repository -Dtest=AllDBTestsTestSuite -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=AllDBTestsTestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- name: "Repository - PostgreSQL 11.7 tests"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip db\]/ AND type != pull_request) OR commit_message =~ /\[db\]/
install: skip
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:11.7 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
script: travis_wait 20 mvn -B test -pl repository -Dtest=AllDBTestsTestSuite -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=AllDBTestsTestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- name: "Repository - PostgreSQL 11.12 tests"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip db\]/ AND type != pull_request) OR commit_message =~ /\[db\]/
install: skip
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:11.12 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
script: travis_wait 20 mvn -B test -pl repository -Dtest=AllDBTestsTestSuite -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=AllDBTestsTestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- name: "Repository - PostgreSQL 12.4 tests"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip db\]/ AND type != pull_request) OR commit_message =~ /\[db\]/
install: skip
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:12.4 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
script: travis_wait 20 mvn -B test -pl repository -Dtest=AllDBTestsTestSuite -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=AllDBTestsTestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- name: "Repository - PostgreSQL 12.7 tests"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip db\]/ AND type != pull_request) OR commit_message =~ /\[db\]/
install: skip
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:12.7 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
script: travis_wait 20 mvn -B test -pl repository -Dtest=AllDBTestsTestSuite -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=AllDBTestsTestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- name: "Repository - PostgreSQL 13.1 tests"
# We only run DB tests on the latest version of PostgreSQL on feature branches
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip db\]/ AND type != pull_request) OR commit_message =~ /\[db\]/
install: skip
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:13.1 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
script: travis_wait 20 mvn -B test -pl repository -Dtest=AllDBTestsTestSuite -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=AllDBTestsTestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- name: "Repository - PostgreSQL 13.3 tests"
# We only run DB tests on the latest version of PostgreSQL on feature branches
if: commit_message !~ /\[skip db\]/ OR commit_message =~ /\[latest db\]/
install: skip
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:13.3 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
script: travis_wait 20 mvn -B test -pl repository -Dtest=AllDBTestsTestSuite -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=AllDBTestsTestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- name: "Repository - Messaging tests"
if: commit_message !~ /\[skip repo\]/
install: skip
before_script:
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
script: travis_wait 20 mvn -B test -pl repository -Dtest=CamelRoutesTest,CamelComponentsTest
script: travis_wait 20 mvn -B test -pl repository -am -Dtest=CamelRoutesTest,CamelComponentsTest -DfailIfNoTests=false
- name: "Remote-api - AppContext01TestSuite"
if: commit_message !~ /\[skip repo\]/
install: travis_retry travis_wait 40 env REQUIRES_INSTALLED_ARTIFACTS=true bash scripts/travis/build.sh
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:13.3 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
@@ -238,30 +272,34 @@ jobs:
- name: "Remote-api - AppContext02TestSuite"
if: commit_message !~ /\[skip repo\]/
install: travis_retry travis_wait 40 env REQUIRES_INSTALLED_ARTIFACTS=true bash scripts/travis/build.sh
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:13.3 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
- docker run -d -p 8090:8090 -e JAVA_OPTS=" -Xms256m -Xmx256m" alfresco/alfresco-transform-core-aio:2.5.5
- docker run -d -p 8090:8090 -e JAVA_OPTS=" -Xms256m -Xmx256m" alfresco/alfresco-transform-core-aio:${TRANSFORMERS_TAG}
script: travis_wait 20 mvn -B test -pl remote-api -Dtest=AppContext02TestSuite -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- name: "Remote-api - AppContext03TestSuite"
if: commit_message !~ /\[skip repo\]/
install: travis_retry travis_wait 40 env REQUIRES_INSTALLED_ARTIFACTS=true bash scripts/travis/build.sh
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:13.3 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
- docker run -d -p 8090:8090 -e JAVA_OPTS=" -Xms256m -Xmx256m" alfresco/alfresco-transform-core-aio:2.5.5
- docker run -d -p 8090:8090 -e JAVA_OPTS=" -Xms256m -Xmx256m" alfresco/alfresco-transform-core-aio:${TRANSFORMERS_TAG}
script: travis_wait 20 mvn -B test -pl remote-api -Dtest=AppContext03TestSuite -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- name: "Remote-api - AppContext04TestSuite"
if: commit_message !~ /\[skip repo\]/
install: travis_retry travis_wait 40 env REQUIRES_INSTALLED_ARTIFACTS=true bash scripts/travis/build.sh
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:13.3 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
- docker run -d -p 8090:8090 -e JAVA_OPTS=" -Xms256m -Xmx256m" alfresco/alfresco-transform-core-aio:2.5.5
- docker run -d -p 8090:8090 -e JAVA_OPTS=" -Xms256m -Xmx256m" alfresco/alfresco-transform-core-aio:${TRANSFORMERS_TAG}
script: travis_wait 20 mvn -B test -pl remote-api -Dtest=AppContext04TestSuite -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- name: "Remote-api - AppContextExtraTestSuite"
if: commit_message !~ /\[skip repo\]/
install: travis_retry travis_wait 40 env REQUIRES_INSTALLED_ARTIFACTS=true bash scripts/travis/build.sh
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:13.3 postgres -c 'max_connections=300'
- docker run -d -p 61616:61616 -p 5672:5672 alfresco/alfresco-activemq:5.16.1
@@ -270,99 +308,126 @@ jobs:
- name: "REST API TAS tests part1"
# TAS tests are generally skipped on feature branches as they will be repeated on the enterprise repo or community packaging builds
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip tas\]/) OR commit_message =~ /\[tas\]/
install: travis_retry travis_wait 40 env REQUIRES_LOCAL_IMAGES=true bash scripts/travis/build.sh
before_script:
- ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal+transforms.yml
- ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco"
script: travis_wait 60 mvn -B install -f packaging/tests/tas-restapi/pom.xml -Pall-tas-tests,run-restapi-part1 -Denvironment=default -DrunBugs=false
script: travis_wait 60 mvn -B verify -f packaging/tests/tas-restapi/pom.xml -Pall-tas-tests,run-restapi-part1 -Denvironment=default -DrunBugs=false
- name: "REST API TAS tests part2"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip tas\]/) OR commit_message =~ /\[tas\]/
install: travis_retry travis_wait 40 env REQUIRES_LOCAL_IMAGES=true bash scripts/travis/build.sh
before_script:
- ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal+transforms.yml
- ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco"
script: travis_wait 60 mvn -B install -f packaging/tests/tas-restapi/pom.xml -Pall-tas-tests,run-restapi-part2 -Denvironment=default -DrunBugs=false
script: travis_wait 60 mvn -B verify -f packaging/tests/tas-restapi/pom.xml -Pall-tas-tests,run-restapi-part2 -Denvironment=default -DrunBugs=false
- name: "REST API TAS tests part3"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip tas\]/) OR commit_message =~ /\[tas\]/
install: travis_retry travis_wait 40 env REQUIRES_LOCAL_IMAGES=true bash scripts/travis/build.sh
before_script:
- ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal+transforms.yml
- ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco"
script: travis_wait 60 mvn -B install -f packaging/tests/tas-restapi/pom.xml -Pall-tas-tests,run-restapi-part3 -Denvironment=default -DrunBugs=false
script: travis_wait 60 mvn -B verify -f packaging/tests/tas-restapi/pom.xml -Pall-tas-tests,run-restapi-part3 -Denvironment=default -DrunBugs=false
- name: "CMIS TAS tests - BROWSER binding"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip tas\]/) OR commit_message =~ /\[tas\]/
install: travis_retry travis_wait 40 env REQUIRES_LOCAL_IMAGES=true bash scripts/travis/build.sh
before_script:
- ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal+transforms.yml
- ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco"
script: travis_wait 40 mvn -B install -f packaging/tests/tas-cmis/pom.xml -Pall-tas-tests,run-cmis-browser -Denvironment=default -DrunBugs=false
script: travis_wait 40 mvn -B verify -f packaging/tests/tas-cmis/pom.xml -Pall-tas-tests,run-cmis-browser -Denvironment=default -DrunBugs=false
- name: "CMIS TAS tests - ATOM binding"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip tas\]/) OR commit_message =~ /\[tas\]/
install: travis_retry travis_wait 40 env REQUIRES_LOCAL_IMAGES=true bash scripts/travis/build.sh
before_script:
- ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal+transforms.yml
- ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco"
script: travis_wait 40 mvn -B install -f packaging/tests/tas-cmis/pom.xml -Pall-tas-tests,run-cmis-atom -Denvironment=default -DrunBugs=false
script: travis_wait 40 mvn -B verify -f packaging/tests/tas-cmis/pom.xml -Pall-tas-tests,run-cmis-atom -Denvironment=default -DrunBugs=false
- name: "CMIS TAS tests - WEBSERVICES binding"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip tas\]/) OR commit_message =~ /\[tas\]/
install: travis_retry travis_wait 40 env REQUIRES_LOCAL_IMAGES=true bash scripts/travis/build.sh
before_script:
- ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal+transforms.yml
- ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco"
script: travis_wait 40 mvn -B install -f packaging/tests/tas-cmis/pom.xml -Pall-tas-tests,run-cmis-webservices -Denvironment=default -DrunBugs=false
script: travis_wait 40 mvn -B verify -f packaging/tests/tas-cmis/pom.xml -Pall-tas-tests,run-cmis-webservices -Denvironment=default -DrunBugs=false
- name: "Email TAS tests"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip tas\]/) OR commit_message =~ /\[tas\]/
install: travis_retry travis_wait 40 env REQUIRES_LOCAL_IMAGES=true bash scripts/travis/build.sh
before_script:
- ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal.yml
- ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco"
script: travis_wait 30 mvn -B install -f packaging/tests/tas-email/pom.xml -Pall-tas-tests -Denvironment=default -DrunBugs=false
script: travis_wait 30 mvn -B verify -f packaging/tests/tas-email/pom.xml -Pall-tas-tests -Denvironment=default -DrunBugs=false
- name: "WebDAV TAS tests"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip tas\]/) OR commit_message =~ /\[tas\]/
install: travis_retry travis_wait 40 env REQUIRES_LOCAL_IMAGES=true bash scripts/travis/build.sh
before_script:
- ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal.yml
- ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco"
script: travis_wait 30 mvn -B install -f packaging/tests/tas-webdav/pom.xml -Pall-tas-tests -Denvironment=default -DrunBugs=false
script: travis_wait 30 mvn -B verify -f packaging/tests/tas-webdav/pom.xml -Pall-tas-tests -Denvironment=default -DrunBugs=false
- name: "Integration TAS tests"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip tas\]/) OR commit_message =~ /\[tas\]/
install: travis_retry travis_wait 40 env REQUIRES_LOCAL_IMAGES=true bash scripts/travis/build.sh
before_script:
- ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal.yml
- ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco"
script: travis_wait 30 mvn -B install -f packaging/tests/tas-integration/pom.xml -Pall-tas-tests -Denvironment=default -DrunBugs=false
script: travis_wait 30 mvn -B verify -f packaging/tests/tas-integration/pom.xml -Pall-tas-tests -Denvironment=default -DrunBugs=false
- name: "Share Services - ShareServicesTestSuite"
if: commit_message !~ /\[skip repo\]/
install: skip
before_script:
- docker run -d -p 5433:5432 -e POSTGRES_PASSWORD=alfresco -e POSTGRES_USER=alfresco -e POSTGRES_DB=alfresco postgres:13.3 postgres -c 'max_connections=300'
script: travis_wait 20 mvn -B test -pl :alfresco-share-services -Dtest=ShareServicesTestSuite -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
script: travis_wait 20 mvn -B test -pl :alfresco-share-services -am -Dtest=ShareServicesTestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco
- name: "AGS Unit & Integration Tests 01 (PostgreSQL)"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip ags\]/) OR commit_message =~ /\[ags\]/
install: travis_retry travis_wait 40 env REQUIRES_INSTALLED_ARTIFACTS=true bash scripts/travis/build.sh
script: travis_retry travis_wait 80 mvn -B verify -Dmaven.javadoc.skip=true -Dmaven.source.skip=true -Pags -Pstart-postgres -PagsAllTestSuitePt1 -f amps/ags/pom.xml ${LOG_WARN}
- name: "AGS Integration Tests 02 (PostgreSQL)"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip ags\]/) OR commit_message =~ /\[ags\]/
install: travis_retry travis_wait 40 env REQUIRES_INSTALLED_ARTIFACTS=true bash scripts/travis/build.sh
script: travis_retry travis_wait 80 mvn -B verify -Dmaven.javadoc.skip=true -Dmaven.source.skip=true -Pags -Pstart-postgres -PagsAllTestSuitePt2 -f amps/ags/pom.xml ${LOG_WARN}
- name: "AGS Integration Tests 03 (PostgreSQL)"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip ags\]/) OR commit_message =~ /\[ags\]/
install: travis_retry travis_wait 40 env REQUIRES_INSTALLED_ARTIFACTS=true bash scripts/travis/build.sh
script: travis_retry travis_wait 80 mvn -B verify -Dmaven.javadoc.skip=true -Dmaven.source.skip=true -Pags -Pstart-postgres -PagsAllTestSuitePt3 -f amps/ags/pom.xml ${LOG_WARN}
- name: "AGS Unit & Integration Tests 04 (PostgreSQL)"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip ags\]/) OR commit_message =~ /\[ags\]/
install: travis_retry travis_wait 40 env REQUIRES_INSTALLED_ARTIFACTS=true bash scripts/travis/build.sh
script: travis_retry travis_wait 80 mvn -B verify -Dmaven.javadoc.skip=true -Dmaven.source.skip=true -Pags -Pstart-postgres -PagsAllTestSuitePt4 -f amps/ags/pom.xml ${LOG_WARN}
- name: "AGS Unit & Integration Tests 01 (MySQL) "
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip ags\]/) OR commit_message =~ /\[ags on MySQL\]/
install: travis_retry travis_wait 40 env REQUIRES_INSTALLED_ARTIFACTS=true bash scripts/travis/build.sh
script: travis_retry travis_wait 80 mvn -B verify -Dmaven.javadoc.skip=true -Dmaven.source.skip=true -Pags -Pstart-mysql -PagsAllTestSuitePt1 -f amps/ags/pom.xml ${LOG_WARN}
- name: "AGS Integration Tests 02 (MySQL) "
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip ags\]/) OR commit_message =~ /\[ags on MySQL\]/
install: travis_retry travis_wait 40 env REQUIRES_INSTALLED_ARTIFACTS=true bash scripts/travis/build.sh
script: travis_retry travis_wait 80 mvn -B verify -Dmaven.javadoc.skip=true -Dmaven.source.skip=true -Pags -Pstart-mysql -PagsAllTestSuitePt2 -f amps/ags/pom.xml ${LOG_WARN}
- name: "AGS Integration Tests 03 (MySQL) "
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip ags\]/) OR commit_message =~ /\[ags on MySQL\]/
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip ags\]/) OR commit_message =~ /\[ags\]/
install: travis_retry travis_wait 40 env REQUIRES_INSTALLED_ARTIFACTS=true bash scripts/travis/build.sh
script: travis_retry travis_wait 80 mvn -B verify -Dmaven.javadoc.skip=true -Dmaven.source.skip=true -Pags -Pstart-mysql -PagsAllTestSuitePt3 -f amps/ags/pom.xml ${LOG_WARN}
- name: "AGS Unit & Integration Tests 04 (MySQL) "
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip ags\]/) OR commit_message =~ /\[ags on MySQL\]/
install: travis_retry travis_wait 40 env REQUIRES_INSTALLED_ARTIFACTS=true bash scripts/travis/build.sh
script: travis_retry travis_wait 80 mvn -B verify -Dmaven.javadoc.skip=true -Dmaven.source.skip=true -Pags -Pstart-mysql -PagsAllTestSuitePt4 -f amps/ags/pom.xml ${LOG_WARN}
- name: "AGS Community Rest API Tests"
if: (branch =~ /(release\/.*$|master)/ AND commit_message !~ /\[skip ags\]/) OR commit_message =~ /\[ags\]/
install: travis_retry travis_wait 40 env REQUIRES_LOCAL_IMAGES=true bash scripts/travis/build.sh
addons:
artifacts:
paths:
@@ -373,11 +438,12 @@ jobs:
before_script:
- ${TAS_SCRIPTS}/start-compose.sh ./amps/ags/rm-community/rm-community-repo/docker-compose.yml
- ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8080/alfresco"
script: travis_wait 40 mvn -B test -pl :alfresco-governance-services-automation-community-rest-api -Dskip.automationtests=false -Pags
script: travis_wait 40 mvn -B test -pl :alfresco-governance-services-automation-community-rest-api -am -DfailIfNoTests=false -Dskip.automationtests=false -Pags
after_script: bash amps/ags/travis/scripts/getLogs.sh
- name: "Push to Nexus"
stage: release
install: skip
before_script: bash scripts/travis/verify_release_tag.sh
script: travis_wait 40 bash scripts/travis/maven_release.sh

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-amps</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<modules>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-governance-services-community-parent</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<modules>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-governance-services-automation-community-repo</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<build>
@@ -44,8 +44,8 @@
<dependencies>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.33</version>
<artifactId>slf4j-reload4j</artifactId>
<version>1.7.35</version>
<scope>test</scope>
</dependency>
<dependency>

View File

@@ -73,4 +73,5 @@ public class RecordFoldersAPI extends BaseAPI
}
return null;
}
}

View File

@@ -114,11 +114,11 @@ public class RecordsAPI extends BaseAPI
/**
* Reject the record given as parameter
*
* @param user the user declaring the document as record
* @param password the user's password
* @param user the user declaring the document as record
* @param password the user's password
* @param expectedStatusCode The expected return status code.
* @param recordName the record name
* @param reason reject reason
* @param recordName the record name
* @param reason reject reason
* @return The HTTP Response.
* @throws AssertionError If the expectedStatusCode was not returned.
*/
@@ -129,8 +129,8 @@ public class RecordsAPI extends BaseAPI
JSONObject requestParams = new JSONObject();
requestParams.put("name", "reject");
requestParams.put("nodeRef", recNodeRef);
requestParams.put("params",new JSONObject()
.put("reason",reason));
requestParams.put("params", new JSONObject()
.put("reason", reason));
return doPostJsonRequest(user, password, expectedStatusCode, requestParams, RM_ACTIONS_API);
}
@@ -221,6 +221,7 @@ public class RecordsAPI extends BaseAPI
* Uploads an electronic record
* <p>
* eg. of usage for creating record directly in Unfiled Records : uploadElectronicRecord(getAdminName(), getAdminPassword(), recordPropertiesStringMap, UNFILED_RECORDS_BREADCRUMB, DocumentType.HTML)
*
* @param username the username
* @param password the password
* @param properties a map of record properties and their values
@@ -241,6 +242,7 @@ public class RecordsAPI extends BaseAPI
* <li>eg. of usage in the case in which the record is inside a folder in Unfiled Records : deleteRecord(getAdminName(), getAdminPassword(), "f1 (2016-1472716888713)", UNFILED_RECORDS_BREADCRUMB, "unfiled records folder");
* <li>eg. of usage in the case in which the record is created directly in Unfiled Records : deleteRecord(getAdminName(), getAdminPassword(), "f1 (2016-1472716888713)", UNFILED_RECORDS_BREADCRUMB, "");
* </ul>
*
* @param username user's username
* @param password its password
* @param recordName the record name
@@ -267,7 +269,7 @@ public class RecordsAPI extends BaseAPI
* @param recordName the String with which the record name starts
* @return the record object in case it exists, null otherwise
*/
private CmisObject getRecord(String username, String password, String folderName, String recordName)
public CmisObject getRecord(String username, String password, String folderName, String recordName)
{
for (CmisObject record : contentService.getFolderObject(contentService.getCMISSession(username, password), RM_SITE_ID, folderName).getChildren())
{
@@ -328,9 +330,9 @@ public class RecordsAPI extends BaseAPI
/**
* Hide in place record
*
* @param user the user
* @param password the user's password
* @param nodeId the in place record node id
* @param user the user
* @param password the user's password
* @param nodeId the in place record node id
* @return The HTTP Response.
*/
public HttpResponse hideRecord(String user, String password, String nodeId)
@@ -344,6 +346,7 @@ public class RecordsAPI extends BaseAPI
return doPostJsonRequest(user, password, SC_OK, requestParams, ACTIONS_API);
}
/**
* Retrieves the record's nodeRef
*

View File

@@ -73,6 +73,7 @@ import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
import org.alfresco.utility.model.TestGroup;
/**
* API tests for declaring document as record and filing it immediately to a record folder location within the file plan
@@ -257,7 +258,7 @@ public class DeclareAndFileDocumentAsRecordTests extends BaseRMRestTest
* Then I receive an error indicating that I have attempted to declare and file a document into an invalid record folder
* And the document is not declared as a record
*/
@Test (dataProvider = "invalidDestinationPaths")
@Test (dataProvider = "invalidDestinationPaths",groups = { TestGroup.NOT_SUPPORTED_ON_SINGLE_PIPELINE })
public void declareAndFileToInvalidLocationUsingActionsAPI(String containerPath, String expectedException) throws Exception
{
STEP("Declare document as record with an invalid location parameter value");

View File

@@ -62,6 +62,7 @@ import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
import org.alfresco.utility.model.TestGroup;
/**
* API tests for declaring a document version as record and filing to a record folder location within the file plan
@@ -207,7 +208,7 @@ public class FileVersionAsRecordTests extends BaseRMRestTest
* record folder
* And the document is not declared as a version record
*/
@Test (dataProvider = "invalidDestinationPaths")
@Test (dataProvider = "invalidDestinationPaths", groups = { TestGroup.NOT_SUPPORTED_ON_SINGLE_PIPELINE })
public void declareVersionAndFileToInvalidLocationUsingActionsAPI(String containerPath, String expectedException) throws Exception
{
STEP("Declare document as record version with an invalid location parameter value");

View File

@@ -0,0 +1,139 @@
/*
* #%L
* Alfresco Records Management Module
* %%
* Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* -
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
* -
* Alfresco is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* -
* Alfresco is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
* -
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
* #L%
*/
package org.alfresco.rest.rm.community.records;
import static org.alfresco.rest.rm.community.util.CommonTestUtils.generateTestPrefix;
import static org.alfresco.utility.data.RandomData.getRandomName;
import static org.alfresco.utility.report.log.Step.STEP;
import static org.springframework.http.HttpStatus.CREATED;
import static org.testng.Assert.assertNotNull;
import java.util.HashMap;
import java.util.Map;
import org.alfresco.rest.core.v0.BaseAPI.RMProperty;
import org.alfresco.rest.rm.community.base.BaseRMRestTest;
import org.alfresco.rest.rm.community.model.recordcategory.RecordCategory;
import org.alfresco.rest.rm.community.model.recordcategory.RecordCategoryChild;
import org.alfresco.rest.v0.RMRolesAndActionsAPI;
import org.alfresco.rest.v0.RecordsAPI;
import org.alfresco.test.AlfrescoTest;
import org.springframework.beans.factory.annotation.Autowired;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
/**
* Contains CreateNonElectronicRecords test which checks creation and basic actions(view details, edit, move, copy, delete) on non-electronic records
* <p/>
* Precondition:
* <p/>
* RM site created, contains category 1 with folder 1 and folder 2 inside it
* <p/>
* RM user has RM admin role
*
* @author Shubham Jain
* @Since 7.2.0 M2
*/
public class CreateNonElectronicRecordsTests extends BaseRMRestTest
{
private RecordCategory rootCategory;
private RecordCategoryChild recordFolder;
/**
* data prep services
*/
@Autowired
private RMRolesAndActionsAPI rmRolesAndActionsAPI;
@Autowired
private RecordsAPI recordsAPI;
private final String TEST_PREFIX = generateTestPrefix(CreateNonElectronicRecordsTests.class);
private final String RM_ADMIN = TEST_PREFIX + "rm_admin";
private final String recordName = "RM-2777 record";
private final String recordTitle = recordName + " title";
private final String recordDescription = recordName + " description";
@BeforeClass (alwaysRun = true)
public void preConditions()
{
STEP("Create RM Site");
createRMSiteIfNotExists();
STEP("Create RM Admin user");
rmRolesAndActionsAPI.createUserAndAssignToRole(getAdminUser().getUsername(), getAdminUser().getPassword(), RM_ADMIN,
getAdminUser().getPassword(),
"Administrator");
STEP("Create root level category");
rootCategory = createRootCategory(getRandomName("Category"));
STEP("Create the record folder inside the rootCategory");
recordFolder = createRecordFolder(rootCategory.getId(), getRandomName("Folder"));
}
/**
* Test v0 methods to create and get non-electronic records.
*/
@Test
@AlfrescoTest (jira = "RM-2777")
public void createNonElectronicRecordTest()
{
STEP("Create a non-electronic record by completing some of the fields");
Map<Enum<?>, String> properties = new HashMap<Enum<?>, String>();
properties.put(RMProperty.TITLE, recordTitle);
properties.put(RMProperty.DESCRIPTION, recordDescription);
properties.put(RMProperty.NAME, recordName);
properties.put(RMProperty.PHYSICAL_SIZE, "");
properties.put(RMProperty.NUMBER_OF_COPIES, "");
properties.put(RMProperty.SHELF, "");
properties.put(RMProperty.STORAGE_LOCATION, "");
properties.put(RMProperty.BOX, "");
properties.put(RMProperty.FILE, "");
recordsAPI.createNonElectronicRecord(getAdminUser().getUsername(),
getAdminUser().getPassword(), properties, rootCategory.getName(), recordFolder.getName());
STEP("Check the non-electronic record has been created");
assertStatusCode(CREATED);
assertNotNull(recordsAPI.getRecord(getAdminUser().getUsername(), getAdminUser().getPassword(),
recordFolder.getName(), recordName));
}
@AfterClass (alwaysRun = true)
public void deletePreConditions()
{
STEP("Delete the created rootCategory along with corresponding record folders/records present in it");
getRestAPIFactory().getRecordCategoryAPI().deleteRecordCategory(rootCategory.getId());
}
}

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-governance-services-community-parent</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<modules>

View File

@@ -1,4 +1,3 @@
TRANSFORMERS_TAG=2.5.5
SOLR6_TAG=2.0.2
SOLR6_TAG=2.0.3
POSTGRES_TAG=13.3
ACTIVEMQ_TAG=5.16.1

View File

@@ -1,4 +1,17 @@
### Apply AGS community repo AMP to ACS image
# BUILD STAGE AGS
FROM debian:11-slim AS AGSBUILDER
RUN export DEBIAN_FRONTEND=noninteractive; \
apt-get update -qqy && apt-get -yqq install unzip && \
mkdir -p /build/gs-api-explorer
### Copy the AGS war from the local context
COPY target/gs-api-explorer-*.war /build
RUN unzip -q /build/gs-api-explorer-*.war -d /build/gs-api-explorer && \
chmod -R g-w,o= /build
# ACTUAL IMAGE
FROM alfresco/alfresco-community-repo-base:${image.tag}
# Alfresco user does not have permissions to modify webapps or configuration. Switch to root.
@@ -13,18 +26,13 @@ RUN java -jar /usr/local/tomcat/alfresco-mmt/alfresco-mmt*.jar install \
/usr/local/tomcat/amps \
/usr/local/tomcat/webapps/alfresco -directory -nobackup
### Copy gs-api-explorer war into webapps folder
COPY target/gs-api-explorer-*.war /usr/local/tomcat/webapps/
### Unpack gs-api-explorer.war
RUN mkdir /usr/local/tomcat/webapps/gs-api-explorer && cd /usr/local/tomcat/webapps/gs-api-explorer && \
jar -xvf /usr/local/tomcat/webapps/gs-api-explorer-*.war && rm -f /usr/local/tomcat/webapps/gs-api-explorer-*.war
### Copy gs-api-explorer
COPY --chown=root:Alfresco --from=AGSBUILDER /build/gs-api-explorer /usr/local/tomcat/webapps/gs-api-explorer
# All files in the tomcat folder must be owned by root user and Alfresco group as mentioned in the parent Dockerfile
RUN chgrp -R Alfresco /usr/local/tomcat && \
find /usr/local/tomcat/webapps -type d -exec chmod 0750 {} \; && \
find /usr/local/tomcat/webapps -type f -exec chmod 0640 {} \; && \
chmod -R g+r /usr/local/tomcat/webapps
find /usr/local/tomcat/webapps -type f -exec chmod 0640 {} \;
# Switching back to alfresco user after having added amps files to run the container as non-root
USER alfresco

View File

@@ -26,7 +26,8 @@ services:
-Ddb.url=jdbc:postgresql://postgres:5432/alfresco
-Dsolr.host=search
-Dsolr.port=8983
-Dsolr.secureComms=none
-Dsolr.secureComms=secret
-Dsolr.sharedSecret=secret
-Dsolr.base.url=/solr
-Dindex.subsystem.name=solr6
-Dalfresco.restApi.basicAuthScheme=true
@@ -61,15 +62,19 @@ services:
image: alfresco/alfresco-search-services:${SOLR6_TAG}
environment:
#Solr needs to know how to register itself with Alfresco
- SOLR_ALFRESCO_HOST=alfresco
- SOLR_ALFRESCO_PORT=8080
SOLR_ALFRESCO_HOST: "alfresco"
SOLR_ALFRESCO_PORT: "8080"
#Alfresco needs to know how to call solr
- SOLR_SOLR_HOST=search
- SOLR_SOLR_PORT=8983
SOLR_SOLR_HOST: "search"
SOLR_SOLR_PORT: "8983"
#Create the default alfresco and archive cores
- SOLR_CREATE_ALFRESCO_DEFAULTS=alfresco,archive
#HTTP by default
- ALFRESCO_SECURE_COMMS=none
SOLR_CREATE_ALFRESCO_DEFAULTS: "alfresco,archive"
#HTTP by default
ALFRESCO_SECURE_COMMS: "secret"
JAVA_TOOL_OPTIONS:
"
-Dalfresco.secureComms.secret=secret
"
ports:
- 8083:8983 #Browser port

View File

@@ -8,7 +8,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-governance-services-community-repo-parent</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<properties>
@@ -361,6 +361,12 @@
<integrationTestSuite>**/AllTestSuitePt3.class</integrationTestSuite>
</properties>
</profile>
<profile>
<id>agsAllTestSuitePt4</id>
<properties>
<integrationTestSuite>**/AllTestSuitePt4.class</integrationTestSuite>
</properties>
</profile>
<profile>
<id>use-mysql</id>

View File

@@ -66,7 +66,8 @@ ftp.enabled=false
# Solr config
index.subsystem.name=solr6
solr.secureComms=none
solr.secureComms=secret
solr.sharedSecret=secret
solr.port=8983
#By default the basic auth is on false - REPO-2575

View File

@@ -43,19 +43,16 @@ import org.junit.runner.RunWith;
@ClassnameFilters({
// The following packages are run by Pt1. IF YOU CHANGE THIS LIST ALSO CHANGE IT IN AllTestSuitePt3.
"org\\.alfresco\\.module\\.org_alfresco_module_rm\\.test\\.legacy\\.action\\..*Test",
"org\\.alfresco\\.module\\.org_alfresco_module_rm\\.test\\.legacy\\.capabilities\\..*Test",
"org\\.alfresco\\.module\\.org_alfresco_module_rm\\.test\\.legacy\\.jscript\\..*Test",
"org\\.alfresco\\.module\\.org_alfresco_module_rm\\.test\\.legacy\\.security\\..*Test",
"org\\.alfresco\\.module\\.org_alfresco_module_rm\\.test\\.legacy\\.service\\..*Test",
"org\\.alfresco\\.module\\.org_alfresco_module_rm\\.test\\.legacy\\.webscript\\..*Test",
// There appears to be some common setup taking place in the first 2 packages, which is why all legacy tests are
// together even though they take a little longer to run that way.
"org\\.alfresco\\.module\\.org_alfresco_module_rm\\.test\\.legacy\\.jscript\\..*Test",
// Exclude all UnitTests
"!.*UnitTest",
// Put the test classes you want to exclude here
"!.*DispositionServiceImplTest",
"!.*FilePlanPermissionServiceImplTest",
// above 2 tests from service package require setup from FileReportActionTest so they've been moved to part 4
"!.*DataLoadSystemTest",
"!.*RM2072Test",
"!.*RM2190Test",

View File

@@ -0,0 +1,78 @@
/*
* #%L
* Alfresco Records Management Module
* %%
* Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* -
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
* -
* Alfresco is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* -
* Alfresco is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
* -
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
* #L%
*/
package org.alfresco.module.org_alfresco_module_rm.test;
import org.junit.extensions.cpsuite.ClasspathSuite;
import org.junit.extensions.cpsuite.ClasspathSuite.ClassnameFilters;
import org.junit.extensions.cpsuite.ClasspathSuite.SuiteTypes;
import org.junit.extensions.cpsuite.SuiteType;
import org.junit.runner.RunWith;
/**
* Convenience test suite that runs all the tests. THIS HAS BEEN SPLIT INTO PARTS SO THAT THE BUILD TIME IS REDUCED.
*
* @author Marcin Strankowski
* @since 2.1
*/
@RunWith(ClasspathSuite.class)
@SuiteTypes({SuiteType.TEST_CLASSES, SuiteType.RUN_WITH_CLASSES, SuiteType.JUNIT38_TEST_CLASSES})
@ClassnameFilters({
// The following packages are run by Pt1. IF YOU CHANGE THIS LIST ALSO CHANGE IT IN AllTestSuitePt3.
"org\\.alfresco\\.module\\.org_alfresco_module_rm\\.test\\.legacy\\.action\\..*Test",
"org\\.alfresco\\.module\\.org_alfresco_module_rm\\.test\\.legacy\\.capabilities\\..*Test",
"org\\.alfresco\\.module\\.org_alfresco_module_rm\\.test\\.legacy\\.security\\..*Test",
"org\\.alfresco\\.module\\.org_alfresco_module_rm\\.test\\.legacy\\.webscript\\..*Test",
"org\\.alfresco\\.module\\.org_alfresco_module_rm\\.test\\.legacy\\.service\\.*DispositionServiceImplTest",
"org\\.alfresco\\.module\\.org_alfresco_module_rm\\.test\\.legacy\\.service\\.*FilePlanPermissionServiceImplTest",
// 2 tests from service package are here, they seem to require FileReportActionTest being ran beforehand
// and it would take too much time to run them in 1st test suite
// Exclude all UnitTests
"!.*UnitTest",
// Put the test classes you want to exclude here
"!.*DataLoadSystemTest",
"!.*RM2072Test",
"!.*RM2190Test",
"!.*RM981SystemTest",
"!.*RM3993Test",
"!.*RM4163Test",
"!.*RecordsManagementEventServiceImplTest",
"!.*RmRestApiTest",
"!.*NotificationServiceHelperSystemTest",
"!.*RetryingTransactionHelperBaseTest",
"!.*RMCaveatConfigServiceImplTest",
// This test is running successfully locally but not on bamboo (if executed as a single test).
// The problem can be reproduced if the whole test suite is run locally as well.
// Tests should not be dependant on other test classes and should run in any order without any problems.
"!.*EmailMapScriptTest"
})
public class AllTestSuitePt4
{
}

View File

@@ -3,8 +3,8 @@
#
# Version label
version.major=7
version.minor=0
version.major=23
version.minor=1
version.revision=0
version.label=

View File

@@ -29,6 +29,7 @@ package org.alfresco.module.org_alfresco_module_rm.api;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import static org.reflections.scanners.Scanners.TypesAnnotated;
import java.lang.reflect.Constructor;
import java.lang.reflect.Executable;
@@ -77,7 +78,7 @@ public class PublicAPITestUtil
*/
public static void testPublicAPIConsistency(String basePackageName, SetMultimap<Class<?>, Class<?>> knownBadReferences)
{
Reflections reflections = new Reflections(basePackageName);
Reflections reflections = new Reflections(basePackageName, TypesAnnotated);
Set<Class<?>> publicAPIClasses = reflections.getTypesAnnotatedWith(AlfrescoPublicApi.class, true);
SetMultimap<Class<?>, Class<?>> referencedFrom = HashMultimap.create();

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-governance-services-community-repo-parent</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<build>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<modules>

View File

@@ -8,7 +8,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-amps</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<properties>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<dependencies>
@@ -54,9 +54,9 @@
<classifier>asl</classifier>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
<groupId>ch.qos.reload4j</groupId>
<artifactId>reload4j</artifactId>
<version>1.2.18.3</version>
</dependency>
<dependency>
<groupId>org.json</groupId>
@@ -114,7 +114,7 @@
<!-- Test only dependencies, as popped up while running mvn test -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<artifactId>slf4j-reload4j</artifactId>
<scope>test</scope>
</dependency>
<dependency>
@@ -128,8 +128,8 @@
<scope>test</scope>
</dependency>
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<groupId>org.apache.commons</groupId>
<artifactId>commons-dbcp2</artifactId>
<scope>test</scope>
</dependency>
</dependencies>

View File

@@ -21,7 +21,7 @@ package org.alfresco.util.transaction;
import org.alfresco.error.AlfrescoRuntimeException;
/**
* Exception wraps {@link java.util.NoSuchElementException} from {@link org.apache.commons.dbcp.BasicDataSource}
* Exception wraps {@link java.util.NoSuchElementException} from {@link org.apache.commons.dbcp2.BasicDataSource}
*
* @author alex.mukha
* @since 4.1.9

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<properties>

View File

@@ -26,7 +26,6 @@
package org.alfresco.repo.content;
import org.alfresco.service.Experimental;
/**
* Enumeration with values for archive-restore parameter keys.
@@ -35,7 +34,6 @@ import org.alfresco.service.Experimental;
*
* @author mpichura
*/
@Experimental
public enum ContentRestoreParams
{
/**

View File

@@ -26,7 +26,6 @@
package org.alfresco.repo.content;
import org.alfresco.api.AlfrescoPublicApi;
import org.alfresco.service.Experimental;
import org.alfresco.service.cmr.repository.ContentAccessor;
import org.alfresco.service.cmr.repository.ContentIOException;
import org.alfresco.service.cmr.repository.ContentReader;
@@ -340,7 +339,6 @@ public interface ContentStore
* @param contentUrl the URL of the content for which the storage properties are to be retrieved.
* @return Returns a key-value (String-String) collection of storage headers/properties with their respective values.
*/
@Experimental
default Map<String, String> getStorageProperties(String contentUrl)
{
return Collections.emptyMap();
@@ -350,14 +348,12 @@ public interface ContentStore
* Submit a request to send content to archive (offline) state.
* If no connector is present or connector is not supporting sending to archive, then {@link UnsupportedOperationException} will be returned.
* Specific connector will decide which storage class/tier will be set for content.
* This method is experimental and subject to changes.
*
* @param contentUrl the URL of the content which is to be archived.
* @param archiveParams a map of String-Serializable parameters defining Storage Provider specific request parameters (can be empty).
* @return true when request successful, false when unsuccessful.
* @throws UnsupportedOperationException when store is unable to handle request.
*/
@Experimental
default boolean requestSendContentToArchive(String contentUrl, Map<String, Serializable> archiveParams)
{
throw new UnsupportedOperationException("Request to archive content is not supported by this content store.");
@@ -370,14 +366,12 @@ public interface ContentStore
* Keys of this map should be restricted to {@code ContentRestoreParams} enumeration.
* For AWS S3 map can indicating expiry days, Glacier restore tier.
* For Azure Blob map can indicate rehydrate priority.
* This method is experimental and subject to changes.
*
* @param contentUrl the URL of the content which is to be archived.
* @param restoreParams a map of String-Serializable parameters defining Storage Provider specific request parameters (can be empty).
* @return true when request successful, false when unsuccessful.
* @throws UnsupportedOperationException when store is unable to handle request.
*/
@Experimental
default boolean requestRestoreContentFromArchive(String contentUrl, Map<String, Serializable> restoreParams)
{
throw new UnsupportedOperationException("Request to restore content from archive is not supported by this content store.");

View File

@@ -26,8 +26,6 @@
package org.alfresco.repo.content;
import org.alfresco.service.Experimental;
/**
* Enumeration with "header" values for Alfresco derived Storage Properties
* Values of this enum should be used when adding Alfresco derived key-value pairs in Storage Properties map.
@@ -35,7 +33,6 @@ import org.alfresco.service.Experimental;
*
* @author mpichura
*/
@Experimental
public enum ObjectStorageProps {
/**
* Object's content is archived and not immediately accessible.

View File

@@ -26,7 +26,6 @@
package org.alfresco.service.cmr.repository;
import org.alfresco.api.AlfrescoPublicApi;
import org.alfresco.service.Experimental;
/**
* Unable to access as content is in an Archived state.
@@ -34,7 +33,6 @@ import org.alfresco.service.Experimental;
*
* @author David Edwards
*/
@Experimental
@AlfrescoPublicApi
public class ArchivedIOException extends ContentIOException
{

View File

@@ -27,7 +27,6 @@ package org.alfresco.service.cmr.repository;
import org.alfresco.api.AlfrescoPublicApi;
import org.alfresco.error.AlfrescoRuntimeException;
import org.alfresco.service.Experimental;
/**
* Content Restoration in progress
@@ -35,7 +34,6 @@ import org.alfresco.service.Experimental;
* @author David Edwards
*/
@AlfrescoPublicApi
@Experimental
public class RestoreInProgressException extends AlfrescoRuntimeException
{
private static final long serialVersionUID = 5483215922384016269L;

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<dependencies>
@@ -31,6 +31,11 @@
<artifactId>maven-artifact</artifactId>
<version>${dependency.maven-artifact.version}</version>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>

View File

@@ -1,28 +1,28 @@
/*
* #%L
* Alfresco Repository
* %%
* Copyright (C) 2005 - 2016 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* Alfresco is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Alfresco is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
* #L%
*/
/*
* #%L
* Alfresco Repository
* %%
* Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* Alfresco is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Alfresco is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
* #L%
*/
package org.alfresco.repo.module.tool;
import java.io.BufferedReader;

View File

@@ -1,28 +1,28 @@
/*
* #%L
* Alfresco Repository
* %%
* Copyright (C) 2005 - 2016 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* Alfresco is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Alfresco is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
* #L%
*/
/*
* #%L
* Alfresco Repository
* %%
* Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* Alfresco is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Alfresco is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
* #L%
*/
package org.alfresco.repo.module.tool;
import java.io.FileNotFoundException;
@@ -178,13 +178,13 @@ public class ModuleDetailsHelper
}
/**
* Saves the module details to the war in the correct location based on the module id
*
* @param warLocation the war location
* @param moduleDetails the module id
*/
public static void saveModuleDetails(String warLocation, ModuleDetails moduleDetails)
{
* Saves the module details to the war in the correct location based on the module id
*
* @param warLocation the war location
* @param moduleDetails the module id
*/
public static void saveModuleDetails(String warLocation, ModuleDetails moduleDetails)
{
// Ensure that it is a valid set of properties
String moduleId = moduleDetails.getId();
try

View File

@@ -1,28 +1,28 @@
/*
* #%L
* Alfresco Repository
* %%
* Copyright (C) 2005 - 2016 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* Alfresco is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Alfresco is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
* #L%
*/
/*
* #%L
* Alfresco Repository
* %%
* Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* Alfresco is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Alfresco is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
* #L%
*/
package org.alfresco.repo.module.tool;
import de.schlichtherle.truezip.file.*;

View File

@@ -1,28 +1,28 @@
/*
* #%L
* Alfresco Repository
* %%
* Copyright (C) 2005 - 2016 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* Alfresco is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Alfresco is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
* #L%
*/
/*
* #%L
* Alfresco Repository
* %%
* Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* Alfresco is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Alfresco is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
* #L%
*/
package org.alfresco.repo.module.tool;
import org.alfresco.service.cmr.module.ModuleDetails;

View File

@@ -1,28 +1,28 @@
/*
* #%L
* Alfresco Repository
* %%
* Copyright (C) 2005 - 2016 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* Alfresco is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Alfresco is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
* #L%
*/
/*
* #%L
* Alfresco Repository
* %%
* Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* Alfresco is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Alfresco is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
* #L%
*/
package org.alfresco.repo.module.tool;
import de.schlichtherle.truezip.file.TArchiveDetector;

View File

@@ -0,0 +1,43 @@
/*
* #%L
* Alfresco Repository
* %%
* Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* Alfresco is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Alfresco is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
* #L%
*/
package org.alfresco;
import org.junit.experimental.categories.Categories;
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
/**
* All MMT Tool project UNIT test classes (no application context) should be added to this test suite.
*/
@RunWith(Categories.class)
@Suite.SuiteClasses({
org.alfresco.repo.module.tool.ModuleManagementToolTest.class,
org.alfresco.repo.module.tool.WarHelperImplTest.class,
org.alfresco.repo.module.tool.ModuleServiceImplTest.class
})
public class AllMmtUnitTestSuite
{
}

View File

@@ -2,7 +2,7 @@
* #%L
* Alfresco Repository
* %%
* Copyright (C) 2005 - 2016 Alfresco Software Limited
* Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* If the software was purchased under a paid Alfresco license, the terms of

View File

@@ -2,7 +2,7 @@
* #%L
* Alfresco Repository
* %%
* Copyright (C) 2005 - 2016 Alfresco Software Limited
* Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* If the software was purchased under a paid Alfresco license, the terms of

View File

@@ -2,7 +2,7 @@
* #%L
* Alfresco Repository
* %%
* Copyright (C) 2005 - 2016 Alfresco Software Limited
* Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* If the software was purchased under a paid Alfresco license, the terms of

View File

@@ -9,6 +9,6 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-packaging</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
</project>

View File

@@ -1,6 +1,6 @@
# Fetch image based on Tomcat 9.0, Java 11 and Centos 8
# Fetch image based on Tomcat 9.0, Java 11 and Centos 7
# More infos about this image: https://github.com/Alfresco/alfresco-docker-base-tomcat
FROM alfresco/alfresco-base-tomcat:9.0.54-java-11-centos-7
FROM alfresco/alfresco-base-tomcat:tomcat9-jre11-centos7-202203091924
# Set default docker_context.
ARG resource_path=target

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-packaging</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<properties>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<modules>

View File

@@ -1,4 +1,3 @@
TRANSFORMERS_TAG=2.5.5
SOLR6_TAG=2.0.2
SOLR6_TAG=2.0.3
POSTGRES_TAG=13.3
ACTIVEMQ_TAG=5.16.1

View File

@@ -28,7 +28,8 @@ services:
-Ddb.url=jdbc:postgresql://postgres:5432/alfresco
-Dsolr.host=solr6
-Dsolr.port=8983
-Dsolr.secureComms=none
-Dsolr.secureComms=secret
-Dsolr.sharedSecret=secret
-Dsolr.base.url=/solr
-Dindex.subsystem.name=solr6
-Dalfresco.restApi.basicAuthScheme=true
@@ -63,15 +64,19 @@ services:
image: alfresco/alfresco-search-services:${SOLR6_TAG}
environment:
#Solr needs to know how to register itself with Alfresco
- SOLR_ALFRESCO_HOST=alfresco
- SOLR_ALFRESCO_PORT=8080
SOLR_ALFRESCO_HOST: "alfresco"
SOLR_ALFRESCO_PORT: "8080"
#Alfresco needs to know how to call solr
- SOLR_SOLR_HOST=solr6
- SOLR_SOLR_PORT=8983
SOLR_SOLR_HOST: "solr6"
SOLR_SOLR_PORT: "8983"
#Create the default alfresco and archive cores
- SOLR_CREATE_ALFRESCO_DEFAULTS=alfresco,archive
SOLR_CREATE_ALFRESCO_DEFAULTS: "alfresco,archive"
#HTTP by default
- ALFRESCO_SECURE_COMMS=none
ALFRESCO_SECURE_COMMS: "secret"
JAVA_TOOL_OPTIONS:
"
-Dalfresco.secureComms.secret=secret
"
ports:
- 8083:8983 #Browser port

View File

@@ -28,7 +28,8 @@ services:
-Ddb.url=jdbc:postgresql://postgres:5432/alfresco
-Dsolr.host=solr6
-Dsolr.port=8983
-Dsolr.secureComms=none
-Dsolr.secureComms=secret
-Dsolr.sharedSecret=secret
-Dsolr.base.url=/solr
-Dindex.subsystem.name=solr6
-Dalfresco.restApi.basicAuthScheme=true
@@ -66,15 +67,19 @@ services:
image: alfresco/alfresco-search-services:${SOLR6_TAG}
environment:
#Solr needs to know how to register itself with Alfresco
- SOLR_ALFRESCO_HOST=alfresco
- SOLR_ALFRESCO_PORT=8080
SOLR_ALFRESCO_HOST: "alfresco"
SOLR_ALFRESCO_PORT: "8080"
#Alfresco needs to know how to call solr
- SOLR_SOLR_HOST=solr6
- SOLR_SOLR_PORT=8983
SOLR_SOLR_HOST: "solr6"
SOLR_SOLR_PORT: "8983"
#Create the default alfresco and archive cores
- SOLR_CREATE_ALFRESCO_DEFAULTS=alfresco,archive
SOLR_CREATE_ALFRESCO_DEFAULTS: "alfresco,archive"
#HTTP by default
- ALFRESCO_SECURE_COMMS=none
ALFRESCO_SECURE_COMMS: "secret"
JAVA_TOOL_OPTIONS:
"
-Dalfresco.secureComms.secret=secret
"
ports:
- 8083:8983 #Browser port

View File

@@ -6,7 +6,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-packaging</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<modules>

View File

@@ -27,6 +27,9 @@ fi
echo "Starting ACS stack in ${DOCKER_COMPOSE_PATH}"
export TRANSFORMERS_TAG=$(mvn help:evaluate -Dexpression=dependency.alfresco-transform-core.version -q -DforceStdout)
export TRANSFORM_ROUTER_TAG=$(mvn help:evaluate -Dexpression=dependency.alfresco-transform-service.version -q -DforceStdout)
# .env files are picked up from project directory correctly on docker-compose 1.23.0+
docker-compose --file "${DOCKER_COMPOSE_PATH}" --project-directory $(dirname "${DOCKER_COMPOSE_PATH}") up -d

View File

@@ -9,7 +9,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-tests</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<developers>

View File

@@ -9,7 +9,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-tests</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<developers>

View File

@@ -9,7 +9,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-tests</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<developers>

View File

@@ -60,15 +60,15 @@ public class IntegrationFullTestsBulk2 extends IntegrationTest
ftpProtocol.authenticateUser(testUser1).usingSite(testSitePublic).createFolder(testFolder1)
.usingResource(testFolder1).createFile(wordFile)
.assertThat().contentIs("tasTesting");
STEP("2. Open document for edit using CMIS");
cmisAPI.authenticateUser(testUser1).usingResource(wordFile).checkOut();
FileModel wordFilePWC = cmisAPI.usingResource(wordFile).withCMISUtil().getPWCFileModel();
STEP("3. Try to edit document using Webdav while checked-out with CMIS - content should be updated");
webDavProtocol.authenticateUser(testUser1).usingResource(wordFilePWC).update("update")
.and().assertThat().contentIs("update");
STEP("4. Copy document to testFolder2 with ftp");
FileModel copiedWordFile = new FileModel(wordFile);
ftpProtocol.usingSite(testSitePublic).createFolder(testFolder2)
@@ -76,15 +76,15 @@ public class IntegrationFullTestsBulk2 extends IntegrationTest
copiedWordFile.setCmisLocation(ftpProtocol.getLastResourceWithoutPrefix());
ftpProtocol.usingResource(testFolder1).assertThat().hasFiles(wordFile)
.and().usingResource(testFolder2).assertThat().hasFiles(copiedWordFile);
STEP("5. Update document from folder2, check its content is updated with Webdav");
webDavProtocol.usingResource(copiedWordFile).update("Step5")
.and().assertThat().contentIs("Step5");
STEP("6. Update document with WebDAV");
webDavProtocol.authenticateUser(testUser1).usingResource(wordFile).update("WebDAVUpdate");
}
/**
* Scenario 84
* 1. Create folder1 with webdav
@@ -150,7 +150,7 @@ public class IntegrationFullTestsBulk2 extends IntegrationTest
* 13. Check file is deleted with WebDAV
*/
@Test(groups = { TestGroup.INTEGRATION, TestGroup.FULL })
@TestRail(section = { TestGroup.INTEGRATION, TestGroup.CONTENT }, executionType = ExecutionType.REGRESSION,
@TestRail(section = { TestGroup.INTEGRATION, TestGroup.CONTENT }, executionType = ExecutionType.REGRESSION,
description = "Update file with different user roles and protocols")
public void updateFileWithDifferentRolesUsingDifferentProtocols() throws Exception
{
@@ -276,41 +276,41 @@ public class IntegrationFullTestsBulk2 extends IntegrationTest
UserModel user1 = dataUser.createRandomTestUser();
UserModel user2 = dataUser.createRandomTestUser();
user2.setUserRole(UserRole.SiteManager);
STEP("2. User1 creates site1 and invites user2 as manager");
SiteModel site = dataSite.usingUser(user1).createPublicRandomSite();
restAPI.authenticateUser(user1).withCoreAPI().usingSite(site).addPerson(user2);
STEP("3. User1 adds document1 and tag1 to doc");
dataContent.usingUser(user1).usingSite(site).createContent(testFile);
RestTagModel tag = restAPI.withCoreAPI().usingResource(testFile).addTag("tag1");
restAPI.withCoreAPI().usingResource(testFile).getNodeTags().assertThat().entriesListContains("tag", "tag1");
STEP("4. User2 gets tags and verifies tag1 appears");
restAPI.authenticateUser(user2).withCoreAPI().usingResource(testFile).getNodeTags().assertThat().entriesListContains("tag", "tag1");
STEP("5. User2 delete tag1");
restAPI.withCoreAPI().usingResource(testFile).deleteTag(tag);
restAPI.withCoreAPI().usingResource(testFile).getNodeTags().assertThat().entriesListDoesNotContain("tag", "tag1");
STEP("6. User1 tries to update tag1");
restAPI.authenticateUser(user2).withCoreAPI().usingTag(tag).update("updatedTag");
restAPI.assertStatusCodeIs(HttpStatus.FORBIDDEN)
.assertLastError().containsSummary(RestErrorModel.PERMISSION_WAS_DENIED)
.containsErrorKey(RestErrorModel.PERMISSION_DENIED_ERRORKEY);
STEP("7. User1 add new tag tag2");
tag = restAPI.authenticateUser(user1).withCoreAPI().usingResource(testFile).addTag("tag2");
restAPI.withCoreAPI().usingResource(testFile).getNodeTags().assertThat().entriesListContains("tag", "tag2");
STEP("8. User2 verifies tag2 appears and tag1 is not in the list");
restAPI.authenticateUser(user2).withCoreAPI().usingResource(testFile).getNodeTags()
.assertThat().entriesListDoesNotContain("tag", "tag1")
.assertThat().entriesListContains("tag", "tag2");
STEP("9. User2 deletes document1");
dataContent.usingUser(user2).usingResource(testFile).deleteContent();
STEP("10. User1 tries to delete tag2");
restAPI.authenticateUser(user1).withCoreAPI().usingResource(testFile).deleteTag(tag);
restAPI.assertStatusCodeIs(HttpStatus.NOT_FOUND)
@@ -329,9 +329,9 @@ public class IntegrationFullTestsBulk2 extends IntegrationTest
* 7. User1 deletes the document1 with ftp
* 8. Verify user2 cannot update document1 with cmis
*/
@Test(groups = { TestGroup.INTEGRATION, TestGroup.FULL }, expectedExceptions = CmisObjectNotFoundException.class, expectedExceptionsMessageRegExp = ".*Object not found:.*")
@TestRail(section = { TestGroup.INTEGRATION, TestGroup.CONTENT }, executionType = ExecutionType.REGRESSION, description = "Negative scenarios for update document")
public void fileUpdateNegativeScenariosTest() throws Exception
@Test(groups = { TestGroup.INTEGRATION, TestGroup.FULL }, expectedExceptions = CmisObjectNotFoundException.class, expectedExceptionsMessageRegExp = ".*Object not found:.*")
@TestRail(section = { TestGroup.INTEGRATION, TestGroup.CONTENT }, executionType = ExecutionType.REGRESSION, description = "Negative scenarios for update document")
public void fileUpdateNegativeScenariosTest() throws Exception
{
STEP("1. Create user1, user2");
UserModel user1 = dataUser.createRandomTestUser();

View File

@@ -9,7 +9,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-tests</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<developers>

View File

@@ -11,6 +11,7 @@ import org.alfresco.rest.model.RestActionDefinitionModelsCollection;
import org.alfresco.rest.model.RestNodeModel;
import org.alfresco.utility.Utility;
import org.alfresco.utility.model.FileModel;
import org.alfresco.utility.model.FolderModel;
import org.alfresco.utility.model.SiteModel;
import org.alfresco.utility.model.TestGroup;
import org.alfresco.utility.model.UserModel;
@@ -21,10 +22,14 @@ import org.springframework.http.HttpStatus;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
import java.util.Properties;
public class ActionsTests extends RestTest
{
private UserModel adminUser;
private FileModel document;
private FolderModel folder;
private FileModel randomFile;
private SiteModel publicSite;
@BeforeClass(alwaysRun = true)
@@ -33,6 +38,8 @@ public class ActionsTests extends RestTest
adminUser = dataUser.getAdminUser();
publicSite = dataSite.createPublicRandomSite();
document = dataContent.usingSite(publicSite).usingUser(adminUser).createContent(CMISUtil.DocumentType.TEXT_PLAIN);
folder = dataContent.usingUser(adminUser).createFolder();
randomFile = dataContent.usingUser(adminUser).usingResource(folder).createContent(CMISUtil.DocumentType.TEXT_PLAIN);
}
@TestRail(section = { TestGroup.REST_API,TestGroup.ACTIONS }, executionType = ExecutionType.SANITY,
@@ -106,6 +113,22 @@ public class ActionsTests extends RestTest
});
}
@TestRail(section = { TestGroup.REST_API,TestGroup.ACTIONS }, executionType = ExecutionType.SANITY,
description = "Test for private action execution from POST api/-default-/public/alfresco/versions/1/action-executions, should not be possible to execute private action using V1 REST API")
@Test(groups = { TestGroup.REST_API, TestGroup.ACTIONS, TestGroup.SANITY})
public void executePrivateActionV1RESTAPI() throws Exception
{
// 'count-children' action is expected to be private (not exposed) by default
String actionDefinitionId = "count-children";
JSONObject response = restClient.authenticateUser(adminUser)
.withCoreAPI()
.usingActions()
.executeAction(actionDefinitionId, folder);
restClient.assertStatusCodeIs(HttpStatus.FORBIDDEN);
restClient.assertLastError().containsSummary("Action '" + actionDefinitionId + "' is not exposed within 'http-v1' execution source.");
}
@TestRail (section = { TestGroup.REST_API, TestGroup.ACTIONS }, executionType = ExecutionType.SANITY,
description = "Sanity test for POST /action-executions")
@Test (groups = { TestGroup.REST_API, TestGroup.ACTIONS, TestGroup.SANITY })
@@ -141,7 +164,7 @@ public class ActionsTests extends RestTest
withCoreAPI().
usingActions().
getActionDefinitionById("add-features");
restClient.assertStatusCodeIs(HttpStatus.OK);
assertFalse(restActionDefinition.getId().isEmpty());
restActionDefinition.getId().equals("add-features");

View File

@@ -7,9 +7,7 @@ import org.alfresco.utility.Utility;
import org.alfresco.utility.model.FileModel;
import org.alfresco.utility.model.FolderModel;
import org.alfresco.utility.model.SiteModel;
import org.alfresco.utility.model.UserModel;
import org.springframework.http.HttpStatus;
import org.testng.Assert;
import org.testng.annotations.BeforeClass;
@@ -40,17 +38,20 @@ public abstract class RenditionIntegrationTests extends RestTest
FileModel file = new FileModel();
file.setNodeRef(nodeId);
// 1. Create a rendition of the file using RESTAPI
// 1. Preemptively delete an existing rendition of the file using RESTAPI
restClient.withCoreAPI().usingNode(file).deleteNodeRendition(renditionId);
// 2. Create a rendition of the file using RESTAPI
restClient.withCoreAPI().usingNode(file).createNodeRendition(renditionId);
Assert.assertEquals(Integer.valueOf(restClient.getStatusCode()).intValue(), HttpStatus.ACCEPTED.value(),
"Failed to submit a request for rendition. [" + fileName+ ", " + renditionId+"] [source file, rendition ID]. ");
// 2. Verify that a rendition of the file is created and has content using RESTAPI
// 3. Verify that a rendition of the file is created and has content using RESTAPI
RestResponse restResponse = restClient.withCoreAPI().usingNode(file).getNodeRenditionContentUntilIsCreated(renditionId);
Assert.assertEquals(Integer.valueOf(restClient.getStatusCode()).intValue(), HttpStatus.OK.value(),
"Failed to produce rendition. [" + fileName+ ", " + renditionId+"] [source file, rendition ID] ");
// 3. Check the returned content type
// 4. Check the returned content type
Assert.assertEquals(restClient.getResponseHeaders().getValue("Content-Type"), expectedMimeType+";charset=UTF-8",
"Rendition was created but it has the wrong Content-Type. [" + fileName+ ", " + renditionId + "] [source file, rendition ID]");

View File

@@ -347,13 +347,30 @@ public class GetSitesTests extends RestTest
public void checkPaginationWithSkipCountAndMaxItems() throws Exception
{
sites = restClient.authenticateUser(regularUser).withParams("skipCount=10&maxItems=110").withCoreAPI().getSites();
int expectedCount;
if (sites.getPagination().isHasMoreItems())
{
expectedCount = sites.getPagination().getMaxItems();
}
else
{
if (sites.getPagination().getTotalItems() < sites.getPagination().getSkipCount())
{
expectedCount = 0;
}
else
{
expectedCount = sites.getPagination().getTotalItems() - sites.getPagination().getSkipCount();
}
}
sites.getPagination().assertThat()
.field("totalItems").isNotEmpty().and()
.field("maxItems").is("110").and()
.field("hasMoreItems").is((sites.getPagination().getTotalItems() - sites.getPagination().getSkipCount() > sites.getPagination().getMaxItems())?"true":"false").and()
.field("skipCount").is("10").and()
.field("count").is((sites.getPagination().isHasMoreItems()) ? sites.getPagination().getMaxItems()
: sites.getPagination().getTotalItems() - sites.getPagination().getSkipCount());
.field("count").is(expectedCount);
}
@Test(groups = { TestGroup.REST_API, TestGroup.SITES, TestGroup.REGRESSION})

View File

@@ -9,7 +9,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-tests</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<developers>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo-packaging</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<properties>

77
pom.xml
View File

@@ -2,7 +2,7 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>alfresco-community-repo</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
<packaging>pom</packaging>
<name>Alfresco Community Repo Parent</name>
@@ -23,11 +23,11 @@
</modules>
<properties>
<acs.version.major>7</acs.version.major>
<acs.version.minor>2</acs.version.minor>
<acs.version.major>23</acs.version.major>
<acs.version.minor>1</acs.version.minor>
<acs.version.revision>0</acs.version.revision>
<acs.version.label />
<amp.min.version>${acs.version.major}.0.0</amp.min.version>
<amp.min.version>${acs.version.major}.1.0</amp.min.version>
<version.edition>Community</version.edition>
<licenseName>community</licenseName>
@@ -47,42 +47,43 @@
<dependency.alfresco-trashcan-cleaner.version>2.4.1</dependency.alfresco-trashcan-cleaner.version>
<dependency.alfresco-jlan.version>7.1</dependency.alfresco-jlan.version>
<dependency.alfresco-server-root.version>6.0.1</dependency.alfresco-server-root.version>
<dependency.alfresco-messaging-repo.version>1.2.15</dependency.alfresco-messaging-repo.version>
<dependency.alfresco-messaging-repo.version>1.2.19</dependency.alfresco-messaging-repo.version>
<dependency.alfresco-log-sanitizer.version>0.2</dependency.alfresco-log-sanitizer.version>
<dependency.activiti-engine.version>5.23.0</dependency.activiti-engine.version>
<dependency.activiti.version>5.23.0</dependency.activiti.version>
<dependency.alfresco-transform-model.version>1.4.7</dependency.alfresco-transform-model.version>
<dependency.alfresco-transform-service.version>1.5.3</dependency.alfresco-transform-service.version>
<dependency.alfresco-transform-core.version>2.6.0</dependency.alfresco-transform-core.version>
<dependency.alfresco-greenmail.version>6.2</dependency.alfresco-greenmail.version>
<dependency.acs-event-model.version>0.0.13</dependency.acs-event-model.version>
<dependency.spring.version>5.3.15</dependency.spring.version>
<dependency.spring.version>5.3.18</dependency.spring.version>
<dependency.antlr.version>3.5.2</dependency.antlr.version>
<dependency.jackson.version>2.13.0</dependency.jackson.version>
<dependency.jackson.version>2.13.1</dependency.jackson.version>
<dependency.jackson-databind.version>2.13.1</dependency.jackson-databind.version>
<dependency.cxf.version>3.5.0</dependency.cxf.version>
<dependency.opencmis.version>1.0.0</dependency.opencmis.version>
<dependency.webscripts.version>8.28</dependency.webscripts.version>
<dependency.webscripts.version>8.29</dependency.webscripts.version>
<dependency.bouncycastle.version>1.70</dependency.bouncycastle.version>
<dependency.mockito-core.version>3.11.2</dependency.mockito-core.version>
<dependency.org-json.version>20211205</dependency.org-json.version>
<dependency.commons-dbcp.version>1.4-DBCP330</dependency.commons-dbcp.version>
<dependency.commons-dbcp.version>2.9.0</dependency.commons-dbcp.version>
<dependency.commons-io.version>2.11.0</dependency.commons-io.version>
<dependency.gson.version>2.8.5</dependency.gson.version>
<dependency.httpclient.version>4.5.13</dependency.httpclient.version>
<dependency.httpcore.version>4.4.15</dependency.httpcore.version>
<dependency.commons-httpclient.version>3.1-HTTPCLIENT-1265</dependency.commons-httpclient.version>
<dependency.xercesImpl.version>2.12.1</dependency.xercesImpl.version>
<dependency.slf4j.version>1.7.33</dependency.slf4j.version>
<dependency.gytheio.version>0.12</dependency.gytheio.version>
<dependency.xercesImpl.version>2.12.2</dependency.xercesImpl.version>
<dependency.slf4j.version>1.7.35</dependency.slf4j.version>
<dependency.gytheio.version>0.16</dependency.gytheio.version>
<dependency.groovy.version>3.0.9</dependency.groovy.version>
<dependency.tika.version>2.2.1</dependency.tika.version>
<dependency.tika.version>2.2.1</dependency.tika.version>
<dependency.spring-security.version>5.6.1</dependency.spring-security.version>
<dependency.truezip.version>7.7.10</dependency.truezip.version>
<dependency.poi.version>4.1.2</dependency.poi.version>
<dependency.ooxml-schemas.version>1.4</dependency.ooxml-schemas.version>
<dependency.keycloak.version>15.0.2</dependency.keycloak.version>
<dependency.jboss.logging.version>3.4.3.Final</dependency.jboss.logging.version>
<dependency.camel.version>3.7.7</dependency.camel.version> <!-- when bumping this version, please keep track/sync with included netty.io dependencies (can cause dependency conflicts)-->
<dependency.camel.version>3.15.0</dependency.camel.version> <!-- when bumping this version, please keep track/sync with included netty.io dependencies (can cause dependency conflicts)-->
<dependency.activemq.version>5.16.1</dependency.activemq.version>
<dependency.apache-compress.version>1.21</dependency.apache-compress.version>
<dependency.apache.taglibs.version>1.2.5</dependency.apache.taglibs.version>
@@ -102,23 +103,23 @@
<dependency.jakarta-jws-api.version>2.1.0</dependency.jakarta-jws-api.version>
<dependency.jakarta-mail-api.version>1.6.5</dependency.jakarta-mail-api.version>
<dependency.jakarta-json-api.version>1.1.6</dependency.jakarta-json-api.version>
<dependency.jakarta-json-path.version>2.5.0</dependency.jakarta-json-path.version>
<dependency.jakarta-json-path.version>2.7.0</dependency.jakarta-json-path.version>
<dependency.jakarta-rpc-api.version>1.1.4</dependency.jakarta-rpc-api.version>
<alfresco.googledrive.version>3.2.1.3</alfresco.googledrive.version>
<alfresco.aos-module.version>1.4.0.1</alfresco.aos-module.version>
<alfresco.api-explorer.version>7.2.0-M2</alfresco.api-explorer.version> <!-- Also in alfresco-enterprise-share -->
<alfresco.aos-module.version>1.4.1</alfresco.aos-module.version>
<alfresco.api-explorer.version>7.2.0</alfresco.api-explorer.version> <!-- Also in alfresco-enterprise-share -->
<alfresco.maven-plugin.version>2.2.0</alfresco.maven-plugin.version>
<license-maven-plugin.version>2.0.1.alfresco-1</license-maven-plugin.version>
<license-maven-plugin.version>2.0.1.alfresco-2</license-maven-plugin.version>
<dependency.postgresql.version>42.3.1</dependency.postgresql.version>
<dependency.postgresql.version>42.3.2</dependency.postgresql.version>
<dependency.mysql.version>8.0.27</dependency.mysql.version>
<dependency.mysql-image.version>8</dependency.mysql-image.version>
<dependency.mariadb.version>2.7.4</dependency.mariadb.version>
<dependency.tas-utility.version>3.0.47</dependency.tas-utility.version>
<dependency.rest-assured.version>3.3.0</dependency.rest-assured.version>
<dependency.tas-restapi.version>1.68</dependency.tas-restapi.version>
<dependency.tas-restapi.version>1.80</dependency.tas-restapi.version>
<dependency.tas-cmis.version>1.31</dependency.tas-cmis.version>
<dependency.tas-email.version>1.8</dependency.tas-email.version>
<dependency.tas-webdav.version>1.6</dependency.tas-webdav.version>
@@ -146,7 +147,7 @@
<connection>scm:git:https://github.com/Alfresco/alfresco-community-repo.git</connection>
<developerConnection>scm:git:https://github.com/Alfresco/alfresco-community-repo.git</developerConnection>
<url>https://github.com/Alfresco/alfresco-community-repo</url>
<tag>HEAD</tag>
<tag>23.1.0.27</tag>
</scm>
<distributionManagement>
@@ -563,6 +564,12 @@
<groupId>org.alfresco</groupId>
<artifactId>alfresco-log-sanitizer</artifactId>
<version>${dependency.alfresco-log-sanitizer.version}</version>
<exclusions>
<exclusion>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.alfresco.aos-module</groupId>
@@ -606,7 +613,7 @@
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<artifactId>slf4j-reload4j</artifactId>
<version>${dependency.slf4j.version}</version>
</dependency>
<dependency>
@@ -631,7 +638,7 @@
<dependency>
<groupId>com.github.junrar</groupId>
<artifactId>junrar</artifactId>
<version>7.4.0</version>
<version>7.4.1</version>
</dependency>
<dependency>
<groupId>com.github.fge</groupId>
@@ -749,8 +756,8 @@
<version>${dependency.mockito-core.version}</version>
</dependency>
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<groupId>org.apache.commons</groupId>
<artifactId>commons-dbcp2</artifactId>
<version>${dependency.commons-dbcp.version}</version>
</dependency>
<dependency>
@@ -760,7 +767,12 @@
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-spring</artifactId>
<artifactId>camel-core</artifactId>
<version>${dependency.camel.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-spring-xml</artifactId>
<version>${dependency.camel.version}</version>
<exclusions>
<exclusion>
@@ -789,11 +801,6 @@
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-codec-http</artifactId>
<version>4.1.72.Final</version>
</dependency>
<dependency>
<!-- If you are going to bump dependency.camel.version, please check if the netty-codec-http has higher version that the one above.-->
<groupId>org.apache.camel</groupId>
@@ -850,7 +857,7 @@
<dependency>
<groupId>org.reflections</groupId>
<artifactId>reflections</artifactId>
<version>0.9.12</version>
<version>0.10.2</version>
</dependency>
<!-- swagger parser -->
<dependency>
@@ -881,7 +888,7 @@
<plugin>
<groupId>io.fabric8</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>0.38.0</version>
<version>0.39.1</version>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
@@ -939,7 +946,7 @@
<failOnMissing>true</failOnMissing>
<excludedScopes>provided,test</excludedScopes>
<excludedGroups>^(org\.alfresco|com\.alfresco|org\.activiti|org\.gytheio).*</excludedGroups>
<failIfWarning>false</failIfWarning>
<failIfWarning>true</failIfWarning>
<includedLicenses>
https://raw.githubusercontent.com/Alfresco/third-party-license-overrides/master/includedLicenses.txt
</includedLicenses>

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo</artifactId>
<version>14.92-SNAPSHOT</version>
<version>23.1.0.27</version>
</parent>
<dependencies>

View File

@@ -30,49 +30,37 @@ import org.alfresco.rest.api.model.ArchiveContentRequest;
import org.alfresco.rest.api.model.ContentStorageInfo;
import org.alfresco.rest.api.model.RestoreArchivedContentRequest;
import org.alfresco.rest.framework.resource.parameters.Parameters;
import org.alfresco.service.Experimental;
import org.alfresco.service.cmr.repository.NodeRef;
/**
* Storage information for content API.
* Note: Currently marked as experimental and subject to change.
*
* @author mpichura
*/
@Experimental
public interface ContentStorageInformation
{
/**
* Note: Currently marked as experimental and subject to change.
*
* @param nodeRef Node reference
* @param contentPropName Qualified name of content property (e.g. 'cm_content')
* @param parameters {@link Parameters} object to get the parameters passed into the request
* @return {@link ContentStorageInfo} object consisting of qualified name of content property and a map of storage properties
*/
@Experimental
ContentStorageInfo getStorageInfo(NodeRef nodeRef, String contentPropName, Parameters parameters);
/**
* Note: Currently marked as experimental and subject to change.
*
* @param nodeRef Node reference
* @param contentPropName Qualified name of content property (e.g. 'cm_content')
* @param archiveContentRequest {@link ArchiveContentRequest} object holding parameters for archive content request
* @return true when request successful, false when unsuccessful
*/
@Experimental
boolean requestArchiveContent(NodeRef nodeRef, String contentPropName, ArchiveContentRequest archiveContentRequest);
/**
* Note: Currently marked as experimental and subject to change.
*
* @param nodeRef Node reference
* @param contentPropName Qualified name of content property (e.g. 'cm_content')
* @param restoreArchivedContentRequest {@link RestoreArchivedContentRequest} object holding parameters for restore from archive request
* @return true when request successful, false when unsuccessful
*/
@Experimental
boolean requestRestoreContentFromArchive(NodeRef nodeRef, String contentPropName,
RestoreArchivedContentRequest restoreArchivedContentRequest);
}

View File

@@ -26,11 +26,14 @@
package org.alfresco.rest.api.impl;
import org.alfresco.error.AlfrescoRuntimeException;
import org.alfresco.repo.action.ActionExecutionContext;
import org.alfresco.repo.action.RuntimeActionService;
import org.alfresco.rest.api.Actions;
import org.alfresco.rest.api.model.Action;
import org.alfresco.rest.api.model.ActionDefinition;
import org.alfresco.rest.framework.core.exceptions.EntityNotFoundException;
import org.alfresco.rest.framework.core.exceptions.InvalidArgumentException;
import org.alfresco.rest.framework.core.exceptions.PermissionDeniedException;
import org.alfresco.rest.framework.resource.parameters.CollectionWithPagingInfo;
import org.alfresco.rest.framework.resource.parameters.Parameters;
import org.alfresco.rest.framework.resource.parameters.SortColumn;
@@ -72,6 +75,9 @@ public class ActionsImpl implements Actions
private NamespaceService namespaceService;
private NodeService nodeService;
private NamespacePrefixResolver prefixResolver;
private RuntimeActionService runtimeActionService;
private final String HTTP_V1_EXECUTION_SOURCE = "http-v1";
public void setActionService(ActionService actionService)
{
@@ -98,6 +104,11 @@ public class ActionsImpl implements Actions
this.prefixResolver = prefixResolver;
}
public void setRuntimeActionService(RuntimeActionService runtimeActionService)
{
this.runtimeActionService = runtimeActionService;
}
@Override
public ActionDefinition getActionDefinitionById(String actionDefinitionId)
{
@@ -263,6 +274,16 @@ public class ActionsImpl implements Actions
throw new EntityNotFoundException(action.getActionDefinitionId());
}
final ActionExecutionContext actionExecutionContext = ActionExecutionContext
.builder(actionDef.getName())
.withExecutionSource(HTTP_V1_EXECUTION_SOURCE)
.build();
if (!runtimeActionService.isExposed(actionExecutionContext))
{
throw new PermissionDeniedException("Action '" + actionDef.getName() + "' is not exposed within '" + HTTP_V1_EXECUTION_SOURCE + "' execution source.");
}
// targetId is optional, however, currently targetId must be a valid node ID.
NodeRef actionedUponNodeRef = null;
if (action.getTargetId() != null && !action.getTargetId().isEmpty())

View File

@@ -33,7 +33,6 @@ import org.alfresco.rest.api.model.ContentStorageInfo;
import org.alfresco.rest.api.model.RestoreArchivedContentRequest;
import org.alfresco.rest.framework.core.exceptions.RestoreInProgressException;
import org.alfresco.rest.framework.resource.parameters.Parameters;
import org.alfresco.service.Experimental;
import org.alfresco.service.cmr.repository.ContentService;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.namespace.NamespaceService;
@@ -45,11 +44,9 @@ import java.util.Map;
/**
* Default implementation for {@link ContentStorageInformation}
* Note: Currently marked as experimental and subject to change.
*
* @author mpichura
*/
@Experimental
public class ContentStorageInformationImpl implements ContentStorageInformation
{
@@ -68,7 +65,6 @@ public class ContentStorageInformationImpl implements ContentStorageInformation
* {@inheritDoc}
*/
@Override
@Experimental
public ContentStorageInfo getStorageInfo(NodeRef nodeRef, String contentPropName, Parameters parameters)
{
final QName propQName = getQName(contentPropName);

View File

@@ -38,7 +38,6 @@ import org.alfresco.rest.api.Nodes;
import org.alfresco.rest.api.model.Download;
import org.alfresco.rest.framework.core.exceptions.InvalidArgumentException;
import org.alfresco.rest.framework.core.exceptions.PermissionDeniedException;
import org.alfresco.service.Experimental;
import org.alfresco.service.cmr.download.DownloadService;
import org.alfresco.service.cmr.download.DownloadStatus;
import org.alfresco.service.cmr.module.ModuleService;
@@ -214,8 +213,7 @@ public class DownloadsImpl implements Downloads
* @param checkLimit The maximum number of nodes to check, set to -1 for no limit
* @see #checkArchiveStatus(NodeRef[], int, Set)
*/
@Experimental
protected void checkArchiveStatus(NodeRef[] nodeRefs, int checkLimit)
protected void checkArchiveStatus(NodeRef[] nodeRefs, int checkLimit)
{
if (canCheckArchived())
{
@@ -234,7 +232,6 @@ public class DownloadsImpl implements Downloads
* @param checkLimit The maximum number of nodes to check, set to -1 for no limit
* @param cache Tracks nodes that we have already checked, if null an empty cache will be created
*/
@Experimental
private void checkArchiveStatus(NodeRef[] nodeRefs, int checkLimit, Set<NodeRef> cache)
{
// Create the cache for recursive calls.
@@ -291,8 +288,7 @@ public class DownloadsImpl implements Downloads
}
}
@Experimental
protected boolean canCheckArchived()
protected boolean canCheckArchived()
{
return Arrays.stream(CLOUD_CONNECTOR_MODULES).anyMatch(m-> moduleService.getModule(m) != null);
}

View File

@@ -3132,26 +3132,18 @@ public class NodesImpl implements Nodes
// Write content
writeContent(nodeRef, fileName, content.getInputStream(), true);
}
if ((versionMajor != null) || (versionComment != null))
{
behaviourFilter.disableBehaviour(nodeRef, ContentModel.ASPECT_VERSIONABLE);
try
// by default, first version is major, unless specified otherwise
VersionType versionType = VersionType.MAJOR;
if ((versionMajor != null) && (!versionMajor))
{
// by default, first version is major, unless specified otherwise
VersionType versionType = VersionType.MAJOR;
if ((versionMajor != null) && (!versionMajor))
{
versionType = VersionType.MINOR;
}
createVersion(nodeRef, false, versionType, versionComment);
extractMetadata(nodeRef);
} finally
{
behaviourFilter.enableBehaviour(nodeRef, ContentModel.ASPECT_VERSIONABLE);
versionType = VersionType.MINOR;
}
createVersion(nodeRef, false, versionType, versionComment);
extractMetadata(nodeRef);
}
return nodeRef;

View File

@@ -26,19 +26,15 @@
package org.alfresco.rest.api.model;
import org.alfresco.service.Experimental;
import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;
/**
* Request for content archive.
* Marked as experimental and subject to change.
*
* @author mpichura
*/
@Experimental
public class ArchiveContentRequest
{
/**

View File

@@ -26,15 +26,11 @@
package org.alfresco.rest.api.model;
import org.alfresco.service.Experimental;
/**
* Request for restore content from archive.
* Marked as experimental and subject to change.
*
* @author mpichura
*/
@Experimental
public class RestoreArchivedContentRequest
{
/**

View File

@@ -39,7 +39,6 @@ import org.alfresco.rest.framework.resource.RelationshipResource;
import org.alfresco.rest.framework.resource.actions.interfaces.RelationshipResourceAction;
import org.alfresco.rest.framework.resource.parameters.Parameters;
import org.alfresco.rest.framework.webscripts.WithResponse;
import org.alfresco.service.Experimental;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.cmr.repository.StoreRef;
import org.alfresco.util.PropertyCheck;
@@ -49,11 +48,9 @@ import javax.servlet.http.HttpServletResponse;
/**
* Node storage information.
* Note: Currently marked as experimental and subject to change.
*
* @author mpichura
*/
@Experimental
@RelationshipResource(name = "storage-info", entityResource = NodesEntityResource.class, title = "Node's content storage information")
public class NodeStorageInfoRelation implements RelationshipResourceAction.ReadById<ContentStorageInfo>, InitializingBean
{
@@ -82,7 +79,6 @@ public class NodeStorageInfoRelation implements RelationshipResourceAction.ReadB
return storageInformation.getStorageInfo(nodeRef, contentPropName, parameters);
}
@Experimental
@Operation("archive")
@WebApiParam(name = "archiveContentRequest", title = "Request for archive content",
description = "Optional parameters for archive content", kind = ResourceParameter.KIND.HTTP_BODY_OBJECT)
@@ -103,7 +99,6 @@ public class NodeStorageInfoRelation implements RelationshipResourceAction.ReadB
}
}
@Experimental
@Operation("archive-restore")
@WebApiParam(name = "restoreArchivedContentRequest", title = "Request for restore content from archive",
description = "Optional parameters for restore content from archive", kind = ResourceParameter.KIND.HTTP_BODY_OBJECT)

View File

@@ -26,18 +26,28 @@
package org.alfresco.rest.api.nodes;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import org.alfresco.repo.content.directurl.DirectAccessUrlDisabledException;
import org.alfresco.rest.api.DirectAccessUrlHelper;
import org.alfresco.rest.api.Renditions;
import org.alfresco.rest.api.model.DirectAccessUrlRequest;
import org.alfresco.rest.api.model.Rendition;
import org.alfresco.rest.framework.BinaryProperties;
import org.alfresco.rest.framework.Operation;
import org.alfresco.rest.framework.WebApiDescription;
import org.alfresco.rest.framework.WebApiParam;
import org.alfresco.rest.framework.core.ResourceParameter;
import org.alfresco.rest.framework.core.exceptions.DisabledServiceException;
import org.alfresco.rest.framework.resource.RelationshipResource;
import org.alfresco.rest.framework.resource.actions.interfaces.RelationshipResourceAction;
import org.alfresco.rest.framework.resource.actions.interfaces.RelationshipResourceBinaryAction;
import org.alfresco.rest.framework.resource.content.BinaryResource;
import org.alfresco.rest.framework.resource.parameters.CollectionWithPagingInfo;
import org.alfresco.rest.framework.resource.parameters.Parameters;
import org.alfresco.rest.framework.webscripts.WithResponse;
import org.alfresco.service.cmr.repository.DirectAccessUrl;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.cmr.repository.StoreRef;
import org.alfresco.util.PropertyCheck;
@@ -53,6 +63,7 @@ import org.springframework.extensions.webscripts.Status;
* - GET /nodes/{nodeId}/versions/{versionId}/renditions/{renditionId}
* - DELETE /nodes/{nodeId}/versions/{versionId}/renditions/{renditionId}
* - GET /nodes/{nodeId}/versions/{versionId}/renditions/{renditionId}/content
* - POST /nodes/{nodeId}/versions/{versionId}/renditions/{renditionId}/request-direct-access-url
*
* @author janv
*/
@@ -65,12 +76,18 @@ public class NodeVersionRenditionsRelation implements RelationshipResourceAction
InitializingBean
{
private Renditions renditions;
private DirectAccessUrlHelper directAccessUrlHelper;
public void setRenditions(Renditions renditions)
{
this.renditions = renditions;
}
public void setDirectAccessUrlHelper(DirectAccessUrlHelper directAccessUrlHelper)
{
this.directAccessUrlHelper = directAccessUrlHelper;
}
@Override
public void afterPropertiesSet() throws Exception
{
@@ -117,6 +134,36 @@ public class NodeVersionRenditionsRelation implements RelationshipResourceAction
return renditions.getContent(nodeRef, versionId, renditionId, parameters);
}
@Operation ("request-direct-access-url")
@WebApiParam (name = "directAccessUrlRequest",
title = "Request direct access url",
description = "Options for direct access url request",
kind = ResourceParameter.KIND.HTTP_BODY_OBJECT)
@WebApiDescription(title = "Request content url",
description="Generates a direct access URL.",
successStatus = HttpServletResponse.SC_OK)
public DirectAccessUrl requestContentDirectUrl(String nodeId,
String versionId,
DirectAccessUrlRequest directAccessUrlRequest,
Parameters parameters, WithResponse withResponse)
{
boolean attachment = directAccessUrlHelper.getAttachment(directAccessUrlRequest);
Long validFor = directAccessUrlHelper.getDefaultExpiryTimeInSec();
NodeRef nodeRef = new NodeRef(StoreRef.STORE_REF_WORKSPACE_SPACESSTORE, nodeId);
String renditionId = parameters.getRelationship2Id();
DirectAccessUrl directAccessUrl;
try
{
directAccessUrl = renditions.requestContentDirectUrl(nodeRef, versionId, renditionId, attachment, validFor);
}
catch (DirectAccessUrlDisabledException ex)
{
throw new DisabledServiceException(ex.getMessage());
}
return directAccessUrl;
}
@WebApiDescription(title = "Delete rendition")
@Override
public void delete(String nodeId, String versionId, Parameters parameters)

View File

@@ -40,7 +40,6 @@ import org.alfresco.rest.framework.resource.RelationshipResource;
import org.alfresco.rest.framework.resource.actions.interfaces.RelationshipResourceAction;
import org.alfresco.rest.framework.resource.parameters.Parameters;
import org.alfresco.rest.framework.webscripts.WithResponse;
import org.alfresco.service.Experimental;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.cmr.version.Version;
import org.alfresco.util.PropertyCheck;
@@ -52,12 +51,9 @@ import javax.servlet.http.HttpServletResponse;
* Node Versions storage information.
*
* - GET /nodes/{nodeId}/versions/{versionId}/storage-info/{contentPropQNameId}
*
* Note: Currently marked as experimental and subject to change.
*
* @author janv
*/
@Experimental
@RelationshipResource(name = "storage-info", entityResource = NodeVersionsRelation.class, title = "Node Version's content storage information")
public class NodeVersionsStorageInfoRelation implements RelationshipResourceAction.ReadById<ContentStorageInfo>, InitializingBean
{
@@ -91,7 +87,6 @@ public class NodeVersionsStorageInfoRelation implements RelationshipResourceActi
return storageInformation.getStorageInfo(versionNodeRef, contentPropQNameId, parameters);
}
@Experimental
@Operation("archive")
@WebApiParam(name = "archiveContentRequest", title = "Request for archive version content",
description = "Optional parameters for archive version content", kind = ResourceParameter.KIND.HTTP_BODY_OBJECT)
@@ -116,7 +111,6 @@ public class NodeVersionsStorageInfoRelation implements RelationshipResourceActi
}
}
@Experimental
@Operation("archive-restore")
@WebApiParam(name = "restoreArchivedContentRequest", title = "Request for restore version content from archive",
description = "Optional parameters for restore version content from archive", kind = ResourceParameter.KIND.HTTP_BODY_OBJECT)

View File

@@ -25,15 +25,12 @@
*/
package org.alfresco.rest.framework.core.exceptions;
import org.alfresco.service.Experimental;
/**
* Thrown when the content is archived and not readily accessible.
* Status is <i>Precondition Failed</i> client error = 412.
*
* @author David Edwards
*/
@Experimental
public class ArchivedContentException extends ApiException
{

View File

@@ -25,9 +25,6 @@
*/
package org.alfresco.rest.framework.core.exceptions;
import org.alfresco.service.Experimental;
@Experimental
public class RestoreInProgressException extends ApiException
{
public static String DEFAULT_MESSAGE_ID = "framework.exception.RestoreInProgress";

View File

@@ -85,8 +85,7 @@ public class AlfrescoX509ServletFilter extends X509ServletFilterBase
throw new AlfrescoRuntimeException("Missing value for sharedSecretHeader");
}
}
/*
// TODO: Activate this part after OPSEXP-1163 got implemented
if(secureComms == SecureCommsType.NONE)
{
if(!"true".equalsIgnoreCase(config.getInitParameter("allow-unauthenticated-solr-endpoint")))
@@ -94,7 +93,7 @@ public class AlfrescoX509ServletFilter extends X509ServletFilterBase
throw new AlfrescoRuntimeException("solr.secureComms=none is no longer supported. Please use https or secret");
}
}
*/
super.init(config);
}

View File

@@ -566,6 +566,7 @@
<property name="namespaceService" ref="NamespaceService"/>
<property name="nodeService" ref="NodeService"/>
<property name="prefixResolver" ref="namespaceService"/>
<property name="runtimeActionService" ref="actionService"/>
</bean>
<bean id="Actions" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces" value="org.alfresco.rest.api.Actions"/>
@@ -1452,6 +1453,7 @@
<bean class="org.alfresco.rest.api.nodes.NodeVersionRenditionsRelation">
<property name="renditions" ref="Renditions" />
<property name="directAccessUrlHelper" ref="directAccessUrlHelper" />
</bean>
<bean class="org.alfresco.rest.api.quicksharelinks.QuickShareLinkRenditionsRelation">

View File

@@ -357,12 +357,13 @@ function main()
updateNode.properties.content.write(content, updateNameAndMimetype, true, newFilename);
// check it in again, with supplied version history note
updateNode = updateNode.checkin(description, majorVersion);
// Extract the metadata
// (The overwrite policy controls which if any parts of
// the document's properties are updated from this)
extractMetadata(updateNode);
updateNode = updateNode.checkin(description, majorVersion);
if (aspects.length != 0)
{
for (i = 0; i < aspects.length; i++)

View File

@@ -51,8 +51,11 @@ import org.junit.runners.Suite;
org.alfresco.rest.api.tests.GroupsTest.class,
org.alfresco.rest.api.tests.ModulePackagesApiTest.class,
org.alfresco.rest.api.tests.NodeApiTest.class,
org.alfresco.rest.api.tests.NodeApiVersioningMultipartParameterizedTest.class,
org.alfresco.rest.api.tests.NodeApiVersioningJsonParameterizedTest.class,
org.alfresco.rest.api.tests.NodeAssociationsApiTest.class,
org.alfresco.rest.api.tests.NodeVersionsApiTest.class,
org.alfresco.rest.api.tests.NodeVersionRenditionsApiTest.class,
org.alfresco.rest.api.tests.QueriesNodesApiTest.class,
org.alfresco.rest.api.tests.QueriesPeopleApiTest.class,
org.alfresco.rest.api.tests.QueriesSitesApiTest.class,

View File

@@ -40,6 +40,7 @@ import org.junit.runners.Suite;
org.alfresco.repo.web.scripts.solr.StatsGetTest.class,
org.alfresco.repo.web.scripts.solr.SOLRSerializerTest.class,
org.alfresco.repo.web.scripts.solr.SOLRAuthenticationFilterTest.class,
org.alfresco.web.app.servlet.AlfrescoX509ServletFilterTest.class,
org.alfresco.repo.web.util.PagingCursorTest.class,
org.alfresco.repo.web.util.paging.PagingTest.class,
org.alfresco.repo.webdav.GetMethodTest.class,

View File

@@ -406,82 +406,82 @@ public class WebDAVMethodTest
}
/* MNT-10555 Test */
@Category(IntermittentlyFailingTests.class) // ACS-959
@Test
public void expiryLockTest()
{
// ACE-4347 extra debug logging just for this test so we can see what's going on when it next fails
Level repoWebdavSaveLogLevel = Logger.getLogger("org.alfresco.repo.webdav").getLevel();
Logger.getLogger("org.alfresco.repo.webdav").setLevel(Level.ALL);
Level webdavProtocolSaveLogLevel = Logger.getLogger("org.alfresco.webdav.protocol").getLevel();
Logger.getLogger("org.alfresco.webdav.protocol").setLevel(Level.ALL);
try
{
setUpApplicationContext();
req = new MockHttpServletRequest();
resp = new MockHttpServletResponse();
String rootPath = "/app:company_home";
StoreRef storeRef = new StoreRef("workspace://SpacesStore");
NodeRef storeRootNodeRef = nodeService.getRootNode(storeRef);
List<NodeRef> nodeRefs = searchService.selectNodes(storeRootNodeRef, rootPath, null, namespaceService, false);
NodeRef defaultRootNode = nodeRefs.get(0);
NodeRef rootNodeRef = tenantService.getRootNode(nodeService, searchService, namespaceService, rootPath, defaultRootNode);
// Create test folder.
NodeRef folderNodeRef = nodeService.createNode(rootNodeRef, ContentModel.ASSOC_CONTAINS, QName.createQName("test"), ContentModel.TYPE_FOLDER,
Collections.<QName, Serializable> singletonMap(ContentModel.PROP_NAME, "WebDavMethodExpiryLockTest" + System.currentTimeMillis())).getChildRef();
// Create test document.
NodeRef nodeRef = nodeService.createNode(folderNodeRef, ContentModel.ASSOC_CONTAINS, QName.createQName("test"), ContentModel.TYPE_CONTENT,
Collections.<QName, Serializable> singletonMap(ContentModel.PROP_NAME, "text.txt")).getChildRef();
lockMethod = new LockMethod();
lockMethod.createExclusive = true;
lockMethod.m_timeoutDuration = 1;
lockMethod.setDetails(req, resp, webDAVHelper, nodeRef);
transactionService.getRetryingTransactionHelper().doInTransaction(new RetryingTransactionHelper.RetryingTransactionCallback<Object>()
{
@Override
public Object execute() throws Throwable
{
try
{
// LOCK document.
lockMethod.executeImpl();
//wait for the lock to expire up to 5 seconds
int timeout = 5;
while( timeout > 0 && !lockMethod.lockInfo.isExpired())
{
Thread.sleep(1000);
timeout--;
}
// LOCK against an expired lock.
lockMethod.executeImpl();
}
catch (WebDAVServerException e)
{
logger.debug(e);
Assert.fail("Document was not locked again, when lock has expired.");
}
return null;
}
});
// Remove test folder.
nodeService.deleteNode(folderNodeRef);
}
finally
{
Logger.getLogger("org.alfresco.webdav.protocol").setLevel(webdavProtocolSaveLogLevel);
Logger.getLogger("org.alfresco.repo.webdav").setLevel(repoWebdavSaveLogLevel);
}
}
// @Category(IntermittentlyFailingTests.class) // ACS-959
// @Test
// public void expiryLockTest()
// {
// // ACE-4347 extra debug logging just for this test so we can see what's going on when it next fails
// Level repoWebdavSaveLogLevel = Logger.getLogger("org.alfresco.repo.webdav").getLevel();
// Logger.getLogger("org.alfresco.repo.webdav").setLevel(Level.ALL);
// Level webdavProtocolSaveLogLevel = Logger.getLogger("org.alfresco.webdav.protocol").getLevel();
// Logger.getLogger("org.alfresco.webdav.protocol").setLevel(Level.ALL);
// try
// {
// setUpApplicationContext();
//
// req = new MockHttpServletRequest();
// resp = new MockHttpServletResponse();
//
// String rootPath = "/app:company_home";
// StoreRef storeRef = new StoreRef("workspace://SpacesStore");
// NodeRef storeRootNodeRef = nodeService.getRootNode(storeRef);
// List<NodeRef> nodeRefs = searchService.selectNodes(storeRootNodeRef, rootPath, null, namespaceService, false);
// NodeRef defaultRootNode = nodeRefs.get(0);
//
// NodeRef rootNodeRef = tenantService.getRootNode(nodeService, searchService, namespaceService, rootPath, defaultRootNode);
//
// // Create test folder.
// NodeRef folderNodeRef = nodeService.createNode(rootNodeRef, ContentModel.ASSOC_CONTAINS, QName.createQName("test"), ContentModel.TYPE_FOLDER,
// Collections.<QName, Serializable> singletonMap(ContentModel.PROP_NAME, "WebDavMethodExpiryLockTest" + System.currentTimeMillis())).getChildRef();
//
// // Create test document.
// NodeRef nodeRef = nodeService.createNode(folderNodeRef, ContentModel.ASSOC_CONTAINS, QName.createQName("test"), ContentModel.TYPE_CONTENT,
// Collections.<QName, Serializable> singletonMap(ContentModel.PROP_NAME, "text.txt")).getChildRef();
//
// lockMethod = new LockMethod();
// lockMethod.createExclusive = true;
// lockMethod.m_timeoutDuration = 1;
// lockMethod.setDetails(req, resp, webDAVHelper, nodeRef);
//
// transactionService.getRetryingTransactionHelper().doInTransaction(new RetryingTransactionHelper.RetryingTransactionCallback<Object>()
// {
// @Override
// public Object execute() throws Throwable
// {
// try
// {
// // LOCK document.
// lockMethod.executeImpl();
//
// //wait for the lock to expire up to 5 seconds
// int timeout = 5;
// while( timeout > 0 && !lockMethod.lockInfo.isExpired())
// {
// Thread.sleep(1000);
// timeout--;
// }
//
// // LOCK against an expired lock.
// lockMethod.executeImpl();
// }
// catch (WebDAVServerException e)
// {
// logger.debug(e);
// Assert.fail("Document was not locked again, when lock has expired.");
// }
// return null;
// }
// });
//
// // Remove test folder.
// nodeService.deleteNode(folderNodeRef);
// }
// finally
// {
// Logger.getLogger("org.alfresco.webdav.protocol").setLevel(webdavProtocolSaveLogLevel);
// Logger.getLogger("org.alfresco.repo.webdav").setLevel(repoWebdavSaveLogLevel);
// }
// }
private void assertStatusCode(int expectedStatusCode, String userAgent)
{

View File

@@ -25,6 +25,8 @@
*/
package org.alfresco.rest.api.tests;
import org.alfresco.repo.content.directurl.SystemWideDirectUrlConfig;
import org.alfresco.rest.api.impl.directurl.RestApiDirectUrlConfig;
import org.alfresco.rest.api.tests.client.PublicApiHttpClient;
import static org.alfresco.rest.api.tests.util.RestApiUtil.toJsonAsString;
import static org.alfresco.rest.api.tests.util.RestApiUtil.toJsonAsStringNonNull;
@@ -219,6 +221,11 @@ public abstract class AbstractBaseApiTest extends EnterpriseTestApi
return URL_NODES + "/" + nodeId + "/" + REQUEST_DIRECT_ACCESS_URL;
}
protected String getRequestVersionRenditionContentDirectUrl(String nodeId, String versionId, String renditionId)
{
return getNodeVersionRenditionIdUrl(nodeId, versionId, renditionId) + "/" + REQUEST_DIRECT_ACCESS_URL;
}
protected String getRequestArchivedContentDirectUrl(String nodeId)
{
return URL_DELETED_NODES + "/" + nodeId + "/" + REQUEST_DIRECT_ACCESS_URL;
@@ -229,6 +236,17 @@ public abstract class AbstractBaseApiTest extends EnterpriseTestApi
return URL_DELETED_NODES + "/" + nodeId + "/" + URL_RENDITIONS + "/" + renditionID + "/" + REQUEST_DIRECT_ACCESS_URL;
}
protected String getRequestRenditionDirectAccessUrl(String nodeId, String renditionID)
{
return URL_NODES + "/" + nodeId + "/" + URL_RENDITIONS + "/" + renditionID + "/" + REQUEST_DIRECT_ACCESS_URL;
}
protected String getRequestVersionDirectAccessUrl(String nodeId, String versionId)
{
return URL_NODES + "/" + nodeId + "/" + URL_VERSIONS + "/" + versionId + "/" + REQUEST_DIRECT_ACCESS_URL;
}
/**
* The api scope. either public or private
*
@@ -724,6 +742,18 @@ public abstract class AbstractBaseApiTest extends EnterpriseTestApi
return createNode(parentId, folderName, TYPE_CM_FOLDER, props, Folder.class);
}
protected String createUniqueFolder(String parentId) throws Exception
{
return createFolder(parentId, "folder-" + System.currentTimeMillis()).getId();
}
protected String createUniqueContent(String folderId) throws Exception
{
Document documentResp = createTextFile(folderId, "file-" + System.currentTimeMillis(),
"some text-" + System.currentTimeMillis(), "UTF-8", null);
return documentResp.getId();
}
protected Node createNode(String parentId, String nodeName, String nodeType, Map<String, Object> props) throws Exception
{
return createNode(parentId, nodeName, nodeType, props, Node.class);
@@ -1075,5 +1105,20 @@ public abstract class AbstractBaseApiTest extends EnterpriseTestApi
return URL_NODES + "/" + nodeId;
}
protected void enableRestDirectAccessUrls()
{
SystemWideDirectUrlConfig systemDauConfig = (SystemWideDirectUrlConfig) applicationContext.getBean("systemWideDirectUrlConfig");
systemDauConfig.setEnabled(true);
RestApiDirectUrlConfig restDauConfig = (RestApiDirectUrlConfig) applicationContext.getBean("restApiDirectUrlConfig");
restDauConfig.setEnabled(true);
}
protected void disableRestDirectAccessUrls()
{
SystemWideDirectUrlConfig systemDauConfig = (SystemWideDirectUrlConfig) applicationContext.getBean("systemWideDirectUrlConfig");
systemDauConfig.setEnabled(false);
RestApiDirectUrlConfig restDauConfig = (RestApiDirectUrlConfig) applicationContext.getBean("restApiDirectUrlConfig");
restDauConfig.setEnabled(false);
}
}

View File

@@ -6279,92 +6279,70 @@ public class NodeApiTest extends AbstractSingleNetworkSiteTest
}
@Test
public void testRequestVersionsContentDirectUrl() throws Exception
public void testRequestContentDirectUrlClientErrorResponseForNodes() throws Exception
{
enableRestDirectAccessUrls();
//Node does not exist
setRequestContext(user1);
String myNodeId = getMyNodeId();
HttpResponse nodeDoesNotExistResponse = post(getRequestContentDirectUrl("non-existing-node-id"), null, 404);
Document d1 = new Document();
d1.setName("d1.txt");
d1.setNodeType(TYPE_CM_CONTENT);
//Node is not a file
String folderId = createFolder(tDocLibNodeId, "some-folder-name").getId();
HttpResponse nodeIsNotAFileReponse = post(getRequestContentDirectUrl(folderId), null, 400);
// create *empty* text file - as of now, versioning is not enabled by default
HttpResponse response = post(getNodeChildrenUrl(myNodeId), toJsonAsStringNonNull(d1), 201);
Document documentResp = RestApiUtil.parseRestApiEntry(response.getJsonResponse(), Document.class);
String docId = documentResp.getId();
assertFalse(documentResp.getAspectNames().contains("cm:versionable"));
assertNull(documentResp.getProperties()); // no properties (ie. no "cm:versionLabel")
int majorVersion = 1;
int minorVersion = 0;
String content = "The quick brown fox jumps over the lazy dog ";
Map<String, String> params = new HashMap<>();
params.put("comment", "my version ");
documentResp = updateTextFile(docId, content, params);
assertTrue(documentResp.getAspectNames().contains("cm:versionable"));
assertNotNull(documentResp.getProperties());
assertEquals(majorVersion+"."+minorVersion, documentResp.getProperties().get("cm:versionLabel"));
final String contentNodeId = documentResp.getId();
// Check the upload response
assertNotNull(documentResp.getProperties());
assertTrue(documentResp.getAspectNames().contains("cm:versionable"));
ContentInfo contentInfo = documentResp.getContent();
assertNotNull(contentInfo);
assertEquals(MimetypeMap.MIMETYPE_TEXT_PLAIN, contentInfo.getMimeType());
HttpResponse dauResponse = post(getRequestContentDirectUrl(contentNodeId), null, null, null, null, 501);
disableRestDirectAccessUrls();
}
@Test
public void testRequestRenditionContentDirectUrl() throws Exception
public void testRequestContentDirectUrlClientErrorResponseForVersions() throws Exception
{
enableRestDirectAccessUrls();
// Create a document
setRequestContext(user1);
RepoService.TestNetwork networkN1;
RepoService.TestPerson userOneN1;
Site userOneN1Site;
String folderNodeId = createUniqueFolder(getMyNodeId());
String contentNodeId = createUniqueContent(folderNodeId);
networkN1 = repoService.createNetworkWithAlias("ping", true);
networkN1.create();
userOneN1 = networkN1.createUser();
// Verify versions
HttpResponse versionIdDoesNotExistReponse = post(getRequestVersionDirectAccessUrl(contentNodeId, "1.2"), null, null, null, null, 404);
HttpResponse versionIdInvalidReponse = post(getRequestVersionDirectAccessUrl(contentNodeId, "invalid-version"), null, null, null, null, 404);
setRequestContext(networkN1.getId(), userOneN1.getId(), null);
disableRestDirectAccessUrls();
}
String siteTitle = "RandomSite" + System.currentTimeMillis();
userOneN1Site = createSite(siteTitle, SiteVisibility.PRIVATE);
@Test
public void testRequestContentDirectUrlClientErrorResponseForRenditions() throws Exception
{
enableRestDirectAccessUrls();
// Create a document
setRequestContext(user1);
// Create a folder within the site document's library
String folderName = "folder" + System.currentTimeMillis();
String parentId = getSiteContainerNodeId(userOneN1Site.getId(), "documentLibrary");
String folder_Id = createNode(parentId, folderName, TYPE_CM_FOLDER, null).getId();
String folderNodeId = createUniqueFolder(getMyNodeId());
String contentNodeId = createUniqueContent(folderNodeId);
// Create multipart request - pdf file
String renditionName = "doclib";
String fileName = "quick.pdf";
File file = getResourceFile(fileName);
MultiPartRequest reqBody = MultiPartBuilder.create()
.setFileData(new FileData(fileName, file))
.setRenditions(Collections.singletonList(renditionName))
.build();
// Verify renditions
HttpResponse renditionIdDoesNotExistReponse = post(getRequestRenditionDirectAccessUrl(contentNodeId, "pdf"), null, null, null, null, 404);
HttpResponse renditionIdInvalidReponse = post(getRequestRenditionDirectAccessUrl(contentNodeId, "invalid-rendition"), null, null, null, null, 404);
// Upload quick.pdf file into 'folder' - including request to create 'doclib' thumbnail
HttpResponse response = post(getNodeChildrenUrl(folder_Id), reqBody.getBody(), null, reqBody.getContentType(), 201);
Document document = RestApiUtil.parseRestApiEntry(response.getJsonResponse(), Document.class);
String contentNodeId = document.getId();
disableRestDirectAccessUrls();
}
// wait and check that rendition is created ...
Rendition rendition = waitAndGetRendition(contentNodeId, null, renditionName);
assertNotNull(rendition);
assertEquals(Rendition.RenditionStatus.CREATED, rendition.getStatus());
@Test
public void testRequestContentDirectUrlClientErrorResponseForDeletion() throws Exception
{
enableRestDirectAccessUrls();
// Create a document
setRequestContext(user1);
HttpResponse dauResponse = post(getRequestContentDirectUrl(contentNodeId), null, null, null, null, 501);
String folderNodeId = createUniqueFolder(getMyNodeId());
String contentNodeId = createUniqueContent(folderNodeId);
// Verify deletion
HttpResponse nodeNotDeletedReponse = post(getRequestArchivedContentDirectUrl(contentNodeId), null, null, null, null, 404);
disableRestDirectAccessUrls();
}
@Test

View File

@@ -0,0 +1,179 @@
/*
* #%L
* Alfresco Remote API
* %%
* Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* Alfresco is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Alfresco is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
* #L%
*/
package org.alfresco.rest.api.tests;
import org.alfresco.rest.AbstractSingleNetworkSiteTest;
import org.alfresco.rest.api.tests.client.HttpResponse;
import org.alfresco.rest.api.tests.client.data.Document;
import org.alfresco.rest.api.tests.util.RestApiUtil;
import org.alfresco.service.cmr.repository.NodeService;
import org.alfresco.service.cmr.security.AuthorityService;
import org.alfresco.service.cmr.security.PermissionService;
import org.alfresco.service.namespace.NamespaceService;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import java.util.*;
import static org.alfresco.rest.api.tests.util.RestApiUtil.toJsonAsStringNonNull;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
@RunWith(Parameterized.class)
public class NodeApiVersioningJsonParameterizedTest extends AbstractSingleNetworkSiteTest
{
private static final String TYPE_CM_CONTENT = "cm:content";
private static final String TYPE_CUSTOM_DOCUMENT = "custom:document";
private static final String VERSIONING_ENABLED_TRUE = "true";
private static final String VERSIONING_ENABLED_FALSE = "false";
private static final String VERSIONING_ENABLED_UNSET = null;
private static final Boolean MAJOR_VERSION_ENABLED_TRUE = true;
private static final Boolean MAJOR_VERSION_ENABLED_FALSE = false;
private static final Boolean MAJOR_VERSION_ENABLED_UNSET = null;
private static final String VERSION_NOT_EXPECTED = null;
private static final String EXPECTED_VERSION_0_1 = "0.1";
private static final String EXPECTED_VERSION_1_0 = "1.0";
private static final String EXPECTED_ASPECT_VERSIONABLE = "cm:versionable";
private static final String EXPECTED_ASPECT_NONE = null;
protected PermissionService permissionService;
protected AuthorityService authorityService;
private NodeService nodeService;
private NamespaceService namespaceService;
@Parameterized.Parameter(value = 0)
public String type;
@Parameterized.Parameter(value = 1)
public String versioningEnabled;
@Parameterized.Parameter(value = 2)
public Boolean majorVersion;
@Parameterized.Parameter(value = 3)
public String expectedVersion;
@Parameterized.Parameter(value = 4)
public String expectedAspect;
@Parameterized.Parameters //parameters source - MMT-22462 comments
public static Collection<Object[]> data()
{
Collection<Object[]> params = new ArrayList();
params.add(new Object[]{TYPE_CM_CONTENT, VERSIONING_ENABLED_UNSET, MAJOR_VERSION_ENABLED_UNSET, VERSION_NOT_EXPECTED, EXPECTED_ASPECT_NONE});
params.add(new Object[]{TYPE_CM_CONTENT, VERSIONING_ENABLED_UNSET, MAJOR_VERSION_ENABLED_TRUE, EXPECTED_VERSION_1_0, EXPECTED_ASPECT_NONE});
params.add(new Object[]{TYPE_CM_CONTENT, VERSIONING_ENABLED_UNSET, MAJOR_VERSION_ENABLED_FALSE, EXPECTED_VERSION_0_1, EXPECTED_ASPECT_NONE});
params.add(new Object[]{TYPE_CM_CONTENT, VERSIONING_ENABLED_FALSE, MAJOR_VERSION_ENABLED_UNSET, VERSION_NOT_EXPECTED, EXPECTED_ASPECT_NONE});
params.add(new Object[]{TYPE_CM_CONTENT, VERSIONING_ENABLED_FALSE, MAJOR_VERSION_ENABLED_TRUE, VERSION_NOT_EXPECTED, EXPECTED_ASPECT_NONE});
params.add(new Object[]{TYPE_CM_CONTENT, VERSIONING_ENABLED_FALSE, MAJOR_VERSION_ENABLED_FALSE, VERSION_NOT_EXPECTED, EXPECTED_ASPECT_NONE});
params.add(new Object[]{TYPE_CM_CONTENT, VERSIONING_ENABLED_TRUE, MAJOR_VERSION_ENABLED_UNSET, EXPECTED_VERSION_1_0, EXPECTED_ASPECT_VERSIONABLE});
params.add(new Object[]{TYPE_CM_CONTENT, VERSIONING_ENABLED_TRUE, MAJOR_VERSION_ENABLED_TRUE, EXPECTED_VERSION_1_0, EXPECTED_ASPECT_VERSIONABLE});
params.add(new Object[]{TYPE_CM_CONTENT, VERSIONING_ENABLED_TRUE, MAJOR_VERSION_ENABLED_FALSE, EXPECTED_VERSION_0_1, EXPECTED_ASPECT_VERSIONABLE});
params.add(new Object[]{TYPE_CUSTOM_DOCUMENT, VERSIONING_ENABLED_UNSET, MAJOR_VERSION_ENABLED_UNSET, EXPECTED_VERSION_1_0, EXPECTED_ASPECT_VERSIONABLE});
params.add(new Object[]{TYPE_CUSTOM_DOCUMENT, VERSIONING_ENABLED_UNSET, MAJOR_VERSION_ENABLED_TRUE, EXPECTED_VERSION_1_0, EXPECTED_ASPECT_VERSIONABLE});
params.add(new Object[]{TYPE_CUSTOM_DOCUMENT, VERSIONING_ENABLED_UNSET, MAJOR_VERSION_ENABLED_FALSE, EXPECTED_VERSION_0_1, EXPECTED_ASPECT_VERSIONABLE});
params.add(new Object[]{TYPE_CUSTOM_DOCUMENT, VERSIONING_ENABLED_TRUE, MAJOR_VERSION_ENABLED_UNSET, EXPECTED_VERSION_1_0, EXPECTED_ASPECT_VERSIONABLE});
params.add(new Object[]{TYPE_CUSTOM_DOCUMENT, VERSIONING_ENABLED_TRUE, MAJOR_VERSION_ENABLED_TRUE, EXPECTED_VERSION_1_0, EXPECTED_ASPECT_VERSIONABLE});
params.add(new Object[]{TYPE_CUSTOM_DOCUMENT, VERSIONING_ENABLED_TRUE, MAJOR_VERSION_ENABLED_FALSE, EXPECTED_VERSION_0_1, EXPECTED_ASPECT_VERSIONABLE});
params.add(new Object[]{TYPE_CUSTOM_DOCUMENT, VERSIONING_ENABLED_FALSE, MAJOR_VERSION_ENABLED_UNSET, EXPECTED_VERSION_1_0, EXPECTED_ASPECT_VERSIONABLE});
params.add(new Object[]{TYPE_CUSTOM_DOCUMENT, VERSIONING_ENABLED_FALSE, MAJOR_VERSION_ENABLED_TRUE, EXPECTED_VERSION_1_0, EXPECTED_ASPECT_VERSIONABLE});
params.add(new Object[]{TYPE_CUSTOM_DOCUMENT, VERSIONING_ENABLED_FALSE, MAJOR_VERSION_ENABLED_FALSE, EXPECTED_VERSION_0_1, EXPECTED_ASPECT_VERSIONABLE});
return params;
}
@Before
public void setup() throws Exception
{
super.setup();
permissionService = applicationContext.getBean("permissionService", PermissionService.class);
authorityService = (AuthorityService) applicationContext.getBean("AuthorityService");
nodeService = applicationContext.getBean("NodeService", NodeService.class);
namespaceService= (NamespaceService) applicationContext.getBean("NamespaceService");
}
@After
public void tearDown() throws Exception
{
super.tearDown();
}
@Test
public void versionableDocumentJsonNodeCreationTest() throws Exception
{
setRequestContext(user1);
String myNodeId = getMyNodeId();
Document d1 = new Document();
Map<String, String> params = new HashMap<>();
d1.setName("testDoc" + UUID.randomUUID());
d1.setNodeType(type);
if(versioningEnabled != null)
{
params.put("versioningEnabled", versioningEnabled);
}
if(majorVersion != null)
{
params.put("majorVersion", majorVersion.toString());
}
HttpResponse response = post(getNodeChildrenUrl(myNodeId), toJsonAsStringNonNull(d1), params, null, null, 201);
Document documentResponse = RestApiUtil.parseRestApiEntry(response.getJsonResponse(), Document.class);
assertExpectedVersion(expectedVersion, documentResponse.getProperties());
assertContainsAspect(expectedAspect, documentResponse);
}
private void assertExpectedVersion(String expectedVersion, Map<String, Object> documentProperties)
{
if(documentProperties != null) {
assertEquals(expectedVersion, documentProperties.get("cm:versionLabel"));
}
}
private void assertContainsAspect(String expectedAspect, Document documentResponse)
{
if(expectedAspect != null) {
assertTrue(!documentResponse.getAspectNames().isEmpty());
assertTrue(documentResponse.getAspectNames().contains(expectedAspect));
}
}
}

Some files were not shown because too many files have changed in this diff Show More