Class: Google::Cloud::SaasPlatform::SaasServiceMgmt::V1beta1::Release

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/saasplatform/saasservicemgmt/v1beta1/deployments_resources.rb

Overview

A new version to be propagated and deployed to units. This includes pointers to packaged blueprints for actuation (e.g Helm or Terraform configuration packages) via artifact registry.

Defined Under Namespace

Classes: AnnotationsEntry, LabelsEntry, ReleaseRequirements

Instance Attribute Summary collapse

Instance Attribute Details

#annotations::Google::Protobuf::Map{::String => ::String}

Returns Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects.

More info: https://kubernetes.io/docs/user-guide/annotations.

Returns:

  • (::Google::Protobuf::Map{::String => ::String})

    Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects.

    More info: https://kubernetes.io/docs/user-guide/annotations



815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
# File 'proto_docs/google/cloud/saasplatform/saasservicemgmt/v1beta1/deployments_resources.rb', line 815

class Release
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Set of requirements to be fulfilled on the Unit when using this Release.
  # @!attribute [rw] upgradeable_from_releases
  #   @return [::Array<::String>]
  #     Optional. A list of releases from which a unit can be upgraded to this
  #     one (optional). If left empty no constraints will be applied. When
  #     provided, unit upgrade requests to this release will check and enforce
  #     this constraint.
  class ReleaseRequirements
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#application_template_component::Google::Cloud::SaasPlatform::SaasServiceMgmt::V1beta1::ComponentRef (readonly)

Returns Output only. Reference to component and revision in a composite ApplicationTemplate.

Returns:



815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
# File 'proto_docs/google/cloud/saasplatform/saasservicemgmt/v1beta1/deployments_resources.rb', line 815

class Release
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Set of requirements to be fulfilled on the Unit when using this Release.
  # @!attribute [rw] upgradeable_from_releases
  #   @return [::Array<::String>]
  #     Optional. A list of releases from which a unit can be upgraded to this
  #     one (optional). If left empty no constraints will be applied. When
  #     provided, unit upgrade requests to this release will check and enforce
  #     this constraint.
  class ReleaseRequirements
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#blueprint::Google::Cloud::SaasPlatform::SaasServiceMgmt::V1beta1::Blueprint

Returns Optional. Blueprints are OCI Images that contain all of the artifacts needed to provision a unit.

Returns:



815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
# File 'proto_docs/google/cloud/saasplatform/saasservicemgmt/v1beta1/deployments_resources.rb', line 815

class Release
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Set of requirements to be fulfilled on the Unit when using this Release.
  # @!attribute [rw] upgradeable_from_releases
  #   @return [::Array<::String>]
  #     Optional. A list of releases from which a unit can be upgraded to this
  #     one (optional). If left empty no constraints will be applied. When
  #     provided, unit upgrade requests to this release will check and enforce
  #     this constraint.
  class ReleaseRequirements
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#create_time::Google::Protobuf::Timestamp (readonly)

Returns Output only. The timestamp when the resource was created.

Returns:



815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
# File 'proto_docs/google/cloud/saasplatform/saasservicemgmt/v1beta1/deployments_resources.rb', line 815

class Release
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Set of requirements to be fulfilled on the Unit when using this Release.
  # @!attribute [rw] upgradeable_from_releases
  #   @return [::Array<::String>]
  #     Optional. A list of releases from which a unit can be upgraded to this
  #     one (optional). If left empty no constraints will be applied. When
  #     provided, unit upgrade requests to this release will check and enforce
  #     this constraint.
  class ReleaseRequirements
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#etag::String (readonly)

Returns Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written.

Returns:

  • (::String)

    Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written.



815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
# File 'proto_docs/google/cloud/saasplatform/saasservicemgmt/v1beta1/deployments_resources.rb', line 815

class Release
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Set of requirements to be fulfilled on the Unit when using this Release.
  # @!attribute [rw] upgradeable_from_releases
  #   @return [::Array<::String>]
  #     Optional. A list of releases from which a unit can be upgraded to this
  #     one (optional). If left empty no constraints will be applied. When
  #     provided, unit upgrade requests to this release will check and enforce
  #     this constraint.
  class ReleaseRequirements
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#input_variable_defaults::Array<::Google::Cloud::SaasPlatform::SaasServiceMgmt::V1beta1::UnitVariable>

Returns Optional. Mapping of input variables to default values. Maximum 100.

Returns:



815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
# File 'proto_docs/google/cloud/saasplatform/saasservicemgmt/v1beta1/deployments_resources.rb', line 815

class Release
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Set of requirements to be fulfilled on the Unit when using this Release.
  # @!attribute [rw] upgradeable_from_releases
  #   @return [::Array<::String>]
  #     Optional. A list of releases from which a unit can be upgraded to this
  #     one (optional). If left empty no constraints will be applied. When
  #     provided, unit upgrade requests to this release will check and enforce
  #     this constraint.
  class ReleaseRequirements
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#input_variables::Array<::Google::Cloud::SaasPlatform::SaasServiceMgmt::V1beta1::UnitVariable> (readonly)

Returns Optional. Output only. List of input variables declared on the blueprint and can be present with their values on the unit spec.

Returns:



815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
# File 'proto_docs/google/cloud/saasplatform/saasservicemgmt/v1beta1/deployments_resources.rb', line 815

class Release
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Set of requirements to be fulfilled on the Unit when using this Release.
  # @!attribute [rw] upgradeable_from_releases
  #   @return [::Array<::String>]
  #     Optional. A list of releases from which a unit can be upgraded to this
  #     one (optional). If left empty no constraints will be applied. When
  #     provided, unit upgrade requests to this release will check and enforce
  #     this constraint.
  class ReleaseRequirements
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#labels::Google::Protobuf::Map{::String => ::String}

Returns Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels.

Returns:

  • (::Google::Protobuf::Map{::String => ::String})

    Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels.



815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
# File 'proto_docs/google/cloud/saasplatform/saasservicemgmt/v1beta1/deployments_resources.rb', line 815

class Release
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Set of requirements to be fulfilled on the Unit when using this Release.
  # @!attribute [rw] upgradeable_from_releases
  #   @return [::Array<::String>]
  #     Optional. A list of releases from which a unit can be upgraded to this
  #     one (optional). If left empty no constraints will be applied. When
  #     provided, unit upgrade requests to this release will check and enforce
  #     this constraint.
  class ReleaseRequirements
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#name::String

Returns Identifier. The resource name (full URI of the resource) following the standard naming scheme:

"projects/{project}/locations/{location}/releases/{release}".

Returns:

  • (::String)

    Identifier. The resource name (full URI of the resource) following the standard naming scheme:

    "projects/{project}/locations/{location}/releases/{release}"



815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
# File 'proto_docs/google/cloud/saasplatform/saasservicemgmt/v1beta1/deployments_resources.rb', line 815

class Release
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Set of requirements to be fulfilled on the Unit when using this Release.
  # @!attribute [rw] upgradeable_from_releases
  #   @return [::Array<::String>]
  #     Optional. A list of releases from which a unit can be upgraded to this
  #     one (optional). If left empty no constraints will be applied. When
  #     provided, unit upgrade requests to this release will check and enforce
  #     this constraint.
  class ReleaseRequirements
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#output_variables::Array<::Google::Cloud::SaasPlatform::SaasServiceMgmt::V1beta1::UnitVariable> (readonly)

Returns Optional. Output only. List of output variables declared on the blueprint and can be present with their values on the unit status.

Returns:



815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
# File 'proto_docs/google/cloud/saasplatform/saasservicemgmt/v1beta1/deployments_resources.rb', line 815

class Release
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Set of requirements to be fulfilled on the Unit when using this Release.
  # @!attribute [rw] upgradeable_from_releases
  #   @return [::Array<::String>]
  #     Optional. A list of releases from which a unit can be upgraded to this
  #     one (optional). If left empty no constraints will be applied. When
  #     provided, unit upgrade requests to this release will check and enforce
  #     this constraint.
  class ReleaseRequirements
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#release_requirements::Google::Cloud::SaasPlatform::SaasServiceMgmt::V1beta1::Release::ReleaseRequirements

Returns Optional. Set of requirements to be fulfilled on the Unit when using this Release.

Returns:



815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
# File 'proto_docs/google/cloud/saasplatform/saasservicemgmt/v1beta1/deployments_resources.rb', line 815

class Release
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Set of requirements to be fulfilled on the Unit when using this Release.
  # @!attribute [rw] upgradeable_from_releases
  #   @return [::Array<::String>]
  #     Optional. A list of releases from which a unit can be upgraded to this
  #     one (optional). If left empty no constraints will be applied. When
  #     provided, unit upgrade requests to this release will check and enforce
  #     this constraint.
  class ReleaseRequirements
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#uid::String (readonly)

Returns Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.

Returns:

  • (::String)

    Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.



815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
# File 'proto_docs/google/cloud/saasplatform/saasservicemgmt/v1beta1/deployments_resources.rb', line 815

class Release
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Set of requirements to be fulfilled on the Unit when using this Release.
  # @!attribute [rw] upgradeable_from_releases
  #   @return [::Array<::String>]
  #     Optional. A list of releases from which a unit can be upgraded to this
  #     one (optional). If left empty no constraints will be applied. When
  #     provided, unit upgrade requests to this release will check and enforce
  #     this constraint.
  class ReleaseRequirements
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#unit_kind::String

Returns Required. Immutable. Reference to the UnitKind this Release corresponds to (required and immutable once created).

Returns:

  • (::String)

    Required. Immutable. Reference to the UnitKind this Release corresponds to (required and immutable once created).



815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
# File 'proto_docs/google/cloud/saasplatform/saasservicemgmt/v1beta1/deployments_resources.rb', line 815

class Release
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Set of requirements to be fulfilled on the Unit when using this Release.
  # @!attribute [rw] upgradeable_from_releases
  #   @return [::Array<::String>]
  #     Optional. A list of releases from which a unit can be upgraded to this
  #     one (optional). If left empty no constraints will be applied. When
  #     provided, unit upgrade requests to this release will check and enforce
  #     this constraint.
  class ReleaseRequirements
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#update_time::Google::Protobuf::Timestamp (readonly)

Returns Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.

Returns:

  • (::Google::Protobuf::Timestamp)

    Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.



815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
# File 'proto_docs/google/cloud/saasplatform/saasservicemgmt/v1beta1/deployments_resources.rb', line 815

class Release
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Set of requirements to be fulfilled on the Unit when using this Release.
  # @!attribute [rw] upgradeable_from_releases
  #   @return [::Array<::String>]
  #     Optional. A list of releases from which a unit can be upgraded to this
  #     one (optional). If left empty no constraints will be applied. When
  #     provided, unit upgrade requests to this release will check and enforce
  #     this constraint.
  class ReleaseRequirements
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class AnnotationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end