forked from maestrodev/puppet-maven
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME
83 lines (63 loc) · 2.18 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
# Copyright 2011 MaestroDev
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
Carlos Sanchez <csanchez@maestrodev.com>
http://www.maestrodev.com
2010-03-01
A puppet recipe for Apache Maven, to download artifacts from a Maven repository
It uses Apache Maven command line to download the artifacts.
=== Buildr version ===
There is also an Apache Buildr version, but it requires to have Buildr installed before running Puppet
And you would need to enable pluginsync in both master and clients
http://docs.puppetlabs.com/guides/plugins_in_modules.html#enabling-pluginsync
Usage
maven { "/tmp/myfile":
id => "groupId:artifactId:version:packaging:classifier",
repos => ["id::layout::http://repo.acme.com","http://repo2.acme.com"],
}
or
maven { "/tmp/myfile":
groupid => "org.apache.maven",
artifactid => "maven-core",
version => "2.2.1",
packaging => "jar",
classifier => "sources",
repos => ["id::layout::http://repo.acme.com","http://repo2.acme.com"],
}
Examples
# =============== Begin setup ===============
$repo1 = {
id => "myrepo",
username => "myuser",
password => "mypassword",
url => "http://repo.acme.com",
}
# Install Maven
class { "maven::maven":
version => "2.2.1",
} ->
# Create a settings.xml with the repo creedentials
class { "maven::settings" :
servers => [$repo1],
}
# =============== End setup ===============
maven { "/tmp/maven-core-2.2.1.jar":
id => "org.apache.maven:maven-core:2.2.1:jar",
repos => ["central::default::http://repo1.maven.apache.org/maven2","http://mirrors.ibiblio.org/pub/mirrors/maven2"],
}
maven { "/tmp/maven-core-2.2.1-sources.jar":
groupid => "org.apache.maven",
artifactid => "maven-core",
version => "2.2.1",
classifier => "sources",
}