Basic TravisCI Information

AWS हैकिंग सीखें शून्य से लेकर हीरो तक htARTE (HackTricks AWS Red Team Expert) के साथ!

HackTricks का समर्थन करने के अन्य तरीके:

पहुँच

TravisCI सीधे विभिन्न git प्लेटफॉर्म्स जैसे Github, Bitbucket, Assembla, और Gitlab के साथ एकीकृत करता है। यह उपयोगकर्ता से TravisCI को उन repos तक पहुँच की अनुमति देने के लिए कहेगा जिन्हें वह TravisCI के साथ एकीकृत करना चाहता है।

उदाहरण के लिए, Github में यह निम्नलिखित अनुमतियाँ मांगेगा:

  • user:email (केवल पढ़ने के लिए)

  • read:org (केवल पढ़ने के लिए)

  • repo: सार्वजनिक और निजी repositories और संगठनों के लिए कोड, commit स्थितियों, सहयोगियों, और deployment स्थितियों के पढ़ने और लिखने की अनुमति देता है।

एन्क्रिप्टेड सीक्रेट्स

पर्यावरण चर

TravisCI में, अन्य CI प्लेटफॉर्म्स की तरह, यह संभव है कि repo स्तर पर सीक्रेट्स सेव करें जो एन्क्रिप्टेड सेव होंगे और बिल्ड करने वाली मशीन के पर्यावरण चर में डिक्रिप्टेड और पुश किए जाएंगे

यह संभव है कि इंगित करें कि किन शाखाओं के लिए सीक्रेट्स उपलब्ध होंगे (डिफ़ॉल्ट रूप से सभी) और यह भी कि क्या TravisCI उसके मूल्य को छिपाएगा यदि यह लॉग्स में दिखाई देता है (डिफ़ॉल्ट रूप से यह करेगा)।

कस्टम एन्क्रिप्टेड सीक्रेट्स

प्रत्येक repo के लिए TravisCI एक RSA keypair उत्पन्न करता है, निजी एक को रखता है, और repository की सार्वजनिक कुंजी को उपलब्ध कराता है उन लोगों के लिए जिनके पास repository तक पहुँच है।

आप एक repo की सार्वजनिक कुंजी तक पहुँच सकते हैं:

travis pubkey -r <owner>/<repo_name>
travis pubkey -r carlospolop/t-ci-test

फिर, आप इस सेटअप का उपयोग करके गुप्त कोडों को एन्क्रिप्ट करके उन्हें आपके .travis.yaml में जोड़ सकते हैं। गुप्त कोड बिल्ड चलाने पर डिक्रिप्ट किए जाएंगे और पर्यावरण चर में सुलभ होंगे।

ध्यान दें कि इस तरह से एन्क्रिप्ट किए गए गुप्त कोड सेटिंग्स के पर्यावरण चरों में सूचीबद्ध नहीं होंगे।

कस्टम एन्क्रिप्टेड फाइलें

इससे पहले की तरह, TravisCI यह भी अनुमति देता है कि फाइलों को एन्क्रिप्ट करें और फिर उन्हें बिल्ड के दौरान डिक्रिप्ट करें:

travis encrypt-file super_secret.txt -r carlospolop/t-ci-test

encrypting super_secret.txt for carlospolop/t-ci-test
storing result as super_secret.txt.enc
storing secure env variables for decryption

Please add the following to your build script (before_install stage in your .travis.yml, for instance):

openssl aes-256-cbc -K $encrypted_355e94ba1091_key -iv $encrypted_355e94ba1091_iv -in super_secret.txt.enc -out super_secret.txt -d

Pro Tip: You can add it automatically by running with --add.

Make sure to add super_secret.txt.enc to the git repository.
Make sure not to add super_secret.txt to the git repository.
Commit all changes to your .travis.yml.

ध्यान दें कि जब एक फ़ाइल को एन्क्रिप्ट किया जाता है तो 2 Env Variables रेपो के अंदर कॉन्फ़िगर किए जाएंगे जैसे कि:

TravisCI Enterprise

Travis CI Enterprise एक on-prem संस्करण है Travis CI का, जिसे आप अपने इंफ्रास्ट्रक्चर में डिप्लॉय कर सकते हैं. इसे Travis CI का 'सर्वर' संस्करण समझें। Travis CI का उपयोग करने से आप एक आसान-से-उपयोग Continuous Integration/Continuous Deployment (CI/CD) सिस्टम को एक ऐसे वातावरण में सक्षम कर सकते हैं, जिसे आप चाहें तो कॉन्फ़िगर और सुरक्षित कर सकते हैं।

Travis CI Enterprise में दो मुख्य भाग होते हैं:

  1. TCI सेवाएं (या TCI Core Services), जो वर्जन कंट्रोल सिस्टम्स के साथ इंटीग्रेशन, बिल्ड्स को अधिकृत करना, बिल्ड जॉब्स की शेड्यूलिंग, आदि के लिए जिम्मेदार होती हैं।

  2. TCI Worker और बिल्ड एनवायरनमेंट इमेजेज (जिन्हें OS इमेजेज भी कहा जाता है)।

TCI Core सेवाओं को निम्नलिखित की आवश्यकता होती है:

  1. एक PostgreSQL11 (या बाद का) डेटाबेस।

  2. एक इंफ्रास्ट्रक्चर जहां एक Kubernetes क्लस्टर डिप्लॉय किया जा सके; इसे एक सर्वर क्लस्टर में या एकल मशीन में भी डिप्लॉय किया जा सकता है अगर आवश्यक हो

  3. आपकी सेटअप के आधार पर, आप कुछ कॉम्पोनेंट्स को अपने दम पर डिप्लॉय और कॉन्फ़िगर करना चाह सकते हैं, जैसे कि RabbitMQ - अधिक जानकारी के लिए Setting up Travis CI Enterprise देखें।

TCI Worker को निम्नलिखित की आवश्यकता होती है:

  1. एक इंफ्रास्ट्रक्चर जहां एक docker इमेज जिसमें Worker और एक लिंक्ड बिल्ड इमेज हो, डिप्लॉय किया जा सके

  2. कुछ Travis CI Core Services कॉम्पोनेंट्स से कनेक्टिविटी - अधिक जानकारी के लिए Setting Up Worker देखें।

आपके इंफ्रास्ट्रक्चर में Travis CI Enterprise डिप्लॉयमेंट की कुल समवर्ती क्षमता डिप्लॉय किए गए TCI Worker और बिल्ड एनवायरनमेंट OS इमेजेज की मात्रा द्वारा निर्धारित होगी।

Learn AWS hacking from zero to hero with htARTE (HackTricks AWS Red Team Expert)!

HackTricks को अन्य तरीकों से समर्थन दें:

  • अगर आप चाहते हैं कि आपकी कंपनी का विज्ञापन HackTricks में दिखाई दे या HackTricks को PDF में डाउनलोड करें तो SUBSCRIPTION PLANS देखें!

  • The PEASS Family की खोज करें, हमारा एक्सक्लूसिव NFTs संग्रह

  • 💬 Discord group में शामिल हों या telegram group या Twitter पर मुझे 🐦 @carlospolopm** को फॉलो करें**।

  • HackTricks को अपनी हैकिंग ट्रिक्स साझा करके HackTricks और HackTricks Cloud github repos में PRs सबमिट करें।

Last updated