Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
devel:tools:building
jenkins
jenkins.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File jenkins.spec of Package jenkins
# # spec file for package jenkins # # Copyright (c) 2021 SUSE LLC # Copyright (c) 2011-2012, Sascha Peilicke <saschpe@gmx.de> # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # %if 0%{!?_fillupdir:1} %define _fillupdir %{_localstatedir}/adm/fillup-templates %endif Name: jenkins Version: 2.472 Release: 0 Summary: An extendable open source continuous integration server License: MIT Group: Development/Tools/Building Url: https://www.jenkins.io/ Source0: https://pkg.jenkins.io/opensuse/jenkins-%{version}-1.2.noarch.rpm Source1: https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key Source2: %{name}.sh Source3: %{name}.sysconfig Source4: %{name}.logrotate Source5: %{name}.service Source6: system-user-jenkins.conf %if 0%{suse_version} >= 1500 BuildRequires: sysuser-tools %sysusers_requires %else Requires(pre): pwdutils %endif BuildRequires: unzip # solve the java.awt.headless problem # https://wiki.jenkins.io/display/JENKINS/Jenkins+got+java.awt.headless+problem Requires: dejavu-fonts Requires: java >= 1.8 Requires(pre): %fillup_prereq Provides: hudson = %{version} Obsoletes: hudson < %{version} BuildArch: noarch Suggests: logrotate %description Jenkins-CI monitors executions of repeated jobs, such as building a software project or jobs run by cron. Among those things, current Jenkins-CI focuses on the following two jobs: 1. Building/testing software projects continuously, just like CruiseControl or DamageControl. In a nutshell, Jenkins-CI provides an easy-to-use so-called continuous integration system, making it easier for developers to integrate changes to the project, and making it easier for users to obtain a fresh build. The automated, continuous build increases the productivity. 2. Monitoring executions of externally-run jobs, such as cron jobs and procmail jobs, even those that are run on a remote machine. For example, with cron, all you receive is regular e-mails that capture the output, and it is up to you to look at them diligently and notice when it broke. Jenkins-CI keeps those outputs and makes it easy for you to notice when something is wrong. %prep rpm=%{SOURCE0} rpmkeys --dbpath `pwd`/rpm --import %{SOURCE1} rpm --dbpath `pwd`/rpm -K $rpm set -o pipefail rpm2cpio $rpm | cpio -i --to-stdout ".*usr/share/java/jenkins.war" > jenkins.war test -s jenkins.war # ensure it is not empty %build %if 0%{suse_version} >= 1500 %sysusers_generate_pre %{SOURCE6} jenkins system-user-jenkins.conf %endif %install install -Dm0644 jenkins.war %{buildroot}%{_libexecdir}/%{name}/%{name}.war install -Dm0755 %{SOURCE2} %{buildroot}%{_libexecdir}/%{name}/%{name}.sh sed -e 's-@LIBEXECDIR@-%{_libexecdir}-g' -i %{buildroot}%{_libexecdir}/%{name}/%{name}.sh install -d %{buildroot}%{_sbindir} ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rcjenkins install -Dm0644 %{SOURCE3} %{buildroot}%{_fillupdir}/sysconfig.%{name} install -Dm0644 %{SOURCE4} %{buildroot}%{_sysconfdir}/logrotate.d/%{name} install -d %{buildroot}%{_localstatedir}/lib/%{name} install -d %{buildroot}%{_localstatedir}/log/%{name} install -Dm0644 %{SOURCE5} %{buildroot}%{_unitdir}/jenkins.service sed -e 's-@LIBEXECDIR@-%{_libexecdir}-g' -i %{buildroot}%{_unitdir}/jenkins.service %if 0%{suse_version} >= 1500 install -Dm0644 %{SOURCE6} %{buildroot}%{_sysusersdir}/system-user-jenkins.conf %endif %if 0%{suse_version} >= 1500 %pre -f %{name}.pre %else %pre groupadd -r jenkins &>/dev/null || : useradd -g jenkins -s /bin/false -r -c "Jenkins Continuous Build server" -d /var/lib/jenkins jenkins &>/dev/null || : %endif %service_add_pre jenkins.service # package update ? if [ ${1:-0} -gt 1 ]; then # update to >= 1.451.1 # set a mark when updating from JENKINS_AJP_HOST="0.0.0.0" eval JENKINS_AJP_HOST='' \ `grep -s '^[[:space:]]*JENKINS_AJP_HOST=' etc/sysconfig/jenkins` if [ "x$JENKINS_AJP_HOST" = "x0.0.0.0" ] ; then touch etc/sysconfig/__change_jenkins_ajp_host__ fi fi %post %service_add_post jenkins.service %fillup_only %{name} # replace old val of JENKINS_AJP_HOST if necessary if [ -f etc/sysconfig/__change_jenkins_ajp_host__ ] ; then rm -f etc/sysconfig/__change_jenkins_ajp_host__ sed -i -e 's/^JENKINS_AJP_HOST=.*/JENKINS_AJP_HOST=""/g' \ etc/sysconfig/jenkins fi %preun %service_del_preun jenkins.service %postun %service_del_postun jenkins.service %files %defattr(-,root,root,,) %{_sbindir}/rc%{name} %if 0%{suse_version} >= 1500 %{_sysusersdir}/system-user-jenkins.conf %endif %{_unitdir}/jenkins.service %{_libexecdir}/%{name} %config(noreplace) %{_sysconfdir}/logrotate.d/%{name} #%%config(noreplace) %%{_sysconfdir}/sysconfig/%%{name} %{_fillupdir}/sysconfig.%{name} %attr(0755,jenkins,jenkins) %dir %{_localstatedir}/lib/%{name} %attr(0755,jenkins,jenkins) %{_localstatedir}/log/%{name} %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor