github.com/myhau/pulumi/pkg/v3@v3.70.2-0.20221116134521-f2775972e587/codegen/testing/test/testdata/replace-on-change/python/pulumi_example/cat.py (about)

     1  # coding=utf-8
     2  # *** WARNING: this file was generated by test. ***
     3  # *** Do not edit by hand unless you're certain you know what you are doing! ***
     4  
     5  import copy
     6  import warnings
     7  import pulumi
     8  import pulumi.runtime
     9  from typing import Any, Mapping, Optional, Sequence, Union, overload
    10  from . import _utilities
    11  from . import outputs
    12  from .god import God
    13  
    14  __all__ = ['CatArgs', 'Cat']
    15  
    16  @pulumi.input_type
    17  class CatArgs:
    18      def __init__(__self__):
    19          """
    20          The set of arguments for constructing a Cat resource.
    21          """
    22          pass
    23  
    24  
    25  class Cat(pulumi.CustomResource):
    26      @overload
    27      def __init__(__self__,
    28                   resource_name: str,
    29                   opts: Optional[pulumi.ResourceOptions] = None,
    30                   __props__=None):
    31          """
    32          Create a Cat resource with the given unique name, props, and options.
    33          :param str resource_name: The name of the resource.
    34          :param pulumi.ResourceOptions opts: Options for the resource.
    35          """
    36          ...
    37      @overload
    38      def __init__(__self__,
    39                   resource_name: str,
    40                   args: Optional[CatArgs] = None,
    41                   opts: Optional[pulumi.ResourceOptions] = None):
    42          """
    43          Create a Cat resource with the given unique name, props, and options.
    44          :param str resource_name: The name of the resource.
    45          :param CatArgs args: The arguments to use to populate this resource's properties.
    46          :param pulumi.ResourceOptions opts: Options for the resource.
    47          """
    48          ...
    49      def __init__(__self__, resource_name: str, *args, **kwargs):
    50          resource_args, opts = _utilities.get_resource_args_opts(CatArgs, pulumi.ResourceOptions, *args, **kwargs)
    51          if resource_args is not None:
    52              __self__._internal_init(resource_name, opts, **resource_args.__dict__)
    53          else:
    54              __self__._internal_init(resource_name, *args, **kwargs)
    55  
    56      def _internal_init(__self__,
    57                   resource_name: str,
    58                   opts: Optional[pulumi.ResourceOptions] = None,
    59                   __props__=None):
    60          opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
    61          if not isinstance(opts, pulumi.ResourceOptions):
    62              raise TypeError('Expected resource options to be a ResourceOptions instance')
    63          if opts.id is None:
    64              if __props__ is not None:
    65                  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
    66              __props__ = CatArgs.__new__(CatArgs)
    67  
    68              __props__.__dict__["foes"] = None
    69              __props__.__dict__["friends"] = None
    70              __props__.__dict__["name"] = None
    71              __props__.__dict__["other"] = None
    72              __props__.__dict__["toy"] = None
    73          secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["name"])
    74          opts = pulumi.ResourceOptions.merge(opts, secret_opts)
    75          replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["foes.*.associated.color", "foes.*.color", "friends[*].associated.color", "friends[*].color", "name", "toy.color"])
    76          opts = pulumi.ResourceOptions.merge(opts, replace_on_changes)
    77          super(Cat, __self__).__init__(
    78              'example::Cat',
    79              resource_name,
    80              __props__,
    81              opts)
    82  
    83      @staticmethod
    84      def get(resource_name: str,
    85              id: pulumi.Input[str],
    86              opts: Optional[pulumi.ResourceOptions] = None) -> 'Cat':
    87          """
    88          Get an existing Cat resource's state with the given name, id, and optional extra
    89          properties used to qualify the lookup.
    90  
    91          :param str resource_name: The unique name of the resulting resource.
    92          :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
    93          :param pulumi.ResourceOptions opts: Options for the resource.
    94          """
    95          opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
    96  
    97          __props__ = CatArgs.__new__(CatArgs)
    98  
    99          __props__.__dict__["foes"] = None
   100          __props__.__dict__["friends"] = None
   101          __props__.__dict__["name"] = None
   102          __props__.__dict__["other"] = None
   103          __props__.__dict__["toy"] = None
   104          return Cat(resource_name, opts=opts, __props__=__props__)
   105  
   106      @property
   107      @pulumi.getter
   108      def foes(self) -> pulumi.Output[Optional[Mapping[str, 'outputs.Toy']]]:
   109          return pulumi.get(self, "foes")
   110  
   111      @property
   112      @pulumi.getter
   113      def friends(self) -> pulumi.Output[Optional[Sequence['outputs.Toy']]]:
   114          return pulumi.get(self, "friends")
   115  
   116      @property
   117      @pulumi.getter
   118      def name(self) -> pulumi.Output[Optional[str]]:
   119          return pulumi.get(self, "name")
   120  
   121      @property
   122      @pulumi.getter
   123      def other(self) -> pulumi.Output[Optional['God']]:
   124          return pulumi.get(self, "other")
   125  
   126      @property
   127      @pulumi.getter
   128      def toy(self) -> pulumi.Output[Optional['outputs.Toy']]:
   129          return pulumi.get(self, "toy")
   130