Er mogen op dit forum GEEN verzoekjes of requests gevraagd worden, dit staat ook in de regels die je accepteert bij het registreren op dit forum, hiervoor krijg je direct een permanente ban.

Spotweb automatisch bijwerken op Linux

Stel hier je vragen of discussiëer over Spotweb.

Moderator: Moderator Team

Forumregels
LEES: Forum Regels!
Gebruikersavatar

Topicstarter
Mickroz
Website Team Leider
Berichten: 1795
Lid geworden op: 13 feb 2011, 19:56
Reputation: 8
Usenet: Tweaknews
Internet: Ziggo
Locatie: Netherlands
Gender:
Leeftijd: 46
Contacteer:

Spotweb automatisch bijwerken op Linux

#1

Bericht door Mickroz »

nightspirit81 schreef:Onderstaande tekst zou je in een tekstfile op kunnen nemen om Spotweb automatisch te laten updaten via een cronjob.
Er is rekening mee gehouden dat het proces upgrade-db.php een lange tijd kan duren.
Het meerdere keren gelijktijdig uitvoeren daarvan kan allerlei problemen met zich mee brengen tot een vastlopend systeem aan toe.

Sla de tekstfile op onder de naam /home/gebruiker/spotweb-upgrade.sh
Geef de file execute rechten (chmod +x).
Een cronjob aanmaken doe je over het algemeen met de opdracht: sudo crontab -e
Voeg in het edit scherm een extra regel toe met de onderstaande inhoud (om ieder uur Spotweb bij te werken).
0 * * * * /home/gebruiker/spotweb-upgrade.sh > /dev/null

Upgrade script voor Spotweb

Code: Selecteer alles

#!/bin/sh
# Upgrade script voor Spotweb.
#
# Eerst testen of het proces nog niet draait.
# Dit doe ik aan de hand van het bestaan van een tempfile.
if [ -f /tmp/.spotweb-upgrade ]
then
echo "Er draait al een update, dus niet nog een starten."
# Stoppen met verdere update aangezien de file al aanwezig is.
exit
fi
# Tempfile aanmaken aangezien de update nog niet draait
touch /tmp/.spotweb-upgrade
wait
echo "Eerst maar eens Spotweb zelf updaten."
cd /dir/to/spotweb
git pull
echo "Dan wachten tot de pull compleet is."
wait
echo "Daarna starten we voor de zekerheid de database upgrade."
/path/to/php/php upgrade-db.php
wait
# Tempfile weer opruimen, anders wordt er maar eenmalig ge-upgrade.
rm /tmp/.spotweb-upgrade
Alternatief upgrade script voor Spotweb

Code: Selecteer alles

#!/bin/sh
# Alternatief upgrade script voor Spotweb. 
# Plaats het script in root van Spotweb en maak een cron aan.
#
echo "Spotweb updaten..."
git pull
wait
echo "Database upgrade..."
# Command om php locatie te bepalen: "which php"
/usr/bin/php upgrade-db.php
wait
echo "Spotweb is geupdate!"
Afbeelding
Support via PB wordt niet gegeven tenzij ik je vraag om mij een PB te sturen!
Q: Whats a hash and a root password?
A: hash gets you high, root password gives you god powers, combine the 2 and you are invincible.
Neem je online privacy serieus en gebruik een VPN verbinding!

Met een VPN verbinding van IPVanish wordt uw gehele internet verbinding versleuteld

U kunt dus veilig browsen, Torrents downloaden, Usenet downloaden en onderling versleutelde verbindingen opzetten.


Gebruikersavatar

Topicstarter
Mickroz
Website Team Leider
Berichten: 1795
Lid geworden op: 13 feb 2011, 19:56
Reputation: 8
Usenet: Tweaknews
Internet: Ziggo
Locatie: Netherlands
Gender:
Leeftijd: 46
Contacteer:

Re: Spotweb automatisch bijwerken op Linux

#2

Bericht door Mickroz »

met bovenstaande code wil ik mijn spotweb up to date houden, nu kan ik met git stash mijn edits opslaan, en met git stash pop de laatste stash mn edits weer terugzetten, de stash wordt daarna ook verwijderd, dus ik heb geen stash id nodig.

dus zoiets:

Code: Selecteer alles

#!/bin/sh
# Upgrade script voor Spotweb.
#
# Eerst testen of het proces nog niet draait.
# Dit doe ik aan de hand van het bestaan van een tempfile.
if [ -f /tmp/.spotweb-upgrade ]
then
echo "Er draait al een update, dus niet nog een starten."
# Stoppen met verdere update aangezien de file al aanwezig is.
exit
fi
# Tempfile aanmaken aangezien de update nog niet draait
touch /tmp/.spotweb-upgrade
wait
echo "Eerst maar eens Spotweb zelf updaten."
cd /dir/to/spotweb
git stash
wait
git pull
echo "Dan wachten tot de pull compleet is."
wait
git stash pop
wait
echo "Daarna starten we voor de zekerheid de database upgrade."
/path/to/php/php upgrade-db.php
wait
# Tempfile weer opruimen, anders wordt er maar eenmalig ge-upgrade.
rm /tmp/.spotweb-upgrade
echo "Spotweb is geupdate!"
Afbeelding
Support via PB wordt niet gegeven tenzij ik je vraag om mij een PB te sturen!
Q: Whats a hash and a root password?
A: hash gets you high, root password gives you god powers, combine the 2 and you are invincible.

tosko
Berichten: 7
Lid geworden op: 16 apr 2020, 11:36
Reputation: 0
Gender:

Re: Spotweb automatisch bijwerken op Linux

#3

Bericht door tosko »

Spoiler: show
Hoi,

Allereerst dank voor het delen van de script. Ik draai Spotweb in docker, hoe kan ik dan het beste omgaan met commands zoals:
CODE: SELECTEER ALLES

if [ -f /tmp/.spotweb-upgrade ]
cd /dir/to/spotweb
/path/to/php/php upgrade-db.php

Enz. Heb je enig idee?


nvm zie voor docker container update script mijn eerst volgende post.
Laatst gewijzigd door tosko op 16 apr 2020, 14:41, 2 keer totaal gewijzigd.

tosko
Berichten: 7
Lid geworden op: 16 apr 2020, 11:36
Reputation: 0
Gender:

Re: Spotweb automatisch bijwerken op Linux

#4

Bericht door tosko »

Voor diegene dit dit ook nodig hebben voor docker, heb ff zelf van in elkaar gezet..
(i know beats the purpose van docker, ik zou ook telkens een nieuwe image kunnen compilen :P, geen zin)

Code: Selecteer alles

#!/bin/bash
spotweb_container_name="spotweb" #<-- Pas dit aan naar jou spotweb container naam

# Eerst maar eens kijken of de update al gaande is
docker exec -w /tmp $spotweb_container_name [ -f .spotweb-upgrade ] && { echo "Hij is al bezig..."; exit; }

# Als de script zover komt, dan hebben we dus nog geen update gaande. Ff een temp file aanmaken
docker exec -w /tmp $spotweb_container_name touch .spotweb-upgrade
wait

# Nu de magic.. git pull
docker exec -w /var/www/spotweb $spotweb_container_name git pull
wait

# Ff de database upgraden
docker exec -w /var/www/spotweb/bin $spotweb_container_name ./upgrade-db.php
wait

# Ennuh, temp file weer verwijderen zodat ie de volgende keer ook netjes gaat updaten
docker exec -w /tmp $spotweb_container_name rm .spotweb-upgrade
Plaats reactie Vorig onderwerpVolgend onderwerp
Spot-net.nl Forums : Disclaimer