Page 1 of 2

Version prüfen

Posted: Sat Jan 02, 2021 10:04 am
by Stefan
Hallo,

da ich einen Docker-Container mir für die Linux Version gebaut habe, würde ich natürlich immer gerne wissen wann eine neue Version erscheint (oder das sogar automatisieren).

Daher die Frage: Gibt es eiune Möglichkeit die aktuellste Version von Syncovery für Linux zu prüfen? Also z.B. eine URL welche die aktuellste Versionsnummer bereitstellt?

Gruß
Stefan

EDIT:
Es gibt folgende URLs um neue Versionen zu prüfen:

Debian x64: https://www.syncovery.com/linver_amd64.deb.txt
tar.gz x64: https://www.syncovery.com/linver_x86_64.tar.gz.txt
tar.gz Web x64: https://www.syncovery.com/linver_x86_64-Web.tar.gz.txt
Guardian: https://www.syncovery.com/linver_guardi ... tar.gz.txt
RemoteService: https://www.syncovery.com/linver_rs_x86_64.tar.gz.txt

Re: Version prüfen

Posted: Sun Jan 03, 2021 9:39 pm
by tobias
Leider werden nicht alle Linux-Pakete immer gleichzeitig aktualisert, daher gibt es solche Textdateien nicht. Im Moment sieht es so aus, dass man den HTML-Seitentext der Downloadseite verarbeiten müsste. Ich hoffe aber, in Zukunft eine Updateprüfung implementieren zu können.

Re: Version prüfen

Posted: Tue Jan 05, 2021 6:49 pm
by Stefan
Alles klar, habe nun mir mal ein Jenkins CI eingerichtet. War ein wenig Aufwand aber es sollte nun automatisch funktionieren :D

Re: Version prüfen

Posted: Sat Jun 12, 2021 1:45 pm
by Stefan
Habe eben gesehen, dass es nun den Linux Installer für Windows gibt. Hab das natürlich gleich ausprobiert und gesehen, dass er diese URL abruft für eine Update-Prüfung: https://www.syncovery.com/linver_amd64.deb.txt

Daher meine Frage:
  • Kann man diese URL (oder auch andere) dazu verwenden, die aktuellste Version zu ermitteln?
  • Gibt es noch andere URLs über welche man Versionen prüfen kann? (z.B. den guardian)

Re: Version prüfen

Posted: Sat Jun 12, 2021 4:27 pm
by tobias
Hi,
ja, ich habe inzwischen sehr viele dieser kleinen Versionsdateien für die ganzen verschiedenen Linux-Downloads.

Allerdings noch nicht für den Guardian oder den Remote Service.

Die URL bleibt dauerhaft bestehen.

Re: Version prüfen

Posted: Sat Jun 12, 2021 4:29 pm
by Stefan
Danke für die Rückmeldung!

Aktuell überarbeite ich meine CI damit hier nicht immer die vollständige Webpage geprüft werden muss.
Zusätzlich habe ich mir gedacht, dass ich auch gleich noch den Guardian und den RS mit inkludiere - dann ist der Container mal komplett :-P

Re: Version prüfen

Posted: Sat Jun 12, 2021 4:40 pm
by tobias
Hi,
es geht ja nur um amd/Intel 64 Bit und Debian Packages, richtig?

Ich könnte so eine Versionsdatei für den Guardian und Remote Service eben schnell machen.

Re: Version prüfen

Posted: Sat Jun 12, 2021 5:02 pm
by Stefan
Ja es geht nur um die x86_64 Version.

Also ursprünglich wollte ich den Link aus der linkver nehmen und alle Komponenten per .deb Pakete installieren. Dann ist mir aber aufgefallen, dass diese Pakete die SYNCOVERY_HOME environment variable ignorieren und sich immer in /etc/.Syncovery ablegen. Das kann ich im Docker aber nicht umstellen da den schon einige nutzen und jeder sonst hier eine Anpassung machen müsste um von /config/.Syncovery auf /etc/.Syncovery umzusteigen. Somit habe ich wieder auf die .tar.gz umgestellt. Das bedeutet ich lese per Regex die Versionsnummer aus und baue mir daraus dann die .tar.gz Download-URL.

Den Regex den ich dazu nutze ist: 9\.[0-9]{1,2}[a-z]{0,2}
(ja ich weiß ist nicht schön aber dafür selten :lol:)

Da ich mit diesem Regex nicht unterscheiden kann ob das nun die Version von Syncovery oder RS ist, bräuchte ich somit wenn dann beide in einer eigenen Datei (oder mir muss jemand zeigen wie ich aus der einen Datei alle drei Werte kriegen würde per Bash-Script). Somit ist es egal ob ich es über die eine Datei auslese oder von insgesamt drei unterschiedlichen Seiten.

Macht auch keinen Unterschied für die Last auf dem Syncovery.com Server denn es wird nur eine Seite überwacht (die linver). Und nur wenn die sich ändert werden dann die linver, die guardian und die RS Seiten aufgerufen und die Versionsnummern extrahiert.

Wenn jemand eine bessere Lösung hat habe ich immer ein offenes Oh dafür :-)

Re: Version prüfen

Posted: Sat Jun 12, 2021 5:25 pm
by Stefan
PS hab meine Regex noch ein wenig verbessert um eventuelle falsche Erkennungen vorzubeugen. Also vermutlich würde ich das nun auch in einer Datei hinbekommen - vorausgesetzt die können darin unterschieden werden.

Hier mein aktuelles Bash-Script:

Code: Select all

#!/bin/bash
SYNCOVERY_REGEX='https://www\.syncovery\.com/release/Syncovery-([1-9][0-9]?\.[0-9]{1,2}[a-z]{0,2})-amd64\.deb'
REMOTE_REGEX='SyncoveryRS-x86_64-([1-9][0-9]?\.[0-9]{1,2}[a-z]{0,2})\.tar\.gz'
GUARD_REGEX='SyncoveryGuardian-x86_64-([1-9][0-9]?\.[0-9]{1,2}[a-z]{0,2})\.tar\.gz'

SYNCOVERY=$(curl -s 'https://www.syncovery.com/linver_amd64.deb.txt' 2> /dev/null)
REMOTE=$(curl -s 'https://www.syncovery.com/remservlinux/' 2> /dev/null)
GUARD=$(curl -s 'https://www.syncovery.com/guardianlinux/' 2> /dev/null)

# internal parameters
SYNCOVERY_VERSION=""
SYNCOVERY_DOWNLOADLINK=""
REMOTE_VERSION=""
REMOTE_DOWNLOADLINK=""
GUARD_VERSION=""
GUARD_DOWNLOADLINK=""

# syncovery
if [[ $SYNCOVERY =~ $SYNCOVERY_REGEX ]]; then
    SYNCOVERY_VERSION=${BASH_REMATCH[1]}
    SYNCOVERY_DOWNLOADLINK="https://www.syncovery.com/release/SyncoveryCL-x86_64-${SYNCOVERY_VERSION}-Web.tar.gz"
fi

# remote
if [[ $REMOTE =~ $REMOTE_REGEX ]]; then
    REMOTE_VERSION=${BASH_REMATCH[1]}
    REMOTE_DOWNLOADLINK="https://www.syncovery.com/release/SyncoveryRS-x86_64-${REMOTE_VERSION}.tar.gz"
fi

# guardian
if [[ $GUARD =~ $GUARD_REGEX ]]; then
    GUARD_VERSION=${BASH_REMATCH[1]}
    GUARD_DOWNLOADLINK="https://www.syncovery.com/release/SyncoveryGuardian-x86_64-${GUARD_VERSION}.tar.gz"
fi

# check if both needed information are available and call jenkins if so
echo SYNCOVERY_VERSION=${SYNCOVERY_VERSION}
echo SYNCOVERY_DOWNLOADLINK=${SYNCOVERY_DOWNLOADLINK}
echo REMOTE_VERSION=${REMOTE_VERSION}
echo REMOTE_DOWNLOADLINK=${REMOTE_DOWNLOADLINK}
echo GUARD_VERSION=${GUARD_VERSION}
echo GUARD_DOWNLOADLINK=${GUARD_DOWNLOADLINK}

Re: Version prüfen

Posted: Sat Jun 12, 2021 5:33 pm
by tobias
Hi,
es gibt auch noch diese Versionsdateien:

https://www.syncovery.com/linver_x86_64.tar.gz.txt

https://www.syncovery.com/linver_x86_64-Web.tar.gz.txt

Einfach zu jedem Download der Linux-Download-Seite gibt es eine solche Datei.

Die Downloadseite selbst holt sich die Versionsnummern und URLs aus diesen Dateien.

Ich mach jetzt noch zwei für Guardian und Remote Service jeweils tar gz.