Return-Path: Delivered-To: apmail-ant-ivy-user-archive@www.apache.org Received: (qmail 2672 invoked from network); 19 Dec 2008 14:05:47 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 19 Dec 2008 14:05:47 -0000 Received: (qmail 77790 invoked by uid 500); 19 Dec 2008 14:05:59 -0000 Delivered-To: apmail-ant-ivy-user-archive@ant.apache.org Received: (qmail 77487 invoked by uid 500); 19 Dec 2008 14:05:58 -0000 Mailing-List: contact ivy-user-help@ant.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: ivy-user@ant.apache.org Delivered-To: mailing list ivy-user@ant.apache.org Received: (qmail 77476 invoked by uid 99); 19 Dec 2008 14:05:58 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 19 Dec 2008 06:05:58 -0800 X-ASF-Spam-Status: No, hits=1.2 required=10.0 tests=SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (nike.apache.org: local policy) Received: from [85.13.140.165] (HELO dd20528.kasserver.com) (85.13.140.165) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 19 Dec 2008 14:05:36 +0000 Received: from [192.168.0.98] (unknown [78.52.234.69]) by dd20528.kasserver.com (Postfix) with ESMTP id 9D01B1110002 for ; Fri, 19 Dec 2008 15:05:17 +0100 (CET) Subject: Followup question: publish and deliver - how to force status in dependency From: Konstantin Rekk To: ivy-user@ant.apache.org Content-Type: text/plain; charset=UTF-8 Organization: GBV VZG Date: Fri, 19 Dec 2008 15:05:14 +0100 Message-Id: <1229695514.9248.30.camel@myhome> Mime-Version: 1.0 X-Mailer: Evolution 2.22.3.1 Content-Transfer-Encoding: 8bit X-Virus-Checked: Checked by ClamAV on apache.org Hello, regarding my last questions about delivering artefacts to reposistories with ivy I created a quick$dirty sketch: http://www.rekk.de/bloggy/wp-content/uploads/2008/12/ivy_publish.png I am an ivynewbie and I didn't get the complete picture until now. Any help would be much appreciated. Please also correct me if I am approching this issue from a wrong direction! So once more the question: How to publish consistently to different level repositories during the build process? Consistently - means lower level rep artefacts will only list dependencies in static ivy files from artefacts of same or higher status/rep. Suppose there are three build quality steps: developer -> goes to local rep, integration -> goes to shared rep, production-ready goes to public rep So there are different ant targets or builds: building local should call publish-local on success, building integration should publish publish-integration on success, building production should publish a release or milestone to public on success. How exactly (or is there a recommended way) to control this process from ivy (replacing dynamic ivy files by static during publishing)? 1) using different chains or different ivysetting.xml to force artefact resolution 2) using different dynamic ivy files according to build level, set rev there 3) using deliver task in some way to force right status of dependency (the documentation provides only one example here, so not easy to get the direction here, http://ant.apache.org/ivy/history/latest-milestone/use/deliver.html )? Before jumping in testing all three I would like to ask the experts here. Thanks in advance! -------- Forwarded Message -------- From: Konstantin Rekk To: ivy-user@ant.apache.org Subject: question: publish and deliver - how to force status in dependency Date: Thu, 18 Dec 2008 15:43:06 +0100 Hello, I am a little confused about the generation of ivy files during (ant) publish task (playing around with example apache-ivy-2.0.0-rc2/src/example/multi-project/ ): Citation from: http://ant.apache.org/ivy/history/latest-milestone/use/deliver.html "If a deliver target is set, then it is called (via an antcall) for each dependency which has not a suffisant status compared to the deliver status set for this task. This means that if you deliver an integration revision, no recursive delivery will be done." Is my expectation right, that in case of using status release for publishing as in common.xml: would force inclusion of dependencies with status release as well? But look at the generated multi-project/repository/shared/org.apache.ivy.example/console/1.0-dev-b5/ivys/ivy.xml : Please, could somebody here give me a hint, what's the best way to force generated dependencies: - status release -> include only release (publish on public) - status milestone -> include only milestone and above (publish shared) - status integration -> latest.integration and above (publish local) Does this approach makes sense at all? Thanks a lot! Konstantin -- Konstantin Rekk VZG (GBV), Göttingen, Berlin 0176 2100 6000 030 29003511 skype: krekk1970 rekk@gbv.de http://www.gbv.de