1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
|
# frozen_string_literal: true
module API
module Entities
module Ml
module Mlflow
class ModelVersion < Grape::Entity
include ::API::Helpers::RelatedResourcesHelpers
expose :name
expose :version
expose :creation_timestamp, documentation: { type: Integer }
expose :last_updated_timestamp, documentation: { type: Integer }
expose :user_id
expose :current_stage
expose :description
expose :source
expose :run_id
expose :status
expose :status_message
expose :metadata, as: :tags, using: KeyValue
expose :run_link
expose :aliases, documentation: { is_array: true, type: String }
private
def version
object.id.to_s
end
def name
object.name
end
def creation_timestamp
object.created_at.to_i
end
def last_updated_timestamp
object.updated_at.to_i
end
def user_id
nil
end
def current_stage
"development"
end
def description
object.description.to_s
end
def source
expose_url(Gitlab::Routing.url_helpers.project_ml_model_version_path(
object.model.project,
object.model,
object
))
end
def run_id
object.candidate.eid
end
def status
"READY"
end
def status_message
""
end
def run_link
""
end
def aliases
[object.version.to_s]
end
end
end
end
end
end
|