mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

Jean-Noël Rouvignac
08.28.2016 f98cf29f4e7e256e6429cdc8c8ef2833e2dd2b0c
OPENDJ-3013 Embed an example-plugin.zip in opendj zip

Create an example-plugin.zip in opendj-server-legacy module
by copying files from ../opendj-server-example-plugin.
2 files modified
1 files added
105 ■■■■ changed files
opendj-server-example-plugin/README.example.plugin 46 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/pom.xml 18 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/assembly/example-plugin-assembly.xml 41 ●●●●● patch | view | raw | blame | history
opendj-server-example-plugin/README.example.plugin
old mode 100644 new mode 100755
@@ -6,33 +6,47 @@
In order to build and use this example plugin, perform the following
steps while the server is stopped:
  1. Then unzip the example-plugin.zip (in place):
# 1. ensure OpenDJ is stopped:
     bin/stop-ds
# 2. unzip the example-plugin.zip (in place):
     unzip example-plugin.zip
  2. Go into the example-plugin source folder:
# 3. Go into the example-plugin source folder:
     cd example-plugin
     cd opendj-server-example-plugin
  3. And build the plugin (this requires Maven version 3):
# 4. Build the plugin (this requires Maven version 3):
     mvn clean install
  4. This will copy the following files into the parent OpenDJ installation:
# 5. Unzip the built example-plugin zip
     lib/extensions/example-plugin.jar
     config/example-plugin.ldif
     config/schema/99-example-plugin.ldif
     unzip target/opendj-server-example-plugin-*.zip -d target
  5. Add the plugin's config to the server configuration.
# 6. Copy the example-plugin's content into the parent OpenDJ installation:
     cd ../bin
     ./start-ds
     ./dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password
      create-plugin --plugin-name "Example Plugin" --type example
     cp -r target/opendj-server-example-plugin-*/* ..
# 7. This will copy the following files:
#     lib/extensions/opendj-server-example-plugin-*.jar
#     lib/extensions/commons-lang3-3.3.2.jar      (included to demonstrate how to include a 3rd party dependency)
#     config/example-plugin.ldif
#     config/schema/99-example-plugin.ldif
#     README.example.plugin
# 8. Add the plugin's config to the server configuration.
     cd ..
     bin/start-ds
     bin/dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password \
      create-plugin --plugin-name "Example Plugin" --type example \
      --set enabled:true --set plugin-type:startup -X -n
  6. Restart the server and look for the "HELLO WORLD" notice in the start
     up log:
# 9. Restart the server and look for the "HELLO WORLD" notice in the start up log:
     ./stop-ds --restart
     bin/stop-ds --restart
opendj-server-legacy/pom.xml
@@ -1002,6 +1002,24 @@
              </archive>
            </configuration>
          </execution>
          <!-- Creates the archive folder -->
          <execution>
            <id>build-example-plugin.zip</id>
            <phase>package</phase>
            <goals>
              <goal>single</goal>
            </goals>
            <configuration>
              <finalName>example-plugin</finalName>
              <outputDirectory>${project.build.directory}/package/${product.name.lowercase}/</outputDirectory>
              <appendAssemblyId>false</appendAssemblyId>
              <attach>false</attach>
              <descriptors>
                <descriptor>src/main/assembly/example-plugin-assembly.xml</descriptor>
              </descriptors>
            </configuration>
          </execution>
        </executions>
      </plugin>
opendj-server-legacy/src/main/assembly/example-plugin-assembly.xml
New file
@@ -0,0 +1,41 @@
<!--
  The contents of this file are subject to the terms of the Common Development and
  Distribution License (the License). You may not use this file except in compliance with the
  License.
  You can obtain a copy of the License at legal/CDDLv1.0.txt. See the License for the
  specific language governing permission and limitations under the License.
  When distributing Covered Software, include this CDDL Header Notice in each file and include
  the License file at legal/CDDLv1.0.txt. If applicable, add the following below the CDDL
  Header, with the fields enclosed by brackets [] replaced by your own identifying
  information: "Portions Copyright [year] [name of copyright owner]".
  Copyright 2016 ForgeRock AS.
-->
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
  <id>example-plugin.zip</id>
  <includeBaseDirectory>false</includeBaseDirectory>
  <formats>
    <format>zip</format>
  </formats>
  <fileSets>
    <!-- Creates example-plugin.zip -->
    <fileSet>
      <directory>${basedir}/../opendj-server-example-plugin</directory>
      <includes>
        <include>**</include>
      </includes>
      <excludes>
        <exclude>target/</exclude>
        <exclude>src/main/assembly/config/*.ldif.tmp</exclude>
        <exclude>.*</exclude>
        <exclude>.*/</exclude>
      </excludes>
      <fileMode>744</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>
  </fileSets>
</assembly>