हाल ही में, एक m2release प्लगइन मेरे ध्यान में आया। अच्छा लगा Althought, मैं पूरी तरह से «पोम-ट्वीकिंग मुक्त» होने के लिए मेरी रिलीज प्रक्रिया पसंद आया होगा। क्या मैं उस से मतलब है कि हम संपूर्ण रिलीज़ कार्रवाई करने के लिए 4 इनपुट पैरामीटर प्रदान करने के लिए है जो: (उदा। 1.0.0)
- रिलीज़ संस्करण
- नए विकास संस्करण (पूर्व 1.0.1-। स्नैपशॉट) एससीएम में
- रिहाई टैग (उदा। जारी-1.0.0 या 1.0.0)
- टैग आधार पथ एससीएम
में पहले 2 स्वीकार्य चूक की है। बग-फ़िक्स संस्करण अंक पर बंपिंग संस्करण मेरे लिए बिल्कुल ठीक है।
संख्या 4 को पोम में निर्दिष्ट किया जा सकता है। यह नहीं बदलेगा।
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<configuration>
<tagBase>https://example.com/svn/myProject/releases</tagBase>
</configuration>
</plugin>
यह तीसरा है जो मुझे बटन के धक्का पर रिलीज के पूर्ण स्वचालन से रोकता है। डिफ़ॉल्ट रिहाई टैग लेबल हमारे लिए यह काम नहीं चलेगा, ताकि हम उसे निर्दिष्ट करने के लिए है:, अब
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<configuration>
<tag>release-${pom.version}</tag>
<tagBase>https://example.com/svn/myProject/releases</tagBase>
</configuration>
</plugin>
जबकि इस हो सकता है मैं तो बस क्या जरूरत है, मैं कम से -SNAPSHOT के साथ एक SVN टैग होने अंत समाप्त। :(तो मुझे हडसन जॉब कॉन्फ़िगरेशन में टैग पैरामीटर पास करना होगा। इसके अलावा, मुझे इसे प्रत्येक रिलीज के लिए बदलना होगा ... जो बिल्कुल मुझे चाहिए वह नहीं है।
तो, अंत में, हडसन में एक maven2 प्रकार परियोजना + m2release हडसन प्लगइन + Maven रिहाई सही ढंग से कॉन्फ़िगर प्लग इन होने सब रिहाई प्रक्रिया मैं अब तक देखा है की माँ है। हालांकि सही नहीं था, यह मुझे बहुत बंधे काम बचाया।
जेएस।
स्रोत
2010-01-29 20:16:51
अफसोस की बात है, मुझे लगता है कि मैन्युअल रिलीज एक समाधान है जो तकनीकी रूप से स्वीकार्य होगा लेकिन राजनीतिक रूप से अस्वीकार्य होगा। मैं उल्लेख करूंगा कि सोनाटाइप में एक वरिष्ठ व्यक्ति ने _ व्यक्तिगत रूप से सुझाव दिया है कि हम हाथ से हमारी रिलीज करते हैं। – sal
विकल्प यह है कि आप रिलीज करते हैं: हाथ से लक्ष्य तैयार करें, या कम से कम रिलीज: तैयार करें- डीड्रीरुन = जब तक आप पर्याप्त रूप से सुनिश्चित न हों कि सभी मानदंड पूर्ण हो जाएं, तो आप अपनी बिल्ड प्रक्रिया को बंद कर सकते हैं और उचित रूप से सुनिश्चित कर सकते हैं यह काम करने जा रहा है। –
मुझे वास्तव में यह विचार पसंद है। रिलीज होने के बाद: तैयार करें- डीड्रीरुन = सही निष्पादित पहले हमें सबसे अधिक समस्याओं को रोकना चाहिए। – sal