Class: Vellum::WorkflowDeploymentRelease

Inherits:
Object
  • Object
show all
Defined in:
lib/vellum_ai/types/workflow_deployment_release.rb

Constant Summary collapse

OMIT =
Object.new

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(id:, created:, environment:, created_by: OMIT, workflow_version:, deployment:, description: OMIT, release_tags:, reviews:, additional_properties: nil) ⇒ Vellum::WorkflowDeploymentRelease

Parameters:



51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# File 'lib/vellum_ai/types/workflow_deployment_release.rb', line 51

def initialize(id:, created:, environment:, created_by: OMIT, workflow_version:, deployment:, description: OMIT, release_tags:, reviews:, additional_properties: nil)
  @id = id
  @created = created
  @environment = environment
  @created_by = created_by if created_by != OMIT
  @workflow_version = workflow_version
  @deployment = deployment
  @description = description if description != OMIT
  @release_tags = release_tags
  @reviews = reviews
  @additional_properties = additional_properties
  @_field_set = { "id": id, "created": created, "environment": environment, "created_by": created_by, "workflow_version": workflow_version, "deployment": deployment, "description": description, "release_tags": release_tags, "reviews": reviews }.reject do | _k, v |
  v == OMIT
end
end

Instance Attribute Details

#additional_propertiesOpenStruct (readonly)

Returns Additional properties unmapped to the current class definition.

Returns:

  • (OpenStruct)

    Additional properties unmapped to the current class definition



33
34
35
# File 'lib/vellum_ai/types/workflow_deployment_release.rb', line 33

def additional_properties
  @additional_properties
end

#createdDateTime (readonly)

Returns:

  • (DateTime)


17
18
19
# File 'lib/vellum_ai/types/workflow_deployment_release.rb', line 17

def created
  @created
end

#created_byVellum::ReleaseCreatedBy (readonly)



21
22
23
# File 'lib/vellum_ai/types/workflow_deployment_release.rb', line 21

def created_by
  @created_by
end

#deploymentVellum::WorkflowDeploymentReleaseWorkflowDeployment (readonly)



25
26
27
# File 'lib/vellum_ai/types/workflow_deployment_release.rb', line 25

def deployment
  @deployment
end

#descriptionString (readonly)

Returns:

  • (String)


27
28
29
# File 'lib/vellum_ai/types/workflow_deployment_release.rb', line 27

def description
  @description
end

#environmentVellum::ReleaseEnvironment (readonly)



19
20
21
# File 'lib/vellum_ai/types/workflow_deployment_release.rb', line 19

def environment
  @environment
end

#idString (readonly)

Returns:

  • (String)


15
16
17
# File 'lib/vellum_ai/types/workflow_deployment_release.rb', line 15

def id
  @id
end

#release_tagsArray<Vellum::ReleaseReleaseTag> (readonly)

Returns:



29
30
31
# File 'lib/vellum_ai/types/workflow_deployment_release.rb', line 29

def release_tags
  @release_tags
end

#reviewsArray<Vellum::SlimReleaseReview> (readonly)

Returns:



31
32
33
# File 'lib/vellum_ai/types/workflow_deployment_release.rb', line 31

def reviews
  @reviews
end

#workflow_versionVellum::WorkflowDeploymentReleaseWorkflowVersion (readonly)



23
24
25
# File 'lib/vellum_ai/types/workflow_deployment_release.rb', line 23

def workflow_version
  @workflow_version
end

Class Method Details

.from_json(json_object:) ⇒ Vellum::WorkflowDeploymentRelease

Parameters:

  • json_object (String)

Returns:



70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
# File 'lib/vellum_ai/types/workflow_deployment_release.rb', line 70

def self.from_json(json_object:)
  struct = JSON.parse(json_object, object_class: OpenStruct)
  parsed_json = JSON.parse(json_object)
  id = parsed_json["id"]
  created = unless parsed_json["created"].nil?
  DateTime.parse(parsed_json["created"])
else
  nil
end
  unless parsed_json["environment"].nil?
    environment = parsed_json["environment"].to_json
    environment = Vellum::ReleaseEnvironment.from_json(json_object: environment)
  else
    environment = nil
  end
  unless parsed_json["created_by"].nil?
    created_by = parsed_json["created_by"].to_json
    created_by = Vellum::ReleaseCreatedBy.from_json(json_object: created_by)
  else
    created_by = nil
  end
  unless parsed_json["workflow_version"].nil?
    workflow_version = parsed_json["workflow_version"].to_json
    workflow_version = Vellum::WorkflowDeploymentReleaseWorkflowVersion.from_json(json_object: workflow_version)
  else
    workflow_version = nil
  end
  unless parsed_json["deployment"].nil?
    deployment = parsed_json["deployment"].to_json
    deployment = Vellum::WorkflowDeploymentReleaseWorkflowDeployment.from_json(json_object: deployment)
  else
    deployment = nil
  end
  description = parsed_json["description"]
  release_tags = parsed_json["release_tags"]&.map do | item |
  item = item.to_json
  Vellum::ReleaseReleaseTag.from_json(json_object: item)
end
  reviews = parsed_json["reviews"]&.map do | item |
  item = item.to_json
  Vellum::SlimReleaseReview.from_json(json_object: item)
end
  new(
    id: id,
    created: created,
    environment: environment,
    created_by: created_by,
    workflow_version: workflow_version,
    deployment: deployment,
    description: description,
    release_tags: release_tags,
    reviews: reviews,
    additional_properties: struct
  )
end

.validate_raw(obj:) ⇒ Void

Parameters:

  • obj (Object)

Returns:

  • (Void)


137
138
139
140
141
142
143
144
145
146
147
# File 'lib/vellum_ai/types/workflow_deployment_release.rb', line 137

def self.validate_raw(obj:)
  obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
  obj.created.is_a?(DateTime) != false || raise("Passed value for field obj.created is not the expected type, validation failed.")
  Vellum::ReleaseEnvironment.validate_raw(obj: obj.environment)
  obj.created_by.nil? || Vellum::ReleaseCreatedBy.validate_raw(obj: obj.created_by)
  Vellum::WorkflowDeploymentReleaseWorkflowVersion.validate_raw(obj: obj.workflow_version)
  Vellum::WorkflowDeploymentReleaseWorkflowDeployment.validate_raw(obj: obj.deployment)
  obj.description&.is_a?(String) != false || raise("Passed value for field obj.description is not the expected type, validation failed.")
  obj.release_tags.is_a?(Array) != false || raise("Passed value for field obj.release_tags is not the expected type, validation failed.")
  obj.reviews.is_a?(Array) != false || raise("Passed value for field obj.reviews is not the expected type, validation failed.")
end

Instance Method Details

#to_jsonString

Returns:

  • (String)


128
129
130
# File 'lib/vellum_ai/types/workflow_deployment_release.rb', line 128

def to_json
  @_field_set&.to_json
end