CLI ऑटोमेशन और CI

सत्यापित CLI इंस्टॉलेशन तैयार करें और सीमित स्थानीय काम, रसीद तथा स्पष्ट बैकएंड जाँच स्वचालित करें।

अवलोकन

सत्यापित Linux इंस्टॉलेशन तैयार करें, फिर नए कार्यक्षेत्र पर सामान्य जॉब उपयोगकर्ता की तरह डिज़ाइन काम चलाएँ। इंस्टॉलेशन विशेषाधिकार स्रोत प्रोसेसिंग से अलग रखें। यह पृष्ठ CLI 0.1.9 इंस्टॉलेशन अनुबंध उपयोग करता है; वास्तविक उपलब्ध रिलीज़ यहाँ चुनें: डाउनलोड.

तैयारी की शर्त

  1. अपनी प्रक्रिया में स्वीकार सटीक संस्करण, आर्काइव नाम और हस्ताक्षरित कैटलॉग निश्चित करें।

  2. अपनाएँ: डाउनलोड सत्यापित करें, किसी डाउनलोड बाइनरी को चलाने से पहले सार्वजनिक कुंजी DER पिन, हस्ताक्षरित चेकसम मैनिफ़ेस्ट, आर्काइव हस्ताक्षर और कैटलॉग हस्ताक्षर प्रमाणित करने के लिए।

  3. उपयोग करें: Linux पर इंस्टॉल करें। अंतर्निहित बूटस्ट्रैप बिना रिपॉज़िटरी चेकआउट, बिल्ड या नेटवर्क एक्सेस हस्ताक्षरित लेआउट और निश्चित Tcl घटक बनाता है। केवल प्रशासक नियंत्रित चरण में इंस्टॉल करें।

  4. सटीक इंस्टॉल बाइनरी चलाएँ: PREFIX/bin/alti और संस्करण तथा क्षमता रिपोर्ट रखें। विकास बाइनरी या असत्यापित रनर इसके स्थान पर न दें: PATH।

आर्काइव मौजूद होना और help आउटपुट इंस्टॉल तैयारी प्रमाणित नहीं करते। जाँचें: alti capabilities और इच्छित कार्रवाई की क्षमता प्रतिक्रिया। विफल जाँच उस कार्रवाई को रोके, फ़ॉलबैक सक्षम न करे।

ऑफ़लाइन CI विधि

तैयार करें: job.json और केवल स्वामी के एक्सेस वाला स्रोत, इसके अनुसार: CLI की पहली सफलता। सेट करें: ALTI_BIN, सटीक सत्यापित इंस्टॉलेशन पर, और ALTI_WORKSPACE, इस जॉब के तैयार कार्यक्षेत्र पर:

Bash
set -euo pipefail
ALTI_BIN="${ALTI_BIN:?set the verified absolute installed alti path}"
ALTI_WORKSPACE="${ALTI_WORKSPACE:?set the private prepared workspace}"
case "$ALTI_BIN" in /*) ;; *) exit 1 ;; esac
EVIDENCE="$(mktemp -d)"

"$ALTI_BIN" version > "$EVIDENCE/version.txt"
"$ALTI_BIN" capabilities > "$EVIDENCE/capabilities.json"
"$ALTI_BIN" commands > "$EVIDENCE/commands.json"
"$ALTI_BIN" --json job validate \
  --job "$ALTI_WORKSPACE/job.json" \
  --workspace-root "$ALTI_WORKSPACE" \
  --source rtl/top.sv \
  > "$EVIDENCE/preflight.json" 2> "$EVIDENCE/preflight-error.json"

jq -e 'length == 25' "$EVIDENCE/commands.json" >/dev/null
jq -e '
  .receipt_schema == "altifigence.cli.engine-job-preflight.v1" and
  .status == "client_preflight_valid" and
  .submitted == false and
  .server_authority_verified == false
' "$EVIDENCE/preflight.json" >/dev/null

यह पूर्व जाँच करता है, RTL निष्पादन नहीं। प्रक्रिया को निष्पादन परिणाम चाहिए तो स्पष्ट CPU XLS मूल्यांकन या दूसरी सीमित स्थानीय इंजन कार्रवाई जोड़ें। इन स्थानीय जाँचों के लिए Cloud क्रेडेंशियल नहीं चाहिए।

क्षमता और आउटपुट नियम

  • अपेक्षित कमांड विशिष्ट स्कीमा पार्स करने से पहले प्रक्रिया निकास स्थिति जाँचें।

  • stdout और stderr अलग रखें। इसके साथ: --json, एनवेलप के इस फ़ील्ड से इंजन आउटपुट पार्स करें: stdout; DDS plan/apply पाइपिंग के लिए कच्चा नेटिव परिणाम सहेजें।

  • नया कार्यक्षेत्र/रन डायरेक्टरी उपयोग करें। लागू करने से पहले पूरी लेखन योजना देखें और संघर्ष पर हैश बदलने के बजाय फिर जनरेट करें।

  • स्पष्ट नीतियाँ उपयोग करें: cpu/cuda या Evolve की cpu-reference/cuda नीतियाँ। XLS और पैक RTL चुपचाप फ़ॉलबैक नहीं करते। PX की auto अलग स्वैच्छिक नीति है; उसका वास्तविक बैकएंड और फ़ॉलबैक रसीद से पढ़ें।

  • ज़रूरी ड्राइवर और Icarus टूल के साथ GPU योग्यता अलग तय करें। वास्तविक स्वीकार CUDA काम और संग्रहित हार्डवेयर उद्गम आवश्यक रखें; केवल खोज पर्याप्त नहीं। कार्यात्मक परीक्षण से प्रदर्शन निष्कर्ष न निकालें।

  • Cloud लेखन को खाता/प्रोजेक्ट अनुमति और कार्रवाई की स्पष्ट अपलोड सहमति चाहिए। पुराने HTTP प्रतिस्थापन को उसी सेवा से नया हैश चाहिए; यह 409 संघर्ष है, कमज़ोर जाँच से पुनः प्रयास की अनुमति नहीं।

प्रमाण बचाएँ

सत्यापित कैटलॉग/हस्ताक्षर, इंस्टॉल बाइनरी डाइजेस्ट, CLI संस्करण, संवेदनशील विवरण हटाए आर्ग्यूमेंट, इनपुट डाइजेस्ट, निकास स्थिति और सीमित परिणाम/निदान स्ट्रीम रखें। GPU रिकॉर्ड में वास्तविक डिवाइस/ड्राइवर और बाहरी टूल पहचान भी चाहिए। विकास/डिबग प्रमाण हस्ताक्षरित पैकेज योग्यता से अलग मानें। क्रेडेंशियल या प्रोजेक्ट स्रोत अनावश्यक रूप से न रखें।

CI दोहराने योग्य रखें

  1. रनर तैयारी में सत्यापित रिलीज़ और बाहरी टूलचेन संस्करण निश्चित करें।

  2. हर जॉब के लिए नई उपयोगकर्ता स्वामित्व वाली स्रोत डायरेक्टरी और नए आउटपुट पथ उपयोग करें।

  3. क्षमता जाँच और अनुरोधित कार्रवाई के लिए उपयुक्त छोटा वास्तविक निष्पादन चलाएँ।

  4. गैर शून्य निकास, विकृत आउटपुट, पुरानी स्रोत पहचान या ज़रूरी आर्टिफ़ैक्ट अनुपस्थित होने पर पाइपलाइन विफल करें।

  5. सीमित निदान और डाइजेस्ट रखें; क्रेडेंशियल बदलने के लिए CI सीक्रेट स्टोर उपयोग करें, सहेजे लॉग नहीं।

सत्यापित इंस्टॉलेशन इनपुट या अपरिवर्तनीय टूलचेन संस्करण और डाइजेस्ट के अनुसार कैश करें। प्रोजेक्ट परिणाम, सत्र फ़ाइलें और प्रदाता क्रेडेंशियल साझा कैश से बाहर रखें। रिमोट काम को अपनी स्पष्ट अनुमति और जॉब ट्रैकिंग चाहिए; स्थानीय CI सफलता से Cloud काम चलना नहीं माना जा सकता।