سؤال

أحاول استخدام برنامج نصي تلقائي، والذي من شأنه تسجيل الدخول إلى SVN، وتحديث مصادري، وإنشاء كرة tarball بها وإرسالها إلى مضيف بعيد.

المشكلة هنا هي أنه لكل تسجيل دخول إلى SVN (حتى عند الخروج أو التحديث)، نطلب إدخال كلمة المرور الخاصة بنا.أتمتة إدخال كلمة المرور، الطريقة الوحيدة التي تمكنت من العثور عليها، كانت استخدام توقع للعمل على هذا.

هل هناك أي برنامج نصي متوقع يمكنه الاهتمام بـ SVN و scp لاكتشاف كلمة المرور وإعطاءها لـ SVN ثم إلى SCP؟

أنا أستخدم ما يلي:

spawn svn [lindex $argv 0]
expect " password: $"
send "$password\r"
expect { 
    " password: $"    send "$password\r"
    "^At revision "
    "^Updated to revision "
}

أمر كلمة المرور والأعلى من سطر الأوامر، ولكن هناك تهديد أمني هناك إذا كان لدى شخص ما حق الوصول إلى السجل.الإجابات المذكورة أدناه لا تلبي متطلباتي المسبقة، كما أنني غير قادر على إجراء عملية تصدير في الوقت الحالي [بعض المخاوف الأمنية الأخرى :-(]

هل كانت مفيدة؟

المحلول

linuxbashscript.sh

svn up /path/to/local/copy
tar -cf backup.tar /path/to/local/copy
scp backup.tar user@192.1.1.1:/path/on/remote/host

أو حتى تصدير svn أفضل للمستخدم والذي سيستبعد كافة أدلة .svn.

svn export /path/to/repo /path/to/exported
tar -cf backup.tar /path/to/local/copy
scp backup.tar user@192.1.1.1:/path/on/remote/host

نصائح أخرى

إذا كنت تستخدم إس + سه بروتوكول للوصول الريبو SVN الخاص بك مما يمكنك استخدام مفاتيح SSH وسه وكيل لإدارة المصافحة لذلك أنت لا تحتاج إلى إشراك كلمات السر.

وأنا شخصيا أود أن استخدام ANT للقيام بكل تلك المهام ومن ثم يمكنك الاتصال النصي النمل حسب الحاجة. النمل لديه من المهام مسبقا لإس واللجنة الدائمة فضلا عن غيرها من العديد من المهام نوع بناء الأتمتة.

إذا (كما اقترح ديف)، إذا كنت ستستخدم Ant، ​​فستكون لديك المهام التالية تحت تصرفك:

يمكنك حفظ كلمات المرور في ملف خاصية منفصل إذا كنت مهتمًا بالأمان.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top