Jenkins and Travis CI Java In Hindi
जावा प्रोग्रामिंग लैंग्वेज में, जेनकिंस और ट्रैविस CI, CI/CD सॉफ्टवेयर मैनेजमेंट टूल या फीचर्स हैं, जावा में जेनकिंस और ट्रैविस CI, CI/CD का यूज़ नए सॉफ्टवेयर क्रिएट करने में, मौजूदा सॉफ्टवेयर को टेस्ट डिबग करने और फाइनली यूज़ डेडिकेटेड सिस्टम हार्डवेयर डिवाइस पर इन्हे डिप्लॉय करने जैसे इम्पोर्टेन्ट सिस्टम टास्क को ऑटोमेट करने में किया जाता है। Java/Maven सॉफ्टवेयर प्रोजेक्ट टेस्टिंग मैनेजमेंट के लिए, जब भी जावा प्रोग्राम सोर्स कोड को Git प्लेटफार्म एनवायरनमेंट पर पुश किया जाता है, तो ये आपके जावा सोर्स कोड टेस्ट को ऑटोमैटिकली रन कर सकते हैं।

What is the CI/CD concept in Java?
जावा प्रोग्राम में CI (कंटीन्यूअस इंटीग्रेशन) कांसेप्ट का अर्थ है, जावा प्रोग्राम सोर्स कोड में मल्टीप्ल टाइम होने वाले मैन्युअल यूजर मॉडिफिकेशन अपडेट को ऑटोमैटिकली क्रिएट करना और जरूरत पड़ने पर उसे टेस्ट करना।
जावा प्रोग्राम में CD (कंटीन्यूअस डिलीवरी/डिप्लॉयमेंट) कांसेप्ट का अर्थ है, यूजर डिफाइन जावा प्रोग्राम सोर्स कोड में टेस्ट किए गए सॉफ्टवेयर को तैयार करने या डिप्लॉय करने के प्रोसेस को ऑटोमेट करना।
A typical Java CI/CD workflow looks like this.
Java Developer
↓
git push method
↓
Git code repository
↓
CI Test Server
↓
mvn clean test method
↓
Build task
↓
Finally Deployment
Java CI/CD example.
mvn clean test
इसमें जावा यूजर जब भी कोई कस्टम यूजर मॉडिफिकेशन बेस्ड चेंज को पुश करता है, तो ये ऑटोमैटिकली इसमें रन हो सकता है।
Jenkins concept in Java.
जावा सॉफ्टवेयर सोर्स कोड टेस्टिंग मैनेजमेंट के लिए जेनकिंस एक ओपन-सोर्स फ्री ऑफ़ कॉस्ट ऑटोमेशन सर्वर तकनीक है, जावा में जेनकिंस ऑटोमेशन सर्वर का सामान्य रूप से यूज़ CI/CD पाइपलाइन मेथड को इम्प्लीमेंट करने में किया जाता है।
The basic Java Jenkins automation server workflow is as follows.
Git Push command
↓
यह जेनकिंस में मॉडिफिकेशन को फाइंड करता है
↓
जावा प्रोग्राम सोर्स कोड देखें
↓
Maven बिल्ड कांसेप्ट
↓
अपना यूनिट टेस्ट को चलाएं
↓
जावा JAR/WAR फाइल बनाएं
↓
फाइनली उसे डिप्लॉय भी करें
जावा प्रोग्राम सोर्स कोड में एक जेनकिंस पाइपलाइन को जेनकिंसफ़ाइल का यूज़ करके इंडीकेट किया जा सकता है।
Example of a Jenkins pipeline.
pipeline {
agent any
stage {
stage(‘checkout task’) {
steps {
checkout scm
}
}
stage(‘build task’) {
steps {
sh ‘mvn clean compile method’
}
}
stage(‘test task’) {
steps {
sh ‘mvn test’
}
}
stage(‘package task’) {
steps {
sh ‘mvn package’
}
}
}
}
}
Advantages of using Jenkins Pipeline in Java.
- जेनकिंस पाइपलाइन जावा यूजर को मल्टीप्ल यूजर डिफाइन कस्टमाइज़ेबल चॉइस प्रोवाइड करता है।
- जेनकिंस पाइपलाइन का अपना एक लार्ज प्लगइन लाइब्रेरी सपोर्ट इकोसिस्टम है।
- जावा जेनकिंस पाइपलाइन एक समय में लैंग्वेजेज और बिल्ड सिस्टम एनवायरनमेंट को सपोर्ट करता है
- जेनकिंस पाइपलाइन आपके अपने लोकल सिस्टम हार्डवाइ इंफ्रास्ट्रक्चर पर इनस्टॉल और रन हो सकता है
- जेनकिंस पाइपलाइन कॉम्प्लेक्स CI/CD पाइपलाइन कांसेप्ट को भी सपोर्ट करता है
- जेनकिंस पाइपलाइन आसानी से अन्य जावा लाइब्रेरी जैसे, Git, Maven, Docker, क्लाउड प्लेटफॉर्म और कई दूसरे टूल्स सॉफ्टवेयर के साथ आसानी से इंटीग्रेट हो जाता है
Example of Java for Jenkins.
जब जावा सॉफ्टवेयर डेवलपर एक टास्क या रिक्वेस्ट को पुश करता है.
git push origin feature/login
Java Jenkins can then.
Checkout source code
↓
mvn clean task
↓
mvn test task
↓
mvn package method
↓
Publish the artifact / finally deploy it
Travis CI concept with Java.
जावा सोर्स कोड एनवायरनमेंट के लिए ट्रैविस CI एक होस्टेड CI सर्विस टास्क है, जो जावा रिपॉजिटरी में कस्टम यूजर अपडेट मॉडिफिकेशन को पुश करने पर ऑटोमैटिकली प्रोजेक्ट्स क्रिएट और टेस्ट कर सकता है।
इसकी डिफ़ॉल्ट कॉन्फ़िगरेशन को सामान्य रूप से इस तरह से डिफाइन किया जाता है.
.travis.yml
जावा Maven Java सोर्स कोड प्रोजेक्ट के लिए, एक सिंपल कॉन्फ़िगरेशन कुछ ऐसा डिस्प्ले हो सकता है.
language: java
jdk:
– openjdk17
script:
– mvn clean test
The general flow of a basic Java Travis CI concept is.
Git Push command
↓
Travis CI concept
↓
Set up Java
↓
Run the Maven framework
↓
Run user code tests
↓
Preview build results
Detail Difference Between Java Jenkins Vs Travis CI
| # | Jenkins Vs Travis Ci Features | Jenkins Overview | Travis Ci Overview |
| 1. | Type method | It enables java code for automation server | It enables java source code with ci service |
| 2. | Configuration level | It provides java jenkinsfile/ui/plugins library configuration | It provides configuration file to customize for it |
| 3. | Hosting platform | Generally, or commonly, it is self-hosted | It is a hosted based service platform |
| 4. | Customization level | It provides very high level of user custom customization | Generally, it enables simpler level of customization allowed |
| 5. | Plugins library support | It supports large plugins library support ecosystem for user need | It provides support integrations/configuration according to need |
| 6. | Java/Maven support | Yes, it provides java/maven platform support | Yes, it provides java/maven integration support |
| 7. | Complex pipelines | It provides complex pipelines with strong environment | It provides complex pipelines with supported behaviour |
| 8. | Infrastructure control | It supports very high infrastructure control environment | It supports a lower with hosted setup method |
Example of Jenkins Pipeline vs. Travis Configuration.
Java Jenkins Configuration:
stage(‘Test Method’) {
steps {
sh ‘mvn test’
}
}
Java Travis CI Configuration:
script:
– mvn test
यहाँ ऊपर दिए गए एक्साम्प्ल में जेनकिन्स पाइपलाइन और ट्रैविस कॉन्फ़िगरेशन दोनों एक ही बेसिक Java बिल्ड प्रोसेस को ऑटोमेट कर सकते हैं।
CI/CD concepts in Java with Git, Maven, and Java.
जावा प्रोग्राम सोर्स कोड के साथ ये टूल्स एक साथ बेहतर काम करते हैं.
Git environment concept
↓
Developer push update task
↓
Jenkins/Travis configuration method
↓
Maven build environment
↓
Unit test run
↓
Package JAR/WAR file creation step
↓
Final device deployment task
Conclusion of Jenkins and Travis CI.
एक Java सॉफ्टवेयर डेवलपर टीम के लिए ये टूल्स या फीचर्स इम्पोर्टेन्ट हो सकते है.
• Git → यह आपको जावा प्रोग्राम सोर्स-कोड वर्शन कंट्रोल करने में हेल्प करता है.
• Maven → यह जावा यूजर को जावा प्रोग्राम सोर्स-कोड डिपेंडेंसी मैनेजमेंट और बिल्ड एनवायरनमेंट प्रोवाइड करता है.
• JUnit/Mockito → यह जावा यूजर को जावा प्रोग्राम सोर्स-कोड यूनिट टेस्टिंग टास्क कम्पलीट करने में हेल्प करता है.
• Jenkins or Travis CI → यह जावा यूजर को जावा प्रोग्राम सोर्स-कोड को ऑटोमेटेड CI/CD एनवायरनमेंट में हैंडल करने में हेल्प करता है.
• Docker/Cloud/Server → यह जावा यूजर को जावा प्रोग्राम सोर्स-कोड को फाइनल डेडिकेटेड सिस्टम हार्डवेयर डिवाइस में इंस्टॉल डिप्लॉयमेंट करने में हेल्प करता है.
In short, Jenkins मुख्य रूप से जावा प्रोग्राम सोर्स-कोड के लिए एक ऑटोमेशन सर्वर है, जिसे जावा यूजर लार्ज लेवल पर कॉन्फ़िगर कर सकते हैं. जबकि Travis CI एक CI एक सर्विस मेथड है. जिसे जावा प्रोग्राम सोर्स-कोड रिपॉजिटरी कॉन्फ़िगरेशन के माध्यम से ऑटोमेटेड बिल्ड और टेस्ट को इजी करने के लिए डिज़ाइन किया गया है।

