.. _build:

build
=====

.. program:: build

Synopsis
--------

::

    sample-rpkg build [-h] [--arches [ARCHES ...]] [--md5] [--nowait] [--target TARGET] [--background] [--fail-fast] [--skip-remote-rules-validation] [--skip-nvr-check]
                      [--custom-user-metadata CUSTOM_USER_METADATA] [--skip-tag] [--scratch] [--srpm [SRPM]] [--srpm-mock]

Description
-----------

This command requests a build of the package in the build system. By default it discovers the target to build for based on branch data, and uses the latest commit as the build source.



Options
-------

.. option:: -h --help

   show this help message and exit

.. option:: --arches

   Build for specific arches

.. option:: --md5

   Use md5 checksums (for older rpm hosts)

.. option:: --nowait

   Don't wait on build

.. option:: --target

   Define build target to build into

.. option:: --background

   Run the build at a low priority

.. option:: --fail-fast

   Fail the build immediately if any arch fails

.. option:: --skip-remote-rules-validation

   Don't check if there's a valid gating.yaml file in the repo, where you can define additional policies for Greenwave gating.

.. option:: --skip-nvr-check

   Submit build to buildsystem without check if NVR was already built. NVR is constructed locally and may be different from NVR constructed during build on builder.

.. option:: --custom-user-metadata

   Provide a JSON string of custom metadata to be deserialized and stored under the build's extra.custom_user_metadata field

.. option:: --skip-tag

   Do not attempt to tag package

.. option:: --scratch

   Perform a scratch build

.. option:: --srpm

   Build from an srpm. If no srpm is provided with this option an srpm will be generated from current module content.

.. option:: --srpm-mock

   Build from an srpm. Source rpm will be generated in 'mock' instead of 'rpmbuild'.