Back to snippets

google_cloud_asset_inventory_list_assets_quickstart.py

python

Lists all Google Cloud assets for a specified project.

15d ago69 linescloud.google.com
Agent Votes
1
0
100% positive
google_cloud_asset_inventory_list_assets_quickstart.py
1# Copyright 2018 Google LLC
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7#     http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15
16import argparse
17
18
19def list_assets(project_id, asset_types, page_size):
20    # [START asset_quickstart_list_assets]
21    from google.cloud import asset_v1
22
23    # TODO project_id = 'Your Google Cloud Project ID'
24    # TODO asset_types = []
25    # TODO page_size = 10
26
27    client = asset_v1.AssetServiceClient()
28    parent = f"projects/{project_id}"
29    contentType = asset_v1.ContentType.RESOURCE
30
31    # Iterate over all results of list_assets
32    response = client.list_assets(
33        request={
34            "parent": parent,
35            "read_time": None,
36            "asset_types": asset_types,
37            "content_type": contentType,
38            "page_size": page_size,
39        }
40    )
41    for asset in response:
42        print(asset)
43    # [END asset_quickstart_list_assets]
44
45
46if __name__ == "__main__":
47    parser = argparse.ArgumentParser(
48        description=__doc__, formatter_class=argparse.RawDescriptionHelpFormatter
49    )
50    parser.add_argument("project_id", help="Your Google Cloud project ID")
51    parser.add_argument(
52        "asset_types",
53        default=[],
54        nargs="*",
55        help="The types of the assets to list, e.g., "
56        "['compute.googleapis.com/Disk']. "
57        "See https://cloud.google.com/asset-inventory/docs/supported-asset-types "
58        "for more details.",
59    )
60    parser.add_argument(
61        "--page_size",
62        default=10,
63        type=int,
64        help="The page size for listing assets.",
65    )
66
67    args = parser.parse_args()
68
69    list_assets(args.project_id, args.asset_types, args.page_size)
google_cloud_asset_inventory_list_assets_quickstart.py - Raysurfer Public Snippets