CBUILD RPM Lifecycle

Of the three types of RPM packaging done by the C-BUILDS plugins, the rpm packaging is used when you are dealing with a standard GNU/autoconf style tarball source release as defined by the GNU Coding Standards. The separation of source release and binary release is also done by convention in the C-BUILDS system. The automvn lifecycle is used to create the tarball and rpm lifecycle, in a separate maven project, is used to create the binary RPM release. Since source release development is done with the automvn lifecycle, the rpm lifecycle makes heavy use of patching. The rpm-light and jrpm packaging can be used for non-GNU style software.

Document written Nov 2, 2008, updated May 17, 2009.

Phase Goals
validate pom validation,
Detect OS, Arch, version
initialize resolve dependencies,
resolve patches,
resolve tarball,
unpack tarball
generate-sources
process-sources patch sources
process-resources
generate-resources configure
compile compile
process-classes
process-test-resources
test-compile
test test
prepare-package make install
package cbuild-plugin-parent/rpm-cbuild-maven-plugin/generate-spec-mojo.html}generate spec,
build,
package patches,
make dummy jarfile
integration-test
install install artifacts to repo,
install RPM on the system,
purge patch
deploy deploy
RPM CBUILD Lifecycle