Example #1
0
def command_integration_filter(args, targets):
    """
    :type args: IntegrationConfig
    :type targets: collections.Iterable[IntegrationTarget]
    :rtype: tuple[IntegrationTarget]
    """
    targets = tuple(targets)
    changes = get_changes_filter(args)
    require = (args.require or []) + changes
    exclude = (args.exclude or [])

    internal_targets = walk_internal_targets(targets, args.include, exclude,
                                             require)
    environment_exclude = get_integration_filter(args, internal_targets)

    if environment_exclude:
        exclude += environment_exclude
        internal_targets = walk_internal_targets(targets, args.include,
                                                 exclude, require)

    if not internal_targets:
        raise AllTargetsSkipped()

    if args.start_at and not any(t.name == args.start_at
                                 for t in internal_targets):
        raise ApplicationError('Start at target matches nothing: %s' %
                               args.start_at)

    if args.delegate:
        raise Delegate(require=changes, exclude=exclude)

    install_command_requirements(args)

    return internal_targets
Example #2
0
def command_integration_filter(args, targets):
    """
    :type args: IntegrationConfig
    :type targets: collections.Iterable[IntegrationTarget]
    :rtype: tuple[IntegrationTarget]
    """
    targets = tuple(target for target in targets if 'hidden/' not in target.aliases)
    changes = get_changes_filter(args)
    require = (args.require or []) + changes
    exclude = (args.exclude or [])

    internal_targets = walk_internal_targets(targets, args.include, exclude, require)
    environment_exclude = get_integration_filter(args, internal_targets)

    environment_exclude += cloud_filter(args, internal_targets)

    if environment_exclude:
        exclude += environment_exclude
        internal_targets = walk_internal_targets(targets, args.include, exclude, require)

    if not internal_targets:
        raise AllTargetsSkipped()

    if args.start_at and not any(t.name == args.start_at for t in internal_targets):
        raise ApplicationError('Start at target matches nothing: %s' % args.start_at)

    cloud_init(args, internal_targets)

    if args.delegate:
        raise Delegate(require=changes, exclude=exclude)

    install_command_requirements(args)

    return internal_targets
Example #3
0
 def create(
     include, exclude, require
 ):  # type: (t.List[str], t.List[str], t.List[str]) -> SanityTargets
     """Create a SanityTargets instance from the given include, exclude and require lists."""
     _targets = SanityTargets.get_targets()
     _include = walk_internal_targets(_targets, include, exclude, require)
     return SanityTargets(_targets, _include)
Example #4
0
 def __init__(self, include, exclude, require):
     """
     :type include: list[str]
     :type exclude: list[str]
     :type require: list[str]
     """
     self.all = not include
     self.targets = tuple(sorted(walk_sanity_targets()))
     self.include = walk_internal_targets(self.targets, include, exclude, require)
Example #5
0
 def __init__(self, include, exclude, require):
     """
     :type include: list[str]
     :type exclude: list[str]
     :type require: list[str]
     """
     self.all = not include
     self.targets = tuple(sorted(walk_sanity_targets()))
     self.include = walk_internal_targets(self.targets, include, exclude, require)
     self.include_external, self.exclude_external = walk_external_targets(self.targets, include, exclude, require)