Example #1
0
def parse_args_or_exit(argv=None):
    """
    Parse command line options
    """
    parser = argparse.ArgumentParser(
        description='Planex build system in a chroot (a mock wrapper)')
    add_common_parser_options(parser)
    parser.add_argument(
        "--configdir", metavar="CONFIGDIR", default="/etc/mock",
        help="Change where the config files are found")
    parser.add_argument(
        "--root", "-r", metavar="CONFIG", default="default",
        help="Change where the config files are found")
    parser.add_argument(
        "--resultdir", metavar="RESULTDIR", default=None,
        help="Path for resulting files to be put")
    parser.add_argument(
        "--keeptmp", action="store_true",
        help="Keep temporary files")
    parser.add_argument(
        "-D", "--define", default=[], action="append",
        help="--define='MACRO EXPR' \
              define MACRO with value EXPR for the build")
    parser.add_argument(
        "--init", action="store_true",
        help="initialize the chroot, do not build anything")
    parser.add_argument(
        "--rebuild", metavar="SRPM", nargs="+", dest="srpms",
        help='rebuild the specified SRPM(s)')
    argcomplete.autocomplete(parser)
    return parser.parse_args(argv)
Example #2
0
def parse_args_or_exit(argv=None):
    """
    Parse command line options
    """
    parser = argparse.ArgumentParser(
        description="Generate Makefile dependencies from RPM Spec files")
    add_common_parser_options(parser)
    parser.add_argument("specs", metavar="SPEC", nargs="+", help="spec file")
    parser.add_argument("-r",
                        "--repos_path",
                        metavar="DIR",
                        default="repos",
                        help='Local path to the repositories')
    parser.add_argument(
        "--no-package-name-check",
        dest="check_package_names",
        action="store_false",
        default=True,
        help="Don't check that package name matches spec file name")
    parser.add_argument(
        "-D",
        "--define",
        default=[],
        action="append",
        help="--define='MACRO EXPR' define MACRO with value EXPR")
    parser.add_argument("-P",
                        "--pins-dir",
                        default="PINS",
                        help="Directory containing pin overlays")
    argcomplete.autocomplete(parser)
    return parser.parse_args(argv)
Example #3
0
def parse_args_or_exit(argv):
    """
    Parse command line options
    """
    parser = argparse.ArgumentParser(description='Planex SRPM building')
    add_common_parser_options(parser)
    parser.add_argument("spec", metavar="SPEC", help="Spec file")
    parser.add_argument("sources",
                        metavar="SOURCES",
                        nargs='*',
                        help="Source files")
    parser.add_argument(
        "-D",
        "--define",
        default=[],
        action="append",
        help="--define='MACRO EXPR' define MACRO with value EXPR")
    parser.add_argument("--topdir",
                        metavar="DIR",
                        default=None,
                        help='Set rpmbuild toplevel directory [deprecated]')
    parser.add_argument(
        "--dist",
        metavar="DIST",
        default=None,
        help="distribution tag (used in RPM filenames) [deprecated]")
    parser.add_argument("--keeptmp",
                        action="store_true",
                        help="keep temporary files")
    argcomplete.autocomplete(parser)
    return parser.parse_args(argv)
Example #4
0
def parse_cmdline():
    """
    Parse command line options
    """
    parser = argparse.ArgumentParser(
        description="Generate Makefile dependencies from RPM Spec files")
    add_common_parser_options(parser)
    parser.add_argument("specs", metavar="SPEC", nargs="+", help="spec file")
    parser.add_argument(
        "-i", "--ignore", metavar="PKG", action="append", default=[],
        help="package name to ignore")
    parser.add_argument(
        "-I", "--ignore-from", metavar="FILE", action="append", default=[],
        help="file of package names to be ignored")
    parser.add_argument(
        "-P", "--pins-dir", help="Directory containing pin overlays")
    parser.add_argument(
        "-d", "--dist", metavar="DIST", default="",
        help="distribution tag (used in RPM filenames)")
    parser.add_argument(
        "-r", "--repos_path", metavar="DIR", default="repos",
        help='Local path to the repositories')
    parser.add_argument(
        "--no-package-name-check", dest="check_package_names",
        action="store_false", default=True,
        help="Don't check that package name matches spec file name")
    parser.add_argument(
        "-t", "--topdir", metavar="DIR", default=None,
        help='Set rpmbuild toplevel directory')
    argcomplete.autocomplete(parser)
    return parser.parse_args()
Example #5
0
def parse_args_or_exit(argv=None):
    """
    Parse command line options
    """
    parser = argparse.ArgumentParser(description='Download package sources')
    add_common_parser_options(parser)
    parser.add_argument('spec_or_link', help='RPM Spec or link file')
    parser.add_argument("sources",
                        metavar="SOURCE",
                        nargs="+",
                        help="Source file to fetch")
    parser.add_argument('--retries',
                        '-r',
                        help='Number of times to retry a failed download',
                        type=int,
                        default=5)
    parser.add_argument("-t",
                        "--topdir",
                        metavar="DIR",
                        default=None,
                        help='Set rpmbuild toplevel directory')
    parser.add_argument('--no-package-name-check',
                        dest="check_package_names",
                        action="store_false",
                        default=True,
                        help="Don't check that package name matches spec "
                        "file name")
    parser.add_argument('--mirror',
                        help="Set the URL to a local mirror for downloads")
    argcomplete.autocomplete(parser)
    return parser.parse_args(argv)
Example #6
0
def parse_cmdline():
    """
    Parse command line options
    """
    parser = argparse.ArgumentParser(
        description="Generate Makefile dependencies from RPM Spec files")
    add_common_parser_options(parser)
    parser.add_argument("specs", metavar="SPEC", nargs="+", help="spec file")
    parser.add_argument(
        "-i", "--ignore", metavar="PKG", action="append", default=[],
        help="package name to ignore")
    parser.add_argument(
        "-I", "--ignore-from", metavar="FILE", action="append", default=[],
        help="file of package names to be ignored")
    parser.add_argument(
        "-P", "--pins-dir", help="Directory containing pin overlays")
    parser.add_argument(
        "-d", "--dist", metavar="DIST", default="",
        help="distribution tag (used in RPM filenames)")
    parser.add_argument(
        "-r", "--repos_path", metavar="DIR", default="repos",
        help='Local path to the repositories')
    parser.add_argument(
        "-p", "--packaging", metavar="PACKAGING",
        choices=["rpm", "deb"], default=build_type(),
        help='Packaging to use (rpm or deb): default %s' % build_type())
    parser.add_argument(
        "--no-package-name-check", dest="check_package_names",
        action="store_false", default=True,
        help="Don't check that package name matches spec file name")
    parser.add_argument(
        "-t", "--topdir", metavar="DIR", default=None,
        help='Set rpmbuild toplevel directory')
    argcomplete.autocomplete(parser)
    return parser.parse_args()
Example #7
0
def parse_args_or_exit(argv=None):
    """Parse command line options"""

    parser = argparse.ArgumentParser(
        description='Generate manifest in JSON format from spec/link files'
    )

    add_common_parser_options(parser)

    parser.add_argument(
        'specfile_path',
        metavar='SPEC',
        help='path/to/<spec_file>'
    )

    parser.add_argument(
        'lnkfile_path',
        metavar='LNK',
        nargs='?',
        default=None,
        help='path/to/<lnk_file>'
    )

    parser.add_argument(
        '--pins-dir',
        dest='pinsdir',
        default="PINS",
        help='path/to/pins'
    )

    argcomplete.autocomplete(parser)
    return parser.parse_args(argv)
Example #8
0
def parse_args_or_exit(argv):
    """
    Parse command line options
    """
    parser = argparse.ArgumentParser(
        description='Planex build system in a chroot (a mock wrapper)')
    add_common_parser_options(parser)
    parser.add_argument("--configdir",
                        metavar="CONFIGDIR",
                        default=None,
                        help="Change where the config files are found")
    parser.add_argument("--resultdir",
                        metavar="RESULTDIR",
                        default=None,
                        help="Path for resulting files to be put")
    parser.add_argument("-D",
                        "--define",
                        default=[],
                        action="append",
                        help="--define='MACRO EXPR' \
              define MACRO with value EXPR for the build")
    parser.add_argument('srpms',
                        metavar='SRPM',
                        nargs='+',
                        help='SRPM to build in the chroot')
    argcomplete.autocomplete(parser)
    return parser.parse_args(argv)
Example #9
0
def parse_args_or_exit(argv=None):
    """
    Parse command line options
    """
    parser = argparse.ArgumentParser(description='Download package sources')
    add_common_parser_options(parser)
    parser.add_argument('--rules', dest="rules",
                        action="store_true", default=False,
                        help="Print the full path to Makefile.rules")
    argcomplete.autocomplete(parser)
    return parser.parse_args(argv)
Example #10
0
def parse_args_or_exit(argv=None):
    """
    Parse command line options
    """
    # top-level parser
    parser = argparse.ArgumentParser(
        description='Pin a package to a specific version')
    add_common_parser_options(parser)
    parser.add_argument('--pins-file',
                        default='pins',
                        help='Pins file (default: pins)')
    parser.add_argument('--pins-dir',
                        default='PINS',
                        help='Directory of pin artifcats (default: PINS)')
    subparsers = parser.add_subparsers(title='COMMANDS')
    # parser for the 'update' command
    parser_update = subparsers.add_parser('update', help='Refresh a given pin')
    parser_update.add_argument('--force',
                               '-f',
                               action='store_true',
                               help="Don't copy archive if unchanged")
    parser_update.set_defaults(func=update)
    # parser for the 'list' command
    parser_list = subparsers.add_parser('list', help='List active pins')
    parser_list.set_defaults(func=list_pins)
    # parser for the 'add' command
    parser_add = subparsers.add_parser('add', help='Add a new pin definition')
    parser_add.add_argument('--force',
                            '-f',
                            action='store_true',
                            help='Override any existing pin definition')
    parser_add.add_argument('--source',
                            default="0",
                            help='Which source number to pin. (default: 0)')
    parser_add.add_argument('spec_file', help='Spec file to pin')
    parser_add.add_argument('target',
                            help='Pin target: <path-to-git-repo>#<tree-ish>')
    parser_add.set_defaults(func=add_pin)
    # parser for the 'remove' command
    parser_remove = subparsers.add_parser('remove', help='Remove a pin')
    parser_remove.add_argument('--source',
                               default="0",
                               help='Which source to unpin. (default: 0)')
    parser_remove.add_argument('spec_file', help='Spec file to un-pin')
    parser_remove.set_defaults(func=remove_pin)
    # parser for the 'rules' command
    parser_rules = subparsers.add_parser('rules', help='Print pin make rules')
    parser_rules.add_argument('deps_path', help='Path to deps file')
    parser_rules.set_defaults(func=print_rules)

    argcomplete.autocomplete(parser)
    return parser.parse_args(argv)
Example #11
0
def parse_args_or_exit(argv):
    """
    Parse command line options
    """
    parser = argparse.ArgumentParser(description='Planex SRPM building')
    add_common_parser_options(parser)
    parser.add_argument(
        "--topdir", metavar="DIR", default=None,
        help='Set rpmbuild toplevel directory')
    parser.add_argument(
        "--dist", metavar="DIST", default=None,
        help="distribution tag (used in RPM filenames)")
    argcomplete.autocomplete(parser)
    return parser.parse_known_args(argv)
Example #12
0
def parse_args_or_exit(argv=None):
    """
    Parse command line options
    """
    parser = argparse.ArgumentParser(description="Extract package sources")
    add_common_parser_options(parser)
    parser.add_argument("tarball", help="Tarball")
    parser.add_argument("-l", "--link", help="Link file")
    parser.add_argument("-o",
                        "--output",
                        metavar="SPEC",
                        help="Output spec file")
    argcomplete.autocomplete(parser)
    return parser.parse_args(argv)
Example #13
0
def parse_args_or_exit(argv=None):
    """
    Parse command line options
    """
    parser = argparse.ArgumentParser(
        description='Create a patchqueue from a linked Git repository')
    util.add_common_parser_options(parser)
    parser.add_argument("link", metavar="LINK", help="link file")
    parser.add_argument("tarball", metavar="TARBALL", help="tarball")
    parser.add_argument("--repos",
                        default="repos",
                        help="Local repository directory")
    parser.add_argument("--keeptmp",
                        action="store_true",
                        help="Do not clean up working directory")
    argcomplete.autocomplete(parser)
    return parser.parse_args(argv)
Example #14
0
def parse_args_or_exit(argv):
    """
    Parse command line options
    """
    parser = argparse.ArgumentParser(description='Planex SRPM building')
    add_common_parser_options(parser)
    parser.add_argument(
        "--topdir", metavar="DIR", default=None,
        help='Set rpmbuild toplevel directory')
    parser.add_argument(
        "--dist", metavar="DIST", default=None,
        help="distribution tag (used in RPM filenames)")
    parser.add_argument(
        "--keeptmp", action="store_true",
        help="keep temporary files")
    argcomplete.autocomplete(parser)
    return parser.parse_known_args(argv)
Example #15
0
def parse_args_or_exit(argv=None):
    """
    Parse command line options
    """
    parser = argparse.ArgumentParser(description="Extract package sources")
    add_common_parser_options(parser)
    parser.add_argument("tarball", help="Tarball")
    parser.add_argument("-l", "--link", help="Link file")
    parser.add_argument("-o", "--output", metavar="SPEC",
                        help="Output spec file")
    parser.add_argument("-t", "--topdir", metavar="DIR", default=None,
                        help="Set rpmbuild toplevel directory")
    parser.add_argument("--no-package-name-check", dest="check_package_names",
                        action="store_false", default=True,
                        help="Don't check that package name matches spec "
                        "file name")
    argcomplete.autocomplete(parser)
    return parser.parse_args(argv)
Example #16
0
def parse_args_or_exit(argv=None):
    """
    Parse command line options
    """
    # top-level parser
    parser = argparse.ArgumentParser(
        description='Pin a package to a specific version')
    add_common_parser_options(parser)
    parser.add_argument('--pins-file', default='pins',
                        help='Pins file (default: pins)')
    parser.add_argument('--pins-dir', default='PINS',
                        help='Directory of pin artifcats (default: PINS)')
    subparsers = parser.add_subparsers(title='COMMANDS')
    # parser for the 'update' command
    parser_update = subparsers.add_parser('update', help='Refresh a given pin')
    parser_update.add_argument('--force', '-f', action='store_true',
                               help="Don't copy archive if unchanged")
    parser_update.set_defaults(func=update)
    # parser for the 'list' command
    parser_list = subparsers.add_parser('list', help='List active pins')
    parser_list.set_defaults(func=list_pins)
    # parser for the 'add' command
    parser_add = subparsers.add_parser('add', help='Add a new pin definition')
    parser_add.add_argument('--force', '-f', action='store_true',
                            help='Override any existing pin definition')
    parser_add.add_argument('--source', default="0",
                            help='Which source number to pin. (default: 0)')
    parser_add.add_argument('spec_file', help='Spec file to pin')
    parser_add.add_argument('target',
                            help='Pin target: <path-to-git-repo>#<tree-ish>')
    parser_add.set_defaults(func=add_pin)
    # parser for the 'remove' command
    parser_remove = subparsers.add_parser('remove', help='Remove a pin')
    parser_remove.add_argument('--source', default="0",
                               help='Which source to unpin. (default: 0)')
    parser_remove.add_argument('spec_file', help='Spec file to un-pin')
    parser_remove.set_defaults(func=remove_pin)
    # parser for the 'rules' command
    parser_rules = subparsers.add_parser('rules', help='Print pin make rules')
    parser_rules.add_argument('deps_path', help='Path to deps file')
    parser_rules.set_defaults(func=print_rules)

    argcomplete.autocomplete(parser)
    return parser.parse_args(argv)
Example #17
0
def parse_args_or_exit(argv=None):
    """
    Parse command line options
    """
    parser = argparse.ArgumentParser(description='Clone package sources')
    add_common_parser_options(parser)
    parser.add_argument('specfile', help='RPM spec file')
    parser.add_argument("-t",
                        "--topdir",
                        metavar="DIR",
                        required=True,
                        help='Set toplevel directory')
    parser.add_argument("-l", "--linkfile", help='Link file')
    parser.add_argument("-d",
                        "--dryrun",
                        action='store_true',
                        help='Just report repositories')
    argcomplete.autocomplete(parser)
    return parser.parse_args(argv)
Example #18
0
def parse_args_or_exit(argv=None):
    """
    Parse command line options
    """
    parser = argparse.ArgumentParser(description="Download package sources")
    add_common_parser_options(parser)
    parser.add_argument("spec", help="RPM Spec file")
    parser.add_argument("sources", metavar="SOURCE", nargs="+", help="Source file to fetch")
    parser.add_argument("--retries", "-r", help="Number of times to retry a failed download", type=int, default=5)
    parser.add_argument("-t", "--topdir", metavar="DIR", default=None, help="Set rpmbuild toplevel directory")
    parser.add_argument(
        "--no-package-name-check",
        dest="check_package_names",
        action="store_false",
        default=True,
        help="Don't check that package name matches spec " "file name",
    )
    parser.add_argument("--mirror", help="Set the URL to a local mirror for downloads")
    argcomplete.autocomplete(parser)
    return parser.parse_args(argv)
Example #19
0
def parse_args_or_exit(argv=None):
    """
    Parse command line options
    """
    parser = argparse.ArgumentParser(description='Cache package building')
    util.add_common_parser_options(parser)
    parser.add_argument(
        '--cachedirs', default='~/.planex-cache:/misc/cache/planex-cache',
        help='colon-separated cache search path')
    # Overridden mock arguments.  Help text taken directly from mock.
    parser.add_argument(
        '--configdir', default="/etc/mock",
        help='Change where config files are found')
    parser.add_argument(
        '--resultdir', help='path for resulting files to be put')
    parser.add_argument(
        '-r', '--root', default="default",
        help='chroot name/config file name default: default')
    argcomplete.autocomplete(parser)
    return parser.parse_known_args(argv)
Example #20
0
def parse_args_or_exit(argv=None):
    """
    Parse command line options
    """
    parser = argparse.ArgumentParser(description='Cache package building')
    util.add_common_parser_options(parser)
    parser.add_argument(
        '--cachedirs', default='~/.planex-cache:/misc/cache/planex-cache',
        help='colon-separated cache search path')
    # Overridden mock arguments.  Help text taken directly from mock.
    parser.add_argument(
        '--configdir', default="/etc/mock",
        help='Change where config files are found')
    parser.add_argument(
        '--resultdir', help='path for resulting files to be put')
    parser.add_argument(
        '-r', '--root', default="default",
        help='chroot name/config file name default: default')
    argcomplete.autocomplete(parser)
    return parser.parse_known_args(argv)
Example #21
0
def parse_args_or_exit(argv=None):
    """
    Parse command line options
    """
    parser = argparse.ArgumentParser(
        description='Pack sources and patchqueues into a source RPM')
    add_common_parser_options(parser)
    parser.add_argument("spec", metavar="SPEC", help="Spec file")
    parser.add_argument("sources",
                        metavar="SOURCE/PATCHQUEUE",
                        nargs='*',
                        help="Source and patchqueue files")
    parser.add_argument(
        "-D",
        "--define",
        default=[],
        action="append",
        help="--define='MACRO EXPR' define MACRO with value EXPR")
    parser.add_argument("--keeptmp",
                        action="store_true",
                        help="keep temporary files")
    argcomplete.autocomplete(parser)

    parsed_args = parser.parse_args(argv)
    links = [
        arg for arg in argv if arg.endswith(".lnk") or arg.endswith(".pin")
    ]
    parsed_args.link = None
    if links:
        parsed_args.link = Link(links[0])

    patchqueues = [arg for arg in argv if arg.endswith("patches.tar")]
    parsed_args.patchqueue = None
    if patchqueues:
        parsed_args.patchqueue = patchqueues[0]

    return parsed_args