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