Re: Automatisches auschecken, verpacken und verteilen

Sebastian Siebert <[email protected]> Sun, 19 Dec 2010 02:15:40 +0100
Newsgroups gmane.linux.suse.programming
Message-ID <[email protected]>
Hallo Sascha,

Am 18.12.2010 23:02, schrieb Sascha 'saigkill' Manns:
> immer wieder habe ich daten ausgecheckt verpackt und manuell verschoben..
> Heute kam ich auf die Idee es etwas zu automatisieren.

Die Idee die aktuelle Sourcen automatisch aus dem Version Control System 
zu ziehen und daraus ein Package zu bauen ist nicht neu. :-)

> Ich befinde mich in /svn, und der Ordner mit den Daten ist freemedforms..
>
> Jetzt habe ich einfach mal angefangen:
> http://paste.opensuse.org/82714192
>
> In etwa den Ablauf sollte es haben.
> Erster Teil: betreten der svn repositories, svn up und wieder raus.
>
> Zweiter Teil: Packen des Paketes mit tar cvfj. Jetzt möchte ich gerne
> die Ausgabedatei im Format freemedforms-r$ISSUE.tar.bz haben.
>

Hier würde ich es anders machen. :-)

# svn export (neues Verzeichnis)

Der nachfolgende Befehl sollte eine saubere Kopie vom Arbeitsverzeichnis 
(ohne .svn) erstellen. Hier kann man sogar auch den Verzeichnisnamen 
manipulieren, um es später Revision übergreifend zu verpacken.

z.B.: programm-0.7.99-r2345/

# tar cjvf programm-0.7.99-r2345.tar.bz programm-0.7.99-r2345

> Nun kam mir die Idee, das sich die Shell, oder wer auch immer, die
> Revisionsnummer behält und dann hier einfügt.
>

Aktuelle Revision auslesen:
REVISION="`LANG="" svn info ./ | grep 'Revision:' | sed -e 
's/Revision:\s//g'`"

Danach in der Spec die Revision per sed einfügen. :-)
z.B.:
%define revision 2345

und innerhalb der Specdatei kann man die Variable %{revision} für die 
aktuelle Revision verwenden.

> Hat sowas schonmal jemand gemacht?

Jepp. ;-)


-- 
Gruß Sebastian - openSUSE Member (Freespacer)
Webseite/Blog: <http://www.sebastian-siebert.de>
Wichtiger Hinweis zur openSUSE Mailing Liste:
<http://de.opensuse.org/OpenSUSE_Mailinglisten-Netiquette>
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]