# webapp-config: "-d" nicht mehr optional?

## Fijoldar

Hallo,

ich wollte gerade einige Web-Applikationen aktualisieren und bin dabei auf ein Problem mit der neuen webapp-config Version gestoßen.

Bisher habe ich es immer so gemacht:

```
webapp-config -h $application -U $application $version"
```

was wunderbar funktioniert hat. Damit wurde meine Applikation, die in /var/www/$application"/htdocs installiert ist, aktualisiert.

Mit Version 1.54-r1 funktioniert das leider nicht mehr. Wenn ich obigen Befehl (ohne -d Option) aufrufe, versucht das Tool die Applikation in /var/www/$application/htdocs/$application zu installieren, was natürlich fehlschlägt.

Gibt es eine Möglichkeit, das alte Verhalten zu bekommen? Wie macht ihr das?

Ich könnte natürlich "-d ./" angeben. Dadurch habe ich aber leider den Nebeneffekt, dass die Applikation dann mehrfach auftaucht, wenn ich "webapp-config -li" aufrufe.

Gruß

Fijoldar

----------

## Josef.95

Hallo Fijoldar,

hm, schau mal ob die Info aus dem Wiki https://wiki.gentoo.org/wiki/Webapp-config weiterhilft :)

Vermutlich suchst du den

-U, --upgrade

    Activate upgrade mode.

----------

## Fijoldar

Hallo Josef,

danke für den Link. Allerdings nutze ich die "--upgrade" Option bereits und genau dabei habe ich ja das Problem. Ich glaube, ich habe mich in meinem obigen Post etwas missverständlich ausgedrückt. Mein Update Versuch scheitert daran, dass webapp-config meine Applikation nicht mehr findet, da es diese standardmäßig in /var/www/$application/htdocs/$applikacation erwartet, wenn ich die "-d" Option weglasse, was ich persönlich etwas unglücklich finde.

Ich hatte gehofft, es gäbe vielleicht eine Option, die man in der config hinterlegen kann, die den default-Wert auf einen leeren Wert setzt. In den Beispiel Konfigurationen konnte ich aber leider nichts finden. Auch die Manpage gibt darüber wohl keine Auskunft.

----------

## tazinblack

hast Du mal unter /var/db/webapps/ nachgesehen ob er alles vorhandene kennt?

Hatte neulich auch ne Leiche, die er nicht mehr kannte.

Vermutlich haben die was geändert bzgl. was in der db gespeichert wird.

Ist aber nur ein Schuss ins Blaue

----------

## Fijoldar

Ja, in /var/db/webapps wird die Applikation korrekt aufgelistet.

Ich poste einfach mal ein Beispiel (anhand postfixadmin), was ich genau meine.

Installationsort (was auch in /var/db/webapps/postfixadmin/2.3.7/installs gelistet wird):

```

/var/www/postfixadmin/htdocs

```

Upgrade-Versuch:

```

$ webapp-config -h postfixadmin -U postfixadmin 2.3.8

* Install dir flag not supplied, defaulting to "postfixadmin".

* Fatal error: Cannot clean!

* Fatal error: No package installed in /var/www/postfixadmin/htdocs/postfixadmin

* Fatal error(s) - aborting

```

Wie man sieht sucht er automatisch in einem neuen Unterordner, der genauso heißt wie die Applikation.

Die Man Page sagt dazu nur folgendes:

```

       -d directory, --dir directory

           Specify where to create the virtual copy.

           The webapp-config tool allows you to create a virtual copy anywhere you want. You are no longer limited to

           installing a web-based app in /home/httpd/htdocs/<package-name>/! Simply use the -d switch to tell

           webapp-config where you want to create your virtual copy.

           directory is a directory under your htdocs dir. If you do not set the hostname correctly (by using the -h

           switch), webapp-config will look under the wrong htdocs directory!

           This option is required by the -C switch.

```

----------

## forrestfunk81

Versuchs mal mit "-d /". Meine vhosts liegen unter /var/www/subdomain.domain.tld/htdocs

```
webapp-config -U -h subdomain.domain.tld -d / postfixadmin 2.3.8
```

----------

## forrestfunk81

Hab gerade auch ein Upgrade gemacht. In der aktuellen Version 1.54-r1 von webapp-config ist wohl die Reihenfolge der Parameter wichtig. Deshalb funktioniert mein oben geposteter Befehl nicht mehr. 

```
webapp-config -U owncloud 8.2.0 -h subdomain.domain.tld -d /
```

Das bewirkt aber das gleiche.

----------

## Fijoldar

Hallo forrestfunk81,

danke für deinen Tipp. Mit diesem Weg kann man zumindest wieder aktualisieren. Einziger Nachteil, man bekommt dadurch ein Duplikat in die /var/db/webapps Datenbank. D.h. hier müsste ich dann manuell den alten Installationsort entfernen, nachdem ich das Update erfolgreich eingespielt habe. 

Insgesamt finde ich es etwas unschön, dass man ab sofort den "-d" Parameter angeben MUSS, auch wenn man ihn gar nicht braucht. Das war vorher besser gelöst (meiner Meinung nach). Auf der gentoo-user ML scheinen da auch noch ein paar drüber gestopert zu sein  :Wink: . Aber ok, das sind die Punkte, die muss man bei einer RR Distro einfach mitnehmen.

----------

