Azure / Azure/apiops-cli

Docs example says products are auto-included transitively, but they aren't extracted with `products: []`

Open
#277 0 comments 0 reactions 0 assignees View on GitHub
type:question
Dominant language
TypeScript
Stars
26
Forks
9
Avg merge
1d 1h
Merged PRs (30d)
19

Description

### Question

The[filtering guide](https://github.com/Azure/apiops-cli/blob/b327e6382385f530784f93f646f9b550eba6fe25/docs/guides/filtering-resources.md) has this example under "Transitive Dependency Behavior":

```yaml
apis:
- petstore-api
```

> And petstore-api is assigned to:
> - Product starter → auto-included
> - Tag production → auto-included
>
> The extract output includes all of these, even though only apiNames was specified in the filter.

I set up a filter based on the "How To: Extract Just One API" section on the same page, which lists only version sets, backends, named values, policy fragments, and tags as auto-included when their keys are set to `[]`, and does not mention products:

```yaml
apis:
- my-api-1
- my-api-2
backends: []
namedValues: []
products: []
tags: []
versionSets: []
loggers: []
diagnostics: []
groups: []
policyFragments: []
gateways: []
schemas: []
subscriptions: []
policies: []
policyRestrictions: []
documentations: []
workspaces: []
```

After running `apiops extract` with this filter, the `products` folder is empty. I confirmed directly against the APIM instance that both APIs are still assigned to their respective products, so the association exists and just isn't showing up in the extract output.

Did I misunderstand something about how the filter or `--filter`/transitive resolution is supposed to work here, or is the "Products containing the API" line in the Transitive Dependency Behavior example not accurate for the current release?

### Context

`@azure-tools/apiops-cli` version `1.0.1`. Filter file only sets `apis:` with two explicit API names and `products: []`, no `--no-transitive` flag passed to `apiops extract`.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.