This commit is contained in:
@@ -204,13 +204,12 @@ impl WrapUpRepository for PostgresWrapUpRepository {
|
||||
&self,
|
||||
before: chrono::NaiveDateTime,
|
||||
) -> Result<u64, DomainError> {
|
||||
let result = sqlx::query(
|
||||
"DELETE FROM wrap_up_records WHERE status = 'failed' AND created_at < $1",
|
||||
)
|
||||
.bind(before)
|
||||
.execute(&self.pool)
|
||||
.await
|
||||
.map_err(map_err)?;
|
||||
let result =
|
||||
sqlx::query("DELETE FROM wrap_up_records WHERE status = 'failed' AND created_at < $1")
|
||||
.bind(before)
|
||||
.execute(&self.pool)
|
||||
.await
|
||||
.map_err(map_err)?;
|
||||
Ok(result.rows_affected())
|
||||
}
|
||||
}
|
||||
|
||||
@@ -215,13 +215,12 @@ impl WrapUpRepository for SqliteWrapUpRepository {
|
||||
before: chrono::NaiveDateTime,
|
||||
) -> Result<u64, DomainError> {
|
||||
let before_str = before.format("%Y-%m-%dT%H:%M:%SZ").to_string();
|
||||
let result = sqlx::query(
|
||||
"DELETE FROM wrap_up_records WHERE status = 'failed' AND created_at < ?",
|
||||
)
|
||||
.bind(&before_str)
|
||||
.execute(&self.pool)
|
||||
.await
|
||||
.map_err(map_err)?;
|
||||
let result =
|
||||
sqlx::query("DELETE FROM wrap_up_records WHERE status = 'failed' AND created_at < ?")
|
||||
.bind(&before_str)
|
||||
.execute(&self.pool)
|
||||
.await
|
||||
.map_err(map_err)?;
|
||||
Ok(result.rows_affected())
|
||||
}
|
||||
}
|
||||
|
||||
@@ -35,7 +35,12 @@ impl WrapUpVideoRenderer for FfmpegWrapUpRenderer {
|
||||
slide_pngs.push(renderer.render_hero(report, width, height)?);
|
||||
slide_pngs.push(renderer.render_ratings(report, width, height)?);
|
||||
if !report.top_directors.is_empty() {
|
||||
slide_pngs.push(renderer.render_directors(report, &assets.cast_images, width, height)?);
|
||||
slide_pngs.push(renderer.render_directors(
|
||||
report,
|
||||
&assets.cast_images,
|
||||
width,
|
||||
height,
|
||||
)?);
|
||||
}
|
||||
if !report.top_actors.is_empty() {
|
||||
slide_pngs.push(renderer.render_actors(report, &assets.cast_images, width, height)?);
|
||||
@@ -43,7 +48,12 @@ impl WrapUpVideoRenderer for FfmpegWrapUpRenderer {
|
||||
if !report.top_genres.is_empty() {
|
||||
slide_pngs.push(renderer.render_genres(report, width, height)?);
|
||||
}
|
||||
slide_pngs.push(renderer.render_highlights(report, &assets.poster_images, width, height)?);
|
||||
slide_pngs.push(renderer.render_highlights(
|
||||
report,
|
||||
&assets.poster_images,
|
||||
width,
|
||||
height,
|
||||
)?);
|
||||
if !assets.poster_images.is_empty() {
|
||||
slide_pngs.push(renderer.render_mosaic(&assets.poster_images, width, height)?);
|
||||
} else {
|
||||
|
||||
@@ -16,7 +16,11 @@ pub async fn execute(
|
||||
if let Ok(Some(rec)) = ctx.repos.wrapup_repo.get_by_id(&wrapup_id).await
|
||||
&& (rec.status == WrapUpStatus::Ready || rec.status == WrapUpStatus::Generating)
|
||||
{
|
||||
tracing::debug!("wrapup {} already {:?}, skipping", wrapup_id.value(), rec.status);
|
||||
tracing::debug!(
|
||||
"wrapup {} already {:?}, skipping",
|
||||
wrapup_id.value(),
|
||||
rec.status
|
||||
);
|
||||
return Ok(());
|
||||
}
|
||||
|
||||
|
||||
@@ -1218,10 +1218,7 @@ impl WrapUpRepository for PanicWrapUpRepository {
|
||||
async fn delete(&self, _: &WrapUpId) -> Result<(), DomainError> {
|
||||
panic!("PanicWrapUpRepository called")
|
||||
}
|
||||
async fn delete_failed_older_than(
|
||||
&self,
|
||||
_: chrono::NaiveDateTime,
|
||||
) -> Result<u64, DomainError> {
|
||||
async fn delete_failed_older_than(&self, _: chrono::NaiveDateTime) -> Result<u64, DomainError> {
|
||||
panic!("PanicWrapUpRepository called")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -632,10 +632,7 @@ impl domain::ports::WrapUpRepository for Panic {
|
||||
async fn delete(&self, _: &domain::value_objects::WrapUpId) -> Result<(), DomainError> {
|
||||
panic!()
|
||||
}
|
||||
async fn delete_failed_older_than(
|
||||
&self,
|
||||
_: chrono::NaiveDateTime,
|
||||
) -> Result<u64, DomainError> {
|
||||
async fn delete_failed_older_than(&self, _: chrono::NaiveDateTime) -> Result<u64, DomainError> {
|
||||
panic!()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -106,9 +106,14 @@ async fn main() -> anyhow::Result<()> {
|
||||
document_parser: Arc::new(ImporterDocumentParser) as Arc<dyn DocumentParser>,
|
||||
video_renderer: {
|
||||
let ffmpeg = &app_config.wrapup.ffmpeg_path;
|
||||
if std::process::Command::new(ffmpeg).arg("-version").output().is_ok() {
|
||||
if std::process::Command::new(ffmpeg)
|
||||
.arg("-version")
|
||||
.output()
|
||||
.is_ok()
|
||||
{
|
||||
tracing::info!("wrapup video renderer enabled (ffmpeg={ffmpeg})");
|
||||
Some(Arc::new(wrapup_renderer::FfmpegWrapUpRenderer::new()) as Arc<dyn domain::ports::WrapUpVideoRenderer>)
|
||||
Some(Arc::new(wrapup_renderer::FfmpegWrapUpRenderer::new())
|
||||
as Arc<dyn domain::ports::WrapUpVideoRenderer>)
|
||||
} else {
|
||||
tracing::info!("wrapup video renderer disabled (ffmpeg not found)");
|
||||
None
|
||||
|
||||
Reference in New Issue
Block a user