5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
# File 'app/jobs/completion_kit/model_discovery_job.rb', line 5
def perform(provider_credential_id)
credential = ProviderCredential.find_by(id: provider_credential_id)
return unless credential
credential.update_columns(discovery_status: "discovering", discovery_current: 0, discovery_total: 0)
credential.reload
credential.broadcast_discovery_progress
service = ModelDiscoveryService.new(config: credential.config_hash)
service.refresh! do |current, total|
credential.update_columns(discovery_current: current, discovery_total: total)
credential.reload
credential.broadcast_discovery_progress
end
credential.update_columns(discovery_status: "completed", updated_at: Time.current)
credential.reload
credential.broadcast_discovery_complete
rescue StandardError
credential.update_columns(discovery_status: "failed")
credential.reload
credential.broadcast_discovery_progress
end
|