MCPcopy Create free account
hub / github.com/Dstack-TEE/dstack / update_dns_credential

Method update_dns_credential

gateway/src/admin_service.rs:363–395  ·  view source on GitHub ↗
(
        self,
        request: UpdateDnsCredentialRequest,
    )

Source from the content-addressed store, hash-verified

361 }
362
363 async fn update_dns_credential(
364 self,
365 request: UpdateDnsCredentialRequest,
366 ) -> Result<DnsCredentialInfo> {
367 let kv_store = self.state.kv_store();
368
369 let mut cred = kv_store
370 .get_dns_credential(&request.id)
371 .context("dns credential not found")?;
372
373 // Update name if provided
374 if let Some(name) = request.name {
375 cred.name = name;
376 }
377
378 // Update provider fields if provided
379 match &mut cred.provider {
380 DnsProvider::Cloudflare { api_token, api_url } => {
381 if let Some(new_token) = request.cf_api_token {
382 *api_token = new_token;
383 }
384 if let Some(new_url) = request.cf_api_url {
385 *api_url = Some(new_url);
386 }
387 }
388 }
389
390 cred.updated_at = now_secs();
391 kv_store.save_dns_credential(&cred)?;
392 info!("Updated DNS credential: {} ({})", cred.name, cred.id);
393
394 Ok(dns_cred_to_proto(cred))
395 }
396
397 async fn delete_dns_credential(self, request: DeleteDnsCredentialRequest) -> Result<()> {
398 let kv_store = self.state.kv_store();

Callers

nothing calls this directly

Calls 5

dns_cred_to_protoFunction · 0.85
kv_storeMethod · 0.80
save_dns_credentialMethod · 0.80
now_secsFunction · 0.70
get_dns_credentialMethod · 0.45

Tested by

no test coverage detected