You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@freemarker.apache.org by dd...@apache.org on 2020/07/12 00:23:37 UTC
[freemarker-site] branch master updated: Switched from Ant to Maven
for site generation. This depends on the new freemarker-docgen-maven
artifact.
This is an automated email from the ASF dual-hosted git repository.
ddekany pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/freemarker-site.git
The following commit(s) were added to refs/heads/master by this push:
new 6db138c Switched from Ant to Maven for site generation. This depends on the new freemarker-docgen-maven artifact.
6db138c is described below
commit 6db138cef851de63785a7d64b30490e25ea5b908
Author: ddekany <dd...@apache.org>
AuthorDate: Sun Jul 12 01:01:40 2020 +0200
Switched from Ant to Maven for site generation. This depends on the new freemarker-docgen-maven artifact.
---
README | 22 +++++----
build.xml | 144 --------------------------------------------------------
ivy.xml | 32 -------------
ivysettings.xml | 53 ---------------------
pom.xml | 95 +++++++++++++++++++++++++++++++++++++
5 files changed, 109 insertions(+), 237 deletions(-)
diff --git a/README b/README
index c2cf987..aa6cffd 100644
--- a/README
+++ b/README
@@ -20,13 +20,19 @@
Apache FreeMarker Site
----------------------
-This is the project with which we generate the freemarker.apache.org home page.
-Note that most of the work is done by Apache FreeMarker Docgen, which is
-a dependency of this project.
+This is the project that generates the freemarker.apache.org home page,
+except the documentation of FreeMarker, or of other released products.
+Note that most of the work is done by the freemarker-docgen depedency. (If
+Maven can't get the proper version of that depedency, try the Apache Maven
+repository, or you have to check out freemarker-docgen "mvn install" it
+locally.)
-To publish the built site, commit the output into the "asf-site" branch.
+To build the site, issue:
-Note that as of this writing, the "docgen" dependency is get from the Ivy
-repo on the published homepage (https://freemarker.apache.org/repos/ivy/). Those
-modifying docgen should upload the fresh docgen jar there. Then you need to
-run `ant update-deps` here to grab the latest version.
+ mvn package
+
+This will output the site into target/site. To publish the built site, commit the
+output into the "asf-site" branch of the freemarker-site Git repo.
+
+This project shouldn't be deployed or installed, as it produces no
+meaningful artifact.
diff --git a/build.xml b/build.xml
deleted file mode 100644
index 03e7261..0000000
--- a/build.xml
+++ /dev/null
@@ -1,144 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
--->
-
-<project name="FreeMarker Site" default="site" basedir="."
- xmlns:ivy="antlib:org.apache.ivy.ant"
- xmlns:docgen="http://freemarker.org/docgen"
- xmlns:rat="antlib:org.apache.rat.anttasks"
->
-
- <!-- Ivy project coordinates: -->
- <property name="moduleOrg" value="org.freemarker" />
- <property name="moduleName" value="site" />
- <property name="moduleBranch" value="1.0" />
-
- <!-- Will be overidden on the server: -->
- <property name="server.ivy.repo.root" value="${basedir}/build/dummy-server-ivy-repo" />
-
- <target name="init">
- <condition property="deps.available">
- <available file=".ivy" />
- </condition>
- <antcall target="_autoget-deps" />
-
- <tstamp>
- <format property="timeStamp" pattern="yyyy-MM-dd HH:mm:ss z" timezone="GMT" />
- </tstamp>
- </target>
-
- <target name="site" depends="init">
- <!-- Ensure that we have an empty build/site directory: -->
- <mkdir dir="build/site"/>
- <delete includeEmptyDirs="true">
- <fileset dir="build/site">
- <include name="*/**"/>
- </fileset>
- </delete>
-
- <!-- Generate the new content: -->
- <ivy:cachepath pathid="ivy.dep" />
- <taskdef resource="org/freemarker/docgen/antlib.properties"
- uri="http://freemarker.org/docgen"
- classpathref="ivy.dep"
- />
-
- <docgen:transform
- srcdir="src/main/docgen" destdir="build/site"
- offline="@{offline}"
- />
-
- <!-- Copy project meta-data file: -->
- <copy file="doap.rdf" todir="build/site" />
- </target>
-
- <target name="clean">
- <delete dir="build"/>
- </target>
-
- <!-- ================================================================== -->
- <!-- Dependency management (keep it exactly identical for all projects) -->
- <!-- ================================================================== -->
-
- <target name="_autoget-deps" unless="deps.available">
- <antcall target="update-deps" />
- </target>
-
- <target name="update-deps"
- description="Gets the latest version of the dependencies from the Web"
- >
- <echo>Getting dependencies...</echo>
- <echo>-------------------------------------------------------</echo>
- <ivy:settings id="remote" url="https://freemarker.apache.org/repos/ivy/ivysettings-remote.xml" />
- <!-- Build an own repository that will serve us even offline: -->
- <ivy:retrieve settingsRef="remote" sync="true"
- ivypattern=".ivy.part/repo/[organisation]/[module]/ivy-[revision].xml"
- pattern=".ivy.part/repo/[organisation]/[module]/[artifact]-[revision].[ext]"
- />
- <echo>-------------------------------------------------------</echo>
- <echo>*** Successfully acquired dependencies from the Web ***</echo>
- <echo>Eclipse users: Now right-click on ivy.xml and Resolve! </echo>
- <echo>-------------------------------------------------------</echo>
- <!-- Only now that we got all the dependencies will we delete anything. -->
- <!-- Thus a net or repo outage doesn't left us without the dependencies. -->
-
- <!-- Save the resolution cache from the soon coming <delete>: -->
- <move todir=".ivy.part/update-deps-reso-cache">
- <fileset dir=".ivy/update-deps-reso-cache" />
- </move>
- <!-- Drop all the old stuff: -->
- <delete dir=".ivy" />
- <!-- And use the new stuff instead: -->
- <move todir=".ivy">
- <fileset dir=".ivy.part" />
- </move>
- </target>
-
- <!-- Do NOT call this from 'clean'; offline guys would stuck after that. -->
- <target name="clean-deps"
- description="Deletes all dependencies"
- >
- <delete dir=".ivy" />
- </target>
-
- <target name="report-deps"
- description="Creates a HTML document that summarizes the dependencies."
- >
- <mkdir dir="build/deps-report" />
- <ivy:resolve />
- <ivy:report todir="build/deps-report" />
- </target>
-
- <target name="rat" description="Generates Apache RAT report">
- <ivy:cachepath pathid="ivy.dep" />
- <taskdef
- uri="antlib:org.apache.rat.anttasks"
- resource="org/apache/rat/anttasks/antlib.xml"
- classpathref="ivy.dep"
- />
-
- <rat:report reportFile="build/rat-report.txt">
- <fileset dir="" excludesfile="rat-excludes" />
- </rat:report>
- <echo level="info"><!--
- -->Rat reports were written into build/rat-report.txt<!--
- --></echo>
- </target>
-
-</project>
diff --git a/ivy.xml b/ivy.xml
deleted file mode 100644
index d67ed7e..0000000
--- a/ivy.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
--->
-
-<!--
- AFTER CHANGING THIS FILE don't forget to issue: ant update-deps
--->
-<ivy-module version="2.0">
- <info organisation="org.freemarker" module="site" />
- <publications>
- <artifact name="site" type="tar.gz" ext="tar.gz"/>
- </publications>
- <dependencies>
- <dependency org="org.freemarker" name="docgen" rev="2.0-branch-head" conf="default->default" changing="true" />
- <dependency org="org.apache.rat" name="apache-rat-tasks" rev="0.11" conf="default->default" />
- </dependencies>
-</ivy-module>
diff --git a/ivysettings.xml b/ivysettings.xml
deleted file mode 100644
index eafd89f..0000000
--- a/ivysettings.xml
+++ /dev/null
@@ -1,53 +0,0 @@
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
--->
-<ivysettings>
- <!-- Prevent IvyDE error: -->
- <property name="server.ivy.repo.root" value="${ivy.project.dir}/NOT_SET" override="false" />
-
- <caches defaultCacheDir="${ivy.project.dir}/.ivy/cache">
- <cache name="cacheForPrivate" useOrigin="true" defaultTTL="1s" />
-
- <!--
- Rather don't use useOrigin="true" here, as deleting from the target repo breaks the cache then.
- -->
- <cache name="cacheForLocalOverride"
- basedir="${user.home}/.ivy2/freemarker-devel-local-override-cache"
- defaultTTL="1s" lockStrategy="artifact-lock"
- />
- </caches>
- <resolvers>
- <chain name="freemarker-devel-local" returnFirst="true">
- <filesystem name="freemarker-devel-local-override" cache="cacheForLocalOverride">
- <ivy pattern="${user.home}/.ivy2/freemarker-devel-local-override/[organisation]/[module]/ivy-[revision].xml" />
- <artifact pattern="${user.home}/.ivy2/freemarker-devel-local-override/[organisation]/[module]/[artifact]-[revision].[ext]" />
- </filesystem>
- <filesystem name="project-private" cache="cacheForPrivate">
- <ivy pattern="${ivy.project.dir}/.ivy/repo/[organisation]/[module]/ivy-[revision].xml" />
- <artifact pattern="${ivy.project.dir}/.ivy/repo/[organisation]/[module]/[artifact]-[revision].[ext]" />
- </filesystem>
- </chain>
- <filesystem name="server-publishing-target">
- <ivy pattern="${server.ivy.repo.root}/[organisation]/[module]/ivy-[revision].xml" />
- <artifact pattern="${server.ivy.repo.root}/[organisation]/[module]/[artifact]-[revision].[ext]" />
- </filesystem>
- </resolvers>
- <modules>
- <module organisation="*" resolver="freemarker-devel-local" />
- </modules>
-</ivysettings>
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..2be6e75
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<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/maven-v4_0_0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache</groupId>
+ <artifactId>apache</artifactId>
+ <version>23</version>
+ </parent>
+
+ <groupId>org.apache.freemarker.site</groupId>
+ <artifactId>freemarker-site</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ <name>Apache FreeMarker Site</name>
+ <description>Internally used tool to generate FreeMarker web site</description>
+
+ <properties>
+ <siteOutputDirectory>${project.build.directory}/site</siteOutputDirectory>
+ </properties>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.freemarker.docgen</groupId>
+ <artifactId>freemarker-docgen-maven</artifactId>
+ <version>0.0.1</version>
+ <executions>
+ <execution>
+ <phase>package</phase>
+ <goals>
+ <goal>transform</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <sourceDirectory>src/main/docgen</sourceDirectory>
+ <outputDirectory>${siteOutputDirectory}</outputDirectory>
+ <offline>true</offline>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <phase>package</phase>
+ <configuration>
+ <target>
+ <!-- Copy project meta-data file: -->
+ <copy file="doap.rdf" todir="${siteOutputDirectory}" />
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.rat</groupId>
+ <artifactId>apache-rat-plugin</artifactId>
+ <version>0.13</version>
+ <executions>
+ <execution>
+ <phase>verify</phase>
+ <goals>
+ <goal>check</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <excludesFile>rat-excludes</excludesFile>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>