วิศวกรรมซอฟต์แวร์
อัปเกรดไลบรารีอย่างปลอดภัย
ไลบรารีที่อัปเดต ผลกระทบรุ่นถูกทบทวน ไฟล์ล็อกทำซ้ำได้ และการตรวจเข้ากันกับความปลอดภัยผ่าน
กระบวนการ
ทำตามลำดับนี้
- สำรวจการพึ่งพาตรง รุ่นปัจจุบันและเป้าหมาย แมนิเฟสต์ ล็อกไฟล์ ข้อจำกัดรันไทม์ และผลกระทบทอด
- อ่านบันทึกรุ่นเป้าหมาย คู่มือย้าย และคำแนะนำความปลอดภัย รายการการเปลี่ยนที่พังซึ่งกระทบฐานโค้ดนี้
- สร้างสาขาอัปเดตโฟกัส และเปลี่ยนแมนิเฟสต์กับล็อกไฟล์ด้วยผู้จัดการแพ็กเกจของโครงการ แทนการแก้ไฟล์ที่สร้างด้วยมือ
- รันความสมบูรณ์การติดตั้ง การตรวจคงที่ หน่วยทดสอบ ทดสอบรวม และการทดสอบบิลด์หรือควันที่ทดลองขอบการพึ่งพา
- ตรวจส่วนต่างการพึ่งพาเรื่องแพ็กเกจไม่คาด สคริปต์ การเปลี่ยนใบอนุญาต และการกระโดดรุ่น แยกอัปเกรดใหญ่เมื่อทำได้
- บันทึกการเปลี่ยนย้ายและคำสั่งย้อนกลับ ขอทบทวน และรวมเฉพาะหลังการตรวจที่ต้องมีผ่าน
เตรียมสิ่งนี้
ข้อมูลที่แมวจะขอ
- ที่เก็บ
- ชื่อการพึ่งพาและนโยบายหรือรุ่นเป้าหมาย
- คำสั่งบิลด์และทดสอบ
- เมทริกซ์รันไทม์ที่รองรับ
เราเตอร์ + playbook เดียว
จัดเส้นทางก่อน เลือกอันเดียว
Cat Paw โหลด playbook เดียวต่องาน ไม่ผสมหลายอัน เริ่มที่เราเตอร์นี้ เส้นทางที่เหลือเป็นตัวเลือกเฉพาะ workflow
- เราเตอร์:
engineering-pack skills/engineering/addyosmani/incremental-implementation/SKILL.mdskills/engineering/mattpocock/tdd/SKILL.mdskills/engineering/mattpocock/code-review/SKILL.md
เส้นเขต
ขอบเขตเดินทางไปกับพรอมต์
- อย่ารันสคริปต์ติดตั้งที่ไม่เชื่อถือขณะมีข้อมูลรับรองผลิตอยู่
- อย่ารวมอัปเกรดการพึ่งพาที่ไม่เกี่ยวข้อง เว้นแต่ถูกขอชัด
- รักษาและทบทวนการเปลี่ยนล็อกไฟล์ อย่าข้ามการทดสอบความเข้ากันที่ล้มเหลว
เสร็จหมายถึง
จุดจบที่ตรวจได้
รุ่นที่ตั้งใจอยู่ในกราฟการพึ่งพาที่แก้แล้ว เหลือเฉพาะการเปลี่ยนการพึ่งพาที่อธิบาย การตรวจที่ต้องมีผ่าน และโน้ตย้อนกลับพร้อมใช้
แหล่งที่มา
กระบวนการนี้มาจากไหน
- docs.github.com/en/code-security/concepts/supply-chain-security/dependabot-version-updates
- docs.github.com/en/code-security/how-tos/secure-your-supply-chain/secure-your-dependencies/configure-version-updates
แหล่งที่มาตั้งรูปแบบของ workflow โพสต์ Reddit และชุมชน ถ้ามี ให้ถือเป็นเรื่องเล่าจากผู้ปฏิบัติ ไม่ใช่ข้อเท็จจริงสากล