Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

De Quaestor wiki heeft een aantal onderdelen waarbij sommige stukken tekst steeds terug komen, zoals de Quick Links onderaan een beschrijving van een attribute. Aangezien er 258 attributen en dus 258 artikelen staan waarin deze links moeten komen is dit een hoop werk om handmatig te doen. Ook komt het de precisie niet ten goede als dit met de hand wordt gedaan en moet de tekst mogelijk later weer aangepast worden. Bij dit soort situaties is de maker van de documentatie (en eigenlijk ook de gebruikers) gebaat bij een tool die dit middels een script in een keer kan doen. Confluence CLI lijkt deze mogelijkheid, en nog veel meer, te bieden

Werking

De CLI wordt geleverd met een aardig uitgebreide documentatie. Naast deze documentatie beschrijft deze blog hoe de installatie van CLI moet gebeuren. Hieronder in een notendop wat er moet gebeuren om de CLI werkend te krijgen.

...

Ik heb ergens het idee dat er een soort reporting moet zijn (als een actie mislukt bijvoorbeeld) maar dat heb ik niet. Mogelijk vanwege mijn aangepaste batch. 

Voorbeelden

Find en Replace

Zelf heb ik deze veelvuldig gebruikt, erg handig als je een groot aantal pagina's hebt waarvoor hetzelfde stuk tekst moet vervangen voor iets anders (of verwijderen). Dit kan op 2 manieren. 

Manier 1

De 1ste manier werkt met een lijst match cases wat op de volgende manier wordt geformateerd:

--findReplace "find1:replace1, find2:replace2"

De actie findReplace krijgt als parameter een lijst mee waarvan de elementen zijn gescheiden door een komma. Het argument voor de dubbele punt geeft aan waar op gezocht wordt, het argument na de dubbele punt geeft aan wat daarvoor in de plaats moet komen.

Deze manier van Find & Replace lijkt in de meeste gevallen prima te werken, maar in mijn geval was het niet goed genoeg omdat het lijkt dat je hiermee geen dubbele punten kan verwijderen, aangezien dit onderdeel is van de syntax van de actie zelf. Voor dit soort gevallen is een andere manier van Find & Replace mogelijk.

Manier 2

De 2de manier werkt met regular expressions en wordt als volgt geformateerd:

--findReplaceRegex "(a )(test)(.*):\$1\$3#\$2#"

De actie is anders, namelijk findReplaceRegex. De actie is hetzelfde als findReplace afgezien van de parameter die er in gaat. Het argument voor de dubbele punt is de regex, het argument na de dubbele punt is hetgeen wat voor hetgene beschreven in de regex in de plaats moet komen. 

Praktijk voorbeeld

EDIT 4-7-12

Er is nog een manier om de CLI werkend te krijgen en dat is gewoon de JAR loslaten op java.exe in de bin map van de java instalatie:

java -jar "%dirPath%"/lib/confluence-cli-2.7.0-SNAPSHOT.jar

Als de enviroment variable niet geset is is eerst een CD actie nodig om bij de bin map te komen:

cd C:\Program Files\Java\jdk1.6.0_24\jre\bin

De actie moet natuurlijk omgeschreven worden naar jouw java instalatie.

 

Voorbeelden

Extern script uitvoeren

In het voorbeeld hierboven wordt er al een voorbeeld van gegeven; het uitvoeren van een extern script middels de run actie. Als je meer dan 1 actie achter elkaar wilt uitvoeren moet je dit doen, want in de CMD kan je maar 1 actie tegelijk uitvoeren, hoogst onhandig in de meeste gevallen natuurlijk. Er veranderd wel iets aan de werkwijze, normaal gesproken gebruik je --action om een actie aan te duiden.

Met een extern script gebruik je niet --action maar --a.  VoorbeeldIk heb manier 2 een aantal keer gebruikt om de functie en attribute beschrijvingen (80% van de wiki) van quick link bars te voorzien:

-a modifyPage --space "@space@" --title "@title@" --content "" --findReplaceRegex "(Quick).*?(links).*?(Function overview).*?(Attribute overview).*?(Constants overview).*?(Dimensions overview): " --noConvert

Dit staat in een aparte file. Met --a

...

in plaats van --action wordt een actie aangeduid. 

 Dit wordt als volgt aangeroepen: