# Tito Builders ## tito.builder.FetchBuilder An unorthodox builder which can build packages for a git repo which does not actually have any tito footprint. The location of sources, and the version/release to assume we're building, come from a configurable strategy. One strategy is currently included which parses a CLI argument to the build command which points to the source to use. Configuration for FetchBuilder in rel-eng/tito.props would look like: [buildconfig] builder = tito.builder.FetchBuilder [builder] fetch_strategy = tito.builder.fetch.ArgSourceStrategy Once configured a build can be run with: **tito build --rpm --arg=source=/home/username/extsrc-0.0.1.tar.gz** Note that this does not require a tito tag to have been run, and technically the rel-eng/tito.props does not have to be committed to the git repo. This builder can be used on a repository you do not control or do not wish to push tito configuration into. The ArgSourceStrategy has a simple mechanism where it will try to parse the version and release to build from the filename with a regular expression. If you need something more advanced, you can override any or all of this behaviour by implementing a custom strategy for the fetch builder. (see lib_dir in **man 5 tito.props**)