Initial import
This commit is contained in:
parent
7a17c9de6a
commit
197633974c
42
build.bash
Executable file
42
build.bash
Executable file
@ -0,0 +1,42 @@
|
||||
#!/bin/bash -ex
|
||||
|
||||
JSTART=`date`
|
||||
|
||||
RPMDIR="/var/lib/mock/fedora-rawhide-x86_64/result"
|
||||
|
||||
VERSION=$(sed -n '/<version>/{s/.*>\(.*\)<.*/\1/;s/-SNAPSHOT$//;p;q}' pom.xml)
|
||||
RELEASE=$(git describe --match="[^(jenkins)].*" --tags | sed 's/[^-]*-/0./;s/-/./;s/g/git/')
|
||||
git archive -v --prefix=xmvn-${VERSION}/ HEAD | xz > xmvn-${VERSION}.tar.xz
|
||||
sed -i "s/^Version:\s\+[0-9.]*$/Version: ${VERSION}/" xmvn.spec
|
||||
sed -i "s/^Release:\s\+[0-9.]*%{?dist}$/Release: ${RELEASE}/" xmvn.spec
|
||||
|
||||
rm -f SRPMS/*
|
||||
rpmbuild -bs --clean --define "_topdir `pwd`" --define "_sourcedir `pwd`" xmvn.spec
|
||||
|
||||
trap "cat ${RPMDIR}/build.log || :" 0
|
||||
rm -rf ${RPMDIR}
|
||||
mock -r fedora-rawhide-x86_64 SRPMS/*.src.rpm
|
||||
|
||||
LAST_BN=`grep "Build number" RPM/latest/info.log | awk '{ print $3 }'`
|
||||
mkdir -p RPM/${LAST_BN}
|
||||
mv RPM/latest/* RPM/${LAST_BN}
|
||||
echo $LAST_BN
|
||||
|
||||
# we only want keep RPMs from last 10 builds
|
||||
REMOVE_BN=`expr $LAST_BN - 10`
|
||||
rm -Rf RPM/${REMOVE_BN}
|
||||
|
||||
# copy resulting RPMs to RPM/latest
|
||||
rm -Rf RPM/latest
|
||||
cp -a ${RPMDIR} RPM/latest
|
||||
|
||||
createrepo RPM/latest/
|
||||
|
||||
rm -f xmvn-*.tar.xz
|
||||
|
||||
JEND=`date`
|
||||
|
||||
echo "Job start: $JSTART" > RPM/latest/info.log
|
||||
echo "Job end: $JEND" >> RPM/latest/info.log
|
||||
echo "Build number: $BUILD_NUMBER" >> RPM/latest/info.log
|
||||
|
315
xmvn.spec
Normal file
315
xmvn.spec
Normal file
@ -0,0 +1,315 @@
|
||||
Name: xmvn
|
||||
Version: 1.2.0
|
||||
Release: 1%{?dist}
|
||||
Summary: Local Extensions for Apache Maven
|
||||
License: ASL 2.0
|
||||
URL: http://mizdebsk.fedorapeople.org/xmvn
|
||||
BuildArch: noarch
|
||||
Source0: %{name}-%{version}.tar.xz
|
||||
|
||||
BuildRequires: maven >= 3.1.0
|
||||
BuildRequires: maven-local
|
||||
BuildRequires: beust-jcommander
|
||||
BuildRequires: cglib
|
||||
BuildRequires: maven-dependency-plugin
|
||||
BuildRequires: maven-plugin-build-helper
|
||||
BuildRequires: maven-assembly-plugin
|
||||
BuildRequires: maven-invoker-plugin
|
||||
BuildRequires: xmlunit
|
||||
BuildRequires: apache-ivy
|
||||
|
||||
Requires: maven >= 3.1.0
|
||||
|
||||
%description
|
||||
This package provides extensions for Apache Maven that can be used to
|
||||
manage system artifact repository and use it to resolve Maven
|
||||
artifacts in offline mode, as well as Maven plugins to help with
|
||||
creating RPM packages containing Maven artifacts.
|
||||
|
||||
%package javadoc
|
||||
Summary: API documentation for %{name}
|
||||
|
||||
%description javadoc
|
||||
This package provides %{summary}.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
|
||||
# remove dependency plugin maven-binaries execution
|
||||
# we provide apache-maven by symlink
|
||||
%pom_xpath_remove "pom:executions/pom:execution[pom:id[text()='maven-binaries']]"
|
||||
|
||||
# get mavenVersion that is expected
|
||||
mver=$(sed -n '/<mavenVersion>/{s/.*>\(.*\)<.*/\1/;p}' \
|
||||
xmvn-parent/pom.xml)
|
||||
mkdir -p target/dependency/
|
||||
ln -s %{_datadir}/maven target/dependency/apache-maven-$mver
|
||||
|
||||
|
||||
# skip ITs for now (mix of old & new XMvn config causes issues
|
||||
rm -rf src/it
|
||||
|
||||
%build
|
||||
%mvn_build
|
||||
|
||||
tar --delay-directory-restore -xvf target/*tar.bz2
|
||||
chmod -R +rwX %{name}-*
|
||||
|
||||
|
||||
%install
|
||||
%mvn_install
|
||||
|
||||
install -d -m 755 %{buildroot}%{_datadir}/%{name}
|
||||
cp -r %{name}-[0-9.]*/* %{buildroot}%{_datadir}/%{name}/
|
||||
ln -sf %{_datadir}/maven/bin/mvn %{buildroot}%{_datadir}/%{name}/bin/mvn
|
||||
ln -sf %{_datadir}/maven/bin/mvnDebug %{buildroot}%{_datadir}/%{name}/bin/mvnDebug
|
||||
ln -sf %{_datadir}/maven/bin/mvnyjp %{buildroot}%{_datadir}/%{name}/bin/mvnyjp
|
||||
|
||||
|
||||
# helper scripts
|
||||
install -d -m 755 %{buildroot}%{_bindir}
|
||||
install -m 755 xmvn-tools/src/main/bin/tool-script \
|
||||
%{buildroot}%{_datadir}/%{name}/bin/
|
||||
|
||||
for tool in subst resolve bisect install;do
|
||||
rm %{buildroot}%{_datadir}/%{name}/bin/%{name}-$tool
|
||||
ln -s tool-script \
|
||||
%{buildroot}%{_datadir}/%{name}/bin/%{name}-$tool
|
||||
|
||||
cat <<EOF >%{buildroot}%{_bindir}/%{name}-$tool
|
||||
#!/bin/sh -e
|
||||
exec %{_datadir}/%{name}/bin/%{name}-$tool "\${@}"
|
||||
EOF
|
||||
chmod +x %{buildroot}%{_bindir}/%{name}-$tool
|
||||
|
||||
done
|
||||
|
||||
# copy over maven lib directory
|
||||
cp -r %{_datadir}/maven/lib/* %{buildroot}%{_datadir}/%{name}/lib/
|
||||
|
||||
# possibly recreate symlinks that can be automated with xmvn-subst
|
||||
%{name}-subst %{buildroot}%{_datadir}/%{name}/
|
||||
for jar in core connector;do
|
||||
ln -sf %{_javadir}/%{name}/%{name}-$jar.jar %{buildroot}%{_datadir}/%{name}/lib
|
||||
done
|
||||
|
||||
for tool in subst resolver bisect installer;do
|
||||
# sisu doesn't contain pom.properties. Manually replace with symlinks
|
||||
pushd %{buildroot}%{_datadir}/%{name}/lib/$tool
|
||||
rm org.eclipse.sisu*jar sisu-guice*jar
|
||||
build-jar-repository . org.eclipse.sisu.inject \
|
||||
org.eclipse.sisu.plexus \
|
||||
guice/google-guice-no_aop
|
||||
popd
|
||||
done
|
||||
|
||||
# workaround for rhbz#1012982
|
||||
rm %{buildroot}%{_datadir}/%{name}/lib/google-guice-no_aop.jar
|
||||
build-jar-repository %{buildroot}%{_datadir}/%{name}/lib/ \
|
||||
guice/google-guice-no_aop
|
||||
|
||||
if [[ `find %{buildroot}%{_datadir}/%{name}/lib -type f -name '*.jar' -not -name '*%{name}*' | wc -l` -ne 0 ]];then
|
||||
echo "Some jar files were not symlinked during build. Aborting"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
# /usr/bin/xmvn script
|
||||
cat <<EOF >%{buildroot}%{_bindir}/%{name}
|
||||
#!/bin/sh -e
|
||||
export M2_HOME="\${M2_HOME:-%{_datadir}/%{name}}"
|
||||
exec mvn "\${@}"
|
||||
EOF
|
||||
|
||||
# make sure our conf is identical to maven so yum won't freak out
|
||||
cp -P %{_datadir}/maven/conf/settings.xml %{buildroot}%{_datadir}/%{name}/conf/
|
||||
|
||||
%pretrans -p <lua>
|
||||
-- we changed symlink to dir in 0.5.0-1, workaround RPM issues
|
||||
for key, dir in pairs({"conf", "conf/logging", "boot"}) do
|
||||
path = "%{_datadir}/%{name}/" .. dir
|
||||
if posix.readlink(path) then
|
||||
os.remove(path)
|
||||
end
|
||||
end
|
||||
|
||||
%files -f .mfiles
|
||||
%doc LICENSE NOTICE
|
||||
%doc AUTHORS README
|
||||
%attr(755,-,-) %{_bindir}/*
|
||||
%{_datadir}/%{name}
|
||||
|
||||
%files javadoc -f .mfiles-javadoc
|
||||
%doc LICENSE NOTICE
|
||||
|
||||
%changelog
|
||||
* Fri Oct 18 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.2.0-1
|
||||
- Update to upstream version 1.2.0
|
||||
|
||||
* Mon Oct 07 2013 Stanislav Ochotnicky <sochotnicky@redhat.com> - 1.1.0-2
|
||||
- Apply patch for rhbz#1015596
|
||||
|
||||
* Tue Oct 01 2013 Stanislav Ochotnicky <sochotnicky@redhat.com> - 1.1.0-1
|
||||
- Update to upstream version 1.1.0
|
||||
|
||||
* Fri Sep 27 2013 Stanislav Ochotnicky <sochotnicky@redhat.com> - 1.0.2-3
|
||||
- Add __default package specifier support
|
||||
|
||||
* Mon Sep 23 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.0.2-2
|
||||
- Don't try to relativize symlink targets
|
||||
- Restotre support for relative symlinks
|
||||
|
||||
* Fri Sep 20 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.0.2-1
|
||||
- Update to upstream version 1.0.2
|
||||
|
||||
* Tue Sep 10 2013 Stanislav Ochotnicky <sochotnicky@redhat.com> - 1.0.0-2
|
||||
- Workaround broken symlinks for core and connector (#986909)
|
||||
|
||||
* Mon Sep 09 2013 Stanislav Ochotnicky <sochotnicky@redhat.com> - 1.0.0-1
|
||||
- Updating to upstream 1.0.0
|
||||
|
||||
* Tue Sep 3 2013 Stanislav Ochotnicky <sochotnicky@redhat.com> 1.0.0-0.2.alpha1
|
||||
- Update to upstream version 1.0.0 alpha1
|
||||
|
||||
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.5.1-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
|
||||
|
||||
* Tue Jul 23 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.5.1-3
|
||||
- Rebuild without bootstrapping
|
||||
|
||||
* Tue Jul 23 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.5.1-2
|
||||
- Install symlink to simplelogger.properties in %{_sysconfdir}
|
||||
|
||||
* Tue Jul 23 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.5.1-1
|
||||
- Update to upstream version 0.5.1
|
||||
|
||||
* Tue Jul 23 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.5.0-7
|
||||
- Allow installation of Eclipse plugins in javadir
|
||||
|
||||
* Mon Jul 22 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.5.0-6
|
||||
- Remove workaround for plexus-archiver bug
|
||||
- Use sonatype-aether symlinks
|
||||
|
||||
* Wed Jun 5 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.5.0-5
|
||||
- Fix resolution of tools.jar
|
||||
|
||||
* Fri May 31 2013 Stanislav Ochotnicky <sochotnicky@redhat.com> - 0.5.0-4
|
||||
- Fix handling of packages with dots in groupId
|
||||
- Previous versions also fixed bug #948731
|
||||
|
||||
* Tue May 28 2013 Stanislav Ochotnicky <sochotnicky@redhat.com> - 0.5.0-3
|
||||
- Move pre scriptlet to pretrans and implement in lua
|
||||
|
||||
* Fri May 24 2013 Stanislav Ochotnicky <sochotnicky@redhat.com> - 0.5.0-2
|
||||
- Fix upgrade path scriptlet
|
||||
- Add patch to fix NPE when debugging is disabled
|
||||
|
||||
* Fri May 24 2013 Stanislav Ochotnicky <sochotnicky@redhat.com> - 0.5.0-1
|
||||
- Update to upstream version 0.5.0
|
||||
|
||||
* Fri May 17 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.4.2-3
|
||||
- Add patch: install MOJO fix
|
||||
|
||||
* Wed Apr 17 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.4.2-2
|
||||
- Update plexus-containers-container-default JAR location
|
||||
|
||||
* Tue Apr 9 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.4.2-1
|
||||
- Update to upstream version 0.4.2
|
||||
|
||||
* Thu Mar 21 2013 Michal Srb <msrb@redhat.com> - 0.4.1-1
|
||||
- Update to upstream version 0.4.1
|
||||
|
||||
* Fri Mar 15 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.4.0-1
|
||||
- Update to upstream version 0.4.0
|
||||
|
||||
* Fri Mar 15 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.4.0-0.7
|
||||
- Enable tests
|
||||
|
||||
* Thu Mar 14 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.4.0-0.6
|
||||
- Update to newer snapshot
|
||||
|
||||
* Wed Mar 13 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.4.0-0.5
|
||||
- Update to newer snapshot
|
||||
|
||||
* Wed Mar 13 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.4.0-0.4
|
||||
- Set proper permissions for scripts in _bindir
|
||||
|
||||
* Tue Mar 12 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.4.0-0.3
|
||||
- Update to new upstream snapshot
|
||||
- Create custom /usr/bin/xmvn instead of using %%jpackage_script
|
||||
- Mirror maven directory structure
|
||||
- Add Plexus Classworlds config file
|
||||
|
||||
* Wed Mar 6 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.4.0-0.2
|
||||
- Update to newer snapshot
|
||||
|
||||
* Wed Mar 6 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.4.0-0.1
|
||||
- Update to upstream snapshot of version 0.4.0
|
||||
|
||||
* Mon Feb 25 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.3.1-2
|
||||
- Install effective POMs into a separate directory
|
||||
|
||||
* Thu Feb 7 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.3.1-1
|
||||
- Update to upstream version 0.3.1
|
||||
|
||||
* Tue Feb 5 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.3.0-1
|
||||
- Update to upstream version 0.3.0
|
||||
- Don't rely on JPP symlinks when resolving artifacts
|
||||
- Blacklist more artifacts
|
||||
- Fix dependencies
|
||||
|
||||
* Thu Jan 24 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.2.6-1
|
||||
- Update to upstream version 0.2.6
|
||||
|
||||
* Mon Jan 21 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.2.5-1
|
||||
- Update to upstream version 0.2.5
|
||||
|
||||
* Fri Jan 11 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.2.4-1
|
||||
- Update to upstream version 0.2.4
|
||||
|
||||
* Wed Jan 9 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.2.3-1
|
||||
- Update to upstream version 0.2.3
|
||||
|
||||
* Tue Jan 8 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.2.2-1
|
||||
- Update to upstream version 0.2.2
|
||||
|
||||
* Tue Jan 8 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.2.1-1
|
||||
- Update to upstream version 0.2.1
|
||||
|
||||
* Mon Jan 7 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.2.0-1
|
||||
- Update to upstream version 0.2.0
|
||||
- New major features: depmaps, compat symlinks, builddep MOJO
|
||||
- Install effective POMs for non-POM artifacts
|
||||
- Multiple major and minor bugfixes
|
||||
- Drop support for resolving artifacts from %%_javajnidir
|
||||
|
||||
* Fri Dec 7 2012 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.1.5-1
|
||||
- Update to upstream version 0.1.5
|
||||
|
||||
* Fri Dec 7 2012 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.1.4-1
|
||||
- Update to upstream version 0.1.4
|
||||
|
||||
* Fri Dec 7 2012 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.1.3-1
|
||||
- Update to upstream version 0.1.3
|
||||
|
||||
* Fri Dec 7 2012 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.1.2-1
|
||||
- Update to upstream version 0.1.2
|
||||
|
||||
* Fri Dec 7 2012 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.1.1-1
|
||||
- Update to upstream version 0.1.1
|
||||
|
||||
* Thu Dec 6 2012 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.1.0-1
|
||||
- Update to upstream version 0.1.0
|
||||
- Implement auto requires generator
|
||||
|
||||
* Mon Dec 3 2012 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.0.2-1
|
||||
- Update to upstream version 0.0.2
|
||||
|
||||
* Thu Nov 29 2012 Mikolaj Izdebski <mizdebsk@redhat.com> - 0.0.1-1
|
||||
- Update to upstream version 0.0.1
|
||||
|
||||
* Wed Nov 28 2012 Mikolaj Izdebski <mizdebsk@redhat.com> - 0-2
|
||||
- Add jpackage scripts
|
||||
|
||||
* Mon Nov 5 2012 Mikolaj Izdebski <mizdebsk@redhat.com> - 0-1
|
||||
- Initial packaging
|
Loading…
Reference in New Issue
Block a user