(i: Integration)
| 533 | } |
| 534 | |
| 535 | pub async fn update_integration(i: Integration) -> Result<Integration, Error> { |
| 536 | let i: Integration = diesel::update( |
| 537 | application_integration::dsl::application_integration.filter( |
| 538 | application_integration::dsl::application_id |
| 539 | .eq(&i.application_id) |
| 540 | .and(application_integration::dsl::kind.eq(&i.kind)), |
| 541 | ), |
| 542 | ) |
| 543 | .set(( |
| 544 | application_integration::updated_at.eq(Utc::now()), |
| 545 | application_integration::configuration.eq(&i.configuration), |
| 546 | )) |
| 547 | .get_result(&mut get_async_db_conn().await?) |
| 548 | .await |
| 549 | .map_err(|e| Error::from_diesel(e, i.application_id.to_string()))?; |
| 550 | |
| 551 | info!(application_id = %i.application_id, kind = %i.kind, "Integration updated"); |
| 552 | |
| 553 | Ok(i) |
| 554 | } |
| 555 | |
| 556 | pub async fn delete_integration(application_id: &Uuid, kind: IntegrationKind) -> Result<(), Error> { |
| 557 | let ra = diesel::delete( |
no test coverage detected