นี่เป็นโครงการเว็บที่เขียนด้วย Java
ดังนั้นฉันจึงเขียน build และสคริปต์การปรับใช้ ในการสร้างงานสร้างฉันใช้มด การสร้างอย่างต่อเนื่องจะทำกับเจนกินส์
บิลด์สร้างสิ่งประดิษฐ์ 3 แบบที่แตกต่างกัน:
- ไฟล์สงคราม
- ซิปพร้อมโครงร่าง
- ซิปพร้อมรูปภาพ
จนถึงตอนนี้ดีมาก แต่ตอนนี้ฉันต้องเขียนสคริปต์การปรับใช้ซึ่งควรจะ:
- ปรับใช้ war (ส่วนที่ 1) กับ tomcat ที่รันที่เซิร์ฟเวอร์ 1
- วางส่วนที่2ที่เซิร์ฟเวอร์ 1ในไดเร็กทอรีเฉพาะ
- วางส่วนที่3ที่เซิร์ฟเวอร์ 2ในไดเร็กทอรีเฉพาะ
ดังนั้นฉันจึงได้พูดคุยกับเพื่อนร่วมงานของฉันและเขาบอกว่าเราควรสร้างสิ่งประดิษฐ์ (บางทีdeploy.xml ) ที่ปรับใช้สิ่งประดิษฐ์เหล่านี้เมื่อวางไว้ที่เซิร์ฟเวอร์ที่ถูกต้อง
ดังนั้นจะมีสคริปต์อื่นที่จะ:
- ดาวน์โหลดสิ่งประดิษฐ์เจนกินส์
- scp ไปยังแต่ละเซิร์ฟเวอร์และวาง deploy.xml ที่นั่น
- เรียกใช้ deploy.xml แบบรีโมต
สิ่งที่ทำให้ฉันรู้สึกไม่สบายใจเล็กน้อยคือการมี deploy.xml เป็นงานสร้าง แรงจูงใจที่อยู่เบื้องหลังสิ่งนี้จะทำให้สามารถปรับใช้โดยไม่จำเป็นต้องเข้าถึงคลังเก็บ VCS ดังนั้นงานสร้างจะต้องมีในตัวเองกล่าวคืองานสร้างใด ๆ ที่สามารถเข้าสู่การผลิตได้เฉพาะสิ่งที่เจนกินส์สร้างขึ้น
ควรวางสคริปต์การปรับใช้ไว้ที่ใด พวกเขาควรจะเพียงที่ VCS หรือพวกเขาควรจะสร้างสิ่งประดิษฐ์เกินไป?