You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cz...@apache.org on 2021/09/18 13:01:36 UTC
[sling-org-apache-sling-feature-cpconverter] 01/02: SLING-10823 :
Pass in repoinit as a single text
This is an automated email from the ASF dual-hosted git repository.
cziegeler pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-feature-cpconverter.git
commit 4592260e9146cb4a0bb4b4682cf433adad22fe26
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Sat Sep 18 13:30:24 2021 +0200
SLING-10823 : Pass in repoinit as a single text
---
.../features/DefaultFeaturesManager.java | 4 +---
.../feature/cpconverter/handlers/RepoInitTest.java | 5 ++--
....RepositoryInitializer-conversion-result.config | 28 ++++++++--------------
3 files changed, 13 insertions(+), 24 deletions(-)
diff --git a/src/main/java/org/apache/sling/feature/cpconverter/features/DefaultFeaturesManager.java b/src/main/java/org/apache/sling/feature/cpconverter/features/DefaultFeaturesManager.java
index 26d301c..2ea9c54 100644
--- a/src/main/java/org/apache/sling/feature/cpconverter/features/DefaultFeaturesManager.java
+++ b/src/main/java/org/apache/sling/feature/cpconverter/features/DefaultFeaturesManager.java
@@ -313,9 +313,7 @@ public class DefaultFeaturesManager implements FeaturesManager, PackagesEventsEm
if (REPOINIT_FACTORY_PID.equals(cfg.getFactoryPid())) {
final String[] scripts = Converters.standardConverter().convert(configurationProperties.get("scripts")).to(String[].class);
if (scripts != null && scripts.length > 0) {
- for (final String text : scripts) {
- getAclManager().addRepoinitExtention(cfg.getPid(), text, runMode, this);
- }
+ getAclManager().addRepoinitExtention(cfg.getPid(), String.join(System.lineSeparator(), scripts), runMode, this);
}
checkReferences(configurationProperties, cfg.getPid());
return true;
diff --git a/src/test/java/org/apache/sling/feature/cpconverter/handlers/RepoInitTest.java b/src/test/java/org/apache/sling/feature/cpconverter/handlers/RepoInitTest.java
index 5fbce0d..7a6c85f 100644
--- a/src/test/java/org/apache/sling/feature/cpconverter/handlers/RepoInitTest.java
+++ b/src/test/java/org/apache/sling/feature/cpconverter/handlers/RepoInitTest.java
@@ -76,11 +76,10 @@ public class RepoInitTest {
@Test
public void parseConversionRepoInit() throws Exception {
String path = PATH_PREFIX + "-conversion-test.config";
- String result = PATH_PREFIX + "-conversion-result.config";
Extension expectedExtension;
if (enforcePrincipalBasedAcSetup) {
- expectedExtension = extractExtensions(result, false, false);
+ expectedExtension = extractExtensions(PATH_PREFIX + "-conversion-result.config", false, false);
} else {
expectedExtension = extractExtensions(path, false, false);
}
@@ -88,7 +87,7 @@ public class RepoInitTest {
assertNotNull(expectedExtension);
assertNotNull(extension);
String txt = normalize(extension.getText());
- assertEquals(name, normalize(expectedExtension.getText()), txt);
+ assertEquals(txt, normalize(expectedExtension.getText()), txt);
// verify that the generated repo-init is valid
assertFalse(name, new RepoInitParserService().parse(new StringReader(txt)).isEmpty());
diff --git a/src/test/resources/org/apache/sling/feature/cpconverter/handlers/jcr_root/apps/asd/config.publish/org.apache.sling.jcr.repoinit.RepositoryInitializer-conversion-result.config b/src/test/resources/org/apache/sling/feature/cpconverter/handlers/jcr_root/apps/asd/config.publish/org.apache.sling.jcr.repoinit.RepositoryInitializer-conversion-result.config
index 3bfcc0e..492f5f0 100644
--- a/src/test/resources/org/apache/sling/feature/cpconverter/handlers/jcr_root/apps/asd/config.publish/org.apache.sling.jcr.repoinit.RepositoryInitializer-conversion-result.config
+++ b/src/test/resources/org/apache/sling/feature/cpconverter/handlers/jcr_root/apps/asd/config.publish/org.apache.sling.jcr.repoinit.RepositoryInitializer-conversion-result.config
@@ -24,39 +24,31 @@ create service user su3 with forced path system/cq:services/myfeature/subtree
set ACL on /conf,/libs,:repository,home(su1)
remove jcr:modifyProperties for su3
end
+create service user su-second-script with forced path system/cq:services
+set ACL on /second-script
+ allow jcr:write for group1
+end
+set ACL for group2
+ allow jcr:read on /third-script
+end
set principal ACL for su1
allow jcr:read,jcr:modifyProperties on /conf,/content restriction(rep:glob,*)
allow jcr:read on /conf,/content restriction(rep:itemNames,jcr:primaryType,jcr:mixinTypes) restriction(rep:ntNames,nt:folder)
allow jcr:read,jcr:write on /conf,/libs,:repository,home(su1)
+ allow jcr:read on /second-script
end
set principal ACL for su2 (ACLOptions\=someOption,someOtherOption,namespaced:option)
allow jcr:read on /tmp
end
set principal ACL for su2
allow jcr:read,jcr:write on /conf,/libs,:repository,home(su1)
+ allow jcr:write on /second-script
end
set principal ACL for su3
deny jcr:versionManagement on /conf,/libs,:repository,home(su1) restriction(rep:glob,/subtree)
-end",\
-"
-create service user su-second-script with forced path system/cq:services
-set ACL on /second-script
- allow jcr:write for group1
-end
-set principal ACL for su1
- allow jcr:read on /second-script
+ allow jcr:read on /third-script
end
set principal ACL for su-second-script
allow jcr:read on /second-script
-end
-set principal ACL for su2
- allow jcr:write on /second-script
-end",\
-"
-set ACL for group2
- allow jcr:read on /third-script
-end
-set principal ACL for su3
- allow jcr:read on /third-script
end"
]
\ No newline at end of file