You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by gn...@apache.org on 2020/09/15 12:51:36 UTC
[camel] 03/06: [CAMEL-15433] Generators should run during a
component build
This is an automated email from the ASF dual-hosted git repository.
gnodet pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git
commit 95cc415c0048b340995d3a55c838b752841f3970
Author: Guillaume Nodet <gn...@gmail.com>
AuthorDate: Mon Sep 14 14:17:04 2020 +0200
[CAMEL-15433] Generators should run during a component build
---
.../camel/maven/packaging/PrepareCatalogMojo.java | 2 -
.../camel/maven/packaging/UpdateReadmeMojo.java | 88 ++++++++++++++++++++++
2 files changed, 88 insertions(+), 2 deletions(-)
diff --git a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PrepareCatalogMojo.java b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PrepareCatalogMojo.java
index 36dcfae..934749c 100644
--- a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PrepareCatalogMojo.java
+++ b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PrepareCatalogMojo.java
@@ -321,8 +321,6 @@ public class PrepareCatalogMojo extends AbstractMojo {
// CHECKSTYLE:OFF
protected Set<String> executeComponents() throws Exception {
- Path coreDir = this.coreDir.toPath();
- Path componentsDir = this.componentsDir.toPath();
Path componentsOutDir = this.componentsOutDir.toPath();
getLog().info("Copying all Camel component json descriptors");
diff --git a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/UpdateReadmeMojo.java b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/UpdateReadmeMojo.java
index d7de57e..0067ff2 100644
--- a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/UpdateReadmeMojo.java
+++ b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/UpdateReadmeMojo.java
@@ -19,6 +19,7 @@ package org.apache.camel.maven.packaging;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
+import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.Arrays;
@@ -54,6 +55,8 @@ import org.apache.maven.project.MavenProjectHelper;
import org.mvel2.templates.TemplateRuntime;
import org.sonatype.plexus.build.incremental.BuildContext;
+import static org.apache.camel.tooling.util.PackageHelper.findCamelDirectory;
+
/**
* Generate or updates the component/dataformat/language/eip readme.md and .adoc files in the project root directory.
*/
@@ -197,6 +200,24 @@ public class UpdateReadmeMojo extends AbstractGeneratorMojo {
throw new MojoExecutionException("Failed build due failFast=true");
}
}
+
+ if (updated || exists) {
+ try {
+ Path root = findCamelDirectory(project.getBasedir(), "core/camel-core").toPath().getParent()
+ .getParent();
+ String text = PackageHelper.loadText(file);
+ updateResource(
+ root.resolve("catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs"),
+ file.getName(), text);
+ String rep = "$1\n"
+ + "//THIS FILE IS COPIED: EDIT THE SOURCE FILE:\n"
+ + ":page-source: " + root.relativize(file.toPath());
+ text = Pattern.compile("^(= .+)$", Pattern.MULTILINE).matcher(text).replaceAll(rep);
+ updateResource(root.resolve("docs/components/modules/ROOT/pages"), file.getName(), text);
+ } catch (IOException e) {
+ throw new MojoExecutionException("Error reading file " + file + " Reason: " + e, e);
+ }
+ }
}
}
}
@@ -237,6 +258,24 @@ public class UpdateReadmeMojo extends AbstractGeneratorMojo {
throw new MojoExecutionException("Failed build due failFast=true");
}
}
+
+ if (updated || exists) {
+ try {
+ Path root = findCamelDirectory(project.getBasedir(), "core/camel-core").toPath().getParent()
+ .getParent();
+ String text = PackageHelper.loadText(file);
+ updateResource(
+ root.resolve("catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs"),
+ file.getName(), text);
+ String rep = "$1\n"
+ + "//THIS FILE IS COPIED: EDIT THE SOURCE FILE:\n"
+ + ":page-source: " + root.relativize(file.toPath());
+ text = Pattern.compile("^(= .+)$", Pattern.MULTILINE).matcher(text).replaceAll(rep);
+ updateResource(root.resolve("docs/components/modules/others/pages"), file.getName(), text);
+ } catch (IOException e) {
+ throw new MojoExecutionException("Error reading file " + file + " Reason: " + e, e);
+ }
+ }
}
}
}
@@ -289,6 +328,24 @@ public class UpdateReadmeMojo extends AbstractGeneratorMojo {
throw new MojoExecutionException("Failed build due failFast=true");
}
}
+
+ if (updated || exists) {
+ try {
+ Path root = findCamelDirectory(project.getBasedir(), "core/camel-core").toPath().getParent()
+ .getParent();
+ String text = PackageHelper.loadText(file);
+ updateResource(
+ root.resolve("catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs"),
+ file.getName(), text);
+ String rep = "$1\n"
+ + "//THIS FILE IS COPIED: EDIT THE SOURCE FILE:\n"
+ + ":page-source: " + root.relativize(file.toPath());
+ text = Pattern.compile("^(= .+)$", Pattern.MULTILINE).matcher(text).replaceAll(rep);
+ updateResource(root.resolve("docs/components/modules/dataformats/pages"), file.getName(), text);
+ } catch (IOException e) {
+ throw new MojoExecutionException("Error reading file " + file + " Reason: " + e, e);
+ }
+ }
}
}
}
@@ -359,6 +416,24 @@ public class UpdateReadmeMojo extends AbstractGeneratorMojo {
throw new MojoExecutionException("Failed build due failFast=true");
}
}
+
+ if (updated || exists) {
+ try {
+ Path root = findCamelDirectory(project.getBasedir(), "core/camel-core").toPath().getParent()
+ .getParent();
+ String text = PackageHelper.loadText(file);
+ updateResource(
+ root.resolve("catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs"),
+ file.getName(), text);
+ String rep = "$1\n"
+ + "//THIS FILE IS COPIED: EDIT THE SOURCE FILE:\n"
+ + ":page-source: " + root.relativize(file.toPath());
+ text = Pattern.compile("^(= .+)$", Pattern.MULTILINE).matcher(text).replaceAll(rep);
+ updateResource(root.resolve("docs/components/modules/languages/pages"), file.getName(), text);
+ } catch (IOException e) {
+ throw new MojoExecutionException("Error reading file " + file + " Reason: " + e, e);
+ }
+ }
}
}
}
@@ -435,6 +510,19 @@ public class UpdateReadmeMojo extends AbstractGeneratorMojo {
throw new MojoExecutionException("Failed build due failFast=true");
}
}
+
+ if (updated || exists) {
+ try {
+ Path root = findCamelDirectory(project.getBasedir(), "core/camel-core").toPath().getParent()
+ .getParent();
+ String text = PackageHelper.loadText(file);
+ updateResource(
+ root.resolve("catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs"),
+ file.getName(), text);
+ } catch (IOException e) {
+ throw new MojoExecutionException("Error reading file " + file + " Reason: " + e, e);
+ }
+ }
}
}
}