]> git.pld-linux.org Git - packages/jenkins.git/blob - jenkins.spec
04cc5a08812e156589ae648db3d24d181012a99c
[packages/jenkins.git] / jenkins.spec
1 # TODO
2 # - build it from sources
3 #   https://hudson.dev.java.net/files/documents/2402/125619/hudson-1.280-src.zip
4 # - use system jars
5 # - subpackages (see ubuntu packages for splitting contents)
6 %include        /usr/lib/rpm/macros.java
7 Summary:        Jenkins Continuous Build Server
8 Name:           jenkins
9 Version:        1.510
10 Release:        1
11 License:        MIT License
12 Group:          Networking/Daemons/Java/Servlets
13 # Check for new releases and URLs here: http://mirrors.jenkins-ci.org/war/?C=N;O=D
14 Source0:        http://mirrors.jenkins-ci.org/war/%{version}/%{name}.war?/%{name}-%{version}.war
15 # Source0-md5:  d5fb16f82854dd55d4790d6b1ba9bbbe
16 Source1:        context.xml
17 Patch0:         webxml.patch
18 URL:            http://www.jenkins-ci.org/
19 BuildRequires:  jpackage-utils
20 BuildRequires:  rpm-javaprov
21 BuildRequires:  rpmbuild(macros) >= 1.546
22 Requires:       jpackage-utils
23 Requires:       jre-X11
24 Requires:       tomcat
25 Suggests:       %{name}-plugin-maven
26 Obsoletes:      hudson < 1.396
27 BuildArch:      noarch
28 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
29
30 %description
31 Jenkins monitors executions of repeated jobs, such as building a
32 software project or jobs run by cron.
33
34 Among those things, current Jenkins focuses on the following two jobs:
35 - Building/testing software projects continuously, just like
36   CruiseControl or DamageControl. In a nutshell, Jenkins provides an
37   easy-to-use so-called continuous integration system, making it easier
38   for developers to integrate changes to the project, and making it
39   easier for users to obtain a fresh build. The automated, continoues
40   build increases the productivity.
41 - Monitoring executions of externally-run jobs, such as cron jobs and
42   procmail jobs, even those that are run on a remote machine. For
43   example, with cron, all you receive is regular e-mails that capture
44   the output, and it is up to you to look at them diligently and notice
45   when it broke. Jenkins keeps those outputs and makes it easy for you
46   to notice when something is wrong.
47
48 %package plugin-maven
49 Summary:        Jenkins Maven 2 Project Plugin
50 Group:          Networking/Daemons/Java/Servlets
51 URL:            https://wiki.jenkins-ci.org/display/JENKINS/Maven+2+Project+Plugin
52 Requires:       %{name} = %{version}-%{release}
53 Conflicts:      %{name} < %{version}-%{release}
54
55 %description plugin-maven
56 Maven Integration plugin.
57
58 %prep
59 %setup -qc
60 %{__rm} *.class
61 %{__rm} winstone.jar
62 %patch0 -p1
63
64 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
65
66 %install
67 rm -rf $RPM_BUILD_ROOT
68 install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name},%{_datadir}/%{name},%{_sharedstatedir}/%{name},%{_tomcatconfdir}}
69 mv WEB-INF/web.xml $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/web.xml
70 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/tomcat-context.xml
71 ln -sf %{_sysconfdir}/%{name}/tomcat-context.xml $RPM_BUILD_ROOT%{_tomcatconfdir}/%{name}.xml
72 cp -a . $RPM_BUILD_ROOT%{_datadir}/%{name}
73 ln -sf %{_sysconfdir}/%{name}/web.xml $RPM_BUILD_ROOT%{_datadir}/%{name}/WEB-INF/web.xml
74
75 %post
76 # If we have an old hudson install, rename it to jenkins
77 if test -d /var/lib/hudson; then
78         echo >&2 "Moving /var/lib/hudson -> /var/lib/jenkins"
79         # leave a marker to indicate this came from Hudson.
80         # could be useful down the road
81         # This also ensures that the .??* wildcard matches something
82         touch /var/lib/hudson/.moving-hudson
83         mv -f /var/lib/hudson/* /var/lib/hudson/.??* /var/lib/jenkins
84         rmdir /var/lib/hudson
85 fi
86 if test -d /var/run/hudson; then
87         mv -f /var/run/hudson/* /var/run/jenkins
88         rmdir /var/run/hudson
89 fi
90
91 %postun
92 %tomcat_clear_cache %{name}
93
94 %clean
95 rm -rf $RPM_BUILD_ROOT
96
97 %files
98 %defattr(644,root,root,755)
99 %dir %{_sysconfdir}/%{name}
100 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/*.xml
101 %{_tomcatconfdir}/%{name}.xml
102 %attr(2775,root,servlet) %dir %{_sharedstatedir}/%{name}
103 %dir %{_datadir}/%{name}
104 %{_datadir}/%{name}/META-INF
105
106 %dir %{_datadir}/%{name}/WEB-INF
107 %{_datadir}/%{name}/WEB-INF/classes
108 %{_datadir}/%{name}/WEB-INF/hudson
109 %{_datadir}/%{name}/WEB-INF/lib
110 %{_datadir}/%{name}/WEB-INF/security
111 %{_datadir}/%{name}/WEB-INF/update-center-rootCAs
112 %{_datadir}/%{name}/WEB-INF/*.xmi
113 %{_datadir}/%{name}/WEB-INF/*.xml
114 %{_datadir}/%{name}/WEB-INF/jenkins-cli.jar
115 %{_datadir}/%{name}/WEB-INF/remoting.jar
116 %{_datadir}/%{name}/WEB-INF/slave.jar
117
118 %dir %{_datadir}/%{name}/WEB-INF/plugins
119 %{_datadir}/%{name}/WEB-INF/plugins/ant.hpi
120 %{_datadir}/%{name}/WEB-INF/plugins/credentials.hpi
121 %{_datadir}/%{name}/WEB-INF/plugins/cvs.hpi
122 %{_datadir}/%{name}/WEB-INF/plugins/external-monitor-job.hpi
123 %{_datadir}/%{name}/WEB-INF/plugins/javadoc.hpi
124 %{_datadir}/%{name}/WEB-INF/plugins/ldap.hpi
125 %{_datadir}/%{name}/WEB-INF/plugins/mailer.hpi
126 %{_datadir}/%{name}/WEB-INF/plugins/pam-auth.hpi
127 %{_datadir}/%{name}/WEB-INF/plugins/ssh-credentials.hpi
128 %{_datadir}/%{name}/WEB-INF/plugins/ssh-slaves.hpi
129 %{_datadir}/%{name}/WEB-INF/plugins/subversion.hpi
130 %{_datadir}/%{name}/WEB-INF/plugins/translation.hpi
131
132 %{_datadir}/%{name}/css
133 %{_datadir}/%{name}/executable
134 %{_datadir}/%{name}/help
135 %{_datadir}/%{name}/images
136 %{_datadir}/%{name}/scripts
137 %{_datadir}/%{name}/*.txt
138 %{_datadir}/%{name}/favicon.ico
139
140 %files plugin-maven
141 %defattr(644,root,root,755)
142 %{_datadir}/%{name}/WEB-INF/plugins/maven-plugin.hpi
This page took 0.112004 seconds and 2 git commands to generate.