headless_lms_server/programs/seed/
seed_exercise_services.rs1use headless_lms_models::exercise_services;
2use sqlx::{Pool, Postgres};
3
4pub async fn seed_exercise_services(db_pool: Pool<Postgres>) -> anyhow::Result<()> {
5 info!("inserting exercise services");
6 let mut conn = db_pool.acquire().await?;
7
8 let _example_exercise_exercise_service = exercise_services::insert_exercise_service(
9 &mut conn,
10 &exercise_services::ExerciseServiceNewOrUpdate {
11 name: "Example Exercise".to_string(),
12 slug: "example-exercise".to_string(),
13 public_url: "http://project-331.local/example-exercise/api/service-info".to_string(),
14 internal_url: Some(
15 "http://example-exercise.default.svc.cluster.local:3002/example-exercise/api/service-info"
16 .to_string()
17 ),
18 max_reprocessing_submissions_at_once: 5,
19 }
20 )
21 .await?;
22
23 exercise_services::insert_exercise_service(
24 &mut conn,
25 &exercise_services::ExerciseServiceNewOrUpdate {
26 name: "Quizzes".to_string(),
27 slug: "quizzes".to_string(),
28 public_url: "http://project-331.local/quizzes/api/service-info".to_string(),
29 internal_url: Some(
30 "http://quizzes.default.svc.cluster.local:3004/quizzes/api/service-info"
31 .to_string(),
32 ),
33 max_reprocessing_submissions_at_once: 5,
34 },
35 )
36 .await?;
37
38 exercise_services::insert_exercise_service(
39 &mut conn,
40 &exercise_services::ExerciseServiceNewOrUpdate {
41 name: "TMC".to_string(),
42 slug: "tmc".to_string(),
43 public_url: "http://project-331.local/tmc/api/service-info".to_string(),
44 internal_url: Some(
45 "http://tmc.default.svc.cluster.local:3005/tmc/api/service-info".to_string(),
46 ),
47 max_reprocessing_submissions_at_once: 5,
48 },
49 )
50 .await?;
51 Ok(())
52}