You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by dk...@apache.org on 2021/09/02 20:11:34 UTC

[sling-org-apache-sling-app-cms] 02/02: Committing wprogress to this point, provisioning still not functioning

This is an automated email from the ASF dual-hosted git repository.

dklco pushed a commit to branch provisioning-support
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-app-cms.git

commit 42852fac7f5e0cc9ddc16b43948f3589c4e9ac8b
Author: Dan Klco <kl...@adobe.com>
AuthorDate: Thu Sep 2 16:11:24 2021 -0400

    Committing wprogress to this point, provisioning still not functioning
---
 feature/pom.xml                                    |  9 +++
 feature/src/main/assembly/standalone.xml           |  4 ++
 pom.xml                                            |  2 +-
 .../converter/ProvisioningModelConverter.java      |  2 +-
 provisioning/generator/pom.xml                     | 80 ++++++++++++++++++++--
 5 files changed, 91 insertions(+), 6 deletions(-)

diff --git a/feature/pom.xml b/feature/pom.xml
index 593f960..6e62a9f 100644
--- a/feature/pom.xml
+++ b/feature/pom.xml
@@ -70,6 +70,15 @@
                     </framework>
                     <aggregates>
                         <aggregate>
+                            <classifier>slingcms-standalone-no-boot</classifier>
+                            <filesInclude>**/*.json</filesInclude>
+                            <filesExclude>oak/node-store/composite-*.json</filesExclude>
+                            <filesExclude>runmodes/author.json</filesExclude>
+                            <filesExclude>runmodes/renderer.json</filesExclude>
+                            <filesExclude>boot.json</filesExclude>
+                            <title>Sling CMS - Standalone (No Boot)</title>
+                        </aggregate>
+                        <aggregate>
                             <classifier>slingcms-standalone</classifier>
                             <filesInclude>**/*.json</filesInclude>
                             <filesExclude>oak/node-store/composite-*.json</filesExclude>
diff --git a/feature/src/main/assembly/standalone.xml b/feature/src/main/assembly/standalone.xml
index c379615..b101511 100644
--- a/feature/src/main/assembly/standalone.xml
+++ b/feature/src/main/assembly/standalone.xml
@@ -40,6 +40,10 @@
             <outputDirectory>org/apache/sling/cms/feature</outputDirectory>
         </file>
         <file>
+            <source>target/classes/org/apache/sling/cms/feature/RunSupport.class</source>
+            <outputDirectory>org/apache/sling/cms/feature</outputDirectory>
+        </file>
+        <file>
             <source>target/classes/META-INF/NOTICE</source>
             <outputDirectory>META-INF</outputDirectory>
         </file>
diff --git a/pom.xml b/pom.xml
index 17c3e79..5c91454 100644
--- a/pom.xml
+++ b/pom.xml
@@ -77,7 +77,7 @@
         <module>reference</module>
         <module>feature</module>
         <module>provisioning</module>
-        <module>builder</module>
+        <!--<module>builder</module>-->
         <module>archetype</module>
         <module>it</module>
     </modules>
diff --git a/provisioning/converter/src/main/java/org/apache/sling/cms/privisioning/converter/ProvisioningModelConverter.java b/provisioning/converter/src/main/java/org/apache/sling/cms/privisioning/converter/ProvisioningModelConverter.java
index 89d6f3e..df0dcea 100644
--- a/provisioning/converter/src/main/java/org/apache/sling/cms/privisioning/converter/ProvisioningModelConverter.java
+++ b/provisioning/converter/src/main/java/org/apache/sling/cms/privisioning/converter/ProvisioningModelConverter.java
@@ -40,7 +40,7 @@ import org.apache.sling.feature.io.json.FeatureJSONReader;
 import org.apache.sling.feature.modelconverter.FeatureToProvisioning;
 import org.apache.sling.maven.slingstart.ModelUtils;
 
-@Mojo(name = "fm-to-pm", defaultPhase = LifecyclePhase.COMPILE, requiresDependencyResolution = ResolutionScope.TEST, threadSafe = true)
+@Mojo(name = "fm-to-pm", defaultPhase = LifecyclePhase.PROCESS_RESOURCES, requiresDependencyResolution = ResolutionScope.TEST, threadSafe = true)
 public class ProvisioningModelConverter extends AbstractMojo {
 
     @Component
diff --git a/provisioning/generator/pom.xml b/provisioning/generator/pom.xml
index faf4aad..d3a4823 100644
--- a/provisioning/generator/pom.xml
+++ b/provisioning/generator/pom.xml
@@ -27,7 +27,6 @@
     <properties>
         <cms.version>${project.parent.version}</cms.version>
     </properties>
-
     <build>
         <plugins>
             <plugin>
@@ -37,7 +36,7 @@
                 <executions>
                     <execution>
                         <id>copy-dependencies</id>
-                        <phase>compile</phase>
+                        <phase>generate-sources</phase>
                         <goals>
                             <goal>copy-dependencies</goal>
                         </goals>
@@ -63,12 +62,65 @@
                             <goal>fm-to-pm</goal>
                         </goals>
                         <configuration>
-                            <featureModel>${project.build.directory}/feature/org.apache.sling.cms.feature-${project.parent.version}-slingcms-standalone.slingosgifeature</featureModel>
+                            <featureModel>${project.build.directory}/feature/org.apache.sling.cms.feature-${project.parent.version}-slingcms-standalone-no-boot.slingosgifeature</featureModel>
                             <outputFile>${project.build.directory}/provisioning/model.txt</outputFile>
                         </configuration>
                     </execution>
+                    <execution>
+                        <id>fm-to-pm-boot</id>
+                        <goals>
+                            <goal>fm-to-pm</goal>
+                        </goals>
+                        <configuration>
+                            <featureModel>${project.build.directory}/feature/org.apache.sling.cms.feature-${project.parent.version}-boot.slingosgifeature</featureModel>
+                            <outputFile>${project.build.directory}/provisioning/boot.txt</outputFile>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <artifactId>maven-resources-plugin</artifactId>
+                <version>3.2.0</version>
+                <executions>
+                    <execution>
+                        <id>copy-resources</id>
+                        <phase>generate-sources</phase>
+                        <goals>
+                            <goal>copy-resources</goal>
+                        </goals>
+                        <configuration>
+                            <outputDirectory>${basedir}/target/provisioning</outputDirectory>
+                            <resources>
+                                <resource>
+                                    <directory>src/main/resources/provisioning</directory>
+                                    <filtering>true</filtering>
+                                </resource>
+                            </resources>
+                        </configuration>
+                    </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <groupId>io.github.floverfelt</groupId>
+                <artifactId>find-and-replace-maven-plugin</artifactId>
+                <executions>
+                   <execution>
+                      <id>exec</id>
+                      <phase>process-resources</phase>
+                      <goals>
+                         <goal>find-and-replace</goal>
+                      </goals>
+                      <configuration>
+                         <replacementType>file-contents</replacementType>
+                         <baseDir>target/provisioning</baseDir>
+                         <exclusions>(model.txt|launchpad.txt)</exclusions>
+                         <findRegex> startLevel=20]</findRegex>
+                         <replaceValue>]</replaceValue>
+                         <recursive>true</recursive>
+                      </configuration>
+                   </execution>
+                </executions>
+             </plugin>
 
             <plugin>
                 <groupId>org.codehaus.mojo</groupId>
@@ -84,9 +136,21 @@
                         <configuration>
                             <artifacts>
                                 <artifact>
+
+                                    <classifier>model</classifier>
                                     <file>${project.build.directory}/provisioning/model.txt</file>
                                     <type>txt</type>
                                 </artifact>
+                                <artifact>
+                                    <classifier>launchpad</classifier>
+                                    <file>${project.build.directory}/provisioning/launchpad.txt</file>
+                                    <type>txt</type>
+                                </artifact>
+                                <artifact>
+                                    <classifier>boot</classifier>
+                                    <file>${project.build.directory}/provisioning/launchpad.txt</file>
+                                    <type>txt</type>
+                                </artifact>
                             </artifacts>
                         </configuration>
                     </execution>
@@ -100,7 +164,15 @@
             <groupId>org.apache.sling</groupId>
             <artifactId>org.apache.sling.cms.feature</artifactId>
             <version>${cms.version}</version>
-            <classifier>slingcms-standalone</classifier>
+            <classifier>boot</classifier>
+            <type>slingosgifeature</type>
+            <scope>compile</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.sling</groupId>
+            <artifactId>org.apache.sling.cms.feature</artifactId>
+            <version>${cms.version}</version>
+            <classifier>slingcms-standalone-no-boot</classifier>
             <type>slingosgifeature</type>
             <scope>compile</scope>
         </dependency>