การส่งมอบซอฟต์แวร์

จากซอร์สร่วมสู่การติดตั้งที่ควบคุมได้

ความสามารถด้านการส่งมอบซอฟต์แวร์ของ Microwave Pie ออกแบบมาเพื่อให้การนำแอปที่โฮสต์ด้วยตนเองไปใช้งานง่ายขึ้น: จัดการรุ่นจากซอร์สร่วม สร้างแพ็กเกจที่เหมาะกับการติดตั้ง ใช้ไลเซนส์ และผูกการติดตั้งกับการอัปเดตไว้กับรุ่นที่ทราบแน่นอน

รูปแบบการส่งมอบร่วม

1ซอร์สแอปร่วมประวัติซอร์สเดียวและอัตลักษณ์รุ่นเดียว
2รุ่นแพลตฟอร์มสร้างสำหรับเป้าหมายการติดตั้งที่ต้องการ
แพ็กเกจซอร์ส แพ็กเกจคอมไพล์
3แพ็กเกจที่มีไลเซนส์ออกแพ็กเกจสำหรับการนำไปใช้เฉพาะราย
4ติดตั้งและอัปเดตเชื่อมประวัติการติดตั้งไว้กับรุ่นที่ส่งมอบ

ความสามารถ

คงความยืดหยุ่นในการเลือกรุ่นโดยไม่เสียการควบคุม

สภาพแวดล้อมต่างกันไม่จำเป็นต้องใช้รูปแบบแพ็กเกจเดียวกันหรือรุ่นเดียวกันในเวลาเดียวกัน Microwave Pie แยกซอร์สแอปร่วม รุ่นที่นำกลับมาใช้ได้ แพ็กเกจ ไลเซนส์ และอินสแตนซ์ที่ติดตั้งแล้ว เพื่อให้แต่ละส่วนเปลี่ยนแปลงได้อย่างตั้งใจ

ซอร์สร่วม

เริ่มจากซอร์ส Git ร่วม และเก็บ commit ที่แน่นอนพร้อมเวอร์ชันที่อ่านง่ายซึ่งผูกกับรุ่นไว้ ประเภทการติดตั้งต่าง ๆ สามารถพัฒนาแยกกันได้โดยยังย้อนกลับไปยังประวัติซอร์สเดียวกัน

แพ็กเกจซอร์ส

ส่งมอบแอปเป็นซอร์สเมื่อความโปร่งใส การรันโดยตรง หรือการติดตั้ง Python เฉพาะแพลตฟอร์มเหมาะสมกว่า แพ็กเกจซอร์สยังคงใช้รูปแบบรุ่นและไลเซนส์เดียวกับแพ็กเกจคอมไพล์

แพ็กเกจคอมไพล์

ส่งมอบแพ็กเกจแอปที่คอมไพล์แล้วเมื่อเหมาะกับรันไทม์ที่เป็นอิสระมากกว่า การคอมไพล์เป็นเพียงทางเลือกการส่งมอบ ไม่ใช่สายผลิตภัณฑ์แยก ดังนั้นที่มาของรุ่นยังคงสอดคล้องกัน

การจัดการแพ็กเกจและไลเซนส์

ออกแพ็กเกจพร้อมไลเซนส์และบริบทการติดตั้งเป้าหมายที่เชื่อมโยงไว้แล้ว วงจรชีวิตแพ็กเกจ สถานะไลเซนส์ การดาวน์โหลด การติดตั้ง การอัปเดต การเพิกถอน และการปิดใช้งานสามารถจัดการร่วมกันได้แทนการประกอบย้อนหลัง

การเลือกรุ่นตามเป้าหมาย

การติดตั้ง Raspberry Pi, GCP, แบบซอร์ส และแบบคอมไพล์สามารถอยู่คนละระดับรุ่นได้เมื่อมีเหตุผล โดยสามารถตรวจสอบ Git commit ที่ขาดได้ทั้งตามประเภทการติดตั้งและทั้งแอป

การอัปเดตที่จัดการผ่าน UI

แอปที่จัดการสามารถแจ้งโดยอัตโนมัติเมื่อมีการอัปเดตที่อนุมัติแล้วโดยไม่บังคับใช้ ผู้ดูแลระบบเลือกว่าจะเตรียมและนำการอัปเดตไปใช้เมื่อใดใน UI ของแอป หลังรีสตาร์ตสามารถยืนยันรุ่นที่ติดตั้งกลับไปยังบริการส่งมอบร่วม โดยยังรักษาความสัมพันธ์ของแพ็กเกจและไลเซนส์ไว้

การนำไปใช้งาน

จัดแพ็กเกจให้กับการติดตั้ง ไม่ใช่ความไม่แน่นอน

แพ็กเกจซอฟต์แวร์สามารถรวมบริบทการนำไปใช้งานที่จำเป็นเพื่อเปลี่ยนรุ่นแอปให้เป็นการติดตั้งที่ใช้งานได้ เช่น แพลตฟอร์มเป้าหมาย รูปแบบแพ็กเกจ พฤติกรรมการติดตั้ง อัตลักษณ์รุ่น และความสัมพันธ์ด้านไลเซนส์

สิ่งนี้ทำให้กระบวนการนำไปใช้งานเริ่มจากรุ่นที่ทราบแน่นอน แทนที่จะให้ทุกสภาพแวดล้อมสร้างการตัดสินใจด้าน build และ delivery ใหม่เอง เมื่อมีรุ่นใหม่ที่เหมาะสม ความสัมพันธ์แพ็กเกจและไลเซนส์เดิมยังคงอยู่ได้ ขณะที่เลื่อนรุ่นที่เลือกไปข้างหน้าอย่างตั้งใจ

ประวัติรุ่นที่เปลี่ยนไม่ได้

Application Releases เก็บอัตลักษณ์ artifact และ Git ที่ถูก build จริงไว้

การอัปเดตที่ควบคุมโดยผู้ดูแลระบบ

ระบบสามารถประกาศว่ามีการอัปเดตได้โดยอัตโนมัติ แต่การดาวน์โหลด การเตรียม การนำไปใช้ และการรีสตาร์ตยังเป็นการกระทำที่ผู้ดูแลระบบตัดสินใจ

ไลเซนส์ที่คำนึงถึงการติดตั้ง

แพ็กเกจ ไลเซนส์ และอินสแตนซ์ที่ติดตั้งยังคงเชื่อมกันตลอดการติดตั้ง การอัปเดต การเพิกถอน และการปิดใช้งาน

Blackcap

หนึ่งแอปที่ใช้รูปแบบนี้ในวันนี้

Blackcap สามารถติดตั้งบน Raspberry Pi และ GCP ที่รองรับด้วยแพ็กเกจซอร์สหรือคอมไพล์ โดยคงพฤติกรรมของรุ่น แพ็กเกจ ไลเซนส์ และการอัปเดตให้สอดคล้องกัน

สำรวจเทคโนโลยี Blackcap