def list_container_image_signatures_extended(
        ctx, from_json, all_pages, page_size, compartment_id,
        compartment_id_in_subtree, image_id, repository_id, repository_name,
        image_digest, display_name, kms_key_id, kms_key_version_id,
        signing_algorithm, limit, page, sort_by, sort_order):
    if all_pages and limit:
        raise click.UsageError(
            'If you provide the --all option you cannot provide the --limit option'
        )

    kwargs = {}
    if compartment_id_in_subtree is not None:
        kwargs['compartment_id_in_subtree'] = compartment_id_in_subtree
    if image_id is not None:
        kwargs['image_id'] = image_id
    if repository_id is not None:
        kwargs['repository_id'] = repository_id
    if repository_name is not None:
        kwargs['repository_name'] = repository_name
    if image_digest is not None:
        kwargs['image_digest'] = image_digest
    if display_name is not None:
        kwargs['display_name'] = display_name
    if kms_key_id is not None:
        kwargs['kms_key_id'] = kms_key_id
    if kms_key_version_id is not None:
        kwargs['kms_key_version_id'] = kms_key_version_id
    if signing_algorithm is not None:
        kwargs['signing_algorithm'] = signing_algorithm
    if limit is not None:
        kwargs['limit'] = limit
    if page is not None:
        kwargs['page'] = page
    if sort_by is not None:
        kwargs['sort_by'] = sort_by
    if sort_order is not None:
        kwargs['sort_order'] = sort_order
    kwargs['opc_request_id'] = cli_util.use_or_generate_request_id(
        ctx.obj['request_id'])
    client = cli_util.build_client('artifacts', 'artifacts', ctx)
    if all_pages:
        if page_size:
            kwargs['limit'] = page_size

        result = cli_util.artifacts_list_call_get_all_results(
            client.list_container_image_signatures,
            compartment_id=compartment_id,
            **kwargs)
    elif limit is not None:
        result = cli_util.artifacts_list_call_get_up_to_limit(
            client.list_container_image_signatures,
            limit,
            page_size,
            compartment_id=compartment_id,
            **kwargs)
    else:
        result = client.list_container_image_signatures(
            compartment_id=compartment_id, **kwargs)
    cli_util.render_response(result, ctx)
def list_container_images_extended(ctx, from_json, all_pages, page_size,
                                   compartment_id, compartment_id_in_subtree,
                                   display_name, image_id, is_versioned,
                                   repository_id, repository_name,
                                   lifecycle_state, limit, page, sort_by,
                                   sort_order, **kwargs):
    if all_pages and limit:
        raise click.UsageError(
            'If you provide the --all option you cannot provide the --limit option'
        )

    if 'image_version' in kwargs:
        kwargs['version'] = kwargs['image_version']
        kwargs.pop('image_version')
    if compartment_id_in_subtree is not None:
        kwargs['compartment_id_in_subtree'] = compartment_id_in_subtree
    if display_name is not None:
        kwargs['display_name'] = display_name
    if image_id is not None:
        kwargs['image_id'] = image_id
    if is_versioned is not None:
        kwargs['is_versioned'] = is_versioned
    if repository_id is not None:
        kwargs['repository_id'] = repository_id
    if repository_name is not None:
        kwargs['repository_name'] = repository_name
    if lifecycle_state is not None:
        kwargs['lifecycle_state'] = lifecycle_state
    if limit is not None:
        kwargs['limit'] = limit
    if page is not None:
        kwargs['page'] = page
    if sort_by is not None:
        kwargs['sort_by'] = sort_by
    if sort_order is not None:
        kwargs['sort_order'] = sort_order
    kwargs['opc_request_id'] = cli_util.use_or_generate_request_id(
        ctx.obj['request_id'])
    client = cli_util.build_client('artifacts', 'artifacts', ctx)
    if all_pages:
        if page_size:
            kwargs['limit'] = page_size

        result = cli_util.artifacts_list_call_get_all_results(
            client.list_container_images,
            compartment_id=compartment_id,
            **kwargs)
    elif limit is not None:
        result = cli_util.artifacts_list_call_get_up_to_limit(
            client.list_container_images,
            limit,
            page_size,
            compartment_id=compartment_id,
            **kwargs)
    else:
        result = client.list_container_images(compartment_id=compartment_id,
                                              **kwargs)
    cli_util.render_response(result, ctx)
def list_generic_artifacts_extended(ctx, from_json, all_pages, page_size,
                                    compartment_id, repository_id, id,
                                    display_name, artifact_path,
                                    artifact_version, sha256, lifecycle_state,
                                    limit, page, sort_by, sort_order):
    if all_pages and limit:
        raise click.UsageError(
            'If you provide the --all option you cannot provide the --limit option'
        )

    kwargs = {}
    if id is not None:
        kwargs['id'] = id
    if display_name is not None:
        kwargs['display_name'] = display_name
    if artifact_path is not None:
        kwargs['artifact_path'] = artifact_path
    if artifact_version is not None:
        kwargs['version'] = artifact_version
    if sha256 is not None:
        kwargs['sha256'] = sha256
    if lifecycle_state is not None:
        kwargs['lifecycle_state'] = lifecycle_state
    if limit is not None:
        kwargs['limit'] = limit
    if page is not None:
        kwargs['page'] = page
    if sort_by is not None:
        kwargs['sort_by'] = sort_by
    if sort_order is not None:
        kwargs['sort_order'] = sort_order
    kwargs['opc_request_id'] = cli_util.use_or_generate_request_id(
        ctx.obj['request_id'])
    client = cli_util.build_client('artifacts', 'artifacts', ctx)
    if all_pages:
        if page_size:
            kwargs['limit'] = page_size

        result = cli_util.artifacts_list_call_get_all_results(
            client.list_generic_artifacts,
            compartment_id=compartment_id,
            repository_id=repository_id,
            **kwargs)
    elif limit is not None:
        result = cli_util.artifacts_list_call_get_up_to_limit(
            client.list_generic_artifacts,
            limit,
            page_size,
            compartment_id=compartment_id,
            repository_id=repository_id,
            **kwargs)
    else:
        result = client.list_generic_artifacts(compartment_id=compartment_id,
                                               repository_id=repository_id,
                                               **kwargs)
    cli_util.render_response(result, ctx)