Enonic XP + Jenkins

Enonic version: 6.14.3
OS: Windows

Jeg setter opp et jenkins bygg mot enonic XP. Har dere eksempler på hvordan Jenkins kan deploye applikasjonen til enonic XP ? dvs helst ikke kjøre java programmet som dere har laget for deployment (toolbox), men noe enklere som gjøres rett i Jenkins ?

Hei,

Jeg deployer både fra Jenkins og Bitbucket pipelines.

Du kan deploye en APP ved å bruke POST med en fil. Jeg kjører dette på Linux servere.

url: /admin/rest/application/install

eksempel.

    curl  <YOUR HOST>/admin/rest/application/install --user "USER:PASS"  -F file=@$FILE

Et tips er å åpne DEV tools i nettleseren når du deployer så burde du se hva som skjer.

//Runar

På windows funker det fint å bruke xcopy

xcopy /i /Y build\libs\mylib-1.0*.jar \\myserver\deploy\mylib-1.0.jar*

jeg skal deploye til en ekstern server (i forhold til jenkins serveren), så jeg må bruke http post.

Når jeg ser hva admin gui’et gjør, sender den en passe kompleks multipart post. Curl eksemplet over virker mye enklere, men du spesifiserer ikke en content-type ? Den er kanskje default med -F parameteret.

curl legger på det automagisk via -F parameteren ja. men er en multipart/form-data POST

//runar

Hei.

Vi pleier å ha en jobb som bygger appen og legger den ferdigbygde appen i en share/folder på jenkinshosten.
Dersom byggen er successful (stable) trigger den en deploy-jobb som bare er et shell command som kjører

/path/toolbox-on-jenkins/toolbox.sh install-app -a su:password -f /path/my-newly-built-app/app.jar -h myhostname.com --scheme https -p 443

Noen av disse flaggene ser jeg at ikke var dokumentert i XP docs. Vi ordner dette ganske snart.

Edit:
https://xp.readthedocs.io/en/latest/reference/toolbox/install-app.html

2 Likes

Jeg ser at jeg har lest dette spørsmålet feil.
Hva er grunnen til at dere ikke ønsker bruke toolbox? Våre jenkinsinstanser bruker Docker så der inkluderer vi bare toolbox.sh m/foldere i Dockerfile. Så da fungerer toolbox som en command i jenkins.

grunnen er at vi ikke ønsker å installere enonic XP på jenkinsserveren… Best om alt kan løses via jenkinsfile DSL eller standard plugins til Jenkins.
Vi har desverre ikke muligheten for å bruke docker eller slikt.