%global namedreltag .CR1
%global namedversion %{version}%{?namedreltag}
%global cachedir %{_var}/cache/%{name}
%global libdir %{_var}/lib/%{name}
%global rundir %{_var}/run/%{name}
%global homedir %{_datadir}/%{name}
%global bindir %{homedir}/bin
%global logdir %{_var}/log/%{name}
%global confdir %{_sysconfdir}/%{name}
%global wfuid 185
# Enabled modules:
%global modules appclient cli cmp connector controller-client controller deployment-repository deployment-scanner domain-management domain-http-error-context domain-http-interface ee ejb3 embedded host-controller jacorb jaxr jaxrs jdr jpa jsf jmx jsr77 logging management-client-content mail messaging naming network patching platform-mbean pojo process-controller protocol remoting sar security server system-jmx threads transactions version web web-common weld xts
# New modules added in WildFly
%global wildflymodules jberet
Name: wildfly
Version: 8.1.0
Release: 0.3%{namedreltag}%{?dist}
Summary: WildFly Application Server
License: LGPLv2+ and ASL 2.0 and GPLv2 with exceptions
URL: http://wildfly.org/
# git clone git://github.com/wildfly/wildfly.git
# cd wildfly && git checkout 8.1.0.CR1 && git checkout-index -f -a --prefix=wildfly-8.1.0.CR1/
# find wildfly-8.1.0.CR1/ -name '*.jar' -type f -delete
# tar -cJf wildfly-8.1.0.CR1-CLEAN.tar.xz wildfly-8.1.0.CR1
Source0: wildfly-%{namedversion}-CLEAN.tar.xz
# Makes possible to run WildFly AS in different directory by creating the structure and copying required configuration files
Source1: wildfly-cp.sh
# The WildFly systemd service
Source2: wildfly.service
# The WildFly systemd configuration file
Source3: wildfly.conf
# A simple launch script
Source4: launch.sh
Provides: jboss-as = %{version}-%{release}
Obsoletes: jboss-as < 7.1.1-22
Patch0: 0001-fedora-Add-jtype-dependency-to-hibernate-validator-t.patch
Patch1: 0002-fedora-Missing-module-dependencies-in-mime4j-com.sun.patch
Patch2: 0003-fedora-Use-old-relaxngDatatype.patch
Patch3: 0004-fedora-Remove-still-unavailable-in-Fedora-dependenci.patch
Patch4: 0005-fedora-Use-activation-classes-provided-by-the-JDK.patch
Patch5: 0006-fedora-Use-jws-classes-provided-by-the-JDK.patch
Patch6: 0007-fedora-Use-glassfish-el-and-jboss-el-3.0-api-togethe.patch
Patch7: 0008-fedora-Add-log4j-dependency-to-org.jboss.log4j.logma.patch
Patch8: 0009-fedora-Remove-hornetq-native-extraction-we-re-linkin.patch
Patch9: 0010-fedora-Disable-jipijapa-support-for-Hibernate-4.1-si.patch
Patch10: 0011-fedora-Use-Netty-4-only.patch
BuildArch: noarch
# Please keep alphabetically
BuildRequires: aesh
BuildRequires: aether
BuildRequires: aether-api
BuildRequires: antlr-tool
BuildRequires: ant-apache-bsf
BuildRequires: apache-commons-beanutils
BuildRequires: apache-commons-cli
BuildRequires: apache-commons-codec
BuildRequires: apache-commons-collections
BuildRequires: apache-commons-configuration
BuildRequires: apache-commons-io
BuildRequires: apache-commons-lang
BuildRequires: apache-commons-logging
BuildRequires: apache-commons-pool
BuildRequires: apache-james-project
BuildRequires: apache-juddi
BuildRequires: apache-mime4j
BuildRequires: apache-scout
BuildRequires: apacheds
BuildRequires: atinject
BuildRequires: bean-validation-api
BuildRequires: bsf
BuildRequires: cal10n
BuildRequires: cdi-api
BuildRequires: cssparser
BuildRequires: cxf >= 2.7.5-3
BuildRequires: cxf-api >= 2.7.5-3
BuildRequires: cxf-rt >= 2.7.5-3
BuildRequires: cxf-tools >= 2.7.5-3
BuildRequires: dom4j
BuildRequires: ecj
BuildRequires: felix-configadmin
BuildRequires: felix-osgi-core
BuildRequires: fusesource-pom
BuildRequires: guava
BuildRequires: h2
BuildRequires: hibernate
BuildRequires: hibernate-entitymanager
BuildRequires: hibernate-infinispan
BuildRequires: hibernate-envers
BuildRequires: hibernate3
BuildRequires: hibernate3-entitymanager
BuildRequires: hibernate3-infinispan
BuildRequires: hibernate-commons-annotations
BuildRequires: hibernate-jpa-2.1-api
BuildRequires: hibernate-hql
BuildRequires: hibernate-validator
BuildRequires: hibernate-search >= 4.5.0-1
BuildRequires: hornetq >= 2.4.1-1
BuildRequires: httpcomponents-client
BuildRequires: httpcomponents-core
BuildRequires: git
BuildRequires: glassfish-jaxb
BuildRequires: glassfish-saaj
BuildRequires: glassfish-annotation-api
BuildRequires: glassfish-el
BuildRequires: glassfish-enterprise-concurrent-api
BuildRequires: glassfish-enterprise-concurrent
BuildRequires: generic-jms-ra
BuildRequires: jboss-servlet-3.1-api
BuildRequires: gnu-getopt
BuildRequires: istack-commons
BuildRequires: infinispan >= 6.0.0-1
BuildRequires: ironjacamar >= 1.1.2-1
BuildRequires: jacorb
BuildRequires: jberet >= 1.0.0-1
BuildRequires: jackson
BuildRequires: jandex
BuildRequires: javacc-maven-plugin
BuildRequires: javamail
BuildRequires: javassist
BuildRequires: jastow >= 1.0.0-1
BuildRequires: jaxen
BuildRequires: jaxws-jboss-httpserver-httpspi
BuildRequires: jettison
BuildRequires: jgroups
BuildRequires: jbosgi-metadata
BuildRequires: jbosgi-parent
BuildRequires: jboss-annotations-1.2-api
BuildRequires: jboss-annotations-1.1-api
BuildRequires: jboss-classfilewriter
BuildRequires: jboss-common-core
BuildRequires: jboss-common-beans
BuildRequires: jboss-connector-1.7-api >= 1.0.0-1
BuildRequires: jboss-concurrency-1.0-api
BuildRequires: jboss-dmr >= 1.2.0-1
BuildRequires: jboss-ejb-3.1-api
BuildRequires: jboss-ejb-3.2-api
BuildRequires: jboss-ejb3-ext-api
BuildRequires: jboss-ejb-client >= 2.0.0-0.4.Beta5
BuildRequires: jboss-el-2.2-api
BuildRequires: jboss-el-3.0-api
BuildRequires: jboss-httpserver
BuildRequires: jboss-iiop-client
BuildRequires: jboss-invocation
BuildRequires: jboss-interceptors-1.2-api
BuildRequires: jboss-j2eemgmt-1.1-api
BuildRequires: jboss-jacc-1.5-api
BuildRequires: jboss-jad-1.2-api
BuildRequires: jboss-jaxb-2.2-api
BuildRequires: jboss-jaxb-intros
BuildRequires: jboss-jaxr-1.0-api
BuildRequires: jboss-jaxrpc-1.1-api
BuildRequires: jboss-jaxrs-1.1-api
BuildRequires: jboss-jaxws-2.2-api
BuildRequires: jboss-jaspi-1.1-api
BuildRequires: jboss-batch-1.0-api
BuildRequires: jboss-jms-2.0-api
BuildRequires: jboss-jsf-2.1-api
BuildRequires: jboss-jsf-2.2-api
BuildRequires: jboss-jsp-2.3-api
BuildRequires: jboss-jstl-1.2-api
BuildRequires: jboss-parent
BuildRequires: jboss-logging
BuildRequires: jboss-logging-tools
BuildRequires: jboss-logmanager
BuildRequires: jboss-logmanager-log4j
BuildRequires: jboss-marshalling
BuildRequires: jboss-metadata >= 8.0.0-1
BuildRequires: jboss-modules
BuildRequires: jboss-msc
BuildRequires: jboss-negotiation
BuildRequires: jboss-remoting >= 4.0.0-1
BuildRequires: jboss-remoting-jmx
BuildRequires: jboss-remote-naming
BuildRequires: jboss-rmi-1.0-api
BuildRequires: jboss-sasl
BuildRequires: jboss-saaj-1.3-api
BuildRequires: jboss-stdio
BuildRequires: jboss-specs-parent
BuildRequires: jboss-threads
BuildRequires: jboss-transaction-1.2-api
BuildRequires: jboss-transaction-spi >= 7.0.2-1
BuildRequires: jboss-web
BuildRequires: jboss-web-native
BuildRequires: jboss-vfs
BuildRequires: jbossws-parent
BuildRequires: jbossws-api
BuildRequires: jbossws-common >= 2.2.3-1
BuildRequires: jbossws-common-tools
BuildRequires: jbossws-cxf
BuildRequires: jbossws-spi >= 2.2.2-1
BuildRequires: jbossxb
BuildRequires: jcip-annotations
BuildRequires: jdom
BuildRequires: jul-to-slf4j-stub
BuildRequires: joda-time
BuildRequires: jipijapa >= 1.0.0-0.5.CR1
BuildRequires: jsonp
BuildRequires: jsoup
BuildRequires: jtype
BuildRequires: jansi
BuildRequires: log4j-jboss-logmanager
%if 0%{?fedora} >= 21
BuildRequires: lucene3
BuildRequires: lucene3-contrib
%else
BuildRequires: lucene
BuildRequires: lucene-contrib
%endif
BuildRequires: maven-local
BuildRequires: maven-jar-plugin
BuildRequires: maven-checkstyle-plugin
BuildRequires: maven-resources-plugin
BuildRequires: maven-surefire-plugin
BuildRequires: maven-dependency-plugin
BuildRequires: maven-help-plugin
BuildRequires: maven-shade-plugin
BuildRequires: maven-enforcer-plugin
BuildRequires: maven-ear-plugin
BuildRequires: maven-eclipse-plugin
BuildRequires: maven-install-plugin
BuildRequires: maven-ejb-plugin
BuildRequires: xml-maven-plugin
BuildRequires: mojarra
BuildRequires: mockito
BuildRequires: mod_cluster-java
BuildRequires: neethi
BuildRequires: nekohtml
BuildRequires: narayana >= 5.0.0-0.7
%if 0%{?fedora} >= 21
BuildRequires: netty
%else
BuildRequires: netty4
%endif
BuildRequires: objectweb-asm
BuildRequires: openjpa
BuildRequires: opensaml-java
BuildRequires: opensaml-java-openws
BuildRequires: opensaml-java-xmltooling
BuildRequires: opensaml-java-parent
BuildRequires: picketbox >= 4.0.20-1
BuildRequires: picketbox-commons
BuildRequires: picketbox-xacml
BuildRequires: powermock-junit4
BuildRequires: powermock-api-mockito
BuildRequires: resteasy >= 3.0.6-1
BuildRequires: relaxngDatatype
BuildRequires: rhq-plugin-annotations
BuildRequires: scannotation
BuildRequires: sac
BuildRequires: serp
BuildRequires: shrinkwrap
#BuildRequires: shrinkwrap-resolver
BuildRequires: slf4j
%if 0%{?fedora} >= 21
BuildRequires: slf4j-ext
%endif
BuildRequires: slf4j-jboss-logmanager
BuildRequires: snakeyaml
BuildRequires: staxmapper
BuildRequires: stax2-api
BuildRequires: systemd-units
BuildRequires: undertow >= 1:1.0.5-1
BuildRequires: velocity
BuildRequires: weld-api >= 2.1-0.1
BuildRequires: weld-core >= 2.1.0-0.1
BuildRequires: weld-parent
BuildRequires: woodstox-core
BuildRequires: wsdl4j
BuildRequires: wss4j
BuildRequires: wildfly-security-manager >= 1.0.0-1
BuildRequires: ws-xmlschema
BuildRequires: xalan-j2
BuildRequires: xerces-j2
BuildRequires: xml-security
BuildRequires: xml-commons-apis
BuildRequires: xml-commons-resolver
BuildRequires: xnio >= 3.2.0-1
BuildRequires: netty-xnio-transport
BuildRequires: xom
BuildRequires: mvn(org.hibernate:hibernate-validator-cdi)
# Missing requires not provided by xmvn
Requires: cal10n
Requires: glassfish-el
Requires: glassfish-saaj
Requires: hibernate-envers
Requires: hibernate-infinispan
Requires: jandex
Requires: jboss-concurrency-1.0-api
Requires: jboss-jaxrs-1.1-api
Requires: jbossws-cxf
Requires: jsonp
Requires: jtype
Requires: slf4j-jboss-logmanager
Requires: slf4j-ext
Requires: tomcat-native
Requires: woodstox-core
# Required for compiling JSP for example
Requires: java-devel >= 1:1.7
Requires(pre): shadow-utils
Requires(post): systemd-units
Requires(preun): systemd-units
Requires(postun): systemd-units
%description
WildFly Application Server (formerly known as JBoss Application Server) is the
latest release in a series of WildFly offerings. WildFly Application Server, is
a fast, powerful, implementation of the Java Enterprise Edition 6
specification. The state-of-the-art architecture built on the Modular Service
Container enables services on-demand when your application requires them.
%package javadoc
Summary: Javadocs for %{name}
Group: Documentation
%description javadoc
This package contains the API documentation for %{name}.
%package doc
Summary: Documentation for %{name}
Group: Documentation
%description doc
This package contains the documentation for %{name}.
%prep
%setup -q -n wildfly-%{namedversion}
git init
git config user.email "wildfly-owner@fedoraproject.org"
git config user.name "WildFly package owner"
git add .
git commit -a -q -m "%{version} baseline."
git am %{patches}
# Remove wagon extension
%pom_xpath_remove "pom:build/pom:extensions" build-config/pom.xml
# Make the javax.inject dep available at build time too
%pom_xpath_remove "pom:dependencies/pom:dependency[pom:artifactId = 'javax.inject']/pom:scope" arquillian/container-remote/pom.xml
# Disable checkstyle plugin
%pom_remove_plugin "org.apache.maven.plugins:maven-checkstyle-plugin"
# Disable enforcer plugin - doesn't make sens on Fedora
%pom_remove_plugin "org.apache.maven.plugins:maven-enforcer-plugin"
%pom_disable_module subsystem-test
%pom_disable_module model-test
%pom_disable_module core-model-test
%pom_disable_module arquillian
%pom_disable_module testsuite
%pom_disable_module testsuite/shared
%pom_disable_module multi-jsf-installer jsf/pom.xml
%pom_remove_dep "org.wildfly:wildfly-core-model-test-framework" build/pom.xml
# No myfaces avaialble
rm -rf jsf/injection/src/main/java/org/jboss/as/jsf/injection/MyFaces*
%pom_remove_dep "org.apache.myfaces.core:myfaces-impl" jsf/injection/pom.xml
%pom_remove_dep "sun.jdk:jconsole" cli/pom.xml
%pom_add_dep "sun.jdk:jconsole" cli/pom.xml
sed -i "s|lucene>3.6.2<|lucene>3<|" pom.xml
%build
export MAVEN_OPTS="-Xms1024m -Xmx2048m -XX:PermSize=128m -XX:MaxPermSize=384m"
# We don't have packaged all test dependencies (jboss-test for example)
%mvn_build -f -- -Dskip-enforce
%install
%mvn_install
install -d -m 755 $RPM_BUILD_ROOT%{_javadir}/%{name}
install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}
install -d -m 755 $RPM_BUILD_ROOT%{homedir}
install -d -m 755 $RPM_BUILD_ROOT%{confdir}
install -d -m 755 $RPM_BUILD_ROOT%{rundir}
install -d -m 770 $RPM_BUILD_ROOT%{cachedir}/auth
install -d -m 755 $RPM_BUILD_ROOT%{_mavenpomdir}
install -d -m 755 $RPM_BUILD_ROOT%{_unitdir}
install -d -m 755 $RPM_BUILD_ROOT%{_bindir}
install -d -m 755 $RPM_BUILD_ROOT%{_docdir}/%{name}
for mode in standalone domain; do
install -d -m 755 $RPM_BUILD_ROOT%{homedir}/${mode}
install -d -m 775 $RPM_BUILD_ROOT%{libdir}/${mode}/data
install -d -m 755 $RPM_BUILD_ROOT%{cachedir}/${mode}
install -d -m 775 $RPM_BUILD_ROOT%{logdir}/${mode}
done
install -d -m 775 $RPM_BUILD_ROOT%{libdir}/domain/servers
pushd build/target/wildfly-%{namedversion}
# We don't need Windows files
find bin/ -type f -name "*.bat" -delete
find bin/ -type f -name "*.exe" -delete
# Install systemd files
install -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_unitdir}/%{name}.service
install -m 644 %{SOURCE3} $RPM_BUILD_ROOT%{confdir}/%{name}.conf
# We don't need legacy init scripts
rm -rf bin/init.d
# TMP - investigate
rm -rf bin/client
# Prepare directory for properties files
install -d -m 755 docs/examples/properties
# Copy logging.properties and mgmt-users.properties so we can reuse it later in wildfly-cp script
cp standalone/configuration/logging.properties docs/examples/properties/
cp standalone/configuration/mgmt-users.properties docs/examples/properties/
# Lower a bit the permissions, so ordinary user can copy it. It's an example file!
chmod 644 docs/examples/properties/mgmt-users.properties
# standalone
mv standalone/configuration $RPM_BUILD_ROOT%{confdir}/standalone
mv standalone/deployments $RPM_BUILD_ROOT%{libdir}/standalone/deployments
mv standalone/lib $RPM_BUILD_ROOT%{libdir}/standalone/lib
mv standalone/tmp $RPM_BUILD_ROOT%{cachedir}/standalone/tmp
# domain
mv domain/configuration $RPM_BUILD_ROOT%{confdir}/domain
mv domain/tmp $RPM_BUILD_ROOT%{cachedir}/domain/tmp
# appclient
mv appclient/configuration $RPM_BUILD_ROOT%{confdir}/appclient
mv bin/jboss-cli.xml $RPM_BUILD_ROOT%{confdir}
# docs
# fix the encoding
for f in $(find docs -name "*.dtd" -o -name "*.xsd"); do
sed -i 's/\r$//' $f
done
mv docs/* $RPM_BUILD_ROOT%{_docdir}/%{name}
mv copyright.txt README.txt LICENSE.txt welcome-content docs bin appclient modules $RPM_BUILD_ROOT%{homedir}
# Install the launch script
install -m 755 %{SOURCE4} $RPM_BUILD_ROOT%{bindir}/launch.sh
popd
chmod 775 $RPM_BUILD_ROOT%{libdir}/standalone/deployments
pushd $RPM_BUILD_ROOT%{homedir}
# Standalone
ln -s %{confdir}/standalone standalone/configuration
ln -s %{libdir}/standalone/deployments standalone/deployments
ln -s %{libdir}/standalone/data standalone/data
ln -s %{libdir}/standalone/lib standalone/lib
ln -s %{logdir}/standalone standalone/log
ln -s %{cachedir}/standalone/tmp standalone/tmp
# Domain
ln -s %{confdir}/domain domain/configuration
ln -s %{libdir}/domain/data domain/data
ln -s %{libdir}/domain/servers domain/servers
ln -s %{logdir}/domain domain/log
ln -s %{cachedir}/domain/tmp domain/tmp
ln -s %{confdir}/appclient appclient
# Auth dir
ln -s %{cachedir}/auth auth
xmvn-subst .
# Still missing symlinks
ln -s $(build-classpath jboss-modules/jboss-modules) jboss-modules.jar
# Remove all jars from modules directory - we need to symlink them
find . -type f -name "*.jar" -exec rm -rvf {} \;
# Create symlinks to jars
pushd modules/system/layers/base
# Definition of submodules
# If a submodule contains hyphen in the name, just skip it, e.g. domain-http => domainhttp
multimodules="core-security mod_cluster clustering"
modules_coresecurity="api implementation"
modules_mod_cluster="web undertow"
modules_clustering="api ejb-spi common jgroups infinispan registry server singleton web-api web-catalina web-spi web-infinispan web-undertow ejb-infinispan"
for m in %{modules}; do
ln -s %{_javadir}/%{name}/%{name}-${m}.jar org/jboss/as/${m}/main/%{name}-${m}-%{namedversion}.jar
done
for m in %{wildflymodules}; do
ln -s %{_javadir}/%{name}/%{name}-${m}.jar org/wildfly/${m}/main/%{name}-${m}-%{namedversion}.jar
done
for m in ${multimodules}; do
eval submodules=\$"modules_${m//-/}"
for sm in $submodules; do
for p in "org/wildfly/${m}/${sm/-//}/main" "org/jboss/as/${m}/${sm/-//}/main"; do
if [ -d "${p}" ]; then
ln -v -s %{_javadir}/%{name}/%{name}-${m}-${sm}.jar ${p}/%{name}-${m}-${sm}-%{namedversion}.jar
fi
done
done
done
# WildFly extensions
for m in batch io undertow rts; do
if [ -d "org/wildfly/extension/${m}/main/" ]; then
ln -v -s %{_javadir}/%{name}/%{name}-${m}.jar org/wildfly/extension/${m}/main/%{name}-${m}-%{namedversion}.jar
fi
done
# Special cases of wildfly jars
ln -s %{_javadir}/%{name}/%{name}-mod_cluster-extension.jar org/wildfly/extension/mod_cluster/main/wildfly-mod_cluster-extension-%{namedversion}.jar
ln -s %{_javadir}/%{name}/%{name}-security-manager.jar org/wildfly/extension/security/manager/main/wildfly-security-manager-%{namedversion}.jar
ln -s %{_javadir}/%{name}/%{name}-webservices-server-integration.jar org/jboss/as/webservices/main/%{name}-webservices-server-integration-%{namedversion}.jar
ln -s %{_javadir}/%{name}/%{name}-jsf-injection.jar org/jboss/as/jsf-injection/main/%{name}-jsf-injection-%{namedversion}.jar
# Remove native libs that are shipped with the source distribution...
rm -rf org/hornetq/main/lib/*
# Prepare directories for native libs
install -d -m 755 org/hornetq/main/lib/linux-{x86_64,i686,arm}
# Jandex index for cxf-rt-ws-security
ln -s $(build-classpath cxf/cxf-rt-ws-security-jandex) org/apache/cxf/impl/main/cxf-rt-ws-security-jandex.jar
# Jandex indexes for resteasy
for m in atom-provider crypto cdi jackson-provider jackson2-provider jaxb-provider jaxrs jettison-provider jsapi multipart-provider yaml-provider validator-provider-11; do
ln -s $(build-classpath resteasy/resteasy-${m}-jandex) org/jboss/resteasy/resteasy-${m}/main/resteasy-${m}-jandex.jar
done
# RestEasy Spring integration special case
install -d -m 755 org/jboss/resteasy/resteasy-spring/main/bundled/
ln -s %{_javadir}/resteasy/resteasy-spring.jar org/jboss/resteasy/resteasy-spring/main/bundled/resteasy-spring.jar
# Not caught by xmvn-subst
ln -s $(build-classpath txw2) com/sun/xml/bind/main/txw2.jar
ln -s $(build-classpath istack-commons-runtime) com/sun/xml/bind/main/istack-commons-runtime.jar
ln -s $(build-classpath xml-commons-apis) org/apache/xerces/main/xml-commons-apis.jar
ln -s $(build-classpath jbossws-cxf/jbossws-cxf-resources) org/jboss/as/webservices/main/jbossws-cxf-resources.jar
# Incorrect symlinks made by xmvn
# https://bugzilla.redhat.com/show_bug.cgi?id=1007687
ln -sf $(build-classpath narayana/narayana-jts-jacorb) org/jboss/jts/main/narayana-jts-jacorb.jar
popd
# Makes sure we replaced all jars and no jar files are left
missed_jars=`find -type f -name "*.jar"`
if [ -n "$missed_jars" ]; then
echo "Not all jars were replaced, failing the build!"
echo $missed_jars
exit 1
fi
popd
pushd $RPM_BUILD_ROOT%{_bindir}
# jboss-cli
ln -s %{bindir}/jboss-cli.sh jboss-cli
install -m 755 %{SOURCE1} %{name}-cp
popd
%pre
# Add wildfly user and group
getent group %{name} >/dev/null || groupadd -f -g %{wfuid} -r %{name}
if ! getent passwd %{name} >/dev/null ; then
if ! getent passwd %{wfuid} >/dev/null ; then
useradd -r -u %{wfuid} -g %{name} -d %{homedir} -s /sbin/nologin -c "The WildFly Application Server user" %{name}
else
useradd -r -g %{name} -d %{homedir} -s /sbin/nologin -c "The WildFly Application Server user" %{name}
fi
fi
exit 0
%post
%systemd_post %{name}.service
# WildFly relies on some arch specific binary modules, let's link them.
# We don't want to do this at build time because it should be still noarch package.
arch=`uname -m`
if [ "${arch}" = "x86_64" ]; then
libdir="/usr/lib64"
else
libdir="/usr/lib"
fi
if [[ $arch == arm* ]]; then
validarch="arm"
else
validarch=${arch}
fi
pushd %{homedir}/modules/system/layers/base/org/hornetq/main/lib/linux-${validarch} > /dev/null
ln -sf ${libdir}/libHornetQAIO.so libHornetQAIO.so
popd > /dev/null
%preun
%systemd_preun %{name}.service
# Let's clean up the arch-specific symlinks
for l in $(find %{homedir}/modules/system/layers/base/org/hornetq/main/lib -name "*.so"); do
[ -L ${l} ] && rm -f ${l}
done
%postun
%systemd_postun_with_restart %{name}.service
%files -f .mfiles
%{homedir}/appclient
%dir %{bindir}
%{bindir}/*.conf
%{bindir}/*.sh
%{bindir}/*.properties
%{bindir}/.jbossclirc
%{_bindir}/*
%dir %{homedir}
%{homedir}/auth
%{homedir}/domain
%{homedir}/standalone
%{homedir}/modules
%{homedir}/welcome-content
%{homedir}/jboss-modules.jar
%attr(-,root,wildfly) %dir %{libdir}
%attr(-,root,wildfly) %{libdir}/standalone
%attr(-,root,wildfly) %{libdir}/domain
%attr(0775,root,wildfly) %dir %{rundir}
%attr(0775,root,wildfly) %dir %{cachedir}
%attr(0775,root,wildfly) %dir %{cachedir}/standalone
%attr(0775,root,wildfly) %dir %{cachedir}/standalone/tmp
%attr(0775,root,wildfly) %dir %{cachedir}/domain
%attr(0775,root,wildfly) %dir %{cachedir}/domain/tmp
%attr(0770,root,wildfly) %dir %{logdir}
%attr(0770,root,wildfly) %dir %{logdir}/standalone
%attr(0770,root,wildfly) %dir %{logdir}/domain
%attr(0775,root,wildfly) %dir %{confdir}
%attr(0775,root,wildfly) %dir %{confdir}/appclient
%attr(0775,root,wildfly) %dir %{confdir}/standalone
%attr(0775,root,wildfly) %dir %{confdir}/domain
%attr(0700,wildfly,wildfly) %dir %{cachedir}/auth
%attr(0600,wildfly,wildfly) %config(noreplace) %{confdir}/appclient/*.properties
%attr(0664,wildfly,wildfly) %config(noreplace) %{confdir}/appclient/*.xml
%attr(0600,wildfly,wildfly) %config(noreplace) %{confdir}/standalone/*.properties
%attr(0664,wildfly,wildfly) %config(noreplace) %{confdir}/standalone/*.xml
%attr(0600,wildfly,wildfly) %config(noreplace) %{confdir}/domain/*.properties
%attr(0664,wildfly,wildfly) %config(noreplace) %{confdir}/domain/*.xml
%config(noreplace) %{confdir}/%{name}.conf
%config(noreplace) %{confdir}/jboss-cli.xml
%{_unitdir}/%{name}.service
%doc %{homedir}/README.txt
%doc %{homedir}/copyright.txt
%doc %{homedir}/LICENSE.txt
%doc tools/maven/NOTICE
%doc tools/maven/LICENSE
%doc README.md
%dir %{_javadir}/%{name}
%files javadoc -f .mfiles-javadoc
%doc tools/maven/LICENSE
%files doc
%{_docdir}/%{name}
%doc tools/maven/LICENSE
%changelog
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 8.1.0-0.3.CR1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Thu Apr 24 2014 Marek Goldmann <mgoldman@redhat.com> - 8.1.0-0.2.CR1
- Modules adjustments for 8.1.0.CR1
* Wed Apr 23 2014 Marek Goldmann <mgoldman@redhat.com> - 8.1.0-0.1.CR1
- Upstream release 8.1.0.CR1
* Fri Apr 18 2014 Marek Goldmann <mgoldman@redhat.com> - 8.0.0-2
- Use lucene3 compat package if available
* Thu Feb 13 2014 Marek Goldmann <mgoldman@redhat.com> - 8.0.0-1
- Upstream release 8.0.0.Final
* Sat Feb 08 2014 Marek Goldmann <mgoldman@redhat.com> - 8.0.0-0.17.CR1
- Fixed missing wildfly-clustering-ejb-spi.jar link, RHBZ#1062877
* Wed Jan 22 2014 Marek Goldmann <mgoldman@redhat.com> - 8.0.0-0.16.CR1
- Upstream release 8.0.0.CR1
* Thu Dec 12 2013 Marek Goldmann <mgoldman@redhat.com> - 8.0.0-0.15.20131212gitd637807
- Release based on commit d6378078ea61fc4eea7db208a7624fa2f27da2f2
* Tue Nov 12 2013 Marek Goldmann <mgoldman@redhat.com> - 8.0.0-0.14.Beta1
- Hibernate 4.3 support added
- Hibernate 4.1 support dropped
* Wed Oct 30 2013 Marek Goldmann <mgoldman@redhat.com> - 8.0.0-0.13.Beta1
- Removed jline BR, RHBZ#1023006
* Mon Oct 07 2013 Marek Goldmann <mgoldman@redhat.com> - 8.0.0-0.12.Beta1
- Upstream release 8.0.0.Beta1
- wildfly: Upgrade to 8.0.0.Beta1, RHBZ#1016622
* Thu Oct 03 2013 Marek Goldmann <mgoldman@redhat.com> - 8.0.0-0.11.Alpha4
- Rebased patches
- Added some missing R/BR ater xmvn update
- Added jsf-injection module
* Thu Sep 19 2013 Michal Srb <msrb@redhat.com> - 8.0.0-0.10.Alpha4
- Fix jboss-modules symlink (Resolves: rhbz#1009769)
* Tue Sep 17 2013 Marek Goldmann <mgoldman@redhat.com> - 8.0.0-0.9.Alpha4
- wildfly: incorrect symlink, RHBZ#1007687
- Missing .jar files in the org.jboss.jts module, RHBZ#1008605
- Missing javax.activation.api module, RHBZ#1008612
- Missing javax.enterprise.concurrent.api module, RHBZ#1008614
- Broken link to jandex.jar in modules directory, RHBZ#1008578
* Mon Sep 16 2013 Marek Goldmann <mgoldman@redhat.com> - 8.0.0-0.8.Alpha4
- Upstream release 8.0.0.Alpha4
- Updated Obsoletes
- Removed the standalone-web.xml config, since we are now able to run the default standalone.xml
* Wed Sep 11 2013 Michal Srb <msrb@redhat.com> - 8.0.0-0.7.Alpha3
- Fix a typo in systemd service file (Resolves: rhbz#1006666)
* Mon Sep 09 2013 Marek Goldmann <mgoldman@redhat.com> - 8.0.0-0.6.Alpha3
- Fixed licensing
- Fixed directory ownership
* Wed Sep 04 2013 Marek Goldmann <mgoldman@redhat.com> - 8.0.0-0.5.Alpha3
- Removed jbossweb-native BR
- Added a check if all jars were replaced by symlinks
- Fixed EOL in the docs
* Wed Aug 14 2013 Marek Goldmann <mgoldman@redhat.com> - 8.0.0-0.4.Alpha3
- Use the wildfly user instead of jboss-as
- Created doc subpackage
- Fixed the way we remove the arch specific symlinks while uninstalling the package
- Fixed some config file locations
* Tue Aug 13 2013 Marek Goldmann <mgoldman@redhat.com> - 8.0.0-0.3.Alpha3
- Using xmvn-subst instead of manual symlinks where possible
* Fri Aug 09 2013 Marek Goldmann <mgoldman@redhat.com> - 8.0.0-0.2.Alpha3
- Added provides and obsoletes for jboss-as
- Fixed requires
- Fixed symlinks
- Cleaned up the spec file
* Thu Aug 08 2013 Marek Goldmann <mgoldman@redhat.com> - 8.0.0-0.1.Alpha3
- Package rename to wildfly
- Upstream release 8.0.0.Alpha3
- New guidelines (xmvn)
* Thu May 23 2013 Marek Goldmann <mgoldman@redhat.com> - 7.1.1-19
- Fix the jar symlinks
- Make it possible to launch the domain mode using systemd service
- Cleanup
* Wed May 22 2013 Marek Goldmann <mgoldman@redhat.com> - 7.1.1-18
- Fixed BR/R
- Preparations for domain mode enablement
* Sat Mar 23 2013 Marek Goldmann <mgoldman@redhat.com> - 7.1.1-17
- Fixed apache-scout jar name
* Tue Feb 19 2013 Marek Goldmann <mgoldman@redhat.com> - 7.1.1-16
- Remove wagon extension
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.1.1-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Wed Feb 06 2013 Java SIG <java-devel@lists.fedoraproject.org> - 7.1.1-14
- Update for https://fedoraproject.org/wiki/Fedora_19_Maven_Rebuild
- Replace maven BuildRequires with maven-local
* Tue Dec 04 2012 Marek Goldmann <mgoldman@redhat.com> - 7.1.1-13
- Rebasing patches
* Wed Nov 28 2012 Marek Goldmann <mgoldman@redhat.com> - 7.1.1-12
- Fixing many missing symlinks
- Make standalone.xml the default configuration instead standalone-web.xml
- Add an easy way to override the default bind address for systemd service
* Tue Nov 20 2012 Marek Goldmann <mgoldman@redhat.com> - 7.1.1-11
- Add webservices support based on CXF 2.6.3
- The jackson modules don't have symlinks to .jar files, RHBZ#879008
- The jettison modules doesn't have symlinks to .jar, RHBZ#879009
- The mime4j module doesn't have symlinks to .jar files, RHBZ#879014
- The snakeyaml modules doesn't have symlinks to .jar, RHBZ#879017
- The com.sun.xml.bind needs to include the istack-commons-runtime.jar file, RHBZ#879020
* Tue Nov 06 2012 Marek Goldmann <mgoldman@redhat.com> - 7.1.1-10
- Added Hibernate 4 (default persistence provider) support
- Preparations for webservice-related modules from CXF
- Use static GID, RHBZ#873897
* Tue Sep 18 2012 Marek Goldmann <mgoldman@redhat.com> - 7.1.1-9
- Introduce new systemd-rpm macros in jboss-as spec file, RHBZ#856680
- Added org.jboss.as.xts module
* Thu Aug 30 2012 Marek Goldmann <mgoldman@redhat.com> - 7.1.1-8
- Added org.jboss.as.jpa.jacorb module
* Thu Aug 23 2012 Marek Goldmann <mgoldman@redhat.com> 7.1.1-7
- Added org.jboss.as.jpa.openjpa module
- Added org.jboss.as.jpa.hibernate3 module
- Added jtype dependency to hibernate-validator to fix NoClassDefFoundError exception
- Regenerated patches with git format-patch --no-numbered --no-signature
- Added ExampleDS to the standalone-web.xml config
* Wed Aug 01 2012 Marek Goldmann <mgoldman@redhat.com> 7.1.1-6
- /usr/bin conflict between jboss-as-7.1.1-4 and filesystem-3.1-1, RHBZ#839419
- Missing symlinks RHBZ#842997, RHBZ#842996
- Fixed BR
- Fixed empty version requirement for org.eclipse.jdt:core
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.1.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Wed Jul 04 2012 Marek Goldmann <mgoldman@redhat.com> 7.1.1-4
- jboss-as-cp script is missing argument placeholder for c optarg, RHBZ#827571
- Create a startup script when creating a new user instance (jboss-as-cp), RHBZ#827588
- The user instance create script (jboss-as-cp) should allow a port offset to be specified, RHBZ#827589
- Added org.jboss.as.modcluster module
- Added org.jboss.as.jsr77 module
- Added org.jboss.as.arquillian module
- Added org.jboss.as.osgi module
- Added org.jboss.as.configadmin module
- Added org.jboss.as.spec-api module
- Add ExampleDS based on H2 database, RHBZ#81252
* Fri May 11 2012 Marek Goldmann <mgoldman@redhat.com> 7.1.1-3
- Changed the way we apply patches at build time
- Added org.jboss.as.sar module
- Added org.jboss.as.host-controller module
- Added org.jboss.as.jaxr module
- Added org.jboss.as.messaging module
* Wed May 02 2012 Marek Goldmann <mgoldman@redhat.com> 7.1.1-2
- Link to native modules in post section to avoid arch-specific Requires
* Fri Apr 20 2012 Marek Goldmann <mgoldman@redhat.com> 7.1.1-1
- Upstream release 7.1.1.Final
- Added jboss-as-cmp module
- Added jboss-as-mail module
- Added jboss-as-jaxrs module
- Added jboss-as-pojo module
- Spec file cleanup from versions
* Mon Apr 16 2012 Marek Goldmann <mgoldman@redhat.com> 7.1.0-3
- Simplified systemd files
- Added jboss-as-cli module
- Make it possible to run as different user in different direcotry by changing JBOSS_BASE_DIR
- Fixed issues with using add-user.sh script
- Changed validation API jar to bean-validation
- Added jboss-as-cp script to be able to use JBoss AS from different dir as different user
- Removed activation AS7 module - it's already in JDK
- Make it possible to add a user also when JBoss AS is run from different directory
* Wed Apr 04 2012 Marek Goldmann <mgoldman@redhat.com> 7.1.0-2
- Fixed rpmlint issues
- Fixed license
- Added LICENSE.txt file to javadoc subpackage
- Use standalone-web.xml config from docs as default
* Mon Apr 02 2012 Marek Goldmann <mgoldman@redhat.com> 7.1.0-1
- Initial packaging