Tambahan metode baru

Bug #337299 reported by Mahyuddin Susanto
2
Affects Status Importance Assigned to Milestone
Sedot
Confirmed
Medium
Mahyuddin Susanto

Bug Description

saya mengusulkan untuk menambahkan metode baru yaitu
 - get.lftp (belum selesai, mohon masukanya)
 - get.rsync.redhat

pertimbangan
lftp: beberapa mirror upstream hanya menyediakan layanan ftp
redhat: sama seperti metode debian hanya stage pertama tidak mendownload *.xml

saya juga mengusulkan untuk update konfigurasi rsync dari sedot juga, kesemuanya saya usulkan di sini [1]

[1] http://bazaar.launchpad.net/~udienz/+junk/sedot/revision/78

Related branches

Revision history for this message
Fajran Iman Rusadi (fajran) wrote :

update konfigurasi rsync tu maksudnya skrip pembuat rsyncd.conf ya? boleh nih.. bisa tolong dibuat kaya model update crontab ngga? jadi ada bagian yang isinya ditangani oleh sedot dan bagian yg dibuat manual. Bagian yang ditangani sedot akan diapit oleh 2 penanda. Persis lah pokoknya seperti yg nanganin crontab.

Bikin jadi 2 skrip. Pertama tuk generator isi rsyncd.conf dan yang kedua skrip yg akan menjalankan skrip generator tadi dan memperbaharui rsyncd.conf yang ada. Sama kaya update-crontab dan make-crontab. Nama skripnya mungkin jadi update-rsyncd.conf dan make-rsyncd.conf aja kali ya?

tuk yg lftp, mungkin nilai "set ftp:anon-pass mirror@${`hostname -f`:-$TARGET}; " diambil dari konfigurasi yg ditaro di pkgs/paket/lftp.pass atau semacamnya aja kali ya?

opsi -x itu tuk daftar exclude ya? bisa diletakkan di file kah? kalau tidak, perlu ada pengkonversi dari daftar exclude yg ditulis di file menjadi serangkaian -x [filter]. File yg isinya daftar exclude ini tentu aja diletakkan di pkgs/paket/lftp.exclude. Jadi isi get.method itu masih bisa sedikit diatur.

tuk yang redhat, mungkin itu echo tulisan semacam tanggal, method, dsb tidak dibuat di situ. Kalau mau semuanya dipindah ke bin/sedot biar semua dapat. Namun bukannya sudah tertulis di log/sync/paket/timestamp/status.txt ya?

Oya satu lagi, coba itu cabang bzr-nya pake project="sedot" aja.. jadi ngga ditaro di +junk :-)

terima kasih atas kontribusinya :-)

Changed in sedot:
assignee: nobody → udienz
importance: Undecided → Medium
status: New → Confirmed
Revision history for this message
Mahyuddin Susanto (udienz) wrote : Re: [Bug 337299] Re: Tambahan metode baru

Fajran Iman Rusadi wrote:
> update konfigurasi rsync tu maksudnya skrip pembuat rsyncd.conf ya?
> boleh nih.. bisa tolong dibuat kaya model update crontab ngga? jadi ada
> bagian yang isinya ditangani oleh sedot dan bagian yg dibuat manual.
> Bagian yang ditangani sedot akan diapit oleh 2 penanda. Persis lah
> pokoknya seperti yg nanganin crontab.
>
> Bikin jadi 2 skrip. Pertama tuk generator isi rsyncd.conf dan yang kedua
> skrip yg akan menjalankan skrip generator tadi dan memperbaharui
> rsyncd.conf yang ada. Sama kaya update-crontab dan make-crontab. Nama
> skripnya mungkin jadi update-rsyncd.conf dan make-rsyncd.conf aja kali
> ya?
>
sudah saya sudah buat make-rsyncd.conf, isinya yaitu membaca file dari
data/rsync/rsyncd.basic kemudian di gabungkan dengan output dari
make-rsyncd.conf

nah untuk update-rsyncd.conf ada sedikit troble, saya menjalankan daemon
rsync dari user root (fiatur oleh /etc/default/rsync) apakah itu bisa di
atur agar supaya user rsync itu jalan oleh user yang menjalankan sedot
juga? caranya gimana yah?

jadi intinya make-rsync berhasil, update-rsync hanya terkendala di
perijinan saja

> tuk yg lftp, mungkin nilai "set ftp:anon-pass mirror@${`hostname
> -f`:-$TARGET}; " diambil dari konfigurasi yg ditaro di
> pkgs/paket/lftp.pass atau semacamnya aja kali ya?
>

ya, opsi tambahan bisa di buat dari berkas di $PKGS/lftp.opsiapalah

> opsi -x itu tuk daftar exclude ya? bisa diletakkan di file kah? kalau
> tidak, perlu ada pengkonversi dari daftar exclude yg ditulis di file
> menjadi serangkaian -x [filter]. File yg isinya daftar exclude ini tentu
> aja diletakkan di pkgs/paket/lftp.exclude. Jadi isi get.method itu masih
> bisa sedikit diatur.
>

nah ini yang saya masih bingungkan :D

> tuk yang redhat, mungkin itu echo tulisan semacam tanggal, method, dsb
> tidak dibuat di situ. Kalau mau semuanya dipindah ke bin/sedot biar
> semua dapat. Namun bukannya sudah tertulis di
> log/sync/paket/timestamp/status.txt ya?
>

maslahnya beberapa distro menggunakan program mirmon, dia membaca berkas
di $TO/timestamp. contoh yang sering saya dapatkan adalah centos, dimana
dari server centos selalu mendownload berkas $TO/timestamp, padahal
berkas itu saya dapat dari mirror upstream. jadi status mirror saya
aselalu ketinggalan minimal 6 jam :D dengan asumsi 6 jam ini jarak
minimal cron rsync centos di mirror saya

> Oya satu lagi, coba itu cabang bzr-nya pake project="sedot" aja.. jadi
> ngga ditaro di +junk :-)
>

sudah, saya sudah membuatkan di lp:~udienz/sedot/test/

> terima kasih atas kontribusinya :-)
>
>
sama-sama om....

--
[Mahyuddin Susanto]
Blog: http://blog.udienz.net YM: <email address hidden>

Revision history for this message
Fajran Iman Rusadi (fajran) wrote :

2009/3/4 Mahyuddin Susanto <email address hidden>:

> sudah saya sudah buat make-rsyncd.conf, isinya yaitu membaca file dari
> data/rsync/rsyncd.basic kemudian di gabungkan dengan output dari
> make-rsyncd.conf

sip

>
> nah untuk update-rsyncd.conf ada sedikit troble, saya menjalankan daemon
> rsync dari user root (fiatur oleh /etc/default/rsync) apakah itu bisa di
> atur agar supaya user rsync itu jalan oleh user yang menjalankan sedot
> juga? caranya gimana yah?

wah blom pernah nyoba2.. cobain aja =D

>
> jadi intinya make-rsync berhasil, update-rsync hanya terkendala di
> perijinan saja

mungkin tuk yg satu ini perlu dijalankan dg sudo.
cara lainnya ya dg mengubah owner /etc/rsyncd.conf menjadi user sedot.

>
>> tuk yg lftp, mungkin nilai "set ftp:anon-pass mirror@${`hostname
>> -f`:-$TARGET}; " diambil dari konfigurasi yg ditaro di
>> pkgs/paket/lftp.pass atau semacamnya aja kali ya?
>>
>
> ya, opsi tambahan bisa di buat dari berkas di $PKGS/lftp.opsiapalah

sip

>
>> opsi -x itu tuk daftar exclude ya? bisa diletakkan di file kah? kalau
>> tidak, perlu ada pengkonversi dari daftar exclude yg ditulis di file
>> menjadi serangkaian -x [filter]. File yg isinya daftar exclude ini tentu
>> aja diletakkan di pkgs/paket/lftp.exclude. Jadi isi get.method itu masih
>> bisa sedikit diatur.
>>
>
> nah ini yang saya masih bingungkan :D

coba cek file yg saya attach.

>
> maslahnya beberapa distro menggunakan program mirmon, dia membaca berkas
> di $TO/timestamp. contoh yang sering saya dapatkan adalah centos, dimana
> dari server centos selalu mendownload berkas $TO/timestamp, padahal
> berkas itu saya dapat dari mirror upstream. jadi status mirror saya
> aselalu ketinggalan minimal 6 jam :D dengan asumsi 6 jam ini jarak
> minimal cron rsync centos di mirror saya

maksudnya itu echo yg dikirim ke stdout (sync.log). Contoh:

echo "Synchronization begin at `date -R`..."

kalau pembuatan timestamp atau file lainnya di bawah $TARGET sih ya
gak masalah. Debian jg pake yg kaya beginian.

>
>> Oya satu lagi, coba itu cabang bzr-nya pake project="sedot" aja.. jadi
>> ngga ditaro di +junk :-)
>>
>
> sudah, saya sudah membuatkan di lp:~udienz/sedot/test/

sip

--
Iang-
http://fajran.web.id y!m: fajran

Revision history for this message
Mahyuddin Susanto (udienz) wrote :

Fajran Iman Rusadi wrote:

>
>> jadi intinya make-rsync berhasil, update-rsync hanya terkendala di
>> perijinan saja
>
> mungkin tuk yg satu ini perlu dijalankan dg sudo.
> cara lainnya ya dg mengubah owner /etc/rsyncd.conf menjadi user sedot.
>

bagaimana kalau di jalankan via inetd, jadi isi di /etc/inetd.conf
rsync stream tcp nowait root /usr/bin/rsync rsyncd --daemon

> coba cek file yg saya attach.
>
bagaimana kalo gini (saya attch juga)

 > maksudnya itu echo yg dikirim ke stdout (sync.log). Contoh:
>
> echo "Synchronization begin at `date -R`..."
>
> kalau pembuatan timestamp atau file lainnya di bawah $TARGET sih ya
> gak masalah. Debian jg pake yg kaya beginian.

sip deh, berarti ga masalah kalo di buat timestamp nya di bawah $TARGET

woia... untuk make crontab saya mencoba modif. ini berguna jika paket
tidak butuh cron karena hal lain contoh di pull dari upstream

$ bzr diff
=== modified file 'bin/make-crontab'
--- bin/make-crontab 2008-10-25 05:44:50 +0000
+++ bin/make-crontab 2009-02-22 07:46:58 +0000
@@ -41,15 +41,17 @@

 echo "### Packages"
 echo
-
 grep -v '^\s*#' $PKGS | while read pkg
 do
+ if [ -f $BASE/pkgs/$pkg/cron ]; then
  cron=`get_value $BASE/pkgs/$pkg/cron`
  echo "# $pkg"
  echo "$cron \$SEDOT_BASE/bin/sedot $pkg > /dev/null 2>&1"
  echo
+ fi
 done

+
 echo
 echo "### END SEDOT CRONTAB LIST"

--
[Mahyuddin Susanto]
Blog: http://blog.udienz.net YM: <email address hidden>

Revision history for this message
Fajran Iman Rusadi (fajran) wrote :

2009/3/4 Mahyuddin Susanto <email address hidden>:

> bagaimana kalau di jalankan via inetd, jadi isi di /etc/inetd.conf
> rsync   stream  tcp     nowait  root   /usr/bin/rsync rsyncd --daemon

rsyncd itu akan selalu membaca rsyncd.conf setiap ada koneksi masuk
kan? artinya ngga perlu restart apa2 andai ngubah konfigurasi.

trus maksudnya inetd itu tadi apa?

>> coba cek file yg saya attach.
>>
> bagaimana kalo gini (saya attch juga)

coba file excludenya dibaca dari lftp.exclude aja.

trus itu maunya kaya gmn perintah akhirnya?

mirror -x satu -x dua -x tiga gtu?

berarti itu seharusnya echo -n "-x $filter"
dan pas manggil mirrornya, tinggal sebut $FILTER aja jgn jadi -x'$FILTER' lagi.

>
> sip deh, berarti ga masalah kalo di buat timestamp nya di bawah $TARGET
>
> woia... untuk make crontab saya mencoba modif. ini berguna jika paket
> tidak butuh cron karena hal lain contoh di pull dari upstream

kayanya di kambing ada modifikasi jg di bagian crontab2an.. tar digabung jg de.
tuk patch yg ngecek file crontab ini ntar saya masukkan. thanks!

--
Iang-
http://fajran.web.id y!m: fajran

Revision history for this message
Mahyuddin Susanto (udienz) wrote :

Fajran Iman Rusadi wrote:
> 2009/3/4 Mahyuddin Susanto <email address hidden>:
>
>> bagaimana kalau di jalankan via inetd, jadi isi di /etc/inetd.conf
>> rsync stream tcp nowait root /usr/bin/rsync rsyncd --daemon
>
> rsyncd itu akan selalu membaca rsyncd.conf setiap ada koneksi masuk
> kan? artinya ngga perlu restart apa2 andai ngubah konfigurasi.
>
> trus maksudnya inetd itu tadi apa?

hm.. gitu toh, tak kira kudu reload seperti apache2

inet itu cuman alternatif pabila si rsync ga bisa di jalankan via user
non-root

duh salah, harusnya gini
rsync stream tcp nowait sedot /usr/bin/rsync rsyncd --daemon

>
> berarti itu seharusnya echo -n "-x $filter"
> dan pas manggil mirrornya, tinggal sebut $FILTER aja jgn jadi -x'$FILTER' lagi.
>

okeh

> kayanya di kambing ada modifikasi jg di bagian crontab2an.. tar digabung jg de.
> tuk patch yg ngecek file crontab ini ntar saya masukkan. thanks!
>
>
oke om, saya tunggu patch nya

--
[Mahyuddin Susanto]
Blog: http://blog.udienz.net YM: <email address hidden>

Revision history for this message
Fajran Iman Rusadi (fajran) wrote :

2009/3/4 Mahyuddin Susanto <email address hidden>:

>
>> kayanya di kambing ada modifikasi jg di bagian crontab2an.. tar digabung jg de.
>> tuk patch yg ngecek file crontab ini ntar saya masukkan. thanks!
>>
>>
> oke om, saya tunggu patch nya
>

udah dipush.. coba dicek.

ngomong2, revisi terakhir yg si om bikin bisa dilihat di mana?

--
Iang-
http://fajran.web.id y!m: fajran

Revision history for this message
Mahyuddin Susanto (udienz) wrote :

Fajran Iman Rusadi wrote:
> 2009/3/4 Mahyuddin Susanto <email address hidden>:
>
>>> kayanya di kambing ada modifikasi jg di bagian crontab2an.. tar digabung jg de.
>>> tuk patch yg ngecek file crontab ini ntar saya masukkan. thanks!
>>>
>>>
>> oke om, saya tunggu patch nya
>>
>
> udah dipush.. coba dicek.
>
> ngomong2, revisi terakhir yg si om bikin bisa dilihat di mana?
>
>
https://code.edge.launchpad.net/~udienz/sedot/unej, tapi itu masih
experimental banget :D

--
[Mahyuddin Susanto]
Blog: http://blog.udienz.net YM: <email address hidden>

Revision history for this message
Fajran Iman Rusadi (fajran) wrote :

2009/3/5 Mahyuddin Susanto <email address hidden>:
>>
> https://code.edge.launchpad.net/~udienz/sedot/unej, tapi itu masih
> experimental banget :D

cabang unej ini gak nerusin cabang sedot yg asli ya? jadi gak bisa
maen gabung2 aja jadinya..

--
Iang-
http://fajran.web.id y!m: fajran

Revision history for this message
Mahyuddin Susanto (udienz) wrote :

Fajran Iman Rusadi wrote:

> cabang unej ini gak nerusin cabang sedot yg asli ya? jadi gak bisa
> maen gabung2 aja jadinya..
>
>
yup, ga nerusin. jadi saya buat dua cabang. satu untuk unej dan satu tuk
nerusin cabang sedot. kalo mau gabung kan tinggal cabang unej di masukin
di cabang saya om :D

--
[Mahyuddin Susanto]
Blog: http://blog.udienz.net YM: <email address hidden>

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.