Schedule Rollback

Untuk menjalankan kode tersebut setiap 2 jam sekali menggunakan crontab, Anda perlu membuat skrip shell yang berisi perintah-perintah tersebut dan kemudian menambahkan entri crontab untuk menjalankan skrip tersebut. Berikut adalah langkah-langkahnya:

  1. Buat Skrip Shell: Buat file skrip, misalnya update_stationd.sh dengan perintah

nano update_stationd.sh
  1. Masukkan perintah-perintah Anda ke dalam file tersebut:

#!/bin/bash

# Function to introduce a 5-second delay
delay() {
  sleep 5
}

# Execute commands with delays
cd "$HOME"
delay

systemctl stop stationd
delay

cd tracks
delay

git pull
delay

go run cmd/main.go rollback
delay

sudo systemctl restart stationd
delay

sudo journalctl -u stationd -f --no-hostname -o cat

lalu simpan dengan tekan Ctrl + X, lalu Y, dan Enter.

Simpan file tersebut di lokasi yang diinginkan, misalnya di $HOME/scripts. bisa pakai command ini

mkdir -p $HOME/scripts && \
mv update_stationd.sh $HOME/scripts/update_stationd.sh
  1. Buat Skrip Dapat Dieksekusi: Ubah izin file skrip agar dapat dieksekusi:

    chmod +x $HOME/scripts/update_stationd.sh
  2. Tambahkan Entri ke Crontab: Buka crontab dengan perintah berikut:

    crontab -e

    pilih nano , ketik angka 1

  3. Tambahkan entri berikut di bagian paling bawah , untuk menjalankan skrip setiap 2 jam sekali:

    0 */2 * * * /bin/bash $HOME/scripts/update_stationd.sh

    Entri ini berarti skrip akan dijalankan setiap 2 jam pada menit ke-0. Jika ingin merubah untuk menjalankan setiap 30 menit gunakan ini

*/30 * * * * /bin/bash $HOME/scripts/update_stationd.sh

Outputnya akan seperti ini :

  1. Simpan dan Keluar: Simpan file crontab dan keluar dari editor. Jika menggunakan nano, tekan Ctrl + X, lalu Y, dan Enter.

Dengan langkah-langkah ini, crontab akan menjalankan skrip Anda setiap 2 jam sekali secara otomatis.

Last updated