diff --git a/.github/workflows/assembly.yml b/.github/workflows/assembly.yml
index 0df590b5514..89bd5e2c78a 100644
--- a/.github/workflows/assembly.yml
+++ b/.github/workflows/assembly.yml
@@ -40,12 +40,9 @@ jobs:
- name: Package GeoServer modules and extensions
run: |
mvn -B -ntp -nsu -N -f src/pom.xml assembly:single
- - name: Build community modules without tests
+ - name: Build and package community modules (without tests)
run: |
- mvn -B -ntp -U -T3 -DskipTests -PcommunityRelease -f src/community/pom.xml install
- - name: Package community modules
- run: |
- mvn -B -ntp -nsu -N -f src/community/pom.xml assembly:single
+ mvn -B -ntp -U -T3 -DskipTests -PcommunityRelease,assembly -f src/community/pom.xml install
- name: Remove SNAPSHOT jars from repository
run: |
find ~/.m2/repository -name "*SNAPSHOT*" -type d | xargs rm -rf {}
diff --git a/data/release/demo/WCS_getCoverage.xml b/data/release/demo/WCS_getCoverage.xml
index f74b0536c86..f22441aebd7 100644
--- a/data/release/demo/WCS_getCoverage.xml
+++ b/data/release/demo/WCS_getCoverage.xml
@@ -33,6 +33,6 @@
\ No newline at end of file
diff --git a/doc/en/user/source/community/cog/cog.rst b/doc/en/user/source/community/cog/cog.rst
index a6fad4ce13c..316cfd3110d 100644
--- a/doc/en/user/source/community/cog/cog.rst
+++ b/doc/en/user/source/community/cog/cog.rst
@@ -13,7 +13,18 @@ As a community module, the package needs to be downloaded from the `nightly buil
picking the community folder of the corresponding GeoServer series (e.g. if working on the GeoServer main development branch nightly
builds, pick the zip file form ``main/community-latest``).
-To install the module, unpack the zip file contents into the GeoServer ``WEB-INF/lib`` directory and restart GeoServer.
+The module is provided as four different packages, depending on the connection type:
+
+* ``cog-http`` for HTTP connections without a particular cloud target
+* ``cog-aws`` for AWS S3 connections
+* ``cog-google`` for Google Cloud Storage connections
+* ``cog-azure`` for Azure Blob Storage connections
+
+To install the module, download the package you need, unpack the zip file contents into the GeoServer ``WEB-INF/lib`` directory and restart GeoServer.
+
+.. warning::
+
+ The dependencies of the various cloud providers might interfere with each other, so please never install together the AWS, Google and Azure modules.
COG GeoTIFF Configuration Panel
-------------------------------
diff --git a/doc/en/user/source/configuration/demos/img/demos_requests.png b/doc/en/user/source/configuration/demos/img/demos_requests.png
index 94fb388d4d4..800e1312ba3 100644
Binary files a/doc/en/user/source/configuration/demos/img/demos_requests.png and b/doc/en/user/source/configuration/demos/img/demos_requests.png differ
diff --git a/doc/en/user/source/configuration/demos/img/demos_requests_WFS.png b/doc/en/user/source/configuration/demos/img/demos_requests_WFS.png
index 1f202e45bc9..66d86805eb5 100644
Binary files a/doc/en/user/source/configuration/demos/img/demos_requests_WFS.png and b/doc/en/user/source/configuration/demos/img/demos_requests_WFS.png differ
diff --git a/doc/en/user/source/configuration/demos/img/demos_requests_WMS_feature.png b/doc/en/user/source/configuration/demos/img/demos_requests_WMS_feature.png
index a2bbde3567d..fc3eef629cd 100644
Binary files a/doc/en/user/source/configuration/demos/img/demos_requests_WMS_feature.png and b/doc/en/user/source/configuration/demos/img/demos_requests_WMS_feature.png differ
diff --git a/doc/en/user/source/configuration/demos/img/demos_requests_WMS_map.png b/doc/en/user/source/configuration/demos/img/demos_requests_WMS_map.png
index d7daa84b8be..f9adeccb97b 100644
Binary files a/doc/en/user/source/configuration/demos/img/demos_requests_WMS_map.png and b/doc/en/user/source/configuration/demos/img/demos_requests_WMS_map.png differ
diff --git a/doc/en/user/source/configuration/demos/img/demos_requests_schema.png b/doc/en/user/source/configuration/demos/img/demos_requests_schema.png
index f6f692558fe..5cf98eea58e 100644
Binary files a/doc/en/user/source/configuration/demos/img/demos_requests_schema.png and b/doc/en/user/source/configuration/demos/img/demos_requests_schema.png differ
diff --git a/doc/en/user/source/configuration/demos/img/demos_requests_transaction.png b/doc/en/user/source/configuration/demos/img/demos_requests_transaction.png
new file mode 100644
index 00000000000..a5949eeb085
Binary files /dev/null and b/doc/en/user/source/configuration/demos/img/demos_requests_transaction.png differ
diff --git a/doc/en/user/source/configuration/demos/index.rst b/doc/en/user/source/configuration/demos/index.rst
index d7acb7dc9d4..b5e2a77e96e 100644
--- a/doc/en/user/source/configuration/demos/index.rst
+++ b/doc/en/user/source/configuration/demos/index.rst
@@ -39,25 +39,37 @@ Both :ref:`wfs` as well as :ref:`wcs` requests will display the request URL and
.. figure:: img/demos_requests_WFS.png
- WFS 1.1 DescribeFeatureType sample request
+ WFS 1.1 DescribeFeatureType sample request (Demo Request :guilabel:`WFS_describeFeatureType-1.1.xml`)
-Click :guilabel:`Submit` to send the request to GeoServer. For WFS and WCS requests, GeoServer will automatically generate an XML response.
+Click :guilabel:`Show Result` or :guilabel:`Show Result in New Page` to send the request to GeoServer. For WFS and WCS requests, GeoServer will automatically generate an XML response.
+
+:guilabel:`Show Result` will show GeoServer's response - both the response headers and the XML/image result - below the :guilabel:`Show Result` button.
+If GeoServer's response is XML and you have ticked :guilabel:`Pretty Print XML`, GeoServer's response will be shown with an easy to read styled formatting.
+
+:guilabel:`Show Result in New Page` will show GeoServer's result in a new page (your browser will render the result).
.. figure:: img/demos_requests_schema.png
- XML response from a WFS 1.1 DescribeFeatureType sample request
+ Headers and XML response from a WFS 1.1 DescribeFeatureType sample request after pressing :guilabel:`Show Result`. (Demo Request :guilabel:`WFS_describeFeatureType-1.1.xml`)
Submitting a WMS GetMap request displays an image based on the provided geographic data.
.. figure:: img/demos_requests_WMS_map.png
- OpenLayers WMS GetMap request
+ Headers and image response for a WMS GetMap request after pressing :guilabel:`Show Result`. (Demo Request :guilabel:`WMS_getMap_multilayer.url`)
-WMS GetFeatureInfo requests retrieve information regarding a particular feature on the map image.
+WMS GetFeatureInfo requests retrieve information regarding a particular feature on the map image.
.. figure:: img/demos_requests_WMS_feature.png
- WMS GetFeatureInfo request
+ Plain text WMS GetFeatureInfo request after pressing :guilabel:`Show Result`. (Demo Request :guilabel:`WMS_featureInfo.url`)
+
+.. figure:: img/demos_requests_transaction.png
+
+ WFS Transaction result after pressing :guilabel:`Show Result in New Page` (Your browser may render this differently). (Demo Request :guilabel:`WFS_transactionInsert.xml`)
+
+
+
.. _srs_list:
diff --git a/doc/en/user/source/data/webadmin/layers.rst b/doc/en/user/source/data/webadmin/layers.rst
index 684fcdde165..611a574d255 100644
--- a/doc/en/user/source/data/webadmin/layers.rst
+++ b/doc/en/user/source/data/webadmin/layers.rst
@@ -66,7 +66,7 @@ The actions display an :ref:`Edit Layer ` page t
Remove a Layer
--------------
-To remove a layer, select it by clicking the checkbox next to the layer. As shown below, multiple layers can be selected for batch removal. Note that selections for removal will not persist from one results pages to the next.
+To remove a layer, select it by clicking the checkbox next to the layer. As shown below, multiple layers can be selected for batch removal. Note that selections for removal will not persist from one results page to the next.
.. figure:: img/data_layers_delete.png
@@ -113,7 +113,7 @@ The metadata information will appear in the capabilities documents which refer t
Coordinate Reference Systems
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-A coordinate reference system (CRS) defines how georeferenced spatial data relates to real locations on the Earth’s surface. CRSes are part of a more general model called Spatial Reference Systems (SRS), which includes referencing by coordinates and geographic identifiers. GeoServer needs to know the Coordinate Reference System of your data. This information is used for computing the latitude/longitude bounding box and reprojecting the data during both WMS and WFS requests.
+A coordinate reference system (CRS) defines how georeferenced spatial data relates to real locations on the Earth’s surface. CRSs are part of a more general model called Spatial Reference Systems (SRS), which includes referencing by coordinates and geographic identifiers. GeoServer needs to know the Coordinate Reference System of your data. This information is used for computing the latitude/longitude bounding box and reprojecting the data during both WMS and WFS requests.
.. figure:: img/data_layers_CRS.png
@@ -121,7 +121,7 @@ A coordinate reference system (CRS) defines how georeferenced spatial data relat
* **Native SRS**—Specifies the coordinate system the layer is stored in. Clicking the projection link displays a description of the SRS.
* **Declared SRS**—Specifies the coordinate system GeoServer publishes to clients
-* **SRS Handling**—Determines how GeoServer should handle projection when the two SRSes differ. Possible values are:
+* **SRS Handling**—Determines how GeoServer should handle projection when the two SRSs differ. Possible values are:
* **Force declared** (default): the declared SRS is forced upon the data, overwriting the native one. This is the default option and normally the best course of action,
the declared code comes from the EPSG database and has a wealth of extra information in it, starting from a valid EPSG code, an area of validity, a link back in the
@@ -131,7 +131,7 @@ A coordinate reference system (CRS) defines how georeferenced spatial data relat
a EPSG code for the layers, with this setting the declared one will be advertised, and reprojection from native will happen on the fly as needed (in case a third
CRS is requested, the reprojection will go directly from native to declared)
* **Keep native**: this is a setting that should be used in very rare cases. Keeping native means using the declared one in the capabilities documents, but then
- using the native CRS in all otherrequests (with no reprojection in between, unless explicitly requested from client). This is particularly problematic if the source
+ using the native CRS in all other requests (with no reprojection in between, unless explicitly requested from client). This is particularly problematic if the source
is a shapefile, as the PRJ files lack all the extra information provided by the EPSG database (it will for example break WFS 1.1 and 2.0 SRS declarations in GML output).
The setting meant to be used in cases where WMS is the primary target, and the native and declared CRSs have very small differences, avoiding on the fly reprojection
and datum change.
@@ -139,7 +139,7 @@ A coordinate reference system (CRS) defines how georeferenced spatial data relat
In summary, use **Force Declared** as your primary option, **Reproject from native** only if your source data does not match any EPSG code, and **Keep Native**
only if you really know what you're doing.
-For WMS Server and WFS-NG layers with multiple supported CRS in capability document, the Native CRS can be selected from clicking Find button next to Native SRS field
+For Cascaded WMS and WMTS servers and WFS-NG layers with multiple supported CRSs in the capabilities document, the Native CRS can be selected by clicking the Find button next to the Native SRS field.
.. figure:: img/cascade_srs.png
@@ -257,7 +257,7 @@ a hierarchy where the layer is the root instead.
To enable this functionality, choose the **No** option from the Root Layer in Capabilities section.
-By default this behaviour is inherited from the global WMS service settings (**WMS Global Settings** option).
+By default this behavior is inherited from the global WMS service settings (**WMS Global Settings** option).
Finally, it is possible to override the service settings and force a **Yes** to always include the GeoServer root element.
.. figure:: img/data_layers_root_in_capabilities.png
@@ -342,8 +342,8 @@ WCS Settings
* **Request SRS**—Provides a list of SRSs the layer can be converted to. :guilabel:`New Request SRS` allows you to add an SRS to that list.
* **Interpolation Methods**—Sets the raster rendering process, if applicable.
-* **Formats**—Lists which output formats a layers supports.
-* **GeoSearch**—When enabled, allows the Google Geosearch crawler to index from this particular layer. See `What is a Geo Sitemap? `_ for more information.
+* **Formats**—Lists which output formats a layer supports.
+* **GeoSearch**—When enabled, allows the Google GeoSearch crawler to index from this particular layer. Obsolete since 2012. See `Google Retired Geo Sitemap Support `_ for more information.
KML Format Settings
^^^^^^^^^^^^^^^^^^^
@@ -381,14 +381,14 @@ For each enabled dimension the following configuration options are available:
* **smallest domain value**—Uses the smallest available value from the data
* **biggest domain value**—Uses the biggest available value from the data
* **nearest to the reference value**—Selects the data value closest to the given reference value
- * **reference value**—Tries to use the given reference value as-is, regardless of whether its actually available in the data or not.
+ * **reference value**—Tries to use the given reference value as-is, regardless of whether it's actually available in the data or not.
-* **Reference value**—The default value specifier. Only shown for the default value strategies where its used.
+* **Reference value**—The default value specifier. Only shown for the default value strategies where it's used.
* **Nearest match**—Whether to enable, or not, WMS nearest match support on this dimension. Currently supported only on the time dimension.
* **Nearest match on raw data**—Whether to enable, or not, nearest match support on this dimension for raw data requests (WCS for coverage layers, WFS for feature layers). Currently supported only on the time dimension for WCS service.
* **Acceptable interval**—A maximum search distance from the specified value (available only when nearest match is enabled).
Can be empty (no limit), a single value (symmetric search) or using a ``before/after`` syntax to
- specify an asymmetric search range. Time distances should specified using the ISO period syntax. For example, ``PT1H/PT0H`` allows to search up to one hour before the user specified value,
+ specify an asymmetric search range. Time distances should be specified using the ISO period syntax. For example, ``PT1H/PT0H`` allows to search up to one hour before the user specified value,
but not after.
* **On nearest match fail**—What to do if the nearest match fails the acceptable interval. The default behavior is to use the original value and thus return an empty result, but can also be configured to throw an ``InvalidDimensionValue`` exception instead. In case the value is not set, it defaults to ignoring the nearest match and using the original value. To switch to the opposite default, set the following variable (system, environment, or web.xml, as usual): ``org.geoserver.wms.nearestFail=EXCEPTION``.
* **Begin of data range**—A manually declared start value for the data range. When specified, the ``End of data range`` has to be specified also.
@@ -406,7 +406,7 @@ For time dimension the value must be in ISO 8601 DateTime format ``yyyy-MM-ddThh
Only for the "Reference value" strategy, it is also possible to use ranges or times and ranges of elevation, in the form ``fromValue/toValue``.
Only for the "Reference value" strategy, and limited to times, it's also possible to use relative times like ``P1M/PRESENT``, but caution is given that the reference value
-is copied verbatim into the capabilities document, and as a result, not all client might be recognizing that syntax.
+is copied verbatim into the capabilities document, and as a result, not all clients might recognize that syntax.
.. note:: For more information on specifying times, please see the section on :ref:`wms_time`.
@@ -429,9 +429,9 @@ For each enabled dimension the following configuration options are available:
* **smallest domain value**—Uses the smallest available value from the data
* **biggest domain value**—Uses the biggest available value from the data
* **nearest to the reference value**—Selects the data value closest to the given reference value
- * **reference value**—Tries to use the given reference value as-is, regardless of whether its actually available in the data or not.
+ * **reference value**—Tries to use the given reference value as-is, regardless of whether it's actually available in the data or not.
-* **Reference value**—The default value specifier. Only shown for the default value strategies where its used.
+* **Reference value**—The default value specifier. Only shown for the default value strategies where it's used.
* **Nearest match**—Whether to enable, or not, WMS nearest match support on this dimension.
* **Acceptable interval**—A maximum search distance from the specified value (available only when nearest match is enabled).
Can be empty (no limit), a single value (symmetric search) or using a ``before/after`` syntax to
diff --git a/doc/en/user/source/extensions/mapml/index.rst b/doc/en/user/source/extensions/mapml/index.rst
index 8153803757b..adda4c9c962 100644
--- a/doc/en/user/source/extensions/mapml/index.rst
+++ b/doc/en/user/source/extensions/mapml/index.rst
@@ -286,7 +286,7 @@ The link is generated so that it always work, if the CRS configured for the laye
**MapML Output Format**
-The output image format for the MapML resource should be specified using the format_options parameter with a key called ``mapml-wms-format``. If provided, the provided mime type must be a valid WMS format specifier. If not provided, it defaults to ``image/png``.
+The output image format for the MapML resource should be specified using the format_options parameter with a key called ``mapml-wms-format``. If provided, the provided mime type must be a valid WMS format specifier. If not provided, it defaults to to the format set with the Default Mime Type dropdown under MapML Settings in the Publishing tab of the Edit Layer settings page.
Example::
diff --git a/doc/en/user/source/gettingstarted/group-quickstart/index.rst b/doc/en/user/source/gettingstarted/group-quickstart/index.rst
index fdc44f1329a..07ed66a7235 100644
--- a/doc/en/user/source/gettingstarted/group-quickstart/index.rst
+++ b/doc/en/user/source/gettingstarted/group-quickstart/index.rst
@@ -81,7 +81,7 @@ Create a layer group
#. Locate the :guilabel:`Coordiante Reference Systems` and press :guilabel:`Generate Bounds`.
- Now that layers are listed we they can be used to determine the corodinate reference system and bounds of the layer group.
+ Now that layers are listed we they can be used to determine the coordinate reference system and bounds of the layer group.
.. figure:: images/layers_crs.png
diff --git a/doc/en/user/source/security/tutorials/activedirectory/index.rst b/doc/en/user/source/security/tutorials/activedirectory/index.rst
index a6d4f2d24d6..ca6eb3c376a 100644
--- a/doc/en/user/source/security/tutorials/activedirectory/index.rst
+++ b/doc/en/user/source/security/tutorials/activedirectory/index.rst
@@ -97,9 +97,9 @@ from the LDAP repository and allow access rights to be assigned to those roles.
#. Click the ``Users,Group,Roles`` link located under the ``Security`` section
of the navigation sidebar.
-#. Click the ``Add new link`` under the ``Role Services`` section.
+#. Click the ``Add new`` link under the ``Role Services`` section.
-#. Click the ``LDAP`` option under the ``New Role Service`` section.
+#. Click the ``LDAP`` option under the ``New Role Service`` section.
.. figure:: images/ldap14.jpg
:align: center
@@ -134,4 +134,4 @@ Then we need to a choose a user to authenticate on the server (many LDAP server
#. Save again.
-You should now be able to see and assign the new ActiveDirectory roles wherever an ``Available Roles`` list is shown (for example in the ``Data`` and ``Services`` rules sections.
\ No newline at end of file
+You should now be able to see and assign the new ActiveDirectory roles wherever an ``Available Roles`` list is shown (for example in the ``Data`` and ``Services`` rules sections.
diff --git a/doc/en/user/source/services/wcs/img/wcsrequestbuilder.png b/doc/en/user/source/services/wcs/img/wcsrequestbuilder.png
index 1219ab1b90e..ff70f02e534 100644
Binary files a/doc/en/user/source/services/wcs/img/wcsrequestbuilder.png and b/doc/en/user/source/services/wcs/img/wcsrequestbuilder.png differ
diff --git a/doc/en/user/source/services/wcs/img/wcsrequestbuilder_100.png b/doc/en/user/source/services/wcs/img/wcsrequestbuilder_100.png
index c77aa554314..fd0fa17e4c7 100644
Binary files a/doc/en/user/source/services/wcs/img/wcsrequestbuilder_100.png and b/doc/en/user/source/services/wcs/img/wcsrequestbuilder_100.png differ
diff --git a/doc/en/user/source/services/wcs/img/wcsrequestbuilder_111.png b/doc/en/user/source/services/wcs/img/wcsrequestbuilder_111.png
index 8dd288c7c7c..57bdfc000a6 100644
Binary files a/doc/en/user/source/services/wcs/img/wcsrequestbuilder_111.png and b/doc/en/user/source/services/wcs/img/wcsrequestbuilder_111.png differ
diff --git a/doc/en/user/source/services/wcs/img/wcsrequestbuilder_demo.png b/doc/en/user/source/services/wcs/img/wcsrequestbuilder_demo.png
new file mode 100644
index 00000000000..e9ba148f1d1
Binary files /dev/null and b/doc/en/user/source/services/wcs/img/wcsrequestbuilder_demo.png differ
diff --git a/doc/en/user/source/services/wcs/img/wcsrequestbuilder_xml.png b/doc/en/user/source/services/wcs/img/wcsrequestbuilder_xml.png
index b1399a20803..bbfc2bd97e8 100644
Binary files a/doc/en/user/source/services/wcs/img/wcsrequestbuilder_xml.png and b/doc/en/user/source/services/wcs/img/wcsrequestbuilder_xml.png differ
diff --git a/doc/en/user/source/services/wcs/requestbuilder.rst b/doc/en/user/source/services/wcs/requestbuilder.rst
index cdaf9520ef6..817a940fa81 100644
--- a/doc/en/user/source/services/wcs/requestbuilder.rst
+++ b/doc/en/user/source/services/wcs/requestbuilder.rst
@@ -67,12 +67,19 @@ Once selected, the remainder of the form will be displayed. The following option
There is also a link for :guilabel:`Describe coverage` next to the :guilabel:`Coverage name` which will execute a :ref:`WCS DescribeCoverage ` request for the particular layer.
-At the bottom of the form are two buttons for form submission:
+At the bottom of the form are three buttons for form submission:
-* :guilabel:`Get Coverage`—Executes a GetCoverage request using the parameters in the form. This will usually result in a file which can be downloaded.
+* :guilabel:`Get Coverage in Demo Requests`—Opens the :ref:`demos_demorequests` page with the URL and XML Request filled out.
-* :guilabel:`Generate GetCoverage XML`—Generates the GetCoverage request using the parameters in the form and then, instead of executing it, outputs the request itself to the screen.
+* :guilabel:`Get Coverage in New Page`—Executes a GetCoverage request using the parameters in the form. This will usually result in a file which can be displayed or downloaded.
+* :guilabel:`Generate GetCoverage XML`—Generates the GetCoverage XML request using the parameters in the form and then, instead of executing it, outputs the request itself to the screen.
+
+.. figure:: img/wcsrequestbuilder_demo.png
+
+ Get Coverage request in Demo Requests
+
.. figure:: img/wcsrequestbuilder_xml.png
WCS request builder showing GetCoverage XML
+
diff --git a/doc/en/user/source/services/wps/images/requestbuilder_demo.png b/doc/en/user/source/services/wps/images/requestbuilder_demo.png
new file mode 100644
index 00000000000..10d1aee9038
Binary files /dev/null and b/doc/en/user/source/services/wps/images/requestbuilder_demo.png differ
diff --git a/doc/en/user/source/services/wps/images/requestbuilderblank.png b/doc/en/user/source/services/wps/images/requestbuilderblank.png
index 90857b1c9c6..a69e1038503 100644
Binary files a/doc/en/user/source/services/wps/images/requestbuilderblank.png and b/doc/en/user/source/services/wps/images/requestbuilderblank.png differ
diff --git a/doc/en/user/source/services/wps/images/requestbuilderrequest.png b/doc/en/user/source/services/wps/images/requestbuilderrequest.png
index ea4a91cb39e..3d57e34ed0a 100644
Binary files a/doc/en/user/source/services/wps/images/requestbuilderrequest.png and b/doc/en/user/source/services/wps/images/requestbuilderrequest.png differ
diff --git a/doc/en/user/source/services/wps/images/requestbuilderresponse.png b/doc/en/user/source/services/wps/images/requestbuilderresponse.png
index 0fd28226cc7..455d34f357f 100644
Binary files a/doc/en/user/source/services/wps/images/requestbuilderresponse.png and b/doc/en/user/source/services/wps/images/requestbuilderresponse.png differ
diff --git a/doc/en/user/source/services/wps/images/requestbuildertoppstates.png b/doc/en/user/source/services/wps/images/requestbuildertoppstates.png
index 684fbb43975..3e28fe5d215 100644
Binary files a/doc/en/user/source/services/wps/images/requestbuildertoppstates.png and b/doc/en/user/source/services/wps/images/requestbuildertoppstates.png differ
diff --git a/doc/en/user/source/services/wps/requestbuilder.rst b/doc/en/user/source/services/wps/requestbuilder.rst
index 3209b8dcd8d..01aa606209b 100644
--- a/doc/en/user/source/services/wps/requestbuilder.rst
+++ b/doc/en/user/source/services/wps/requestbuilder.rst
@@ -1 +1,68 @@
-.. _wps_request_builder:
WPS Request Builder
===================
The GeoServer WPS extension includes a request builder for testing out WPS processes through the :ref:`web_admin`. This tool can also be used to demonstrate processes, and construct your own examples.
Accessing the request builder
---------------------------------
To access the WPS Request Builder:
#. Navigate to the main :ref:`web_admin`.
#. Click on the :guilabel:`Demos` link on the left side.
#. Select :guilabel:`WPS Request Builder` from the list of demos.
.. figure:: images/demospage.png
:align: center
*WPS request builder in the list of demos*
Using the request builder
-------------------------
The WPS Request Builder primarily consists of a selection box listing all of the available processes, and two buttons, one to submit the WPS request, and another to display what the POST request looks like.
.. figure:: images/requestbuilderblank.png
:align: center
*Blank WPS request builder form*
The display changes depending on the process and input selected. JTS processes have available as inputs any of a GML/WKT-based feature collection, URL reference, or subprocess. GeoServer-specific processes have all these as options and also includes the ability to choose a GeoServer layer as input.
For each process, a form will display based on the required and optional parameters associated with that process, if any.
.. figure:: images/requestbuildertoppstates.png
:align: center
*WPS request builder form to determine the bounds of topp:states*
To see the process as a POST request, click the :guilabel:`Generate XML from process inputs/outputs` button.
.. figure:: images/requestbuilderrequest.png
:align: center
*Raw WPS POST request for the above process*
To execute the process, click the :guilabel:`Execute Process` button. The response will be displayed in a window or
.. figure:: images/requestbuilderresponse.png
:align: center
*WPS server response*
\ No newline at end of file
+.. _wps_request_builder:
+
+WPS Request Builder
+===================
+
+The GeoServer WPS extension includes a request builder for testing out WPS processes through the :ref:`web_admin`. This tool can also be used to demonstrate processes, and construct your own examples.
+
+Accessing the request builder
+---------------------------------
+
+To access the WPS Request Builder:
+
+#. Navigate to the main :ref:`web_admin`.
+
+#. Click on the :guilabel:`Demos` link on the left side.
+
+
+#. Select :guilabel:`WPS Request Builder` from the list of demos.
+
+.. figure:: images/demospage.png
+ :align: center
+
+ *WPS request builder in the list of demos*
+
+Using the request builder
+-------------------------
+
+The WPS Request Builder primarily consists of a selection box listing all of the available processes, and two buttons, one to submit the WPS request, and another to display what the POST request looks like.
+
+.. figure:: images/requestbuilderblank.png
+ :align: center
+
+ *Blank WPS request builder form*
+
+The display changes depending on the process and input selected. JTS processes have available as inputs any of a GML/WKT-based feature collection, URL reference, or subprocess. GeoServer-specific processes have all these as options and also includes the ability to choose a GeoServer layer as input.
+
+For each process, a form will display based on the required and optional parameters associated with that process, if any.
+
+.. figure:: images/requestbuildertoppstates.png
+ :align: center
+
+ *WPS request builder form to determine the bounds of topp:states*
+
+To see the process as a POST request, click the :guilabel:`Generate XML from process inputs/outputs` button.
+
+.. figure:: images/requestbuilderrequest.png
+ :align: center
+
+ *Raw WPS POST request for the above process*
+
+To execute the process, click the :guilabel:`Execute Process in New Page` button. The response will be displayed in the window.
+
+.. figure:: images/requestbuilderresponse.png
+ :align: center
+
+ *WPS server response (Browsers may render differently)*
+
+To see and execute the request in :ref:`demos_demorequests`, click the :guilabel:`Execute Process in Demo Requests` button.
+
+
+.. figure:: images/requestbuilder_demo.png
+ :align: center
+
+ *Request and Response shown in Demo Requests*
+
+
+
+
\ No newline at end of file
diff --git a/src/community/README.md b/src/community/README.md
new file mode 100644
index 00000000000..bbd0ee0c07a
--- /dev/null
+++ b/src/community/README.md
@@ -0,0 +1,33 @@
+# Community modules
+
+The root of all the community modules.
+
+## Assembly definitions
+
+Rules to follow in order to create a zip for a module:
+
+* Add an ``assembly.xml`` descriptor to the module
+* Add the ``false`` property to the module (this activates assembly generation)
+* If assembly needs to pick files from multiple independent modules, create a dedicated assembly module for it (e.g., check ``backup-restore/assembly`` that depends on the others)
+* The assembly process will automatically copy the dependencies into ``target/dependency``, depending on the nature of the module you might have to add the generated module jar found in ``target`` too (see existing ``assembly.xml`` files for reference).
+
+## Assembly execution
+
+To assemble the zip files of extensions, run the following:
+
+```
+mvn clean install -DskipTests -PcommunityRelease,assembly -T1C -nsu -fae
+```
+
+If the assembly of a particular module, or group of modules, is desired, then use the associated profile, e.g.:
+
+```
+mvn clean install -DskipTests -PcolorMap,assembly -T1C -nsu -fae
+```
+
+It is important to run at least one maven phase (e.g. ``install``) for the assembly machinery to work, e.g., calling a goal directly will not work:
+
+```
+mvn assembly:single -DskipTests -PcolorMap,assembly -T1C -nsu -fae
+```
+
diff --git a/src/community/backup-restore/assembly/pom.xml b/src/community/backup-restore/assembly/pom.xml
new file mode 100644
index 00000000000..850ce350cac
--- /dev/null
+++ b/src/community/backup-restore/assembly/pom.xml
@@ -0,0 +1,45 @@
+
+
+
+ 4.0.0
+
+
+ org.geoserver.community
+ gs-backup-restore
+ 2.26-SNAPSHOT
+
+
+ org.geoserver.community.backuprestore
+ gs-backup-restore-assembly
+ jar
+ Assembly module for backup-restore
+
+
+
+
+ org.geoserver.community.backuprestore
+ gs-backup-restore-core
+ ${project.version}
+
+
+
+ org.geoserver.community.backuprestore
+ gs-backup-restore-rest
+ ${project.version}
+
+
+
+ org.geoserver.community.backuprestore
+ gs-backup-restore-web
+ ${project.version}
+
+
+
+ org.geoserver.community.backuprestore
+ gs-backup-restore-extension
+ ${project.version}
+
+
+
+
+
diff --git a/src/community/release/ext-backup-restore.xml b/src/community/backup-restore/assembly/src/assembly/assembly.xml
similarity index 97%
rename from src/community/release/ext-backup-restore.xml
rename to src/community/backup-restore/assembly/src/assembly/assembly.xml
index 5779d17c16c..3b9eb4e809b 100644
--- a/src/community/release/ext-backup-restore.xml
+++ b/src/community/backup-restore/assembly/src/assembly/assembly.xml
@@ -6,7 +6,7 @@
false
- release/target/dependency
+ target/dependency
gs-backup-restore-web*.jar
diff --git a/src/community/backup-restore/pom.xml b/src/community/backup-restore/pom.xml
index 352d10839e0..b790c674150 100644
--- a/src/community/backup-restore/pom.xml
+++ b/src/community/backup-restore/pom.xml
@@ -19,6 +19,7 @@
rest
extension
web
+ assembly
@@ -68,31 +69,4 @@
-
-
-
- ${basedir}/src/test/resources
-
- **/*
-
-
-
-
-
- maven-dependency-plugin
-
-
- install
-
- copy-dependencies
-
-
- ${project.build.directory}/lib
-
-
-
-
-
-
-
diff --git a/src/community/cog/cog-azure/pom.xml b/src/community/cog/cog-azure/pom.xml
new file mode 100644
index 00000000000..44801761452
--- /dev/null
+++ b/src/community/cog/cog-azure/pom.xml
@@ -0,0 +1,33 @@
+
+
+
+ 4.0.0
+
+
+ org.geoserver.community
+ gs-cog
+ 2.26-SNAPSHOT
+
+
+ org.geoserver.community
+ gs-cog-azure
+ jar
+ COG support module - Azure
+
+
+
+ org.geoserver.community
+ gs-cog-core
+ ${project.version}
+
+
+ it.geosolutions.imageio-ext
+ imageio-ext-cog-rangereader-azure
+ ${imageio-ext.version}
+
+
+
diff --git a/src/community/release/ext-cog.xml b/src/community/cog/cog-azure/src/assembly/assembly.xml
similarity index 94%
rename from src/community/release/ext-cog.xml
rename to src/community/cog/cog-azure/src/assembly/assembly.xml
index 80d781fe9ec..32434ab852b 100644
--- a/src/community/release/ext-cog.xml
+++ b/src/community/cog/cog-azure/src/assembly/assembly.xml
@@ -1,12 +1,12 @@
- cog-plugin
+ cog-azure-plugin
zip
false
- release/target/dependency
+ target/dependency
annotations-2.*.jar
diff --git a/src/community/cog/src/test/java/org/geoserver/rest/catalog/CogAzureRemoteHarvestOnlineTest.java b/src/community/cog/cog-azure/src/test/java/org/geoserver/rest/catalog/CogAzureRemoteHarvestOnlineTest.java
similarity index 100%
rename from src/community/cog/src/test/java/org/geoserver/rest/catalog/CogAzureRemoteHarvestOnlineTest.java
rename to src/community/cog/cog-azure/src/test/java/org/geoserver/rest/catalog/CogAzureRemoteHarvestOnlineTest.java
diff --git a/src/community/cog/cog-azure/src/test/java/org/geoserver/rest/catalog/test-data/azureempty.zip b/src/community/cog/cog-azure/src/test/java/org/geoserver/rest/catalog/test-data/azureempty.zip
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/src/community/cog/cog-core/pom.xml b/src/community/cog/cog-core/pom.xml
new file mode 100644
index 00000000000..f6effde00f4
--- /dev/null
+++ b/src/community/cog/cog-core/pom.xml
@@ -0,0 +1,21 @@
+
+
+
+ 4.0.0
+
+
+ org.geoserver.community
+ gs-cog
+ 2.26-SNAPSHOT
+
+
+ org.geoserver.community
+ gs-cog-core
+ jar
+ COG support module - core
+
+
diff --git a/src/community/cog/src/main/java/applicationContext.xml b/src/community/cog/cog-core/src/main/java/applicationContext.xml
similarity index 100%
rename from src/community/cog/src/main/java/applicationContext.xml
rename to src/community/cog/cog-core/src/main/java/applicationContext.xml
diff --git a/src/community/cog/src/main/java/org/geoserver/cog/CogEncryptedFieldsProvider.java b/src/community/cog/cog-core/src/main/java/org/geoserver/cog/CogEncryptedFieldsProvider.java
similarity index 100%
rename from src/community/cog/src/main/java/org/geoserver/cog/CogEncryptedFieldsProvider.java
rename to src/community/cog/cog-core/src/main/java/org/geoserver/cog/CogEncryptedFieldsProvider.java
diff --git a/src/community/cog/src/main/java/org/geoserver/cog/CogSettings.java b/src/community/cog/cog-core/src/main/java/org/geoserver/cog/CogSettings.java
similarity index 82%
rename from src/community/cog/src/main/java/org/geoserver/cog/CogSettings.java
rename to src/community/cog/cog-core/src/main/java/org/geoserver/cog/CogSettings.java
index 909355d16c0..d964315e2db 100644
--- a/src/community/cog/src/main/java/org/geoserver/cog/CogSettings.java
+++ b/src/community/cog/cog-core/src/main/java/org/geoserver/cog/CogSettings.java
@@ -4,10 +4,6 @@
*/
package org.geoserver.cog;
-import it.geosolutions.imageioimpl.plugins.cog.AzureRangeReader;
-import it.geosolutions.imageioimpl.plugins.cog.GSRangeReader;
-import it.geosolutions.imageioimpl.plugins.cog.HttpRangeReader;
-import it.geosolutions.imageioimpl.plugins.cog.S3RangeReader;
import java.io.Serializable;
/** Basic Cog Settings such as RangeReader and caching capabilities */
@@ -32,7 +28,7 @@ public enum RangeReaderType {
@Override
String getRangeReaderClassName() {
- return HttpRangeReader.class.getName();
+ return "it.geosolutions.imageioimpl.plugins.cog.HttpRangeReader";
}
},
/** Reader using the S3 API (with security support and whatnot) */
@@ -40,7 +36,7 @@ String getRangeReaderClassName() {
@Override
String getRangeReaderClassName() {
- return S3RangeReader.class.getName();
+ return "it.geosolutions.imageioimpl.plugins.cog.S3RangeReader";
}
},
/** Reader using the Google Storage API (again, with security support) */
@@ -48,7 +44,7 @@ String getRangeReaderClassName() {
@Override
String getRangeReaderClassName() {
- return GSRangeReader.class.getName();
+ return "it.geosolutions.imageioimpl.plugins.cog.GSRangeReader";
}
},
/** Reader using the Azure API (again, with security support) */
@@ -56,7 +52,7 @@ String getRangeReaderClassName() {
@Override
String getRangeReaderClassName() {
- return AzureRangeReader.class.getName();
+ return "it.geosolutions.imageioimpl.plugins.cog.AzureRangeReader";
}
};
;
diff --git a/src/community/cog/src/main/java/org/geoserver/cog/CogSettingsInitializer.java b/src/community/cog/cog-core/src/main/java/org/geoserver/cog/CogSettingsInitializer.java
similarity index 100%
rename from src/community/cog/src/main/java/org/geoserver/cog/CogSettingsInitializer.java
rename to src/community/cog/cog-core/src/main/java/org/geoserver/cog/CogSettingsInitializer.java
diff --git a/src/community/cog/src/main/java/org/geoserver/cog/CogSettingsStore.java b/src/community/cog/cog-core/src/main/java/org/geoserver/cog/CogSettingsStore.java
similarity index 100%
rename from src/community/cog/src/main/java/org/geoserver/cog/CogSettingsStore.java
rename to src/community/cog/cog-core/src/main/java/org/geoserver/cog/CogSettingsStore.java
diff --git a/src/community/cog/src/main/java/org/geoserver/cog/CogSettingsXStreamInitializer.java b/src/community/cog/cog-core/src/main/java/org/geoserver/cog/CogSettingsXStreamInitializer.java
similarity index 100%
rename from src/community/cog/src/main/java/org/geoserver/cog/CogSettingsXStreamInitializer.java
rename to src/community/cog/cog-core/src/main/java/org/geoserver/cog/CogSettingsXStreamInitializer.java
diff --git a/src/community/cog/src/main/java/org/geoserver/cog/CoverageReaderCogInputObjectConverter.java b/src/community/cog/cog-core/src/main/java/org/geoserver/cog/CoverageReaderCogInputObjectConverter.java
similarity index 100%
rename from src/community/cog/src/main/java/org/geoserver/cog/CoverageReaderCogInputObjectConverter.java
rename to src/community/cog/cog-core/src/main/java/org/geoserver/cog/CoverageReaderCogInputObjectConverter.java
diff --git a/src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogInput.html b/src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogInput.html
similarity index 100%
rename from src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogInput.html
rename to src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogInput.html
diff --git a/src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogInput.java b/src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogInput.java
similarity index 100%
rename from src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogInput.java
rename to src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogInput.java
diff --git a/src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogRasterEditPanel.html b/src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogRasterEditPanel.html
similarity index 100%
rename from src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogRasterEditPanel.html
rename to src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogRasterEditPanel.html
diff --git a/src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogRasterEditPanel.java b/src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogRasterEditPanel.java
similarity index 100%
rename from src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogRasterEditPanel.java
rename to src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogRasterEditPanel.java
diff --git a/src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsPanel.html b/src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsPanel.html
similarity index 100%
rename from src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsPanel.html
rename to src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsPanel.html
diff --git a/src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsPanel.java b/src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsPanel.java
similarity index 100%
rename from src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsPanel.java
rename to src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsPanel.java
diff --git a/src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsPluginPanel.html b/src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsPluginPanel.html
similarity index 100%
rename from src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsPluginPanel.html
rename to src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsPluginPanel.html
diff --git a/src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsPluginPanel.java b/src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsPluginPanel.java
similarity index 100%
rename from src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsPluginPanel.java
rename to src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsPluginPanel.java
diff --git a/src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsStorePanel.html b/src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsStorePanel.html
similarity index 100%
rename from src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsStorePanel.html
rename to src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsStorePanel.html
diff --git a/src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsStorePanel.java b/src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsStorePanel.java
similarity index 100%
rename from src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsStorePanel.java
rename to src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogSettingsStorePanel.java
diff --git a/src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogUrlParamPanel.html b/src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogUrlParamPanel.html
similarity index 100%
rename from src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogUrlParamPanel.html
rename to src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogUrlParamPanel.html
diff --git a/src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogUrlParamPanel.java b/src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogUrlParamPanel.java
similarity index 100%
rename from src/community/cog/src/main/java/org/geoserver/web/data/store/cog/panel/CogUrlParamPanel.java
rename to src/community/cog/cog-core/src/main/java/org/geoserver/web/data/store/cog/panel/CogUrlParamPanel.java
diff --git a/src/community/cog/src/main/resources/GeoServerApplication.properties b/src/community/cog/cog-core/src/main/resources/GeoServerApplication.properties
similarity index 100%
rename from src/community/cog/src/main/resources/GeoServerApplication.properties
rename to src/community/cog/cog-core/src/main/resources/GeoServerApplication.properties
diff --git a/src/community/cog/src/main/resources/GeoServerApplication_fr.properties b/src/community/cog/cog-core/src/main/resources/GeoServerApplication_fr.properties
similarity index 100%
rename from src/community/cog/src/main/resources/GeoServerApplication_fr.properties
rename to src/community/cog/cog-core/src/main/resources/GeoServerApplication_fr.properties
diff --git a/src/community/cog/cog-google/pom.xml b/src/community/cog/cog-google/pom.xml
new file mode 100644
index 00000000000..a72c06d619c
--- /dev/null
+++ b/src/community/cog/cog-google/pom.xml
@@ -0,0 +1,33 @@
+
+
+
+ 4.0.0
+
+
+ org.geoserver.community
+ gs-cog
+ 2.26-SNAPSHOT
+
+
+ org.geoserver.community
+ gs-cog-google
+ jar
+ COG support module - Google Storage
+
+
+
+ org.geoserver.community
+ gs-cog-core
+ ${project.version}
+
+
+ it.geosolutions.imageio-ext
+ imageio-ext-cog-rangereader-gs
+ ${imageio-ext.version}
+
+
+
diff --git a/src/community/cog/cog-google/src/assembly/assembly.xml b/src/community/cog/cog-google/src/assembly/assembly.xml
new file mode 100644
index 00000000000..711856b6ae3
--- /dev/null
+++ b/src/community/cog/cog-google/src/assembly/assembly.xml
@@ -0,0 +1,31 @@
+
+ cog-google-plugin
+
+ zip
+
+ false
+
+
+ target/dependency
+
+
+ gs-cog*.jar
+ imageio-ext-*rangereader*.jar
+ *google*.jar
+ guava*.jar
+ checker-qual*.jar
+ error_prone_annotations*.jar
+ objc-annotations*.jar
+ gson*.jar
+ auto-value-annotations*
+ gax*
+ api-common*
+ annotation-api*
+ grpc-context*
+ opencensus*
+ protobuf-java*
+ threetenbp*
+
+
+
+
diff --git a/src/community/cog/src/test/java/org/geoserver/rest/catalog/CogGSRemoteHarvestOnlineTest.java b/src/community/cog/cog-google/src/test/java/org/geoserver/rest/catalog/CogGSRemoteHarvestOnlineTest.java
similarity index 100%
rename from src/community/cog/src/test/java/org/geoserver/rest/catalog/CogGSRemoteHarvestOnlineTest.java
rename to src/community/cog/cog-google/src/test/java/org/geoserver/rest/catalog/CogGSRemoteHarvestOnlineTest.java
diff --git a/src/community/cog/cog-google/src/test/java/org/geoserver/rest/catalog/test-data/gsempty.zip b/src/community/cog/cog-google/src/test/java/org/geoserver/rest/catalog/test-data/gsempty.zip
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/src/community/cog/cog-http/pom.xml b/src/community/cog/cog-http/pom.xml
new file mode 100644
index 00000000000..2fc84a3a2b0
--- /dev/null
+++ b/src/community/cog/cog-http/pom.xml
@@ -0,0 +1,33 @@
+
+
+
+ 4.0.0
+
+
+ org.geoserver.community
+ gs-cog
+ 2.26-SNAPSHOT
+
+
+ org.geoserver.community
+ gs-cog-http
+ jar
+ COG support module - Plain HTTP
+
+
+
+ org.geoserver.community
+ gs-cog-core
+ ${project.version}
+
+
+ it.geosolutions.imageio-ext
+ imageio-ext-cog-rangereader-http
+ ${imageio-ext.version}
+
+
+
diff --git a/src/community/cog/cog-http/src/assembly/assembly.xml b/src/community/cog/cog-http/src/assembly/assembly.xml
new file mode 100644
index 00000000000..250bee6e13e
--- /dev/null
+++ b/src/community/cog/cog-http/src/assembly/assembly.xml
@@ -0,0 +1,45 @@
+
+ cog-http-plugin
+
+ zip
+
+ false
+
+
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
+
+
+ annotations-2.*.jar
+ auth-2.*.jar
+ aws-*-2.*.jar
+ azure-storage*.jar
+ client-runtime*.jar
+ gs-cog*.jar
+ http-client-spi-2*.jar
+ http*-osgi*.jar
+ imageio-ext-*rangereader*.jar
+ jackson-datatype*.jar
+ jackson-module*.jar
+ kotlin-stdlib*.jar
+ *netty*.jar
+ okhttp*.jar
+ okio*.jar
+ profiles-2.*.jar
+ protocol-core-2.*.jar
+ reactive-streams*.jar
+ regions-2.*.jar
+ rxjava*.jar
+ s3-2.*.jar
+ sdk-core-2.*.jar
+ utils-2.*.jar
+
+
+
+
diff --git a/src/community/cog/cog-s3/pom.xml b/src/community/cog/cog-s3/pom.xml
new file mode 100644
index 00000000000..d82c79151d6
--- /dev/null
+++ b/src/community/cog/cog-s3/pom.xml
@@ -0,0 +1,33 @@
+
+
+
+ 4.0.0
+
+
+ org.geoserver.community
+ gs-cog
+ 2.26-SNAPSHOT
+
+
+ org.geoserver.community
+ gs-cog-s3
+ jar
+ COG support module - Amazon S3
+
+
+
+ org.geoserver.community
+ gs-cog-core
+ ${project.version}
+
+
+ it.geosolutions.imageio-ext
+ imageio-ext-cog-rangereader-s3
+ ${imageio-ext.version}
+
+
+
diff --git a/src/community/cog/cog-s3/src/assembly/assembly.xml b/src/community/cog/cog-s3/src/assembly/assembly.xml
new file mode 100644
index 00000000000..305c1a95c5c
--- /dev/null
+++ b/src/community/cog/cog-s3/src/assembly/assembly.xml
@@ -0,0 +1,51 @@
+
+ cog-s3-plugin
+
+ zip
+
+ false
+
+
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
+
+
+ annotations-2.*.jar
+ auth-2.*.jar
+ aws-*-2.*.jar
+ azure-storage*.jar
+ client-runtime*.jar
+ gs-cog*.jar
+ http-client-spi-2*.jar
+ http*-osgi*.jar
+ imageio-ext-*rangereader*.jar
+ jackson-datatype*.jar
+ jackson-module*.jar
+ kotlin-stdlib*.jar
+ *netty*.jar
+ okhttp*.jar
+ okio*.jar
+ profiles-2.*.jar
+ protocol-core-2.*.jar
+ reactive-streams*.jar
+ regions-2.*.jar
+ rxjava*.jar
+ s3-2.*.jar
+ sdk-core-2.*.jar
+ utils-2.*.jar
+ checksums-*2*.jar
+ crt-core-*-2*.jar
+ endpoints-spi-2*.jar
+ http-auth-*2*.jar
+ identity-spi*.jar
+ metrics-spi-2.*.jar
+
+
+
+
diff --git a/src/community/cog/src/test/java/org/geoserver/rest/catalog/CogRemoteHarvestOnlineTest.java b/src/community/cog/cog-s3/src/test/java/org/geoserver/rest/catalog/CogRemoteHarvestOnlineTest.java
similarity index 100%
rename from src/community/cog/src/test/java/org/geoserver/rest/catalog/CogRemoteHarvestOnlineTest.java
rename to src/community/cog/cog-s3/src/test/java/org/geoserver/rest/catalog/CogRemoteHarvestOnlineTest.java
diff --git a/src/community/cog/cog-s3/src/test/java/org/geoserver/rest/catalog/test-data/empty.zip b/src/community/cog/cog-s3/src/test/java/org/geoserver/rest/catalog/test-data/empty.zip
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/src/community/cog/pom.xml b/src/community/cog/pom.xml
index e3049119fcb..ae1192469e1 100644
--- a/src/community/cog/pom.xml
+++ b/src/community/cog/pom.xml
@@ -15,9 +15,17 @@
org.geoserver.community
gs-cog
- jar
+ pom
COG support module
+
+ cog-core
+ cog-http
+ cog-azure
+ cog-s3
+ cog-google
+
+
org.geotools
@@ -33,26 +41,6 @@
imageio-ext-cog-reader
${imageio-ext.version}
-
- it.geosolutions.imageio-ext
- imageio-ext-cog-rangereader-s3
- ${imageio-ext.version}
-
-
- it.geosolutions.imageio-ext
- imageio-ext-cog-rangereader-gs
- ${imageio-ext.version}
-
-
- it.geosolutions.imageio-ext
- imageio-ext-cog-rangereader-azure
- ${imageio-ext.version}
-
-
- it.geosolutions.imageio-ext
- imageio-ext-cog-rangereader-http
- ${imageio-ext.version}
-
org.geoserver
gs-restconfig
diff --git a/src/community/cog/src/test/java/org/geoserver/rest/catalog/test-data/azureempty.zip b/src/community/cog/src/test/java/org/geoserver/rest/catalog/test-data/azureempty.zip
deleted file mode 100644
index 20ee0eb0e53..00000000000
Binary files a/src/community/cog/src/test/java/org/geoserver/rest/catalog/test-data/azureempty.zip and /dev/null differ
diff --git a/src/community/cog/src/test/java/org/geoserver/rest/catalog/test-data/empty.zip b/src/community/cog/src/test/java/org/geoserver/rest/catalog/test-data/empty.zip
deleted file mode 100644
index e9c87bb9856..00000000000
Binary files a/src/community/cog/src/test/java/org/geoserver/rest/catalog/test-data/empty.zip and /dev/null differ
diff --git a/src/community/cog/src/test/java/org/geoserver/rest/catalog/test-data/gsempty.zip b/src/community/cog/src/test/java/org/geoserver/rest/catalog/test-data/gsempty.zip
deleted file mode 100644
index 230273e71e9..00000000000
Binary files a/src/community/cog/src/test/java/org/geoserver/rest/catalog/test-data/gsempty.zip and /dev/null differ
diff --git a/src/community/release/ext-colormap.xml b/src/community/colormap/src/assembly/assembly.xml
similarity index 74%
rename from src/community/release/ext-colormap.xml
rename to src/community/colormap/src/assembly/assembly.xml
index 7771a7e541b..0c29af9911b 100644
--- a/src/community/release/ext-colormap.xml
+++ b/src/community/colormap/src/assembly/assembly.xml
@@ -6,10 +6,10 @@
false
- release/target/dependency
+ target
- gs-colormap*.jar
+ ${artifactId}-${project.version}.jar
diff --git a/src/community/release/ext-cov-json.xml b/src/community/cov-json/src/assembly/assembly.xml
similarity index 62%
rename from src/community/release/ext-cov-json.xml
rename to src/community/cov-json/src/assembly/assembly.xml
index 0a08ad27a33..fb0b26c84e5 100644
--- a/src/community/release/ext-cov-json.xml
+++ b/src/community/cov-json/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-cov-json*.jar
diff --git a/src/community/release/ext-datadir-catalog-loader.xml b/src/community/datadir-catalog-loader/src/assembly/assembly.xml
similarity index 51%
rename from src/community/release/ext-datadir-catalog-loader.xml
rename to src/community/datadir-catalog-loader/src/assembly/assembly.xml
index 8c50d1e92c5..d0d71615ec9 100644
--- a/src/community/release/ext-datadir-catalog-loader.xml
+++ b/src/community/datadir-catalog-loader/src/assembly/assembly.xml
@@ -1,12 +1,19 @@
- dataidr-catalog-loader-plugin
+ datadir-catalog-loader-plugin
zip
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-datadir-catalog-loader*.jar
diff --git a/src/community/release/ext-dds.xml b/src/community/dds/src/assembly/assembly.xml
similarity index 58%
rename from src/community/release/ext-dds.xml
rename to src/community/dds/src/assembly/assembly.xml
index f38c4a77913..624e7759f59 100644
--- a/src/community/release/ext-dds.xml
+++ b/src/community/dds/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
worldwind*
diff --git a/src/community/release/ext-dyndimension.xml b/src/community/dyndimension/src/assembly/assembly.xml
similarity index 57%
rename from src/community/release/ext-dyndimension.xml
rename to src/community/dyndimension/src/assembly/assembly.xml
index 093329036b2..bfc8c20a8d8 100644
--- a/src/community/release/ext-dyndimension.xml
+++ b/src/community/dyndimension/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-dyndimension*.jar
diff --git a/src/community/release/ext-elasticsearch.xml b/src/community/elasticsearch/src/assembly/assembly.xml
similarity index 83%
rename from src/community/release/ext-elasticsearch.xml
rename to src/community/elasticsearch/src/assembly/assembly.xml
index dcea443ae3a..f4e95e33067 100644
--- a/src/community/release/ext-elasticsearch.xml
+++ b/src/community/elasticsearch/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
commons-math3*
diff --git a/src/community/release/ext-features-autopopulate.xml b/src/community/features-autopopulate/features-autopopulate-core/src/assembly/assembly.xml
similarity index 58%
rename from src/community/release/ext-features-autopopulate.xml
rename to src/community/features-autopopulate/features-autopopulate-core/src/assembly/assembly.xml
index 03d9b23a3be..a9e83ef5e1f 100644
--- a/src/community/release/ext-features-autopopulate.xml
+++ b/src/community/features-autopopulate/features-autopopulate-core/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-features-autopopulate*.jar
diff --git a/src/community/features-templating/features-templating-assembly/pom.xml b/src/community/features-templating/features-templating-assembly/pom.xml
new file mode 100644
index 00000000000..646b1ecbd29
--- /dev/null
+++ b/src/community/features-templating/features-templating-assembly/pom.xml
@@ -0,0 +1,44 @@
+
+
+ 4.0.0
+
+ org.geoserver.community
+ gs-features-templating
+ 2.26-SNAPSHOT
+
+
+ org.geoserver.community
+ gs-features-templating-assembly
+ jar
+ Features Templating Assembly
+ Features templating zip package builder
+
+
+
+ org.geoserver.community
+ gs-features-templating-core
+ ${project.version}
+
+
+ org.geoserver.community
+ gs-features-templating-ogcapi
+ ${project.version}
+
+
+ org.geoserver.community
+ gs-features-templating-ows
+ ${project.version}
+
+
+ org.geoserver.community
+ gs-features-templating-rest
+ ${project.version}
+
+
+ org.geoserver.community
+ gs-features-templating-web
+ ${project.version}
+
+
+
+
diff --git a/src/community/release/ext-features-templating.xml b/src/community/features-templating/features-templating-assembly/src/assembly/assembly.xml
similarity index 89%
rename from src/community/release/ext-features-templating.xml
rename to src/community/features-templating/features-templating-assembly/src/assembly/assembly.xml
index ecb64962d56..198cccff997 100644
--- a/src/community/release/ext-features-templating.xml
+++ b/src/community/features-templating/features-templating-assembly/src/assembly/assembly.xml
@@ -6,7 +6,7 @@
false
- release/target/dependency
+ target/dependency
gs-features-templating*.jar
diff --git a/src/community/features-templating/pom.xml b/src/community/features-templating/pom.xml
index 482ae31aeb4..763acb73d31 100644
--- a/src/community/features-templating/pom.xml
+++ b/src/community/features-templating/pom.xml
@@ -33,6 +33,7 @@
features-templating-ogcapi
features-templating-web
features-templating-rest
+ features-templating-assembly
diff --git a/src/community/flatgeobuf/pom.xml b/src/community/flatgeobuf/pom.xml
index 55fb117eafa..e3a56f60974 100644
--- a/src/community/flatgeobuf/pom.xml
+++ b/src/community/flatgeobuf/pom.xml
@@ -29,5 +29,4 @@
${gt.version}
-
diff --git a/src/community/release/ext-flatgeobuf.xml b/src/community/flatgeobuf/src/assembly/assembly.xml
similarity index 67%
rename from src/community/release/ext-flatgeobuf.xml
rename to src/community/flatgeobuf/src/assembly/assembly.xml
index 435725ee447..4dedf8251ad 100644
--- a/src/community/release/ext-flatgeobuf.xml
+++ b/src/community/flatgeobuf/src/assembly/assembly.xml
@@ -5,8 +5,15 @@
false
+
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
- release/target/dependency
+ target/dependency
gs-flatgeobuf*.jar
diff --git a/src/community/gdal/gdal-wcs/pom.xml b/src/community/gdal/gdal-wcs/pom.xml
index 9d42a5a8b69..f699ab64c76 100644
--- a/src/community/gdal/gdal-wcs/pom.xml
+++ b/src/community/gdal/gdal-wcs/pom.xml
@@ -50,5 +50,4 @@
test
-
diff --git a/src/community/release/ext-gdal-wcs.xml b/src/community/gdal/gdal-wcs/src/assembly/assembly.xml
similarity index 59%
rename from src/community/release/ext-gdal-wcs.xml
rename to src/community/gdal/gdal-wcs/src/assembly/assembly.xml
index f56068c9a0f..3768d94e3f7 100644
--- a/src/community/release/ext-gdal-wcs.xml
+++ b/src/community/gdal/gdal-wcs/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-gdal-wcs-*.jar
diff --git a/src/community/gdal/gdal-wps/pom.xml b/src/community/gdal/gdal-wps/pom.xml
index 4f61ae92dc2..7e354320dcb 100644
--- a/src/community/gdal/gdal-wps/pom.xml
+++ b/src/community/gdal/gdal-wps/pom.xml
@@ -48,5 +48,4 @@
test
-
diff --git a/src/community/release/ext-gdal-wps.xml b/src/community/gdal/gdal-wps/src/assembly/assembly.xml
similarity index 56%
rename from src/community/release/ext-gdal-wps.xml
rename to src/community/gdal/gdal-wps/src/assembly/assembly.xml
index 8e69ee42580..54ed971833c 100644
--- a/src/community/release/ext-gdal-wps.xml
+++ b/src/community/gdal/gdal-wps/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-gdal-wps-*.jar
diff --git a/src/community/geopkg/pom.xml b/src/community/geopkg/pom.xml
index a8dfbb16e59..61ab9c8f9c0 100644
--- a/src/community/geopkg/pom.xml
+++ b/src/community/geopkg/pom.xml
@@ -137,5 +137,4 @@
-
diff --git a/src/community/release/ext-geopkg.xml b/src/community/geopkg/src/assembly/assembly.xml
similarity index 62%
rename from src/community/release/ext-geopkg.xml
rename to src/community/geopkg/src/assembly/assembly.xml
index 2f39efdf073..ff71dbd565c 100644
--- a/src/community/release/ext-geopkg.xml
+++ b/src/community/geopkg/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
jackson-databind*
diff --git a/src/community/gpxppio/pom.xml b/src/community/gpxppio/pom.xml
index befb318dd14..89350dfe2e4 100644
--- a/src/community/gpxppio/pom.xml
+++ b/src/community/gpxppio/pom.xml
@@ -16,6 +16,7 @@
gs-gpxppio
jar
GPX PPIO for WPS
+
org.geoserver.extension
diff --git a/src/community/release/ext-gpx.xml b/src/community/gpxppio/src/assembly/assembly.xml
similarity index 56%
rename from src/community/release/ext-gpx.xml
rename to src/community/gpxppio/src/assembly/assembly.xml
index 326218815cb..00b48c619be 100644
--- a/src/community/release/ext-gpx.xml
+++ b/src/community/gpxppio/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-gpxppio*.jar
diff --git a/src/community/release/ext-graticule.xml b/src/community/graticule/src/assembly/assembly.xml
similarity index 64%
rename from src/community/release/ext-graticule.xml
rename to src/community/graticule/src/assembly/assembly.xml
index daf8ebd7108..7154a87451c 100644
--- a/src/community/release/ext-graticule.xml
+++ b/src/community/graticule/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-graticule-*.jar
@@ -15,7 +22,7 @@
- release/target/html/licenses
+ ${geoserverBaseDir}/community/target/html/licenses
GPL.html
diff --git a/src/community/gsr/pom.xml b/src/community/gsr/pom.xml
index fa47ef7e24d..b4a10621418 100644
--- a/src/community/gsr/pom.xml
+++ b/src/community/gsr/pom.xml
@@ -96,5 +96,4 @@
test
-
diff --git a/src/community/release/ext-gsr.xml b/src/community/gsr/src/assembly/assembly.xml
similarity index 71%
rename from src/community/release/ext-gsr.xml
rename to src/community/gsr/src/assembly/assembly.xml
index 5cf62cd438c..c400345ce58 100644
--- a/src/community/release/ext-gsr.xml
+++ b/src/community/gsr/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-gsr*.jar
diff --git a/src/community/release/ext-gwc-azure-blob.xml b/src/community/gwc-azure-blob/src/assembly/assembly.xml
similarity index 75%
rename from src/community/release/ext-gwc-azure-blob.xml
rename to src/community/gwc-azure-blob/src/assembly/assembly.xml
index 9259d0a6571..f8ce5d0a4cf 100644
--- a/src/community/release/ext-gwc-azure-blob.xml
+++ b/src/community/gwc-azure-blob/src/assembly/assembly.xml
@@ -5,8 +5,15 @@
false
+
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
- release/target/dependency
+ target/dependency
*azure-*.jar
diff --git a/src/community/gwc-distributed/pom.xml b/src/community/gwc-distributed/pom.xml
index 302128a1444..27185476dcb 100644
--- a/src/community/gwc-distributed/pom.xml
+++ b/src/community/gwc-distributed/pom.xml
@@ -11,6 +11,7 @@
GWC Distributed Caching Plugin
http://maven.apache.org
+
UTF-8
diff --git a/src/community/release/ext-gwc-distributed.xml b/src/community/gwc-distributed/src/assembly/assembly.xml
similarity index 63%
rename from src/community/release/ext-gwc-distributed.xml
rename to src/community/gwc-distributed/src/assembly/assembly.xml
index 19ecb8340a1..7e00aac3b8d 100644
--- a/src/community/release/ext-gwc-distributed.xml
+++ b/src/community/gwc-distributed/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gwc-distributed-*.jar
diff --git a/src/community/release/ext-gwc-mbtiles.xml b/src/community/gwc-mbtiles/src/assembly/assembly.xml
similarity index 69%
rename from src/community/release/ext-gwc-mbtiles.xml
rename to src/community/gwc-mbtiles/src/assembly/assembly.xml
index 0e481c146c7..acc1c410b39 100644
--- a/src/community/release/ext-gwc-mbtiles.xml
+++ b/src/community/gwc-mbtiles/src/assembly/assembly.xml
@@ -5,8 +5,15 @@
false
+
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
- release/target/dependency
+ target/dependency
gs-gwc-mbtiles-*.jar
diff --git a/src/community/gwc-sqlite/pom.xml b/src/community/gwc-sqlite/pom.xml
index 343751464e4..0c02503170c 100644
--- a/src/community/gwc-sqlite/pom.xml
+++ b/src/community/gwc-sqlite/pom.xml
@@ -10,6 +10,7 @@
gs-gwc-sqlite
jar
GeoWebCache SQLite
+
org.geoserver
diff --git a/src/community/release/ext-gwc-sqlite.xml b/src/community/gwc-sqlite/src/assembly/assembly.xml
similarity index 58%
rename from src/community/release/ext-gwc-sqlite.xml
rename to src/community/gwc-sqlite/src/assembly/assembly.xml
index dda1555af87..89efe69e7f6 100644
--- a/src/community/release/ext-gwc-sqlite.xml
+++ b/src/community/gwc-sqlite/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
*sqlite*.jar
diff --git a/src/community/hz-cluster/pom.xml b/src/community/hz-cluster/pom.xml
index 3b990ce2380..060881b2027 100644
--- a/src/community/hz-cluster/pom.xml
+++ b/src/community/hz-cluster/pom.xml
@@ -14,6 +14,7 @@
GeoServer Hazelcast Clustering Module
+
4.0
4.0.3
diff --git a/src/community/release/ext-hz-cluster.xml b/src/community/hz-cluster/src/assembly/assembly.xml
similarity index 61%
rename from src/community/release/ext-hz-cluster.xml
rename to src/community/hz-cluster/src/assembly/assembly.xml
index b99cf3866d1..cedddddd10d 100644
--- a/src/community/release/ext-hz-cluster.xml
+++ b/src/community/hz-cluster/src/assembly/assembly.xml
@@ -5,8 +5,15 @@
false
+
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
- release/target/dependency
+ target/dependency
gs-hz-cluster*.jar
diff --git a/src/community/imagemap/pom.xml b/src/community/imagemap/pom.xml
index 2866ac7b616..6a918227758 100644
--- a/src/community/imagemap/pom.xml
+++ b/src/community/imagemap/pom.xml
@@ -74,5 +74,4 @@
-
diff --git a/src/community/release/ext-imagemap.xml b/src/community/imagemap/src/assembly/assembly.xml
similarity index 60%
rename from src/community/release/ext-imagemap.xml
rename to src/community/imagemap/src/assembly/assembly.xml
index 17d0b311c87..5f113cb289f 100644
--- a/src/community/release/ext-imagemap.xml
+++ b/src/community/imagemap/src/assembly/assembly.xml
@@ -6,14 +6,21 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-imagemap-*.jar
- release/target/html/licenses
+ ${geoserverBaseDir}/community/target/html/licenses
GPL.html
diff --git a/src/community/importer-jdbc/pom.xml b/src/community/importer-jdbc/pom.xml
index 4ea12973466..0472e5284ed 100644
--- a/src/community/importer-jdbc/pom.xml
+++ b/src/community/importer-jdbc/pom.xml
@@ -80,5 +80,4 @@
-
diff --git a/src/community/release/ext-importer-jdbc.xml b/src/community/importer-jdbc/src/assembly/assembly.xml
similarity index 67%
rename from src/community/release/ext-importer-jdbc.xml
rename to src/community/importer-jdbc/src/assembly/assembly.xml
index 2fb8bf599ff..f68ae27ee89 100644
--- a/src/community/release/ext-importer-jdbc.xml
+++ b/src/community/importer-jdbc/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-importer-jdbc-*.jar
diff --git a/src/community/jdbc-metrics/pom.xml b/src/community/jdbc-metrics/pom.xml
index 8c88214288a..c90a33ee360 100644
--- a/src/community/jdbc-metrics/pom.xml
+++ b/src/community/jdbc-metrics/pom.xml
@@ -64,5 +64,4 @@
test
-
diff --git a/src/community/release/ext-jdbc-metrics.xml b/src/community/jdbc-metrics/src/assembly/assembly.xml
similarity index 55%
rename from src/community/release/ext-jdbc-metrics.xml
rename to src/community/jdbc-metrics/src/assembly/assembly.xml
index d51b6a7c164..5729bc0a663 100644
--- a/src/community/release/ext-jdbc-metrics.xml
+++ b/src/community/jdbc-metrics/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-jdbc-metrics*.jar
diff --git a/src/community/jdbcconfig/pom.xml b/src/community/jdbcconfig/pom.xml
index 15535d5249c..4b22177747c 100644
--- a/src/community/jdbcconfig/pom.xml
+++ b/src/community/jdbcconfig/pom.xml
@@ -12,6 +12,7 @@
GeoServer JDBC Catalog
Manage GeoServer Catalog configuration in a database.
+
true
true
diff --git a/src/community/release/ext-jdbcconfig.xml b/src/community/jdbcconfig/src/assembly/assembly.xml
similarity index 56%
rename from src/community/release/ext-jdbcconfig.xml
rename to src/community/jdbcconfig/src/assembly/assembly.xml
index e29f7a25efe..341453e6af1 100644
--- a/src/community/release/ext-jdbcconfig.xml
+++ b/src/community/jdbcconfig/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-jdbcconfig-*.jar
diff --git a/src/community/jdbcstore/pom.xml b/src/community/jdbcstore/pom.xml
index c767fa8f4b0..8df98ba3591 100644
--- a/src/community/jdbcstore/pom.xml
+++ b/src/community/jdbcstore/pom.xml
@@ -11,6 +11,7 @@
jar
GeoServer JDBC Configuration Resource Store
Store resources (icons, fonts, freemarker tempaltes and configuration files) in database alongside JDBC Store.
+
org.geoserver
diff --git a/src/community/release/ext-jdbcstore.xml b/src/community/jdbcstore/src/assembly/assembly.xml
similarity index 62%
rename from src/community/release/ext-jdbcstore.xml
rename to src/community/jdbcstore/src/assembly/assembly.xml
index a404418d617..d3f0c70e241 100644
--- a/src/community/release/ext-jdbcstore.xml
+++ b/src/community/jdbcstore/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-jdbcstore-*.jar
diff --git a/src/community/jms-cluster/activemqBroker/pom.xml b/src/community/jms-cluster/activemqBroker/pom.xml
index f305cbca21f..453e7a2aa9d 100644
--- a/src/community/jms-cluster/activemqBroker/pom.xml
+++ b/src/community/jms-cluster/activemqBroker/pom.xml
@@ -18,6 +18,7 @@
8.3-603.jdbc4
3.2.5.RELEASE
+
diff --git a/src/community/release/ext-activeMQ.xml b/src/community/jms-cluster/activemqBroker/src/assembly/assembly.xml
similarity index 84%
rename from src/community/release/ext-activeMQ.xml
rename to src/community/jms-cluster/activemqBroker/src/assembly/assembly.xml
index 154e65e6209..a4b65afa150 100644
--- a/src/community/release/ext-activeMQ.xml
+++ b/src/community/jms-cluster/activemqBroker/src/assembly/assembly.xml
@@ -6,7 +6,7 @@
false
- jms-cluster/activemqBroker/target
+ target
.
activemqBroker-*.war
diff --git a/src/community/jms-cluster/jms-geoserver/pom.xml b/src/community/jms-cluster/jms-geoserver/pom.xml
index 6aad35818fc..1cfbee3886e 100644
--- a/src/community/jms-cluster/jms-geoserver/pom.xml
+++ b/src/community/jms-cluster/jms-geoserver/pom.xml
@@ -15,6 +15,7 @@
5.15.16
+
diff --git a/src/community/jms-cluster/jms-geoserver/src/assembly/assembly.xml b/src/community/jms-cluster/jms-geoserver/src/assembly/assembly.xml
new file mode 100644
index 00000000000..0930fc4320f
--- /dev/null
+++ b/src/community/jms-cluster/jms-geoserver/src/assembly/assembly.xml
@@ -0,0 +1,58 @@
+
+
+ jms-cluster-plugin
+
+ zip
+
+ false
+
+
+ target/dependency
+
+
+ gs-jms*.jar
+ jms-api*.jar
+ xbean-spring*.jar
+ spring-jms*.jar
+
+
+
+
+
+
+
+ ant*.jar
+ activemq*.jar
+ activemq-broker*.jar
+ activemq-kahadb-store*.jar
+
+
+
+
+ activemq-all.jar
+ proton-*.jar
+ bcpkix-*.jar
+ activemq-client*.jar
+ geronimo-*.jar
+ activemq-openwire-legacy*.jar
+ hawtbuf*.jar
+ hawtjni*.jar
+ hawtdispatch*.jar
+ activemq-spring*.jar
+ activemq-pool*.jar
+ activemq-protobuf*.jar
+ commons-pool2*.jar
+
+
+
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+
+
\ No newline at end of file
diff --git a/src/community/jms-cluster/pom.xml b/src/community/jms-cluster/pom.xml
index 3fed797c736..d53cbdee7c9 100644
--- a/src/community/jms-cluster/pom.xml
+++ b/src/community/jms-cluster/pom.xml
@@ -12,6 +12,7 @@
pom
GeoServer JMS based clustering modules
+
diff --git a/src/community/release/ext-jwt-headers.xml b/src/community/jwt-headers/gs-jwt-headers/src/assembly/assembly.xml
similarity index 67%
rename from src/community/release/ext-jwt-headers.xml
rename to src/community/jwt-headers/gs-jwt-headers/src/assembly/assembly.xml
index 3993774c5c3..3f0775167db 100644
--- a/src/community/release/ext-jwt-headers.xml
+++ b/src/community/jwt-headers/gs-jwt-headers/src/assembly/assembly.xml
@@ -5,13 +5,18 @@
false
+
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
- release/target/dependency
+ target/dependency
jwt-headers-util*
- gs-jwt-headers*
-
nimbus-jose-jwt-9.37.3*
json-path*
guava*
diff --git a/src/community/jwt-headers/pom.xml b/src/community/jwt-headers/pom.xml
index beb0dc7c960..f7abe50c373 100644
--- a/src/community/jwt-headers/pom.xml
+++ b/src/community/jwt-headers/pom.xml
@@ -23,6 +23,7 @@
jwt-headers-util
gs-jwt-headers
+
+
+ 4.0.0
+
+ org.geoserver
+ community
+ 2.26-SNAPSHOT
+
+ org.geoserver.community
+ gs-mbtiles-store
+ jar
+ GeoServer mbtiles store Extension
+
+
+
+ org.geotools
+ gt-mbtiles
+ ${gt.version}
+
+
+
+
+
+
+ src/test/resources
+
+
+
+
diff --git a/src/community/release/ext-mbtiles-store.xml b/src/community/mbtiles-store/src/assembly/assembly.xml
similarity index 70%
rename from src/community/release/ext-mbtiles-store.xml
rename to src/community/mbtiles-store/src/assembly/assembly.xml
index 9902965c054..221001616a6 100644
--- a/src/community/release/ext-mbtiles-store.xml
+++ b/src/community/mbtiles-store/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gt-mbtiles-*.jar
diff --git a/src/community/mbtiles/pom.xml b/src/community/mbtiles/pom.xml
index d85722c72ed..717552a41d2 100644
--- a/src/community/mbtiles/pom.xml
+++ b/src/community/mbtiles/pom.xml
@@ -123,5 +123,4 @@
-
diff --git a/src/community/mbtiles/src/assembly/assembly.xml b/src/community/mbtiles/src/assembly/assembly.xml
new file mode 100644
index 00000000000..4b70663ef69
--- /dev/null
+++ b/src/community/mbtiles/src/assembly/assembly.xml
@@ -0,0 +1,33 @@
+
+
+ mbtiles-plugin
+
+ zip
+
+ false
+
+
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
+
+
+ gt-mbtiles-*.jar
+ gs-mbtiles-*.jar
+ gs-geopkg-output*.jar
+ sqlite*.jar
+ jackson-core*.jar
+ jackson-annotation*.jar
+ jackson-databind*.jar
+ java-vector-tile*.jar
+ protobuf-java*.jar
+
+
+
+
+
\ No newline at end of file
diff --git a/src/community/monitor-hibernate/pom.xml b/src/community/monitor-hibernate/pom.xml
index c52043dfb7c..888a602717f 100644
--- a/src/community/monitor-hibernate/pom.xml
+++ b/src/community/monitor-hibernate/pom.xml
@@ -76,6 +76,7 @@
+
**/HibernateMonitorDAOTest.*
diff --git a/src/community/release/ext-monitor-hibernate.xml b/src/community/monitor-hibernate/src/assembly/assembly.xml
similarity index 75%
rename from src/community/release/ext-monitor-hibernate.xml
rename to src/community/monitor-hibernate/src/assembly/assembly.xml
index 9544209ded0..f9987c5b054 100644
--- a/src/community/release/ext-monitor-hibernate.xml
+++ b/src/community/monitor-hibernate/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-monitor-hibernate-*.jar
diff --git a/src/community/monitor-kafka/pom.xml b/src/community/monitor-kafka/pom.xml
index c6b9fdfd0a8..abca61d3f79 100644
--- a/src/community/monitor-kafka/pom.xml
+++ b/src/community/monitor-kafka/pom.xml
@@ -13,6 +13,7 @@
Monitor Kafka Extension
+
7.5.0
3.6.0
diff --git a/src/community/release/ext-monitor-kafka.xml b/src/community/monitor-kafka/src/assembly/assembly.xml
similarity index 71%
rename from src/community/release/ext-monitor-kafka.xml
rename to src/community/monitor-kafka/src/assembly/assembly.xml
index 594d4b754c8..cad857f91ad 100644
--- a/src/community/release/ext-monitor-kafka.xml
+++ b/src/community/monitor-kafka/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-monitor-kafka-*.jar
diff --git a/src/community/release/ext-ncwms.xml b/src/community/ncwms/src/assembly/assembly.xml
similarity index 66%
rename from src/community/release/ext-ncwms.xml
rename to src/community/ncwms/src/assembly/assembly.xml
index dd31b75de94..faccf5ab8e9 100644
--- a/src/community/release/ext-ncwms.xml
+++ b/src/community/ncwms/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-colormap*.jar
diff --git a/src/community/netcdf-ghrsst/pom.xml b/src/community/netcdf-ghrsst/pom.xml
index 9878b4e3f14..82513c5ddc1 100644
--- a/src/community/netcdf-ghrsst/pom.xml
+++ b/src/community/netcdf-ghrsst/pom.xml
@@ -17,6 +17,7 @@
NetCDF GHRSST encoder
+
5.5.3
diff --git a/src/community/release/ext-netcdf-ghrsst.xml b/src/community/netcdf-ghrsst/src/assembly/assembly.xml
similarity index 59%
rename from src/community/release/ext-netcdf-ghrsst.xml
rename to src/community/netcdf-ghrsst/src/assembly/assembly.xml
index 50a63d03c91..62eb044d7d2 100644
--- a/src/community/release/ext-netcdf-ghrsst.xml
+++ b/src/community/netcdf-ghrsst/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-netcdf-ghrsst*.jar
diff --git a/src/community/notification/pom.xml b/src/community/notification/pom.xml
index c310bc3ac80..43085f44ea5 100644
--- a/src/community/notification/pom.xml
+++ b/src/community/notification/pom.xml
@@ -13,6 +13,7 @@
jar
GeoServer notification event system
http://maven.apache.org
+
org.geoserver
@@ -82,5 +83,4 @@
commons-lang3
-
diff --git a/src/community/release/ext-notification.xml b/src/community/notification/src/assembly/assembly.xml
similarity index 83%
rename from src/community/release/ext-notification.xml
rename to src/community/notification/src/assembly/assembly.xml
index 032c0a5c7ed..29177795f19 100644
--- a/src/community/release/ext-notification.xml
+++ b/src/community/notification/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-notification*
diff --git a/src/community/ogcapi/dggs/ogcapi-dggs-assembly/pom.xml b/src/community/ogcapi/dggs/ogcapi-dggs-assembly/pom.xml
new file mode 100644
index 00000000000..6758b899d6a
--- /dev/null
+++ b/src/community/ogcapi/dggs/ogcapi-dggs-assembly/pom.xml
@@ -0,0 +1,52 @@
+
+
+
+ 4.0.0
+
+ org.geoserver.community
+ gs-dggs
+ 2.26-SNAPSHOT
+
+
+ org.geoserver.community
+ gs-ogcapi-dggs-assembly
+
+
+
+ org.geoserver.community
+ gs-dggs-core
+ ${project.version}
+
+
+
+ org.geoserver.community
+ gs-ogcapi-dggs
+ ${project.version}
+
+
+
+ org.geoserver.community
+ gs-web-dggs
+ ${project.version}
+
+
+
+ org.geoserver.community
+ gs-dggs-clickhouse
+ ${project.version}
+
+
+
+ org.geoserver.community
+ gs-web-ogcapi
+ ${project.version}
+
+
+
+
+
diff --git a/src/community/release/ext-ogcapi-dggs.xml b/src/community/ogcapi/dggs/ogcapi-dggs-assembly/src/assembly/assembly.xml
similarity index 90%
rename from src/community/release/ext-ogcapi-dggs.xml
rename to src/community/ogcapi/dggs/ogcapi-dggs-assembly/src/assembly/assembly.xml
index 7a6fdc10f75..583058681e2 100644
--- a/src/community/release/ext-ogcapi-dggs.xml
+++ b/src/community/ogcapi/dggs/ogcapi-dggs-assembly/src/assembly/assembly.xml
@@ -6,7 +6,7 @@
false
- release/target/dependency
+ target/dependency
gs-ogcapi-core-*.jar
@@ -30,7 +30,7 @@
- release/target/html/licenses
+ ${geoserverBaseDir}/community/target/html/licenses
GPL.html
diff --git a/src/community/ogcapi/dggs/pom.xml b/src/community/ogcapi/dggs/pom.xml
index 80aeb3d717d..89b55c48f0e 100644
--- a/src/community/ogcapi/dggs/pom.xml
+++ b/src/community/ogcapi/dggs/pom.xml
@@ -22,6 +22,7 @@
web-dggs
dggs-clickhouse
ogcapi-dggs
+ ogcapi-dggs-assembly
diff --git a/src/community/ogcapi/ogcapi-coverages-assembly/pom.xml b/src/community/ogcapi/ogcapi-coverages-assembly/pom.xml
new file mode 100644
index 00000000000..5290820d0a1
--- /dev/null
+++ b/src/community/ogcapi/ogcapi-coverages-assembly/pom.xml
@@ -0,0 +1,31 @@
+
+
+
+ 4.0.0
+
+ org.geoserver.community
+ gs-ogcapi
+ 2.26-SNAPSHOT
+
+
+ org.geoserver.community
+ gs-ogcapi-coverages-assembly
+
+
+
+ org.geoserver.community
+ gs-ogcapi-coverages
+ ${project.version}
+
+
+ org.geoserver.community
+ gs-web-ogcapi
+ ${project.version}
+
+
+
diff --git a/src/community/release/ext-ogcapi-coverages.xml b/src/community/ogcapi/ogcapi-coverages-assembly/src/assembly/assembly.xml
similarity index 87%
rename from src/community/release/ext-ogcapi-coverages.xml
rename to src/community/ogcapi/ogcapi-coverages-assembly/src/assembly/assembly.xml
index caf0b806e90..bc8566b077b 100644
--- a/src/community/release/ext-ogcapi-coverages.xml
+++ b/src/community/ogcapi/ogcapi-coverages-assembly/src/assembly/assembly.xml
@@ -6,7 +6,7 @@
false
- release/target/dependency
+ target/dependency
gs-ogcapi-coverages-*.jar
@@ -22,7 +22,7 @@
- release/target/html/licenses
+ ${geoserverBaseDir}/community/target/html/licenses
GPL.html
diff --git a/src/community/ogcapi/ogcapi-coverages/pom.xml b/src/community/ogcapi/ogcapi-coverages/pom.xml
index cc0ce064449..4f3fb83b6c1 100644
--- a/src/community/ogcapi/ogcapi-coverages/pom.xml
+++ b/src/community/ogcapi/ogcapi-coverages/pom.xml
@@ -73,5 +73,4 @@
test
-
diff --git a/src/community/ogcapi/ogcapi-features-assembly/pom.xml b/src/community/ogcapi/ogcapi-features-assembly/pom.xml
new file mode 100644
index 00000000000..d9a3ca293d6
--- /dev/null
+++ b/src/community/ogcapi/ogcapi-features-assembly/pom.xml
@@ -0,0 +1,31 @@
+
+
+
+ 4.0.0
+
+ org.geoserver.community
+ gs-ogcapi
+ 2.26-SNAPSHOT
+
+
+ org.geoserver.community
+ gs-ogcapi-features-assembly
+
+
+
+ org.geoserver.community
+ gs-ogcapi-features
+ ${project.version}
+
+
+ org.geoserver.community
+ gs-web-ogcapi
+ ${project.version}
+
+
+
diff --git a/src/community/release/ext-ogcapi-features.xml b/src/community/ogcapi/ogcapi-features-assembly/src/assembly/assembly.xml
similarity index 87%
rename from src/community/release/ext-ogcapi-features.xml
rename to src/community/ogcapi/ogcapi-features-assembly/src/assembly/assembly.xml
index afd24e3fff0..db09589f05a 100644
--- a/src/community/release/ext-ogcapi-features.xml
+++ b/src/community/ogcapi/ogcapi-features-assembly/src/assembly/assembly.xml
@@ -6,7 +6,7 @@
false
- release/target/dependency
+ target/dependency
gs-ogcapi-features-*.jar
@@ -22,7 +22,7 @@
- release/target/html/licenses
+ ${geoserverBaseDir}/community/target/html/licenses
GPL.html
diff --git a/src/community/ogcapi/ogcapi-features/pom.xml b/src/community/ogcapi/ogcapi-features/pom.xml
index 47649712d9e..e014e288acd 100644
--- a/src/community/ogcapi/ogcapi-features/pom.xml
+++ b/src/community/ogcapi/ogcapi-features/pom.xml
@@ -93,5 +93,4 @@
test
-
diff --git a/src/community/ogcapi/ogcapi-images-assembly/pom.xml b/src/community/ogcapi/ogcapi-images-assembly/pom.xml
new file mode 100644
index 00000000000..9c59734b4cd
--- /dev/null
+++ b/src/community/ogcapi/ogcapi-images-assembly/pom.xml
@@ -0,0 +1,36 @@
+
+
+
+ 4.0.0
+
+ org.geoserver.community
+ gs-ogcapi
+ 2.26-SNAPSHOT
+
+
+ org.geoserver.community
+ gs-ogcapi-images-assembly
+
+
+
+ org.geoserver.community
+ gs-ogcapi-images
+ ${project.version}
+
+
+ org.geoserver.community
+ gs-ogcapi-changeset
+ ${project.version}
+
+
+ org.geoserver.community
+ gs-web-ogcapi
+ ${project.version}
+
+
+
diff --git a/src/community/release/ext-ogcapi-images.xml b/src/community/ogcapi/ogcapi-images-assembly/src/assembly/assembly.xml
similarity index 91%
rename from src/community/release/ext-ogcapi-images.xml
rename to src/community/ogcapi/ogcapi-images-assembly/src/assembly/assembly.xml
index 388944af755..1a4472f85d1 100644
--- a/src/community/release/ext-ogcapi-images.xml
+++ b/src/community/ogcapi/ogcapi-images-assembly/src/assembly/assembly.xml
@@ -6,7 +6,7 @@
false
- release/target/dependency
+ target/dependency
@@ -33,7 +33,7 @@
- release/target/html/licenses
+ ${geoserverBaseDir}/community/target/html/licenses
GPL.html
diff --git a/src/community/ogcapi/ogcapi-images/pom.xml b/src/community/ogcapi/ogcapi-images/pom.xml
index 626ea3bd479..cf7632f6e25 100644
--- a/src/community/ogcapi/ogcapi-images/pom.xml
+++ b/src/community/ogcapi/ogcapi-images/pom.xml
@@ -71,5 +71,4 @@
-
diff --git a/src/community/ogcapi/ogcapi-maps-assembly/pom.xml b/src/community/ogcapi/ogcapi-maps-assembly/pom.xml
new file mode 100644
index 00000000000..3d44d2c8d15
--- /dev/null
+++ b/src/community/ogcapi/ogcapi-maps-assembly/pom.xml
@@ -0,0 +1,31 @@
+
+
+
+ 4.0.0
+
+ org.geoserver.community
+ gs-ogcapi
+ 2.26-SNAPSHOT
+
+
+ org.geoserver.community
+ gs-ogcapi-maps-assembly
+
+
+
+ org.geoserver.community
+ gs-ogcapi-maps
+ ${project.version}
+
+
+ org.geoserver.community
+ gs-web-ogcapi
+ ${project.version}
+
+
+
diff --git a/src/community/release/ext-ogcapi-maps.xml b/src/community/ogcapi/ogcapi-maps-assembly/src/assembly/assembly.xml
similarity index 87%
rename from src/community/release/ext-ogcapi-maps.xml
rename to src/community/ogcapi/ogcapi-maps-assembly/src/assembly/assembly.xml
index fb394d690e7..f684f244476 100644
--- a/src/community/release/ext-ogcapi-maps.xml
+++ b/src/community/ogcapi/ogcapi-maps-assembly/src/assembly/assembly.xml
@@ -6,7 +6,7 @@
false
- release/target/dependency
+ target/dependency
gs-ogcapi-maps-*.jar
@@ -22,7 +22,7 @@
- release/target/html/licenses
+ ${geoserverBaseDir}/community/target/html/licenses
GPL.html
diff --git a/src/community/ogcapi/ogcapi-maps/pom.xml b/src/community/ogcapi/ogcapi-maps/pom.xml
index fd7ccc43e5d..75a5d122e3f 100644
--- a/src/community/ogcapi/ogcapi-maps/pom.xml
+++ b/src/community/ogcapi/ogcapi-maps/pom.xml
@@ -55,5 +55,4 @@
test
-
diff --git a/src/community/ogcapi/ogcapi-styles-assembly/pom.xml b/src/community/ogcapi/ogcapi-styles-assembly/pom.xml
new file mode 100644
index 00000000000..8db36b2e51b
--- /dev/null
+++ b/src/community/ogcapi/ogcapi-styles-assembly/pom.xml
@@ -0,0 +1,31 @@
+
+
+
+ 4.0.0
+
+ org.geoserver.community
+ gs-ogcapi
+ 2.26-SNAPSHOT
+
+
+ org.geoserver.community
+ gs-ogcapi-styles-assembly
+
+
+
+ org.geoserver.community
+ gs-ogcapi-styles
+ ${project.version}
+
+
+ org.geoserver.community
+ gs-web-ogcapi
+ ${project.version}
+
+
+
diff --git a/src/community/release/ext-ogcapi-styles.xml b/src/community/ogcapi/ogcapi-styles-assembly/src/assembly/assembly.xml
similarity index 87%
rename from src/community/release/ext-ogcapi-styles.xml
rename to src/community/ogcapi/ogcapi-styles-assembly/src/assembly/assembly.xml
index 5f21ef2e53a..6b06af0d0ce 100644
--- a/src/community/release/ext-ogcapi-styles.xml
+++ b/src/community/ogcapi/ogcapi-styles-assembly/src/assembly/assembly.xml
@@ -6,7 +6,7 @@
false
- release/target/dependency
+ target/dependency
gs-ogcapi-styles-*.jar
@@ -22,7 +22,7 @@
- release/target/html/licenses
+ ${geoserverBaseDir}/community/target/html/licenses
GPL.html
diff --git a/src/community/ogcapi/ogcapi-styles/pom.xml b/src/community/ogcapi/ogcapi-styles/pom.xml
index 46213545593..43b0d2ce0f6 100644
--- a/src/community/ogcapi/ogcapi-styles/pom.xml
+++ b/src/community/ogcapi/ogcapi-styles/pom.xml
@@ -97,5 +97,4 @@
test
-
diff --git a/src/community/ogcapi/ogcapi-tiled-features-assembly/pom.xml b/src/community/ogcapi/ogcapi-tiled-features-assembly/pom.xml
new file mode 100644
index 00000000000..2f7e63e148f
--- /dev/null
+++ b/src/community/ogcapi/ogcapi-tiled-features-assembly/pom.xml
@@ -0,0 +1,31 @@
+
+
+
+ 4.0.0
+
+ org.geoserver.community
+ gs-ogcapi
+ 2.26-SNAPSHOT
+
+
+ org.geoserver.community
+ gs-ogcapi-tiled-features-assembly
+
+
+
+ org.geoserver.community
+ gs-ogcapi-tiled-features
+ ${project.version}
+
+
+ org.geoserver.community
+ gs-web-ogcapi
+ ${project.version}
+
+
+
diff --git a/src/community/release/ext-ogcapi-tiled-features.xml b/src/community/ogcapi/ogcapi-tiled-features-assembly/src/assembly/assembly.xml
similarity index 91%
rename from src/community/release/ext-ogcapi-tiled-features.xml
rename to src/community/ogcapi/ogcapi-tiled-features-assembly/src/assembly/assembly.xml
index 64a584a6e2c..82da8f51d0f 100644
--- a/src/community/release/ext-ogcapi-tiled-features.xml
+++ b/src/community/ogcapi/ogcapi-tiled-features-assembly/src/assembly/assembly.xml
@@ -6,7 +6,7 @@
false
- release/target/dependency
+ target/dependency
gs-ogcapi-tiled-features-*.jar
@@ -29,7 +29,7 @@
- release/target/html/licenses
+ ${geoserverBaseDir}/community/target/html/licenses
GPL.html
diff --git a/src/community/ogcapi/ogcapi-tiled-features/pom.xml b/src/community/ogcapi/ogcapi-tiled-features/pom.xml
index a33bd44c07e..8656f0fd031 100644
--- a/src/community/ogcapi/ogcapi-tiled-features/pom.xml
+++ b/src/community/ogcapi/ogcapi-tiled-features/pom.xml
@@ -79,5 +79,4 @@
test
-
diff --git a/src/community/ogcapi/ogcapi-tiles-assembly/pom.xml b/src/community/ogcapi/ogcapi-tiles-assembly/pom.xml
new file mode 100644
index 00000000000..0c993c23d03
--- /dev/null
+++ b/src/community/ogcapi/ogcapi-tiles-assembly/pom.xml
@@ -0,0 +1,31 @@
+
+
+
+ 4.0.0
+
+ org.geoserver.community
+ gs-ogcapi
+ 2.26-SNAPSHOT
+
+
+ org.geoserver.community
+ gs-ogcapi-tiles-assembly
+
+
+
+ org.geoserver.community
+ gs-ogcapi-tiles
+ ${project.version}
+
+
+ org.geoserver.community
+ gs-web-ogcapi
+ ${project.version}
+
+
+
diff --git a/src/community/release/ext-ogcapi-tiles.xml b/src/community/ogcapi/ogcapi-tiles-assembly/src/assembly/assembly.xml
similarity index 87%
rename from src/community/release/ext-ogcapi-tiles.xml
rename to src/community/ogcapi/ogcapi-tiles-assembly/src/assembly/assembly.xml
index d753ed9b39c..ccd0f478724 100644
--- a/src/community/release/ext-ogcapi-tiles.xml
+++ b/src/community/ogcapi/ogcapi-tiles-assembly/src/assembly/assembly.xml
@@ -6,7 +6,7 @@
false
- release/target/dependency
+ target/dependency
gs-ogcapi-tiles-*.jar
@@ -22,7 +22,7 @@
- release/target/html/licenses
+ ${geoserverBaseDir}/community/target/html/licenses
GPL.html
diff --git a/src/community/ogcapi/ogcapi-tiles/pom.xml b/src/community/ogcapi/ogcapi-tiles/pom.xml
index b033819bfde..6b1e337d520 100644
--- a/src/community/ogcapi/ogcapi-tiles/pom.xml
+++ b/src/community/ogcapi/ogcapi-tiles/pom.xml
@@ -103,5 +103,4 @@
test
-
diff --git a/src/community/ogcapi/pom.xml b/src/community/ogcapi/pom.xml
index d862608b585..6935a24208f 100644
--- a/src/community/ogcapi/pom.xml
+++ b/src/community/ogcapi/pom.xml
@@ -20,14 +20,21 @@
ogcapi-core
ogcapi-features
+ ogcapi-features-assembly
ogcapi-maps
+ ogcapi-maps-assembly
ogcapi-styles
+ ogcapi-styles-assembly
ogcapi-tiles
+ ogcapi-tiles-assembly
ogcapi-images
+ ogcapi-images-assembly
ogcapi-changeset
ogcapi-tiled-features
+ ogcapi-tiled-features-assembly
dggs
ogcapi-coverages
+ ogcapi-coverages-assembly
web-ogcapi
diff --git a/src/community/oseo/oseo-assembly/pom.xml b/src/community/oseo/oseo-assembly/pom.xml
new file mode 100644
index 00000000000..66f52f92de1
--- /dev/null
+++ b/src/community/oseo/oseo-assembly/pom.xml
@@ -0,0 +1,40 @@
+
+
+
+ 4.0.0
+
+
+ org.geoserver.community
+ gs-oseo
+ 2.26-SNAPSHOT
+
+
+ org.geoserver.community
+ gs-oseo-assembly
+ jar
+ OpenSearch for EO extension packaging
+
+
+
+ org.geoserver.community
+ gs-oseo-core
+ ${gs.version}
+
+
+ org.geoserver.community
+ gs-oseo-service
+ ${gs.version}
+
+
+ org.geoserver.community
+ gs-oseo-rest
+ ${gs.version}
+
+
+ org.geoserver.community
+ gs-oseo-stac
+ ${gs.version}
+
+
+
+
diff --git a/src/community/release/ext-opensearch-eo.xml b/src/community/oseo/oseo-assembly/src/assembly/assembly.xml
similarity index 94%
rename from src/community/release/ext-opensearch-eo.xml
rename to src/community/oseo/oseo-assembly/src/assembly/assembly.xml
index 06880aca6c7..54130c30bd1 100644
--- a/src/community/release/ext-opensearch-eo.xml
+++ b/src/community/oseo/oseo-assembly/src/assembly/assembly.xml
@@ -6,7 +6,7 @@
false
- release/target/dependency
+ target/dependency
gs-*oseo*.jar
diff --git a/src/community/oseo/pom.xml b/src/community/oseo/pom.xml
index 1dd198a4fda..06c24efc566 100644
--- a/src/community/oseo/pom.xml
+++ b/src/community/oseo/pom.xml
@@ -26,6 +26,7 @@
oseo-rest
web-oseo
oseo-integration-tests
+ oseo-assembly
@@ -35,5 +36,4 @@
test
-
diff --git a/src/community/release/ext-pgraster.xml b/src/community/pgraster/src/assembly/assembly.xml
similarity index 73%
rename from src/community/release/ext-pgraster.xml
rename to src/community/pgraster/src/assembly/assembly.xml
index 84e1df8f75f..1928547bcab 100644
--- a/src/community/release/ext-pgraster.xml
+++ b/src/community/pgraster/src/assembly/assembly.xml
@@ -5,6 +5,13 @@
false
+
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
release/extensions/pgraster
@@ -13,7 +20,7 @@
- release/target/dependency
+ target/dependency
ant*1.8.4.jar
diff --git a/src/community/pom.xml b/src/community/pom.xml
index 83df5a9ba4f..ffc3fadc467 100644
--- a/src/community/pom.xml
+++ b/src/community/pom.xml
@@ -28,83 +28,20 @@
- maven-assembly-plugin
- 3.2.0
-
-
- release/ext-jdbcconfig.xml
- release/ext-dds.xml
- release/ext-colormap.xml
- release/ext-mbtiles.xml
- release/ext-mbtiles-store.xml
- release/ext-geopkg.xml
- release/ext-pgraster.xml
- release/ext-dyndimension.xml
- release/ext-flatgeobuf.xml
- release/ext-spatialjson.xml
- release/ext-webp.xml
- release/ext-gpx.xml
- release/ext-jms-cluster.xml
- release/ext-hz-cluster.xml
- release/ext-activeMQ.xml
- release/ext-solr.xml
- release/ext-elasticsearch.xml
- release/ext-gwc-distributed.xml
- release/ext-gwc-azure-blob.xml
- release/ext-gdal-wcs.xml
- release/ext-gdal-wps.xml
- release/ext-wps-remote.xml
- release/ext-jdbcstore.xml
- release/ext-ncwms.xml
- release/ext-gwc-sqlite.xml
- release/ext-oauth2-google.xml
- release/ext-oauth2-github.xml
- release/ext-oauth2-geonode.xml
- release/ext-oauth2-openid-connect.xml
- release/ext-keycloak.xml
- release/ext-backup-restore.xml
- release/ext-notification.xml
- release/ext-jdbc-metrics.xml
- release/ext-opensearch-eo.xml
- release/ext-taskmanager-core.xml
- release/ext-taskmanager-s3.xml
- release/ext-netcdf-ghrsst.xml
- release/ext-cog.xml
- release/ext-s3-geotiff.xml
- release/ext-ogr-datastore.xml
- release/ext-jwt-headers.xml
- release/ext-ogcapi-coverages.xml
- release/ext-ogcapi-dggs.xml
- release/ext-ogcapi-features.xml
- release/ext-ogcapi-images.xml
- release/ext-ogcapi-maps.xml
- release/ext-ogcapi-styles.xml
- release/ext-ogcapi-tiled-features.xml
- release/ext-ogcapi-tiles.xml
- release/ext-importer-jdbc.xml
- release/ext-features-autopopulate.xml
- release/ext-features-templating.xml
- release/ext-gsr.xml
- release/ext-smart-data-loader.xml
- release/ext-cov-json.xml
- release/ext-mongodb-schemaless.xml
- release/ext-web-service-auth.xml
- release/ext-gwc-mbtiles.xml
- release/ext-vsi.xml
- release/ext-libdeflate.xml
- release/ext-stac-datastore.xml
- release/ext-vector-mosaic-datastore.xml
- release/ext-proxy-base-ext.xml
- release/ext-imagemap.xml
- release/ext-xslt.xml
- release/ext-datadir-catalog-loader.xml
- release/ext-wps-longitudinal-profile.xml
- release/ext-monitor-kafka.xml
- release/ext-graticule.xml
- release/ext-wfs-freemarker.xml
-
- geoserver-${project.version}
-
+ org.commonjava.maven.plugins
+ directory-maven-plugin
+
+
+ directories
+ initialize
+
+ highest-basedir
+
+
+ geoserverBaseDir
+
+
+
maven-jar-plugin
@@ -200,6 +137,7 @@
jdbcconfig
colormap
mbtiles
+ mbtiles-store
geopkg
pgraster
dyndimension
@@ -212,7 +150,6 @@
solr
elasticsearch
wps-remote
- release
gwc-distributed
jdbcstore
gdal
@@ -254,6 +191,7 @@
monitor-kafka
graticule
wfs-freemarker
+ stac-datastore
@@ -293,6 +231,12 @@
mbtiles
+
+ mbtiles-store
+
+ mbtiles-store
+
+
dyndimension
@@ -329,20 +273,6 @@
rest-ext
-
-
-
- maven-assembly-plugin
- 3.2.0
-
-
-
- release/ext-rest-ext.xml
-
-
-
-
-
rest-ext
@@ -362,20 +292,6 @@
rest-upload
-
-
-
- maven-assembly-plugin
- 3.2.0
-
-
-
- release/ext-rest-upload.xml
-
-
-
-
-
rest-upload
@@ -436,12 +352,6 @@
gwc-azure-blob
-
- community-release-module
-
- release
-
-
wps-remote
@@ -568,36 +478,12 @@
monitor-hibernate
-
-
-
- maven-assembly-plugin
-
-
- release/ext-monitor-hibernate.xml
-
-
-
-
-
monitor-hibernate
monitor-kafka
-
-
-
- maven-assembly-plugin
-
-
- release/ext-monitor-kafka.xml
-
-
-
-
-
monitor-kafka
@@ -718,27 +604,133 @@
graticule
+
+ graticule
+
+
+
+ wfs-freemarker
+
+ wfs-freemarker
+
+
+
+ assembly
+
+
+ org.apache.maven.plugins
+ maven-antrun-plugin
+
+
+ check-assembly-file
+ initialize
+
+ run
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+ maven-dependency-plugin
+
+
+ install
+
+ copy-dependencies
+
+
+ ${skipAssembly}
+
+
+
+
+
+ org.apache.maven.plugins
maven-assembly-plugin
+ 3.2.0
+
+
+ install
+
+ single
+
+
+
- release/ext-graticule.xml
+ ${project.basedir}/src/assembly/assembly.xml
+ ${geoserverBaseDir}/community/target/release
+ ${skipAssembly}
+ geoserver-${project.version}
+
+
+
+ maven-resources-plugin
+
+
+ copy-resources
+ process-resources
+
+ copy-resources
+
+
+ ${project.build.directory}/html-template
+
+
+ ../release/src/markdown/html
+ true
+
+
+
+
+
+ false
+
+
+ com.ruleoftech
+ markdown-page-generator-plugin
+
+
+ licenses
+ process-resources
+
+ generate
+
+
+ ${project.basedir}/../../licenses
+ ${project.build.directory}/html/licenses
+
+
+
+ false
+
+ false
+ true
+ ${project.build.directory}/html-template/header.html
+ ${project.build.directory}/html-template/footer.html
+ TABLES,FENCED_CODE_BLOCKS,AUTOLINKS,FORCELISTITEMPARA
+ true
+ md,txt
-
- graticule
-
-
-
- wfs-freemarker
-
- wfs-freemarker
-
+
diff --git a/src/community/proxy-base-ext/pom.xml b/src/community/proxy-base-ext/pom.xml
index 7f2d9bab433..260943ec0bd 100644
--- a/src/community/proxy-base-ext/pom.xml
+++ b/src/community/proxy-base-ext/pom.xml
@@ -56,5 +56,4 @@
-
diff --git a/src/community/release/ext-proxy-base-ext.xml b/src/community/proxy-base-ext/src/assembly/assembly.xml
similarity index 58%
rename from src/community/release/ext-proxy-base-ext.xml
rename to src/community/proxy-base-ext/src/assembly/assembly.xml
index 1fed7592406..328ef95df83 100644
--- a/src/community/release/ext-proxy-base-ext.xml
+++ b/src/community/proxy-base-ext/src/assembly/assembly.xml
@@ -5,8 +5,15 @@
false
+
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
- release/target/dependency
+ target/dependency
gs-proxy-base-ext*
diff --git a/src/community/release/README.md b/src/community/release/README.md
deleted file mode 100644
index 67d762e30e9..00000000000
--- a/src/community/release/README.md
+++ /dev/null
@@ -1,42 +0,0 @@
-# Community Release
-
-This module depends on all the community modules that are available for public testing and feedback.
-Maven will order it near the end of the maven multi-module build.
-
-## Assembly definition and processing
-
-This module contains (but does not run) the assembly descriptors (used by ``src/community/pom.xml``)
-used package up the the community modules into ``zip`` downloads for the nightly build server.
-
-Each assembly descriptor packages the information that has been staged into `community/target`:
-
-* ``target/dependency``
-* ``target/html``
-* ``target/lhtml/licenses``
-
-To build locally use use assembly:single target, with `-N` to avoid subdirectories.
-
-```bash
-cd src/community
-mvn clean install -PcommunityRelease
-mvn assembly:single -nsu -N
-```
-
-## Markdown processing
-
-The module processes markdown files into ``html`` for including release bundles:
-
-- ``/licenses/``
-- ``/LICENSE.md``
-
-## Jetty
-
-The standalone jetty environment for our binary release download:
-
-* ``jetty/``
-
-## Installer
-
-Windows installer NSIS environment:
-
-* ``installer/``
diff --git a/src/community/release/ext-jms-cluster.xml b/src/community/release/ext-jms-cluster.xml
deleted file mode 100644
index 8cbdc05c7f3..00000000000
--- a/src/community/release/ext-jms-cluster.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-
- jms-cluster-plugin
-
- zip
-
- false
-
-
- release/target/dependency
-
-
- gs-jms*.jar
- jms-api*.jar
- xbean-spring*.jar
- spring-jms*.jar
-
-
-
-
-
-
-
- ant*.jar
- activemq*.jar
- activemq-broker*.jar
- activemq-kahadb-store*.jar
-
-
-
-
- activemq-all.jar
- proton-*.jar
- bcpkix-*.jar
- activemq-client*.jar
- geronimo-*.jar
- activemq-openwire-legacy*.jar
- hawtbuf*.jar
- hawtjni*.jar
- hawtdispatch*.jar
- activemq-spring*.jar
- activemq-pool*.jar
- activemq-protobuf*.jar
- commons-pool2*.jar
-
-
-
-
diff --git a/src/community/release/ext-mbtiles.xml b/src/community/release/ext-mbtiles.xml
deleted file mode 100644
index 77c7ab534a1..00000000000
--- a/src/community/release/ext-mbtiles.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-
- mbtiles-plugin
-
- zip
-
- false
-
-
- release/target/dependency
-
-
- gt-mbtiles-*.jar
- gs-mbtiles-*.jar
- gs-geopkg-output*.jar
- sqlite*.jar
- jackson-core*.jar
- jackson-annotation*.jar
- jackson-databind*.jar
- java-vector-tile*.jar
- protobuf-java*.jar
-
-
-
-
diff --git a/src/community/release/pom.xml b/src/community/release/pom.xml
deleted file mode 100644
index 35270b82560..00000000000
--- a/src/community/release/pom.xml
+++ /dev/null
@@ -1,597 +0,0 @@
-
-
-
- 4.0.0
-
- org.geoserver
- community
- 2.26-SNAPSHOT
-
- org.geoserver.community
- gs-release
- jar
- GeoServer Community Release Module
-
- yyyy
- ${maven.build.timestamp}
-
-
-
- org.geoserver.community
- gs-gpxppio
- ${project.version}
-
-
- org.geoserver.community
- gs-jdbcconfig
- ${project.version}
-
-
- org.geoserver.community
- gs-dds
- ${project.version}
-
-
- org.geoserver.community
- gs-colormap
- ${project.version}
-
-
- org.geoserver.community
- gs-ncwms
- ${project.version}
-
-
- org.geoserver.community
- gs-geopkg
- ${project.version}
-
-
- org.geoserver.community
- gs-mbtiles
- ${project.version}
-
-
- org.geoserver.community
- gs-dyndimension
- ${project.version}
-
-
- org.geoserver.community
- gs-flatgeobuf
- ${project.version}
-
-
- org.geoserver.community
- gs-spatialjson
- ${project.version}
-
-
- org.geoserver.community
- gs-webp
- ${project.version}
-
-
- org.geoserver.community
- gs-pgraster
- ${project.version}
-
-
- org.geoserver.community
- gs-jms-geoserver
- ${project.version}
-
-
- org.geoserver.community
- gs-jms-commons
- ${project.version}
-
-
- org.geoserver.community
- gs-hz-cluster
- ${project.version}
-
-
- org.geoserver.community
- gs-web-solr
- ${project.version}
-
-
- org.geoserver.community
- gs-web-elasticsearch
- ${project.version}
-
-
- org.geoserver.community
- gs-gwc-distributed
- ${project.version}
-
-
- org.geoserver.community
- gs-gwc-azure-blob
- ${project.version}
-
-
- org.geoserver.community
- gs-gwc-mbtiles
- ${project.version}
-
-
- org.geoserver.community
- gs-gdal-wcs
- ${project.version}
-
-
- org.geoserver.community
- gs-gdal-wps
- ${project.version}
-
-
- org.geoserver.community
- gs-wps-remote
- ${project.version}
-
-
- org.geoserver.community
- gs-jdbcstore
- ${project.version}
-
-
- org.geoserver.community
- gs-gwc-sqlite
- ${project.version}
-
-
- org.geoserver.community.backuprestore
- gs-backup-restore-core
- ${project.version}
-
-
- org.geoserver.community.backuprestore
- gs-backup-restore-rest
- ${project.version}
-
-
- org.geoserver.community.backuprestore
- gs-backup-restore-extension
- ${project.version}
-
-
- org.geoserver.community.backuprestore
- gs-backup-restore-web
- ${project.version}
-
-
- org.geoserver.community
- gs-sec-oauth2-google
- ${project.version}
-
-
- org.geoserver.community
- gs-sec-oauth2-github
- ${project.version}
-
-
-
- org.geoserver.community.jwt-headers
- gs-jwt-headers
- ${project.version}
-
-
- org.geoserver.community.jwt-headers
- jwt-headers-util
- ${project.version}
-
-
-
- org.geoserver.community
- gs-sec-oauth2-geonode
- ${project.version}
-
-
- org.geoserver.community.security
- gs-sec-oauth2-openid-connect-core
- ${project.version}
-
-
- org.geoserver.community.security
- gs-sec-oauth2-openid-connect-web
- ${project.version}
-
-
- org.geoserver.community
- gs-sec-keycloak
- ${project.version}
-
-
- org.geoserver.community
- gs-notification-common
- ${project.version}
-
-
- org.geoserver.community
- gs-notification-geonode
- ${project.version}
-
-
- org.geoserver.community
- gs-jdbc-metrics
- ${project.version}
-
-
- org.geoserver.community
- gs-oseo-core
- ${project.version}
-
-
- org.geoserver.community
- gs-web-oseo
- ${project.version}
-
-
- org.geoserver.community
- gs-oseo-rest
- ${project.version}
-
-
- org.geoserver.community
- gs-oseo-stac
- ${project.version}
-
-
- org.geoserver.community
- gs-netcdf-ghrsst
- ${project.version}
-
-
- org.geoserver.community
- gs-s3-geotiff
- ${project.version}
-
-
- org.geoserver.community
- gs-taskmanager-core
- ${project.version}
-
-
- org.geoserver.community
- gs-taskmanager-s3
- ${project.version}
-
-
- org.geoserver.community
- gs-web-ogr
- ${project.version}
-
-
- org.geoserver.community
- gs-ogcapi-features
- ${project.version}
-
-
- org.geoserver.community
- gs-ogcapi-maps
- ${project.version}
-
-
- org.geoserver.community
- gs-ogcapi-styles
- ${project.version}
-
-
- org.geoserver.community
- gs-ogcapi-tiles
- ${project.version}
-
-
- org.geoserver.community
- gs-ogcapi-images
- ${project.version}
-
-
- org.geoserver.community
- gs-ogcapi-changeset
- ${project.version}
-
-
- org.geoserver.community
- gs-ogcapi-tiled-features
- ${project.version}
-
-
- org.geoserver.community
- gs-ogcapi-dggs
- ${project.version}
-
-
- org.geoserver.community
- gs-web-ogcapi
- ${project.version}
-
-
- org.geoserver.community
- gs-web-dggs
- ${project.version}
-
-
- org.geoserver.community
- gs-dggs-clickhouse
- ${project.version}
-
-
- org.geoserver.community
- gs-ogcapi-coverages
- ${project.version}
-
-
- org.geoserver.community
- gs-importer-jdbc
- ${project.version}
-
-
- org.geoserver.community
- gs-features-autopopulate-core
- ${project.version}
-
-
- org.geoserver.community
- gs-features-templating-core
- ${project.version}
-
-
- org.geoserver.community
- gs-features-templating-ows
- ${project.version}
-
-
- org.geoserver.community
- gs-features-templating-ogcapi
- ${project.version}
-
-
- org.geoserver.community
- gs-features-templating-web
- ${project.version}
-
-
- org.geoserver.community
- gs-features-templating-rest
- ${project.version}
-
-
- org.geoserver.community
- gs-gsr
- ${project.version}
-
-
- org.geoserver.community
- gs-cog
- ${project.version}
-
-
- org.geoserver.community
- gs-smart-data-loader
- ${project.version}
-
-
- org.geoserver.community
- gs-cov-json
- ${project.version}
-
-
- org.geoserver.community
- gs-mongodb-schemaless
- ${project.version}
-
-
- org.geoserver.community
- gs-schemaless-core
- ${project.version}
-
-
- org.geoserver.community
- gs-web-service-auth
- ${project.version}
-
-
- org.geoserver.community
- gs-vsi
- ${project.version}
-
-
- org.geoserver.community
- gs-libdeflate
- ${project.version}
-
-
- org.geotools
- gt-stac-store
- ${gt.version}
-
-
- org.geotools
- gt-vector-mosaic
- ${gt.version}
-
-
- org.geoserver.community
- gs-vector-mosaic
- ${project.version}
-
-
- org.geoserver.community
- gs-proxy-base-ext
- ${project.version}
-
-
- org.geoserver
- gs-imagemap
- ${project.version}
-
-
- org.geoserver
- gs-xslt
- ${project.version}
-
-
- org.geoserver.community
- gs-datadir-catalog-loader
- ${project.version}
-
-
- org.geoserver.community
- gs-wps-longitudinal-profile
- ${project.version}
-
-
- org.geoserver.community
- gs-monitor-kafka
- ${project.version}
-
-
- org.geoserver.community
- gs-graticule
- ${project.version}
-
-
- org.geoserver.community
- gs-wfs-freemarker
- ${project.version}
-
-
-
-
-
-
- maven-resources-plugin
-
-
- copy-resources
- process-resources
-
- copy-resources
-
-
- ${project.build.directory}/html-template
-
-
- ../../release/src/markdown/html
- true
-
-
-
-
-
-
-
- com.ruleoftech
- markdown-page-generator-plugin
-
-
- licenses
- process-resources
-
- generate
-
-
- ${project.basedir}/../../../licenses
- ${project.build.directory}/html/licenses
-
-
-
-
- false
- true
- ${project.build.directory}/html-template/header.html
- ${project.build.directory}/html-template/footer.html
- TABLES,FENCED_CODE_BLOCKS,AUTOLINKS,FORCELISTITEMPARA
- true
- md,txt
-
-
-
- maven-dependency-plugin
-
-
- install
-
- copy-dependencies
-
-
-
-
-
- maven-antrun-plugin
-
-
- install
-
- run
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- rest-ext
-
-
- rest-ext
-
-
-
-
- org.geoserver.community
- gs-rest-ext
- ${project.version}
-
-
-
-
- monitor-hibernate
-
-
- org.geoserver.community
- gs-monitor-hibernate
- ${project.version}
-
-
-
-
- monitor-kafka
-
-
- org.geoserver.community
- gs-monitor-kafka
- ${project.version}
-
-
-
-
- rest-upload
-
-
- org.geoserver.community
- gs-rest-upload
- ${project.version}
-
-
-
-
-
diff --git a/src/community/rest-ext/pom.xml b/src/community/rest-ext/pom.xml
index 9d1047f0d49..3a01db10659 100644
--- a/src/community/rest-ext/pom.xml
+++ b/src/community/rest-ext/pom.xml
@@ -14,6 +14,7 @@
REST plugin community module
http://maven.apache.org
+
UTF-8
diff --git a/src/community/release/ext-rest-ext.xml b/src/community/rest-ext/src/assembly/assembly.xml
similarity index 59%
rename from src/community/release/ext-rest-ext.xml
rename to src/community/rest-ext/src/assembly/assembly.xml
index e080a5433ec..8929fa6dd9d 100644
--- a/src/community/release/ext-rest-ext.xml
+++ b/src/community/rest-ext/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-rest-ext*.jar
diff --git a/src/community/rest-upload/pom.xml b/src/community/rest-upload/pom.xml
index b78f9757057..4004f02b8dc 100644
--- a/src/community/rest-upload/pom.xml
+++ b/src/community/rest-upload/pom.xml
@@ -48,4 +48,6 @@
+
+
diff --git a/src/community/release/ext-rest-upload.xml b/src/community/rest-upload/src/assembly/assembly.xml
similarity index 67%
rename from src/community/release/ext-rest-upload.xml
rename to src/community/rest-upload/src/assembly/assembly.xml
index b024aa3ee57..aae0ca7650b 100644
--- a/src/community/release/ext-rest-upload.xml
+++ b/src/community/rest-upload/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
*rest-upload*
diff --git a/src/community/s3-geotiff/pom.xml b/src/community/s3-geotiff/pom.xml
index e5a3d329658..0449f29f587 100644
--- a/src/community/s3-geotiff/pom.xml
+++ b/src/community/s3-geotiff/pom.xml
@@ -22,5 +22,4 @@
gs-web-core
-
diff --git a/src/community/release/ext-s3-geotiff.xml b/src/community/s3-geotiff/src/assembly/assembly.xml
similarity index 69%
rename from src/community/release/ext-s3-geotiff.xml
rename to src/community/s3-geotiff/src/assembly/assembly.xml
index 3723b14e77c..0ea76cb5921 100644
--- a/src/community/release/ext-s3-geotiff.xml
+++ b/src/community/s3-geotiff/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
*s3-geotiff*.jar
diff --git a/src/community/release/ext-saml.xml b/src/community/saml/src/assembly/assembly.xml
similarity index 77%
rename from src/community/release/ext-saml.xml
rename to src/community/saml/src/assembly/assembly.xml
index c4a4b56f74b..96b34fb0322 100644
--- a/src/community/release/ext-saml.xml
+++ b/src/community/saml/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
bcprov-jdk15-1.46.jar
diff --git a/src/community/schemaless-features/mongodb-schemaless/pom.xml b/src/community/schemaless-features/mongodb-schemaless/pom.xml
index 89071d5c94b..a2569eb0563 100644
--- a/src/community/schemaless-features/mongodb-schemaless/pom.xml
+++ b/src/community/schemaless-features/mongodb-schemaless/pom.xml
@@ -77,5 +77,4 @@
-
diff --git a/src/community/release/ext-mongodb-schemaless.xml b/src/community/schemaless-features/mongodb-schemaless/src/assembly/assembly.xml
similarity index 68%
rename from src/community/release/ext-mongodb-schemaless.xml
rename to src/community/schemaless-features/mongodb-schemaless/src/assembly/assembly.xml
index c1c56aa6fd6..e8a43d83123 100644
--- a/src/community/release/ext-mongodb-schemaless.xml
+++ b/src/community/schemaless-features/mongodb-schemaless/src/assembly/assembly.xml
@@ -5,8 +5,15 @@
false
+
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
- release/target/dependency
+ target/dependency
gs-schemaless-*.jar
diff --git a/src/community/release/ext-keycloak.xml b/src/community/security/keycloak/src/assembly/assembly.xml
similarity index 76%
rename from src/community/release/ext-keycloak.xml
rename to src/community/security/keycloak/src/assembly/assembly.xml
index 7bd60629e90..9465569be03 100644
--- a/src/community/release/ext-keycloak.xml
+++ b/src/community/security/keycloak/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-sec-keycloak*
diff --git a/src/community/release/ext-oauth2-geonode.xml b/src/community/security/oauth2-geonode/src/assembly/assembly.xml
similarity index 76%
rename from src/community/release/ext-oauth2-geonode.xml
rename to src/community/security/oauth2-geonode/src/assembly/assembly.xml
index 1eccd4ad52f..f712297eb9a 100644
--- a/src/community/release/ext-oauth2-geonode.xml
+++ b/src/community/security/oauth2-geonode/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-sec-oauth2-core*
diff --git a/src/community/release/ext-oauth2-github.xml b/src/community/security/oauth2-github/src/assembly/assembly.xml
similarity index 76%
rename from src/community/release/ext-oauth2-github.xml
rename to src/community/security/oauth2-github/src/assembly/assembly.xml
index 2951c74f0d1..8581869187d 100644
--- a/src/community/release/ext-oauth2-github.xml
+++ b/src/community/security/oauth2-github/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-sec-oauth2-core*
diff --git a/src/community/release/ext-oauth2-google.xml b/src/community/security/oauth2-google/src/assembly/assembly.xml
similarity index 76%
rename from src/community/release/ext-oauth2-google.xml
rename to src/community/security/oauth2-google/src/assembly/assembly.xml
index 344ef8edc68..ada03707f63 100644
--- a/src/community/release/ext-oauth2-google.xml
+++ b/src/community/security/oauth2-google/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-sec-oauth2-core*
diff --git a/src/community/security/oauth2-openid-connect/oauth2-openid-connect-assembly/pom.xml b/src/community/security/oauth2-openid-connect/oauth2-openid-connect-assembly/pom.xml
new file mode 100644
index 00000000000..b71e5e13d72
--- /dev/null
+++ b/src/community/security/oauth2-openid-connect/oauth2-openid-connect-assembly/pom.xml
@@ -0,0 +1,38 @@
+
+
+
+
+ 4.0.0
+
+
+ org.geoserver.community.security
+ gs-sec-oauth2-openid-connect
+ 2.26-SNAPSHOT
+
+
+ gs-sec-oauth2-openid-connect-assembly
+ jar
+ GeoServer OAuth2 Connect Security - OpenId Connect zip assembly
+
+
+
+
+ org.geoserver.community.security
+ gs-sec-oauth2-openid-connect-core
+ ${project.version}
+
+
+
+ org.geoserver.community.security
+ gs-sec-oauth2-openid-connect-web
+ ${project.version}
+
+
+
+
+
diff --git a/src/community/release/ext-oauth2-openid-connect.xml b/src/community/security/oauth2-openid-connect/oauth2-openid-connect-assembly/src/assembly/assembly.xml
similarity index 84%
rename from src/community/release/ext-oauth2-openid-connect.xml
rename to src/community/security/oauth2-openid-connect/oauth2-openid-connect-assembly/src/assembly/assembly.xml
index f068efb694e..d84132e1805 100644
--- a/src/community/release/ext-oauth2-openid-connect.xml
+++ b/src/community/security/oauth2-openid-connect/oauth2-openid-connect-assembly/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-sec-oauth2-core*
diff --git a/src/community/security/oauth2-openid-connect/pom.xml b/src/community/security/oauth2-openid-connect/pom.xml
index 70c23a3ac3d..af0e7a260f5 100644
--- a/src/community/security/oauth2-openid-connect/pom.xml
+++ b/src/community/security/oauth2-openid-connect/pom.xml
@@ -23,6 +23,7 @@
oauth2-openid-connect-core
oauth2-openid-connect-web
+ oauth2-openid-connect-assembly
diff --git a/src/community/smart-data-loader/pom.xml b/src/community/smart-data-loader/pom.xml
index bea8342a807..96d356035b9 100644
--- a/src/community/smart-data-loader/pom.xml
+++ b/src/community/smart-data-loader/pom.xml
@@ -101,5 +101,4 @@
test
-
diff --git a/src/community/release/ext-smart-data-loader.xml b/src/community/smart-data-loader/src/assembly/assembly.xml
similarity index 57%
rename from src/community/release/ext-smart-data-loader.xml
rename to src/community/smart-data-loader/src/assembly/assembly.xml
index 7fdf5ae3fde..7410cd90e97 100644
--- a/src/community/release/ext-smart-data-loader.xml
+++ b/src/community/smart-data-loader/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-smart-data-loader*.jar
diff --git a/src/community/solr/pom.xml b/src/community/solr/pom.xml
index f8774eaf489..cbd1e9b69fb 100644
--- a/src/community/solr/pom.xml
+++ b/src/community/solr/pom.xml
@@ -46,5 +46,4 @@
test
-
diff --git a/src/community/release/ext-solr.xml b/src/community/solr/src/assembly/assembly.xml
similarity index 67%
rename from src/community/release/ext-solr.xml
rename to src/community/solr/src/assembly/assembly.xml
index b43c3279133..7101fc34779 100644
--- a/src/community/release/ext-solr.xml
+++ b/src/community/solr/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
*solr*
diff --git a/src/community/spatialjson/pom.xml b/src/community/spatialjson/pom.xml
index bff9fa9365a..16bc7d87198 100644
--- a/src/community/spatialjson/pom.xml
+++ b/src/community/spatialjson/pom.xml
@@ -33,5 +33,4 @@
guava
-
diff --git a/src/community/release/ext-spatialjson.xml b/src/community/spatialjson/src/assembly/assembly.xml
similarity index 59%
rename from src/community/release/ext-spatialjson.xml
rename to src/community/spatialjson/src/assembly/assembly.xml
index cd0066f4a89..43a3c9944ec 100644
--- a/src/community/release/ext-spatialjson.xml
+++ b/src/community/spatialjson/src/assembly/assembly.xml
@@ -5,8 +5,15 @@
false
+
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
- release/target/dependency
+ target/dependency
gs-spatialjson*.jar
diff --git a/src/community/stac-datastore/pom.xml b/src/community/stac-datastore/pom.xml
new file mode 100644
index 00000000000..286029316ed
--- /dev/null
+++ b/src/community/stac-datastore/pom.xml
@@ -0,0 +1,30 @@
+
+
+
+ 4.0.0
+
+ org.geoserver
+ community
+ 2.26-SNAPSHOT
+
+ org.geoserver.community
+ gs-stac-datastore
+ jar
+ STAC datastore
+
+
+ yyyy
+ ${maven.build.timestamp}
+
+
+
+ org.geotools
+ gt-stac-store
+ ${gt.version}
+
+
+
diff --git a/src/community/release/ext-stac-datastore.xml b/src/community/stac-datastore/src/assembly/assembly.xml
similarity index 88%
rename from src/community/release/ext-stac-datastore.xml
rename to src/community/stac-datastore/src/assembly/assembly.xml
index faca58cbe60..dd26eb46461 100644
--- a/src/community/release/ext-stac-datastore.xml
+++ b/src/community/stac-datastore/src/assembly/assembly.xml
@@ -6,7 +6,7 @@
false
- release/target/dependency
+ target/dependency
gt-stac-store*.jar
diff --git a/src/community/taskmanager/core/pom.xml b/src/community/taskmanager/core/pom.xml
index d058dacc167..1aab2a91334 100644
--- a/src/community/taskmanager/core/pom.xml
+++ b/src/community/taskmanager/core/pom.xml
@@ -236,5 +236,4 @@
-
diff --git a/src/community/release/ext-taskmanager-core.xml b/src/community/taskmanager/core/src/assembly/assembly.xml
similarity index 72%
rename from src/community/release/ext-taskmanager-core.xml
rename to src/community/taskmanager/core/src/assembly/assembly.xml
index 0f26139e27e..66e7754ed8f 100644
--- a/src/community/release/ext-taskmanager-core.xml
+++ b/src/community/taskmanager/core/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-taskmanager-core*.jar
diff --git a/src/community/taskmanager/s3/pom.xml b/src/community/taskmanager/s3/pom.xml
index d234676c22e..2e048df4714 100644
--- a/src/community/taskmanager/s3/pom.xml
+++ b/src/community/taskmanager/s3/pom.xml
@@ -57,5 +57,4 @@
-
diff --git a/src/community/release/ext-taskmanager-s3.xml b/src/community/taskmanager/s3/src/assembly/assembly.xml
similarity index 62%
rename from src/community/release/ext-taskmanager-s3.xml
rename to src/community/taskmanager/s3/src/assembly/assembly.xml
index 09af209ba95..a959da8ffe0 100644
--- a/src/community/release/ext-taskmanager-s3.xml
+++ b/src/community/taskmanager/s3/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-taskmanager-s3*.jar
diff --git a/src/community/vector-mosaic/pom.xml b/src/community/vector-mosaic/pom.xml
index 1559a180c44..3a7d9c5260f 100644
--- a/src/community/vector-mosaic/pom.xml
+++ b/src/community/vector-mosaic/pom.xml
@@ -29,5 +29,4 @@
gs-web-core
-
diff --git a/src/community/release/ext-vector-mosaic-datastore.xml b/src/community/vector-mosaic/src/assembly/assembly.xml
similarity index 62%
rename from src/community/release/ext-vector-mosaic-datastore.xml
rename to src/community/vector-mosaic/src/assembly/assembly.xml
index dae4c451be7..601e72937b7 100644
--- a/src/community/release/ext-vector-mosaic-datastore.xml
+++ b/src/community/vector-mosaic/src/assembly/assembly.xml
@@ -5,8 +5,15 @@
false
+
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
- release/target/dependency
+ target/dependency
gt-vector-mosaic*.jar
diff --git a/src/community/vsi/pom.xml b/src/community/vsi/pom.xml
index bee204b61d0..fab8fe07cf5 100644
--- a/src/community/vsi/pom.xml
+++ b/src/community/vsi/pom.xml
@@ -22,5 +22,4 @@
gs-web-core
-
diff --git a/src/community/release/ext-vsi.xml b/src/community/vsi/src/assembly/assembly.xml
similarity index 55%
rename from src/community/release/ext-vsi.xml
rename to src/community/vsi/src/assembly/assembly.xml
index b8875b56dca..02154fa40bf 100644
--- a/src/community/release/ext-vsi.xml
+++ b/src/community/vsi/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
*vsi*.jar
diff --git a/src/community/web-ogr/pom.xml b/src/community/web-ogr/pom.xml
index 21983006611..613f339ae38 100644
--- a/src/community/web-ogr/pom.xml
+++ b/src/community/web-ogr/pom.xml
@@ -10,6 +10,7 @@
gs-web-ogr
jar
OGR datastore panel
+
org.geoserver.web
diff --git a/src/community/release/ext-ogr-datastore.xml b/src/community/web-ogr/src/assembly/assembly.xml
similarity index 65%
rename from src/community/release/ext-ogr-datastore.xml
rename to src/community/web-ogr/src/assembly/assembly.xml
index ce3645b8a7b..8620ab3e67b 100644
--- a/src/community/release/ext-ogr-datastore.xml
+++ b/src/community/web-ogr/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-web-ogr*.jar
diff --git a/src/community/web-service-auth/pom.xml b/src/community/web-service-auth/pom.xml
index 79e84e4945f..422b28d9feb 100644
--- a/src/community/web-service-auth/pom.xml
+++ b/src/community/web-service-auth/pom.xml
@@ -11,6 +11,7 @@
2.26-SNAPSHOT
jar
Web Service Authentication Provider
+
org.geoserver.web
diff --git a/src/community/release/ext-web-service-auth.xml b/src/community/web-service-auth/src/assembly/assembly.xml
similarity index 62%
rename from src/community/release/ext-web-service-auth.xml
rename to src/community/web-service-auth/src/assembly/assembly.xml
index 2d06cfeb206..4c311d953e1 100644
--- a/src/community/release/ext-web-service-auth.xml
+++ b/src/community/web-service-auth/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-web-service-auth*.jar
diff --git a/src/community/webp/pom.xml b/src/community/webp/pom.xml
index 884ac51546d..a0da82741d7 100644
--- a/src/community/webp/pom.xml
+++ b/src/community/webp/pom.xml
@@ -34,5 +34,4 @@
0.2.2
-
diff --git a/src/community/release/ext-webp.xml b/src/community/webp/src/assembly/assembly.xml
similarity index 62%
rename from src/community/release/ext-webp.xml
rename to src/community/webp/src/assembly/assembly.xml
index b5ebe9e7ef1..fc151a4fb08 100644
--- a/src/community/release/ext-webp.xml
+++ b/src/community/webp/src/assembly/assembly.xml
@@ -5,8 +5,15 @@
false
+
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
- release/target/dependency
+ target/dependency
gs-webp*.jar
diff --git a/src/community/release/ext-wfs-freemarker.xml b/src/community/wfs-freemarker/src/assembly/assembly.xml
similarity index 57%
rename from src/community/release/ext-wfs-freemarker.xml
rename to src/community/wfs-freemarker/src/assembly/assembly.xml
index c2a11d780a5..dc8747cc539 100644
--- a/src/community/release/ext-wfs-freemarker.xml
+++ b/src/community/wfs-freemarker/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-wfs-freemarker*.jar
diff --git a/src/community/release/ext-wps-longitudinal-profile.xml b/src/community/wps-longitudinal-profile/src/assembly/assembly.xml
similarity index 57%
rename from src/community/release/ext-wps-longitudinal-profile.xml
rename to src/community/wps-longitudinal-profile/src/assembly/assembly.xml
index 5b2d34cccfa..3d702d9c315 100644
--- a/src/community/release/ext-wps-longitudinal-profile.xml
+++ b/src/community/wps-longitudinal-profile/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-wps-longitudinal-profile*.jar
diff --git a/src/community/wps-remote/pom.xml b/src/community/wps-remote/pom.xml
index 152c4a1fac4..136a6de29ce 100644
--- a/src/community/wps-remote/pom.xml
+++ b/src/community/wps-remote/pom.xml
@@ -16,6 +16,7 @@
Web Processing Service - Remote processes invocation
+
4.0.5
0.7
diff --git a/src/community/release/ext-wps-remote.xml b/src/community/wps-remote/src/assembly/assembly.xml
similarity index 85%
rename from src/community/release/ext-wps-remote.xml
rename to src/community/wps-remote/src/assembly/assembly.xml
index c11894b79e3..530683c75a2 100644
--- a/src/community/release/ext-wps-remote.xml
+++ b/src/community/wps-remote/src/assembly/assembly.xml
@@ -6,7 +6,14 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-wps-remote*.jar
diff --git a/src/community/release/ext-xslt.xml b/src/community/xslt/src/assembly/assembly.xml
similarity index 60%
rename from src/community/release/ext-xslt.xml
rename to src/community/xslt/src/assembly/assembly.xml
index da93638978a..ce349dd2c8f 100644
--- a/src/community/release/ext-xslt.xml
+++ b/src/community/xslt/src/assembly/assembly.xml
@@ -6,14 +6,21 @@
false
- release/target/dependency
+ target
+
+
+ ${artifactId}-${project.version}.jar
+
+
+
+ target/dependency
gs-xslt*
- release/target/html/licenses
+ ${geoserverBaseDir}/community/target/html/licenses
GPL.html
diff --git a/src/extension/mapml/src/main/java/org/geoserver/mapml/MapMLConstants.java b/src/extension/mapml/src/main/java/org/geoserver/mapml/MapMLConstants.java
index 5dcfb3386b9..b89279f0a44 100644
--- a/src/extension/mapml/src/main/java/org/geoserver/mapml/MapMLConstants.java
+++ b/src/extension/mapml/src/main/java/org/geoserver/mapml/MapMLConstants.java
@@ -69,9 +69,15 @@ public final class MapMLConstants {
/** DIMENSION */
public static final String DIMENSION = "dimension";
+ /** DEFAULT MIME TYPE */
+ public static final String MIME = "mime";
+
/** MAPML_DIMENSION */
public static final String MAPML_DIMENSION = MAPML_PREFIX + DIMENSION;
+ /** MAPML_DIMENSION */
+ public static final String MAPML_MIME = MAPML_PREFIX + MIME;
+
/** SHARD_LIST */
public static final String SHARD_LIST = "shardList";
diff --git a/src/extension/mapml/src/main/java/org/geoserver/mapml/MapMLDocumentBuilder.java b/src/extension/mapml/src/main/java/org/geoserver/mapml/MapMLDocumentBuilder.java
index b1fbe07b539..587c27b7674 100644
--- a/src/extension/mapml/src/main/java/org/geoserver/mapml/MapMLDocumentBuilder.java
+++ b/src/extension/mapml/src/main/java/org/geoserver/mapml/MapMLDocumentBuilder.java
@@ -108,6 +108,8 @@ public class MapMLDocumentBuilder {
public static final String MINIMUM_WIDTH_HEIGHT = "1";
private static final int BYTES_PER_PIXEL_TRANSPARENT = 4;
private static final int BYTES_PER_KILOBYTE = 1024;
+ public static final String DEFAULT_MIME_TYPE = "image/png";
+
private final WMS wms;
private final GeoServer geoServer;
@@ -129,7 +131,7 @@ public class MapMLDocumentBuilder {
private String defaultStyle;
private String layerTitle;
- private String imageFormat;
+ private String imageFormat = DEFAULT_MIME_TYPE;
private String baseUrl;
private String baseUrlPattern;
private Boolean enableSharding;
@@ -326,7 +328,7 @@ public void initialize() throws ServiceException {
projType = mapMLLayerMetadata.getProjType();
layerTitle = layerTitlesCommaDelimited;
layerMeta = mapMLLayerMetadata.getLayerMeta();
- imageFormat = (String) format.orElse("image/png");
+ imageFormat = (String) format.orElse(mapMLLayerMetadata.getDefaultMimeType());
baseUrl = ResponseUtils.baseURL(request);
baseUrlPattern = baseUrl;
// handle shard config
@@ -402,6 +404,7 @@ private MapMLLayerMetadata layersToOneMapMLLayerMetadata(List layers)
mapMLLayerMetadata.setQueryable(layersToQueryable(layers));
mapMLLayerMetadata.setLayerLabel(layersToLabel(layers));
mapMLLayerMetadata.setProjType(projType);
+ mapMLLayerMetadata.setDefaultMimeType(imageFormat);
return mapMLLayerMetadata;
}
@@ -541,6 +544,7 @@ private MapMLLayerMetadata layerToMapMLLayerMetadata(RawLayer layer, String styl
String styleName = style != null ? style : "";
String cqlFilter = null;
boolean tileLayerExists = false;
+ String defaultMimeType = DEFAULT_MIME_TYPE;
if (isLayerGroup) {
layerGroupInfo = (LayerGroupInfo) layer.getPublishedInfo();
if (layerGroupInfo == null) {
@@ -558,6 +562,10 @@ private MapMLLayerMetadata layerToMapMLLayerMetadata(RawLayer layer, String styl
queryable = !layerGroupInfo.isQueryDisabled();
layerName = layerGroupInfo.getName();
layerTitle = getTitle(layerGroupInfo, layerName);
+ defaultMimeType =
+ Optional.ofNullable(layerGroupInfo.getMetadata().get(MapMLConstants.MAPML_MIME))
+ .orElse(DEFAULT_MIME_TYPE)
+ .toString();
} else {
layerInfo = (LayerInfo) layer.getPublishedInfo();
resourceInfo = layerInfo.getResource();
@@ -573,6 +581,10 @@ private MapMLLayerMetadata layerToMapMLLayerMetadata(RawLayer layer, String styl
layerTitle = getTitle(layerInfo, layerName);
// set the actual style name from the layer info
if (style == null) styleName = layerInfo.getDefaultStyle().getName();
+ defaultMimeType =
+ Optional.ofNullable(resourceInfo.getMetadata().get(MapMLConstants.MAPML_MIME))
+ .orElse(DEFAULT_MIME_TYPE)
+ .toString();
}
ProjType projType = parseProjType();
cqlFilter = cql != null ? cql : "";
@@ -600,7 +612,8 @@ private MapMLLayerMetadata layerToMapMLLayerMetadata(RawLayer layer, String styl
tileLayerExists,
useTiles,
useFeatures,
- cqlFilter);
+ cqlFilter,
+ defaultMimeType);
}
/**
@@ -1792,7 +1805,7 @@ private String buildGetMap(
String formatOptions =
MapMLConstants.MAPML_WMS_MIME_TYPE_OPTION
+ ":"
- + escapeHtml4((String) format.orElse("image/png"));
+ + escapeHtml4((String) format.orElse(imageFormat));
kvp.put("format_options", formatOptions);
kvp.put("SERVICE", "WMS");
kvp.put("REQUEST", "GetMap");
@@ -1938,6 +1951,7 @@ static class MapMLLayerMetadata {
private ReferencedEnvelope bbbox;
private String layerLabel;
+ private String defaultMimeType;
/**
* get if the layer uses features
@@ -1974,6 +1988,7 @@ public void setUseFeatures(boolean useFeatures) {
* @param styleName String
* @param tileLayerExists boolean
* @param useTiles boolean
+ * @param defaultMimeType String
*/
public MapMLLayerMetadata(
LayerInfo layerInfo,
@@ -1991,7 +2006,8 @@ public MapMLLayerMetadata(
boolean tileLayerExists,
boolean useTiles,
boolean useFeatures,
- String cqFilter) {
+ String cqFilter,
+ String defaultMimeType) {
this.layerInfo = layerInfo;
this.bbox = bbox;
this.isLayerGroup = isLayerGroup;
@@ -2008,6 +2024,7 @@ public MapMLLayerMetadata(
this.useTiles = useTiles;
this.useFeatures = useFeatures;
this.cqlFilter = cqFilter;
+ this.defaultMimeType = defaultMimeType;
}
/** Constructor */
@@ -2366,5 +2383,23 @@ public String getCqlFilter() {
public void setCqlFilter(String cqlFilter) {
this.cqlFilter = cqlFilter;
}
+
+ /**
+ * get the default mime type
+ *
+ * @return String
+ */
+ public String getDefaultMimeType() {
+ return defaultMimeType;
+ }
+
+ /**
+ * set the default mime type
+ *
+ * @param defaultMimeType String
+ */
+ public void setDefaultMimeType(String defaultMimeType) {
+ this.defaultMimeType = defaultMimeType;
+ }
}
}
diff --git a/src/extension/mapml/src/main/java/org/geoserver/mapml/MapMLLayerConfigurationPanel.html b/src/extension/mapml/src/main/java/org/geoserver/mapml/MapMLLayerConfigurationPanel.html
index d64afbdb28f..2f0426d5dc6 100644
--- a/src/extension/mapml/src/main/java/org/geoserver/mapml/MapMLLayerConfigurationPanel.html
+++ b/src/extension/mapml/src/main/java/org/geoserver/mapml/MapMLLayerConfigurationPanel.html
@@ -135,6 +135,21 @@
+
+
+
diff --git a/src/extension/mapml/src/main/java/org/geoserver/mapml/MapMLLayerConfigurationPanel.java b/src/extension/mapml/src/main/java/org/geoserver/mapml/MapMLLayerConfigurationPanel.java
index b18725c2320..f7e9101040d 100644
--- a/src/extension/mapml/src/main/java/org/geoserver/mapml/MapMLLayerConfigurationPanel.java
+++ b/src/extension/mapml/src/main/java/org/geoserver/mapml/MapMLLayerConfigurationPanel.java
@@ -4,6 +4,8 @@
*/
package org.geoserver.mapml;
+import static org.geoserver.mapml.MapMLConstants.MAPML_USE_TILES;
+
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Collections;
@@ -12,6 +14,10 @@
import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+import org.apache.wicket.ajax.AjaxRequestTarget;
+import org.apache.wicket.ajax.form.OnChangeAjaxBehavior;
import org.apache.wicket.markup.html.form.CheckBox;
import org.apache.wicket.markup.html.form.DropDownChoice;
import org.apache.wicket.markup.html.form.ListMultipleChoice;
@@ -32,11 +38,16 @@
import org.geoserver.catalog.PublishedType;
import org.geoserver.catalog.ResourceInfo;
import org.geoserver.catalog.ResourcePool;
+import org.geoserver.gwc.GWC;
+import org.geoserver.gwc.layer.GeoServerTileLayer;
+import org.geoserver.gwc.layer.GeoServerTileLayerInfo;
import org.geoserver.web.GeoServerApplication;
import org.geoserver.web.publish.PublishedConfigurationPanel;
import org.geoserver.web.util.MapModel;
import org.geoserver.web.wicket.ParamResourceModel;
+import org.geoserver.wms.WMS;
import org.geotools.util.logging.Logging;
+import org.geowebcache.layer.TileLayer;
/**
* Resource configuration panel for MapML
@@ -48,8 +59,16 @@ public class MapMLLayerConfigurationPanel extends PublishedConfigurationPanel featureCaptionAttributes;
+ private static final String MIME_PATTERN = "png|jpeg";
+
+ public static final Pattern mimePattern =
+ Pattern.compile(MIME_PATTERN, Pattern.CASE_INSENSITIVE);
+
+ DropDownChoice mime;
+
/**
* Adds MapML configuration panel
*
@@ -80,6 +99,15 @@ public MapMLLayerConfigurationPanel(final String panelId, final IModel(model, MapMLConstants.RESOURCE_METADATA),
MapMLConstants.MAPML_USE_TILES);
CheckBox useTiles = new CheckBox(MapMLConstants.USE_TILES, useTilesModel);
+ useTiles.add(
+ new OnChangeAjaxBehavior() {
+ @Override
+ protected void onUpdate(AjaxRequestTarget ajaxRequestTarget) {
+ ajaxRequestTarget.add(mime);
+ boolean useTilesChecked = useTiles.getConvertedInput();
+ mime.setChoices(getAvailableMimeTypes(model.getObject(), useTilesChecked));
+ }
+ });
add(useTiles);
// add the checkbox to select features or not
@@ -93,6 +121,15 @@ public MapMLLayerConfigurationPanel(final String panelId, final IModel mimeModel =
+ new MapModel<>(
+ new PropertyModel(model, MapMLConstants.RESOURCE_METADATA),
+ MapMLConstants.MAPML_MIME);
+ boolean useTilesFromModel =
+ Boolean.TRUE.equals(
+ model.getObject()
+ .getResource()
+ .getMetadata()
+ .get(MAPML_USE_TILES, Boolean.class));
+ mime =
+ new DropDownChoice<>(
+ MapMLConstants.MIME,
+ mimeModel,
+ getAvailableMimeTypes(model.getObject(), useTilesFromModel));
+ mime.setOutputMarkupId(true);
+ mime.setNullValid(false);
+ // if we are using features, we don't use a mime type
+ if (useFeaturesModel.getObject() != null) {
+ String useFeaturesString = String.valueOf(useFeaturesModel.getObject());
+ boolean useFeaturesBoolean = Boolean.parseBoolean(useFeaturesString);
+ mime.setEnabled(!useFeaturesBoolean);
+ }
+ add(mime);
+
featureCaptionAttributes =
new ListMultipleChoice<>(
MapMLConstants.FEATURE_CAPTION_ATTRIBUTES,
@@ -147,6 +209,46 @@ public MapMLLayerConfigurationPanel(final String panelId, final IModel getAvailableMimeTypes(PublishedInfo layer, boolean useTiles) {
+ List mimeTypes = new ArrayList<>();
+ if (useTiles) {
+ GWC gwc = GWC.get();
+ if (gwc != null) {
+ try {
+ TileLayer tileLayer = gwc.getTileLayerByName(layer.prefixedName());
+ // if the useTiles flag is set and the cache is enabled we get cache mime types
+ if (tileLayer instanceof GeoServerTileLayer && tileLayer.isEnabled()) {
+ GeoServerTileLayer geoServerTileLayer = (GeoServerTileLayer) tileLayer;
+ GeoServerTileLayerInfo info = geoServerTileLayer.getInfo();
+ mimeTypes.addAll(
+ info.getMimeFormats().stream()
+ .filter(mimeType -> mimePattern.matcher(mimeType).find())
+ .collect(Collectors.toList()));
+ return mimeTypes;
+ }
+ } catch (IllegalArgumentException e) {
+ LOGGER.fine("No tile layer found for " + layer.prefixedName());
+ }
+ }
+ }
+ // if the useTiles flag is not set or the tile cache is not enabled we get WMS mime types
+ WMS wms = WMS.get();
+ if (wms != null) {
+ mimeTypes.addAll(
+ wms.getAllowedMapFormatNames().stream()
+ .filter(mimeType -> mimePattern.matcher(mimeType).find())
+ .collect(Collectors.toList()));
+ }
+
+ return mimeTypes;
+ }
+
/**
* @param layer a LayerInfo for the layer
* @return a list of strings of dimension names from the layer info
diff --git a/src/extension/mapml/src/main/java/org/geoserver/mapml/MapMLLayerGroupConfigurationPanel.html b/src/extension/mapml/src/main/java/org/geoserver/mapml/MapMLLayerGroupConfigurationPanel.html
index 8cb1dcd4375..1ab2d05c414 100644
--- a/src/extension/mapml/src/main/java/org/geoserver/mapml/MapMLLayerGroupConfigurationPanel.html
+++ b/src/extension/mapml/src/main/java/org/geoserver/mapml/MapMLLayerGroupConfigurationPanel.html
@@ -58,8 +58,24 @@ MapML Settings
+
+
+