# The upstream projects uses 4 digits after the version number to indicate # minor changes after the release: %global upstream_version 3.0.0 %global upstream_release 0001 # Short names for directories: %global engine_data_dir %{_datadir}/%{name} %global engine_jar_dir %{_javadir}/%{name} %global engine_ear_dir %{engine_data_dir}/engine.ear %global engine_pki_dir %{_sysconfdir}/pki/%{name} %global restapi_war_dir %{engine_ear_dir}/restapi.war # Directory to install python libraries: %define py_site_pkgs %(python -c "from distutils.sysconfig import get_python_lib as f;print f()") # Shortcuts for tools using in the scripts: %global __getent /usr/bin/getent %global __groupadd /usr/sbin/groupadd %global __useradd /usr/sbin/useradd %global __usermod /usr/sbin/usermod Name: ovirt-engine Version: %{upstream_version}_%{upstream_release} Release: 6%{?dist} Summary: Management server for Open Virtualization Group: Virtualization/Management License: ASL 2.0 URL: http://www.ovirt.org Source0: http://ovirt.org/releases/stable/src/ovirt-engine-3.0.0_0001.tar.gz BuildArch: noarch # Remove some dependencies used only for tests: Patch0: %{name}-remove-mockito.patch Patch10: %{name}-remove-powermock.patch Patch20: %{name}-remove-p6spy.patch # Remove JB5 specifc login module: # Upstream: http://gerrit.ovirt.org/2353 Patch30: %{name}-remove-jb5-login-module.patch # Add log4j: # Upstream: http://gerrit.ovirt.org/2353 Patch40: %{name}-add-log4j.patch # Add the dummy Hibernate annotations: Patch50: %{name}-add-dummy-hibernate-annotations.patch Patch60: %{name}-use-hibernate-jpa-2.0-api.patch Patch70: %{name}-replace-guidtype-with-empty-class.patch # Remove the dependency on JNA, as this was useful in Windows only: Patch80: %{name}-remove-jna.patch # Remove the dependency on jboss interceptors as it is not used and complicates # building: # Upstream: http://gerrit.ovirt.org/1997 Patch100: %{name}-remove-jboss-interceptors.patch # Remove all the Hibernate DAOs as they are not used currently and the bring a # lot of dependencies: Patch110: %{name}-remove-hibernate-daos.patch # Add the methods missing in PGHack: # Upstream: http://gerrit.ovirt.org/2347 Patch120: %{name}-add-pghack-missing-methods.patch # Remove dependency on JBoss EJB specific annotations as they are not used and # the complicate the building in Fedora: # Upstream: http://gerrit.ovirt.org/2008 # Upstream: http://gerrit.ovirt.org/2015 Patch130: %{name}-remove-jboss-ejb-specific-annotations.patch # Update to Quartz 2.1: Patch140: %{name}-update-to-quartz-2.1.patch # Remove local user authentication as this only makes sense in Windows: Patch150: %{name}-remove-local-user-authentication.patch # Don't use the hibernate string helper, just to avoid the dependency in # hibernate: Patch160: %{name}-dont-use-hibernate-string-helper.patch # Use the version of the XJC compiler and the corresponding Maven plugin that # are available in Fedora: # Upstream: http://gerrit.ovirt.org/2222 Patch170: %{name}-use-maven-jaxb2-plugin.patch # Update the custom serializer to use the builder class used starting with # Jackson 1.7: Patch180: %{name}-update-to-jackson-1.9.patch # Remove Spring from the RESTAPI: # Upstream: http://gerrit.ovirt.org/1390 Patch190: %{name}-remove-spring-from-restapi.patch # Don't require activation, as it is included in Java 7 and there is no package # for it: # Upstream: http://gerrit.ovirt.org/2354 Patch200: %{name}-dont-use-activation.patch # Newer versions of the assembly plugin complain if there is no id in the # assembly.xml file: Patch210: %{name}-add-id-to-the-notifier-assembly.patch # Fix a generics related bug in the Postgres dialect class: Patch220: %{name}-fix-postgresdbenginedialect.patch # The spring-agent artifact has been renamed to spring-instrument starting with # Spring 3: Patch240: %{name}-use-spring-instrument-instead-of-spring-agent.patch # Remove the frontend related content from the ear: Patch250: %{name}-remove-frontend-from-ear.patch # Replace pubkey2ssh with ssh-keygen in order to make the package noarch: # Upstream: http://gerrit.ovirt.org/3086 Patch260: %{name}-replace-pubkey2ssh-with-ssh-keygen.patch # Use build-classpath in scripts: Patch270: %{name}-fix-classpath-building-in-scripts.patch # Build time requirements: BuildRequires: apache-commons-beanutils BuildRequires: apache-commons-codec BuildRequires: apache-commons-collections BuildRequires: apache-commons-configuration BuildRequires: apache-commons-jxpath BuildRequires: apache-commons-lang BuildRequires: apache-commons-logging BuildRequires: apache-mina BuildRequires: apache-sshd BuildRequires: bea-stax-api BuildRequires: hibernate-jpa-2.0-api BuildRequires: hibernate-validator BuildRequires: jackson BuildRequires: jakarta-commons-httpclient BuildRequires: java-devel BuildRequires: javamail BuildRequires: javassist BuildRequires: jboss-annotations-1.1-api BuildRequires: jboss-ejb-3.1-api BuildRequires: jboss-interceptors-1.1-api BuildRequires: jboss-servlet-3.0-api BuildRequires: jpackage-utils BuildRequires: jsch BuildRequires: log4j BuildRequires: maven BuildRequires: maven-antrun-plugin BuildRequires: maven-assembly-plugin BuildRequires: maven-checkstyle-plugin BuildRequires: maven-clean-plugin BuildRequires: maven-compiler-plugin BuildRequires: maven-dependency-plugin BuildRequires: maven-ear-plugin BuildRequires: maven-eclipse-plugin BuildRequires: maven-ejb-plugin BuildRequires: maven-jar-plugin BuildRequires: maven-jaxb2-plugin BuildRequires: maven-plugin-exec BuildRequires: maven-resources-plugin BuildRequires: maven-source-plugin BuildRequires: maven-surefire-plugin BuildRequires: maven-war-plugin BuildRequires: postgresql-jdbc BuildRequires: quartz BuildRequires: resteasy BuildRequires: springframework-instrument BuildRequires: springframework-jdbc BuildRequires: spring-ldap BuildRequires: xmlrpc3-client # Run time requirements (most of these requirements should be moved to the # subpackages): Requires: apache-mina Requires: apache-sshd Requires: bea-stax-api Requires: geronimo-validation Requires: hibernate-jpa-2.0-api Requires: hibernate-validator Requires: jackson Requires: jakarta-commons-httpclient Requires: java Requires: javassist Requires: jboss-interceptors-1.1-api Requires: jpackage-utils Requires: jsch Requires: log4j Requires: openssh Requires: openssl Requires: postgresql-jdbc Requires: quartz Requires: resteasy Requires: springframework-instrument Requires: springframework-jdbc Requires: spring-ldap Requires: vdsm-bootstrap Requires: xmlrpc3-client # For local database: Requires: postgresql-server Requires: postgresql-contrib # Require some of the subpackages: Requires: %{name}-setup = %{version}-%{release} Requires: %{name}-backend = %{version}-%{release} Requires: %{name}-restapi = %{version}-%{release} %description oVirt Engine is a feature-rich server virtualization management system that provides advanced capabilities for managing the Open virtualization infrastructure for Servers and Desktops. %package config Summary: Configuration tool for Open Virtualization Manager Group: Virtualization/Management Requires: %{name}-tools-common = %{version}-%{release} %description config The configuration tool for Open Virtualization Manager. %package dbscripts Summary: Database scripts for Open Virtualization Manager Group: Virtualization/Management Requires: %{name} = %{version}-%{release} %description dbscripts Database scripts for Open Virtualization Manager. %package backend Summary: Engine core of Open Virtualization Manager Group: Virtualization/Management Requires: %{name} = %{version}-%{release} %description backend The backend engine of Open Virtualization Manager. %package iso-uploader Summary: ISO Uploader tool for Open Virtualization Manager Group: Virtualization/Management Requires: %{name} = %{version}-%{release} Requires: python-lxml %description iso-uploader ISO Uploader tool for Open Virtualization Manager. %package log-collector Summary: Log Collector tool for Open Virtualization Manager Group: Virtualization/Management Requires: %{name} = %{version}-%{release} Requires: python-lxml Requires: sos %description log-collector Log Collector tool for Open Virtualization Manager. %package notification-service Summary: Notification service for Open Virtualization Manager Tools Group: Virtualization/Management Requires: %{name} = %{version}-%{release} Requires: %{name}-tools-common = %{version}-%{release} Requires: javamail %description notification-service The notification service used by Open Virtualization Manager. %package restapi Summary: Open API for Red Hat Enterprise Virtualization Manager Group: Virtualization/Management Requires: %{name} = %{version}-%{release} %description restapi The Open API for Red Hat Enterprise Virtualization Manager. %package setup Summary: Setup and upgrade scripts for Open Virtualization Manager Group: Virtualization/Management Requires: %{name} = %{version}-%{release} Requires: lsof Requires: nfs-utils Requires: cracklib-python %description setup Setup and upgrade scripts for Open Virtualization Manager. %package tools-common Summary: Common libraries for Open Virtualization Manager Tools Group: Virtualization/Management Requires: %{name} = %{version}-%{release} Requires: apache-commons-codec Requires: apache-commons-collections Requires: apache-commons-configuration Requires: apache-commons-jxpath Requires: apache-commons-lang Requires: apache-commons-logging Requires: log4j %description tools-common The common libraries used by Open Virtualization Manager Tools. %prep # Unpack and patch the sources: %setup -q -c -n %{name}-%{upstream_version}_%{upstream_release} %patch0 -p1 %patch10 -p1 %patch20 -p1 %patch30 -p1 %patch40 -p1 %patch50 -p1 %patch60 -p1 %patch70 -p1 %patch80 -p1 %patch100 -p1 %patch110 -p1 %patch120 -p1 %patch130 -p1 %patch140 -p1 %patch150 -p1 %patch160 -p1 %patch170 -p1 %patch180 -p1 %patch190 -p1 %patch200 -p1 %patch210 -p1 %patch220 -p1 %patch240 -p1 %patch250 -p1 %patch260 -p1 %patch270 -p1 %build # The list of modules to build (this will eventually go away, when we can build # all the modules): list=' build-tools backend/manager/modules/beans/scheduler backend/manager/modules/beans/vdsbroker backend/manager/modules/bll backend/manager/modules/common backend/manager/modules/compat backend/manager/modules/dal backend/manager/modules/engineencryptutils backend/manager/modules/restapi/interface/common/jaxrs backend/manager/modules/restapi/interface/definition backend/manager/modules/restapi/jaxrs backend/manager/modules/restapi/types backend/manager/modules/restapi/webapp backend/manager/modules/searchbackend backend/manager/modules/utils backend/manager/modules/vdsbroker backend/manager/tools/engine-config backend/manager/tools/engine-notifier/engine-notifier-resources backend/manager/tools/engine-notifier/engine-notifier-service backend/manager/tools/engine-tools-common ear ' modules=`echo ${list} | sed 's/ /,/g'` # Use the upstream makefile to do build, but instructing it to use mvn-rpmbuild # instead of regular mvn and to skip completely the tests, as we don't have the # required dependencies: make \ MVN="mvn-rpmbuild" \ PREFIX="%{buildroot}" \ BUILD_FLAGS="-Dmaven.test.skip=true -Dproject.build.sourceEncoding=ISO-8859-1 -pl ${modules}" \ build_mvn %install # Use the upstream makefile to do the normal installation, after that we will # need to replace jar files with links to their actual locations: make \ PREFIX="%{buildroot}" \ install # Remove emptyfile.txt files from the PKI directories: find %{buildroot}%{engine_pki_dir} -name emptyfile.txt -delete # The upstream makefile installs the license but we don't need it as we are # marking it as documentation later: rm %{buildroot}/%{engine_data_dir}/LICENSE # XXX: Need to review this, but right now they have to be removed to avoid # rpmbuild complaints: rm %{buildroot}/usr/share/java/engine-tools-common-3.0.0-0001.jar rm %{buildroot}/usr/share/java/engine-tools-common.jar rm %{buildroot}/usr/share/jboss-as/modules/org/postgresql/main/postgresql-jdbc.jar # Create the directories required for jar and POM files: install -d -m 755 %{buildroot}%{engine_jar_dir} install -d -m 755 %{buildroot}%{_mavenpomdir} install -d -m 755 %{buildroot}%{_javadocdir}/%{name} # Jar and POM files: while read module_path artifact_id do pom_file="${module_path}/pom.xml" jar_file="${module_path}/target/${artifact_id}-%{upstream_version}-%{upstream_release}.jar" install -p -m 644 ${pom_file} %{buildroot}%{_mavenpomdir}/JPP.%{name}-${artifact_id}.pom if [ -f "${jar_file}" ] then install -p -m 644 ${jar_file} %{buildroot}%{engine_jar_dir}/${artifact_id}.jar %add_maven_depmap JPP.%{name}-${artifact_id}.pom %{name}/${artifact_id}.jar else %add_maven_depmap JPP.%{name}-${artifact_id}.pom fi done <<'.' . parent backend/manager/modules/compat compat backend/manager/modules/engineencryptutils engineencryptutils backend/manager/tools/engine-tools-common engine-tools-common backend/manager/modules/common common backend/manager/modules/utils utils backend/manager/modules/dal dal backend/manager/modules/beans/scheduler scheduler backend/manager/modules/vdsbroker vdsbroker backend/manager/modules/searchbackend searchbackend backend/manager/modules/beans/vdsbroker vdsbrokerbean backend/manager/modules/bll bll backend/manager/modules/restapi/interface/definition restapi-definition backend/manager/modules/restapi/interface/common/jaxrs interface-common-jaxrs backend/manager/modules/restapi/types restapi-types backend/manager/modules/restapi/jaxrs restapi-jaxrs backend/manager/tools/engine-config engine-config backend/manager/tools/engine-notifier/engine-notifier-service engine-notifier-service backend/manager/tools/engine-notifier/engine-notifier-resources engine-notifier-resources . # Remove all the jar files, as they have to be replaced with links pointing to # the actual locations: find %{buildroot}%{engine_ear_dir} -depth -name '*.jar' -exec rm -rf {} \; # Replace jar files in the ear with links to their actuals locations, first for # jar files from this package, as for these can't use build-classpath: while read jar_name ear_path do ln -s %{engine_jar_dir}/${jar_name}.jar %{buildroot}%{engine_ear_dir}/${ear_path}.jar done <<'.' bll engine-bll scheduler engine-scheduler vdsbrokerbean engine-vdsbroker common lib/engine-common compat lib/engine-compat dal lib/engine-dal engineencryptutils lib/engine-encryptutils engine-tools-common lib/engine-tools-common utils lib/engine-utils vdsbroker lib/vdsbroker searchbackend lib/searchbackend . # Then for the system jar files (using build-classpath): while read jar_name ear_path do ln -s `build-classpath ${jar_name}` %{buildroot}%{engine_ear_dir}/${ear_path}.jar done <<'.' antlr lib/antlr aopalliance lib/aopalliance apache-commons-beanutils lib/commons-beanutils apache-commons-codec lib/commons-codec apache-commons-collections lib/commons-collections apache-commons-httpclient lib/commons-httpclient apache-commons-lang lib/apache-commons-lang dom4j lib/dom4j apache-mina/mina-core lib/mina-core apache-sshd/sshd-core lib/sshd-core quartz lib/quartz slf4j/api lib/slf4j-api slf4j/log4j12 lib/slf4j-log4j12 springframework/spring-instrument lib/spring-instrument springframework/spring-aop lib/spring-aop springframework/spring-beans lib/spring-beans springframework/spring-context lib/spring-context springframework/spring-core lib/spring-core springframework/spring-jdbc lib/spring-jdbc springframework/spring-tx lib/spring-tx spring-ldap-core lib/spring-ldap-core bean-stax-api lib/stax-api geronimo-validation lib/validation-api ws-commons-util lib/ws-common-util xmlrpc3-client lib/xmlrpc3-client xmlrpc3-common lib/xmlrpc3-common objectweb-asm/asm-all lib/asm-all . # Replace jar files in the RESTAPI web application with links to ther actual # locations, first for jar files from this package, as for these can't use # build-classpath: while read jar_name war_path do ln -s %{engine_jar_dir}/${jar_name}.jar %{buildroot}%{restapi_war_dir}/WEB-INF/lib/${war_path}.jar done <<'.' interface-common-jaxrs interface-common-jaxrs restapi-definition restapi-definition restapi-jaxrs restapi-jaxrs restapi-types restapi-types . # Then for the system jar files (using build-classpath): while read jar_name war_path do ln -s `build-classpath ${jar_name}` %{buildroot}%{restapi_war_dir}/WEB-INF/lib/${war_path}.jar done <<'.' aopalliance aopalliance apache-commons-codec commons-codec jakarta-commons-httpclient commons-httpclient httpcomponents/httpclient httpclient httpcomponents/httpcore httpcore jackson/jackson-core-asl jackson-core-asl jackson/jackson-jaxrs jackson-jaxrs jackson/jackson-mapper-asl jackson-mapper-asl jackson/jackson-xc jackson-xc javassist javassist jaxb-api jaxb-api glassfish-jaxb/jaxb-impl jaxb-impl resteasy/jaxrs-api jaxrs-api jboss-logging jboss-logging jcip-annotations jcip-annotations jettison jettison resteasy/resteasy-jackson-provider resteasy-jackson-provider resteasy/resteasy-jaxb-provider resteasy-jaxb-provider resteasy/resteasy-jaxrs resteasy-jaxrs resteasy/resteasy-jettison-provider resteasy-jettison-provider resteasy/resteasy-yaml-provider resteasy-yaml-provider scannotation scannotation sjsxp sjsxp snakeyaml snakeyaml bea-stax-api stax-api istack-commons-runtime istack-commons-runtime . %pre %{__getent} group kvm > /dev/null || %{__groupadd} -g 36 -r kvm %{__getent} passwd vdsm > /dev/null || %{__useradd} -u 36 -g kvm -o -r vdsm -c "Ovirt node manager" -d / -s /sbin/nologin %{__getent} group ovirt > /dev/null || %{__groupadd} -g 108 ovirt %{__getent} passwd ovirt > /dev/null || %{__useradd} -u 108 -g ovirt -o -r ovirt -c "Ovirt Manager" -d /var/lib/ovirt -s /sbin/nologin # XXX: This will be needed once jboss-as is avaialable, but it generates an # error during installation at the moment: # %{__getent} passwd jboss-as > /dev/null && %{__usermod} -a -G jboss-as ovirt > /dev/null %post #ln -s %{_datadir}/vdsm-bootstrap %{engine_ear_dir}/components.war/vds &> /dev/null || /bin/true # TODO: remove copy of vds dir after Jboss7.x will support symbolic links if [[ -L %{engine_ear_dir}/components.war/vds ]]; then unlink %{engine_ear_dir}/components.war/vds &> /dev/null || /bin/true fi mkdir -p %{engine_ear_dir}/components.war/vds &> /dev/null || /bin/true cp -rpf %{_datadir}/vdsm-bootstrap/* %{engine_ear_dir}/components.war/vds/ &> /dev/null || /bin/true %preun if [ "$1" -eq 0 ] then curdate=`date +"%Y_%m_%d_%H_%M_%%S"` if [[ -d %{engine_pki_dir}} ]]; then mkdir -p %{engine_pki_dir}-backups/%{name}-${curdate} #backup whole 'engine' dir into the backup dir with current date cp -pR %{engine_pki_dir}/ %{engine_pki_dir}-backups/%{name}-${curdate}/ fi fi %postun if [ "$1" -eq 0 ] then if [[ -d %{engine_pki_dir} ]]; then rm -rf %{engine_pki_dir} fi fi %pre notification-service %{__getent} group ovirt > /dev/null || %{__groupadd} -g 108 ovirt %{__getent} passwd ovirt > /dev/null || %{__useradd} -u 108 -g ovirt -o -r ovirt -c "Ovirt Manager" -d /var/lib/ovirt -s /sbin/nologin # XXX: This will be needed once jboss-as is avaialable, but it generates an # error during installation at the moment: # %{__getent} passwd jboss-as > /dev/null && %{__usermod} -a -G jboss-as ovirt > /dev/null %post notification-service %{__chown} ovirt:ovirt /etc/ovirt-engine/notifier/notifier.conf > /dev/null || /bin/true %files # The main package owns most of the directories: %dir %{_datadir}/%{name} %dir %{_datadir}/%{name}/resources %dir %{_datadir}/%{name}/ovirt-isos %dir %{_datadir}/%{name}/db-backups %dir %{_datadir}/%{name}/scripts %dir %{_localstatedir}/run/%{name} %dir %attr (755,jboss-as,jboss-as) %{_var}/log/%{name} %dir %attr (755,jboss-as,jboss-as) %{_var}/lock/%{name} %dir %{_datadir}/%{name}/sysprep %attr (755,root,root) %{_datadir}/%{name}/kerberos %{_datadir}/%{name}/conf %attr (755,root,root) %{_datadir}/%{name}/scripts/vds_installer.py* %attr (755,root,root) %{_datadir}/%{name}/scripts/ovirtlogrot.sh %attr (755,root,root) %{_sysconfdir}/cron.daily/ovirt-cron %attr (644,root,root) %{_sysconfdir}/tmpfiles.d/ovirt-engine.conf %attr (755,jboss-as,jboss-as) %{_datadir}/%{name}/resources/jboss %dir %{_sysconfdir}/%{name} # PKI files: %dir %attr(755,jboss-as,jboss-as) %{engine_pki_dir} %dir %{engine_pki_dir}/certs %dir %{engine_pki_dir}/keys %dir %{engine_pki_dir}/private %dir %{engine_pki_dir}/requests %{engine_pki_dir}/CreateCA.sh %{engine_pki_dir}/CreateKStore.sh %{engine_pki_dir}/CreatePem.sh %{engine_pki_dir}/CreateReq.sh # XXX: The execution permission should be fixed in the makefile: %attr(755, root, root) %{engine_pki_dir}/encryptpasswd.sh %{engine_pki_dir}/exportK2SSH.sh %{engine_pki_dir}/generate-ssh-keys %{engine_pki_dir}/importToKeyStore.sh %{engine_pki_dir}/installCA_dev.sh %{engine_pki_dir}/installCA.sh %{engine_pki_dir}/openssl.conf %{engine_pki_dir}/Setup.txt %{engine_pki_dir}/SignReq.sh %{engine_pki_dir}/store-utils.sh %config(noreplace) %{engine_pki_dir}/database.txt %config(noreplace) %{engine_pki_dir}/serial.txt %config(noreplace) %{engine_pki_dir}/cacert.template %config(noreplace) %{engine_pki_dir}/cert.template # Engine configuration files: %attr (640,jboss-as,jboss-as) %config(noreplace) %{_sysconfdir}/%{name}/engine.conf # Configuration files: %config(noreplace) %{_sysconfdir}/%{name}/web-conf.js %config(noreplace) %{_datadir}/%{name}/sysprep/sysprep.2k3 %config(noreplace) %{_datadir}/%{name}/sysprep/sysprep.2k8 %config(noreplace) %{_datadir}/%{name}/sysprep/sysprep.2k8x86 %config(noreplace) %{_datadir}/%{name}/sysprep/sysprep.w7 %config(noreplace) %{_datadir}/%{name}/sysprep/sysprep.w7x64 %config(noreplace) %{_datadir}/%{name}/sysprep/sysprep.xp # XXX: Add once JBoss is available: #%{_jbossdir}/modules/org/postgresql/main/postgresql-jdbc.jar # The main package owns the dependencies map and directory containing the jar # files (but not all its contents): %{_mavendepmapfragdir}/%{name} %dir %{engine_jar_dir} # The parent POM: %{_mavenpomdir}/JPP.%{name}-parent.pom # And then some shared jars and their POMs: %{engine_jar_dir}/common.jar %{engine_jar_dir}/compat.jar %{engine_jar_dir}/utils.jar %{_mavenpomdir}/JPP.%{name}-common.pom %{_mavenpomdir}/JPP.%{name}-compat.pom %{_mavenpomdir}/JPP.%{name}-utils.pom # Documentation: %doc LICENSE %files config %{_datadir}/%{name}/engine-config %{_sysconfdir}/%{name}/engine-config %{_bindir}/engine-config %{_datadir}/%{name}/engine-manage-domains %{_sysconfdir}/%{name}/engine-manage-domains %{_bindir}/engine-manage-domains %files dbscripts %attr (755,root,root) %{_datadir}/%{name}/dbscripts %files backend # Jar files: %{engine_jar_dir}/bll.jar %{engine_jar_dir}/dal.jar %{engine_jar_dir}/engine-config.jar %{engine_jar_dir}/engine-notifier-service.jar %{engine_jar_dir}/engineencryptutils.jar %{engine_jar_dir}/scheduler.jar %{engine_jar_dir}/searchbackend.jar %{engine_jar_dir}/vdsbroker.jar %{engine_jar_dir}/vdsbrokerbean.jar # POM files: %{_mavenpomdir}/JPP.%{name}-bll.pom %{_mavenpomdir}/JPP.%{name}-dal.pom %{_mavenpomdir}/JPP.%{name}-engine-config.pom %{_mavenpomdir}/JPP.%{name}-engine-notifier-resources.pom %{_mavenpomdir}/JPP.%{name}-engine-notifier-service.pom %{_mavenpomdir}/JPP.%{name}-engineencryptutils.pom %{_mavenpomdir}/JPP.%{name}-scheduler.pom %{_mavenpomdir}/JPP.%{name}-searchbackend.pom %{_mavenpomdir}/JPP.%{name}-vdsbroker.pom %{_mavenpomdir}/JPP.%{name}-vdsbrokerbean.pom # This package owns the directory of the ear and some (not all) of its # contents: %dir %{engine_ear_dir} %dir %{engine_ear_dir}/lib # Manifests: %{engine_ear_dir}/META-INF # The EJBs and all the libraries in the lib directory are owned by the backend: %{engine_ear_dir}/engine-bll.jar %{engine_ear_dir}/engine-scheduler.jar %{engine_ear_dir}/engine-vdsbroker.jar %{engine_ear_dir}/lib/*.jar %files iso-uploader %{_datadir}/%{name}/iso-uploader %{_bindir}/engine-iso-uploader %config(noreplace) %{_sysconfdir}/%{name}/isouploader.conf %doc %{_mandir}/man8/engine-iso-uploader.8.gz %files log-collector %attr (755,root,root) %{_datadir}/%{name}/log-collector %attr (755,root,root) %{py_site_pkgs}/sos/plugins/engine.py* %attr (755,root,root) %{py_site_pkgs}/sos/plugins/jboss.py* %attr (755,root,root) %{py_site_pkgs}/sos/plugins/postgresql.py* %{_bindir}/engine-log-collector %config(noreplace) %{_sysconfdir}/%{name}/logcollector.conf %doc %{_mandir}/man8/engine-log-collector.8.gz %files notification-service %dir %attr (755,ovirt,ovirt) %{_var}/log/%{name}/notifier %dir %attr (755,ovirt,ovirt) %{_localstatedir}/run/%{name}/notifier %{_datadir}/%{name}/notifier %{_sysconfdir}/%{name}/notifier %attr (755,root,root) %{_sysconfdir}/init.d/engine-notifierd %config(noreplace) %{_sysconfdir}/%{name}/notifier/notifier.conf %files restapi # Jar files: %{engine_jar_dir}/interface-common-jaxrs.jar %{engine_jar_dir}/restapi-definition.jar %{engine_jar_dir}/restapi-jaxrs.jar %{engine_jar_dir}/restapi-types.jar # POM files: %{_mavenpomdir}/JPP.%{name}-interface-common-jaxrs.pom %{_mavenpomdir}/JPP.%{name}-restapi-definition.pom %{_mavenpomdir}/JPP.%{name}-restapi-jaxrs.pom %{_mavenpomdir}/JPP.%{name}-restapi-types.pom # Everything inside of the web application is owned by this subpackage: %{restapi_war_dir} %files setup %attr (755,root,root) %{_datadir}/%{name}/scripts/basedefs.py* %attr (755,root,root) %{_datadir}/%{name}/scripts/engine_validators.py* %attr (755,root,root) %{_datadir}/%{name}/scripts/common_utils.py* %attr (755,root,root) %{_datadir}/%{name}/scripts/output_messages.py* %attr (755,root,root) %{_datadir}/%{name}/scripts/nfsutils.py* %attr (755,root,root) %{_datadir}/%{name}/scripts/engine-setup.py* %attr (755,root,root) %{_datadir}/%{name}/scripts/engine-cleanup.py* %attr (750,root,root) %{_bindir}/engine-setup %attr (750,root,root) %{_bindir}/engine-cleanup %files tools-common %{engine_jar_dir}/engine-tools-common.jar %{_mavenpomdir}/JPP.%{name}-engine-tools-common.pom %changelog * Mon Mar 26 2012 Juan Hernandez - 3.0.0_0001-6 - Cleanup of the spec file * Mon Mar 26 2012 Juan Hernandez - 3.0.0_0001-5 - Replaced geronimo and tomcat API packages with equivalent jboss packages - Removed c3p0 and snakeyml dependencies * Thu Mar 15 2012 Juan Hernandez - 3.0.0_0001-4 - Adjusted to build in Fedora from source * Wed Jan 04 2012 Ronen Angluster - 3.0.0_0001-3 - Adjust code for Jboss AS 7.1 * Sun Dec 11 2011 Ronen Angluster - 3.0.0_0001-2 - Moved all hard coded paths to macros * Wed Oct 26 2011 Ronen Angluster - 3.0.0_0001-1 - Initial build - Cloned from RHEVM spec file