ciyidogan commited on
Commit
c152fec
·
verified ·
1 Parent(s): 9cbf69d

Update spark_startup.py

Browse files
Files changed (1) hide show
  1. spark_startup.py +10 -13
spark_startup.py CHANGED
@@ -1,29 +1,25 @@
1
  """
2
  Flare – Spark startup notifier
3
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4
- App lifecyle içinde Spark servisine /startup çağrısı yapar.
5
  """
6
 
7
- import threading
8
- import time
9
  from typing import Dict, Any
10
-
11
- import requests
12
  from utils import log
13
- from config_provider import ConfigProvider, VersionConfig, ProjectConfig
14
 
15
  cfg = ConfigProvider.get()
16
 
17
 
18
  def _select_live_version(p: ProjectConfig) -> VersionConfig | None:
19
  published = [v for v in p.versions if v.published]
20
- if not published:
21
- return None
22
- return max(published, key=lambda v: v.id)
23
 
24
 
25
  def notify_startup():
26
- spark_url = cfg.global_config.spark_endpoint
27
  for p in cfg.projects:
28
  if not p.enabled:
29
  continue
@@ -35,11 +31,13 @@ def notify_startup():
35
  "project_name": p.name,
36
  "version_id": v.id,
37
  "general_prompt": v.general_prompt,
 
38
  "llm": v.llm.model_dump(),
39
  }
 
40
  try:
41
  log(f"🚀 Notifying Spark /startup for project '{p.name}' …")
42
- r = requests.post(f"{spark_url}/startup", json=body, timeout=10)
43
  r.raise_for_status()
44
  log(f"✅ Spark acknowledged startup ({r.status_code})")
45
  except Exception as e:
@@ -47,5 +45,4 @@ def notify_startup():
47
 
48
 
49
  def run_in_thread():
50
- t = threading.Thread(target=notify_startup, daemon=True)
51
- t.start()
 
1
  """
2
  Flare – Spark startup notifier
3
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4
+ Projeler açılırken Spark’a /startup çağrısı yapar.
5
  """
6
 
7
+ from __future__ import annotations
8
+ import threading, time, requests
9
  from typing import Dict, Any
 
 
10
  from utils import log
11
+ from config_provider import ConfigProvider, ProjectConfig, VersionConfig
12
 
13
  cfg = ConfigProvider.get()
14
 
15
 
16
  def _select_live_version(p: ProjectConfig) -> VersionConfig | None:
17
  published = [v for v in p.versions if v.published]
18
+ return max(published, key=lambda v: v.id) if published else None
 
 
19
 
20
 
21
  def notify_startup():
22
+ spark_base = cfg.global_config.spark_endpoint.rstrip("/") # ← 🟢 tek “/”
23
  for p in cfg.projects:
24
  if not p.enabled:
25
  continue
 
31
  "project_name": p.name,
32
  "version_id": v.id,
33
  "general_prompt": v.general_prompt,
34
+ "cloud_token": cfg.global_config.get_plain_token(),
35
  "llm": v.llm.model_dump(),
36
  }
37
+
38
  try:
39
  log(f"🚀 Notifying Spark /startup for project '{p.name}' …")
40
+ r = requests.post(f"{spark_base}/startup", json=body, timeout=10)
41
  r.raise_for_status()
42
  log(f"✅ Spark acknowledged startup ({r.status_code})")
43
  except Exception as e:
 
45
 
46
 
47
  def run_in_thread():
48
+ threading.Thread(target=notify_startup, daemon=True).start()