Content Delivery Network (CDN) for Jira Data Center
Content Delivery Network (CDN) for Atlassian Data Center products changes the way static resources (javascript, CSS, fonts, and static images stored in plugins) are served from a Data Center instance. Once CDN is enabled, static resources will be served from a CDN node to improve the performance for users distributed across the world.
This includes static resources that are served by plugins, so enabling this feature might affect your plugin. If you're using a WRM library properly, you shouldn't encounter any problems, but we recommend that you check the plugin compatibility, as described below.
Checking plugin compatibility with CDN
There are two reasons your plugin may be incompatible with CDN:
- Fonts embedded in your plugin may not be declared as publicly usable.
- Your plugin may use plugin points that are incompatible with CDN.
Ensuring that font resources are publicly usable
To verify font compatibility, you can use the following CDN health check endpoint:
https://ATLASSIAN_PRODUCT_INSTANCE/rest/static-asset-caching/health-checks
The endpoint has been shipped with this EAP, and will list any offending plugins. Currently, the only implemented health check is related to embedded fonts that are not declared as publicly accessible.
To declare that a resource can be publicly usable, add allow-public-use parameter set to true to the resource definition, for example:
<resource type="download" name="atlassian-icons.woff" location="css/atlassian/fonts/atlassian-icons.woff">
<param name="allow-public-use" value="true"/>
<param name="content-type" value="font/x-woff"/>
</resource>
Note that the font license may impose restrictions on its distribution that make such declarations violate the license terms. Such plugins will not be compatible with CDN.
Ensuring that plugin points incompatible with CDN are not used
Some plugin points are not compatible with CDN. You can use the following endpoints to list the incompatible plugins:
https://ATLASSIAN_PRODUCT_INSTANCE/rest/webResources/1.0/deprecatedDescriptors
For more information about these deprecated descriptions, see Stateless web-resource transforms and conditions.
The only plugin that is allowed to be reported by this endpoint is the Jira issue collector plugin.