2014-09-04 39 views
0

我有一個代碼庫的增加,並通過外殼刪除用戶帳戶:Ubuntu的用戶賬號創建

sudo useradd #{user} --home-dir #{dir} --shell /bin/false -g usergroup 
sudo usermod -G sftponly #{user} 
sudo chown root:root #{dir} 
sudo chmod 755 #{dir} 
sudo chown #{user}:root #{dir}/homedir 
echo #{user}:#{password} | sudo chpasswd 

不幸的是自動化的測試是困難的,因爲我需要創建和後清理測試用戶帳戶的每個測試運行。

如果測試套件運行的中間失敗,無論什麼原因,清除失敗,我留下了我的開發機/ VM的測試用戶帳戶和迪爾斯gazillions。

理想我想在某種這將允許創建帳戶的一個chroot監獄執行我的測試,然後我可以炸燬了監獄退出或失敗。這樣的事情是否存在/是否實際?

回答

0

清理工作應該永遠不會失敗。即使你的測試失敗了,沒有任何理由的清理失敗。 如果您的測試導致驗證腳本過早退出,請考慮在其周圍使用try-catch-finally以確保始終執行清理代碼。或者,您可以在虛擬機中使用您的測試,然後將虛擬機重置爲先前記錄的乾淨狀態,但這可能需要手動執行一兩個步驟。