Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Section
Column
Document Properties Marker
overridefalse
Short DescriptionShow how to deploy apps with Maven to a Confluence server: app projects and POM projects
Doctyperesourcehide
NameLightning Talk for Apptools Maven Plugin
Short Name
Parent
Parent Property
property-nameName
hide
Audience
Name List
doctyperole
render-no-hits-as-blanktrue
propertyAudience
empty-as-nonetrue

Subject

Name List
doctypesubject
namesApptools Maven Plugin
propertySubject

hide
Categories
Name List
doctypecategory
propertyCategories

Tags

Tag List
namesApptools, Maven, Plugin, Confluence, deploy, OBR
propertyTags

hide
Flagshide
Iteration

Iteration
valuefinished

hide
Image URLhide
Image
Display Property As Image
add-linktrue
property-nameImage URL
hide
Icon
Display Property As Image
add-linktrue
width144px
property-nameImage URL
hide
S Icon
Display Property As Image
add-linktrue
width72px
property-nameImage URL
hide
XS Icon
Display Property As Image
add-linktrue
width32px
property-nameImage URL
hide
XXS Icon
Display Property As Image
add-linktrue
width16px
property-nameImage URL
hide
Type

Name List
doctyperesource-type
render-no-hits-as-blanktrue
namesTalk
propertyType

hide
Media Type
Name List
doctypemediatype
render-no-hits-as-blanktrue
propertyMedia Type

Authors

Name List
doctypeperson
render-no-hits-as-blanktrue
render-list-as-comma-separated-valuestrue
namesRobert Reiner, Anton Kronseder
propertyAuthors


Publisher

Name List
doctypeorganization
render-no-hits-as-blanktrue
render-list-as-comma-separated-valuestrue
namessmartics
propertyPublisher


Version1.0hide
Publication Date


License
Source
Location
Duration
Rating
Sort Keyhide
Column
Display Property
property-nameImage
Section
titleDescription

Section
titleSummary

Layout Element
Layout Element
stylesfloat: left; margin-right: 40px; margin-top: 20px;
typepage-area

Layout Element
stylesfloat: left;
typepage-area
Section
titleContext
  • We have a add-on for Confluence with a collection of macros
  • We design a lot of blueprints (300+) in a number of doctype add-ons (apps, 15+) based on those macros
  • When we deploy a new version of one of our add-ons, we need to deploy it to different environments (DEV plus 3+)

automation required

Layout Element
stylesclear: both


Section
hidetrue
titleCurrent Solution

https://developer.atlassian.com/server/framework/atlassian-sdk/atlas-install-plugin/

atlas-install-plugin --username myadmin --password secret --plugin-key
Section
titleUse Case 1: Deploy from a Maven App Project

Artifact currently created and located in the target folder.

Code Block
languagetext
themeMidnight
titleDeploy to Local Confluence (DEV)
mvn apptools:deploy -PLOCAL
Code Block
languagetext
themeMidnight
titleDeploy to Test Enviroment (TEST)
mvn apptools:deploy -PTEST
Code Block
languagetext
themeMidnight
titleDeploy to Production (PROD)
mvn apptools:deploy -PPROD
Expand
titleMaven Configuration ...
Transclusion
documentAPPMP:Use in App Project
idsbasic-config-xml

Transclusion
documentAPPMP:Configure Servers
tagsxml

Section
titleUse Case 2: Deploy a Set of Add-ons

Set of apps is defined with the POM.


Code Block
languagetext
themeMidnight
titleDeploy latest SNAPSHOTs on Artifact Server to Test Environment
mvn apptools:deploy -PTEST -DuseLatest=SNAPSHOT

Expand
titleMaven Configuration ...
Code Block
languagexml
titlePlugin Configuration with Apps
<pluginManagement>
  <plugins>
    <plugin>
      <groupId>de.smartics.maven.plugin</groupId>
      <artifactId>apptools-maven-plugin</artifactId>
      <version>${version.apptools-maven-plugin}</version>
      <configuration>
        <order>
          <item>smartics-projectdoc-confluence$</item>
          <item>extension</item>
          <item>core</item>
        </order>

        <artifacts>
          <gav>de.smartics.atlassian.confluence:smartics-projectdoc-confluence:obr:${version.toolbox}</gav>

          <gav>de.smartics.atlassian:smartics-projectdoc-bookmarklets-extension:obr:${version.extension.bookmarklets}</gav>
          <gav>de.smartics.atlassian:smartics-projectdoc-graph-extension:obr:${version.extension.graph}</gav>
          <gav>de.smartics.atlassian:smartics-projectdoc-infosys-extension:obr:${version.extension.infosys}</gav>
          <gav>de.smartics.atlassian:smartics-projectdoc-maven-extension:obr:${version.extension.maven}</gav>
          <gav>de.smartics.atlassian:smartics-projectdoc-webapi-extension:obr:${version.extension.webapi}</gav>

          <gav>de.smartics.atlassian.confluence:smartics-projectdoc-confluence-space-core:obr:${version.doctypes.core}</gav>
          <gav>de.smartics.atlassian.confluence:smartics-projectdoc-confluence-space-agileplanning:${version.doctypes.agileplanning}</gav>
          <gav>de.smartics.atlassian.confluence:smartics-doctype-addon-app:${version.doctypes.app}</gav>
          <gav>de.smartics.atlassian.confluence:smartics-doctype-addon-cfrs:${version.doctypes.cfrs}</gav>
          <gav>de.smartics.atlassian.confluence:smartics-projectdoc-confluence-space-devdiary:obr:${version.doctypes.devdiary}</gav>
          <gav>de.smartics.atlassian.confluence:smartics-doctype-addon-impact:${version.doctypes.impact}</gav>
          <gav>de.smartics.atlassian.confluence:smartics-doctype-addon-lean:${version.doctypes.lean}</gav>
          <gav>de.smartics.atlassian.confluence:smartics-doctype-addon-okrs:${version.doctypes.okrs}</gav>
          <gav>de.smartics.atlassian.confluence:smartics-projectdoc-confluence-space-prjmgmt:${version.doctypes.prjmgmt}</gav>
          <gav>de.smartics.atlassian.confluence:smartics-projectdoc-confluence-space-riskmgmt:${version.doctypes.riskmgmt}</gav>
          <gav>de.smartics.atlassian.confluence:smartics-doctype-addon-services:${version.doctypes.services}</gav>
          <gav>de.smartics.atlassian.confluence:smartics-doctype-addon-strategy:${version.doctypes.strategy}</gav>
          <gav>de.smartics.atlassian.confluence:smartics-projectdoc-confluence-space-swdev:${version.doctypes.swdev}</gav>
          <gav>de.smartics.atlassian.confluence:smartics-projectdoc-confluence-space-teamwork:${version.doctypes.teamwork}</gav>
          <gav>de.smartics.atlassian.confluence:smartics-doctype-addon-vmodellxt:${version.doctypes.vmodellxt}</gav>
          <gav>de.smartics.atlassian.confluence:smartics-projectdoc-confluence-arc42:obr:${version.doctypes.arc42}</gav>
          <gav>de.smartics.atlassian.confluence:smartics-projectdoc-confluence-space-java:obr:${version.doctypes.java}</gav>
          <gav>de.smartics.atlassian.confluence:smartics-projectdoc-confluence-space-maven:obr:${version.doctypes.maven}</gav>
        </artifacts>
      </configuration>
    </plugin>
  ...
  </plugins>
</pluginManagement>
Section
titleWhat is next?
  1. Deploy only if not already up-to-date
  2. Check HTTP 500 on bulk deployment
Section
titleWhere can I get ...
Section
title... this presentation?

Url qr code
SizeM
URLhttps://www.smartics.eu/confluence/x/vYG0Bg

https://www.smartics.de/go/talks

Section
title... the Apptools Maven Plugin?

https://www.smartics.de/go/apptools-maven-plugin



Section
titleExcerpt
Display Table
doctypeexcerpt
render-no-hits-as-blanktrue
selectName, Short Description
restrict-to-immediate-childrentrue
sort-bySort Key, Name
Section
titleQuotes
Display Table
doctypequote
render-no-hits-as-blanktrue
selectName, Short Description
restrict-to-immediate-childrentrue
sort-bySort Key, Name
Section
titleSubordinate Resources
Display Table
doctyperesource
render-no-hits-as-blanktrue
render-modedefinition
selectName, Short Description
restrict-to-immediate-childrentrue
sort-bySort Key, Name
Section
required-permissionswrite-access
titleNotes

Section
titleReferences
Tour
render-no-hits-as-blanktrue
render-as-definition-listtrue
marker-column-property-nameTitle
replace-title-with-nametrue
TitleShort Description


Section
titleResources
Tour
render-no-hits-as-blanktrue
render-as-definition-listtrue
marker-column-property-nameTitle
replace-title-with-nametrue
TitleShort Description