Apache Yetus is a collection of libraries and tools that enable contribution and release process for software projects.
Here is a list of the major components:
For full instructions on how to build releases and the website, see the guide to contributing for requirements and instructions.
# Launch a Docker container that has all of the project's dependencies and a working build environment ./start-build-env.sh # Build the binary tarball, located in yetus-dist/target/artifacts: mvn clean install # Build the binary and source tarballs and sign the content: mvn clean install -Papache-release # Same, but if outside the container and need to let the system know that the OS uses 'gpg2' instead of 'gpg': mvn clean install -Papache-release -Pgpg2 # Build the binary and source tarballs, but skip signing them: mvn clean install -Papache-release -Dgpg.sign=skip # Build the website (requires a mvn install first) mvn site site:stage
After executing one or more of the Apache Maven commands, artifacts will be in yetus-dist/target/artifacts
or ready for a mvn deploy
.
The project makes available two convenience container images on https://hub.docker.com for both tagged releases and for the master branch. It is highly recommended that casual users use a tagged release so as to not be surprised by incompatible changes that are still rolling through the master branch.
This image contains all of the tools that Apache Yetus supports. It is intended to be used when the Apache Yetus binaries are running outside of the container to speed up building the actual testing container.
This image contains all of apache/yetus-base plus a built and installed version of Apache Yetus. The binaries are in /usr/bin
and therefore part of the default path. This image is ideal for CI systems that take a container image as the operating environment or for interactive use.