นักพัฒนาไม่ควรมีรากในการผลิต ทุกคนยกเว้นผู้พัฒนาเห็นด้วยกับสิ่งนี้ แต่นักพัฒนาสามารถจัดเรียงเค้กและกินได้เช่นกัน ฉันค่อนข้างแปลกใจที่ไม่มีใครพูดถึงเรื่องนี้อย่างชัดเจน:
หนึ่งในลูกค้าธุรกิจขนาดเล็กที่ใช้เวลานานมากของฉันมีเว็บไซต์ที่มีการติดตั้ง Drupal เว็บไซต์ WordPress หลายแห่งฟอรัม SMF และแอปพลิเคชันเว็บขนาดเล็กอื่น ๆ อีกสองสามตัว ฉันเป็นผู้ดูแลระบบสัญญา (และด้วยเหตุผลทางประวัติศาสตร์อัปเดต / แฮ็ค WordPress และ SMF เมื่อจำเป็น) และลูกค้าของฉันมีสัญญานักพัฒนาของ Drupal สภาพแวดล้อมเป็นเครื่องเสมือน VMware หลายเครื่องบนผู้ให้บริการคลาวด์สาธารณะ
นักพัฒนาซอฟต์แวร์ต้องการเข้าถึงรูทและต้องการมันมาก เป็นความรับผิดชอบของพวกเขาในการเขียนกฎการเขียนซ้ำ nginx เพื่อให้สิ่งที่ Drupal กำหนดเองทำงานได้เช่นกัน แต่ไม่มีทางที่ฉันจะยอมให้พวกเขาเข้าถึงรูทเซิร์ฟเวอร์การผลิตได้และลูกค้าของฉันก็เห็นด้วยกับฉัน
ดังนั้นเราจึงยอมจำนน: พวกเขาได้รับสิทธิ์การเข้าถึงรูทบนเว็บเซิร์ฟเวอร์ทดสอบ (ซึ่งโดยทั่วไปจะเหมือนกับการผลิตยกเว้นที่อยู่ IP และอยู่ในระบบคลาวด์เดียวกัน) ซึ่งเช่นเดียวกับการผลิตมีผู้รักษาความปลอดภัยเพื่อให้ฉันสามารถเห็นการเปลี่ยนแปลงใด ๆ ที่พวกเขาต้องการที่จะทำและแพคเกจใด ๆ ที่ติดตั้ง ฉันสามารถดึงการเปลี่ยนแปลงไปสู่การผลิตหรือบอกพวกเขาว่ามีอะไรผิดปกติกับสิ่งที่พวกเขาต้องการจะทำ และถ้าพวกเขาเมากันจริงๆ (พวกเขายังไม่ได้ขอบคุณ gawd) ฉันสามารถย้อนกลับการเปลี่ยนแปลงของพวกเขาได้อย่างง่ายดาย
พวกเขาไม่สามารถเข้าถึงเซิร์ฟเวอร์ฐานข้อมูลการผลิตได้เลย พวกเขาไม่ได้มีการเข้าสู่ระบบของผู้ใช้ เฉพาะลูกค้าของฉันและฉันทำ
(เว็บแอพตัวเองพวกเขาปรับใช้โดยตรงกับคอมไพล์และหากพวกเขาทำลายมันพวกเขาจะต้องแก้ไขและอธิบายให้ลูกค้าของฉันทำไมพวกเขาควรจะยังคงเป็นนักพัฒนาของเขาต่อไปแม้ว่าลูกค้าของฉันจะ CC ฉันทางอีเมลดังกล่าว หัวเราะเยาะพวกเขาหรือใบหน้า)