seawolf2357 commited on
Commit
b99b436
ยท
verified ยท
1 Parent(s): 3c3973d

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +24 -9
app.py CHANGED
@@ -775,22 +775,33 @@ def deploy_to_vercel(code: str):
775
  "Content-Type": "application/json"
776
  }
777
 
 
 
 
 
 
 
 
 
 
 
778
  # ๋ฐฐํฌํ•  ํŒŒ์ผ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ
779
  files = [
780
  {
781
  "file": "index.html",
782
  "data": code
 
 
 
 
783
  }
784
  ]
785
 
786
- # ํ”„๋กœ์ ํŠธ ์„ค์ • ์ˆ˜์ • - vite ํ”„๋ ˆ์ž„์›Œํฌ ์‚ฌ์šฉ
787
  project_settings = {
788
- "devCommand": None,
789
- "installCommand": None,
790
  "buildCommand": None,
791
  "outputDirectory": ".",
792
- "rootDirectory": None,
793
- "framework": "vite" # ํ—ˆ์šฉ๋œ ํ”„๋ ˆ์ž„์›Œํฌ ์ค‘ 'vite' ์‚ฌ์šฉ
794
  }
795
 
796
  # ๋ฐฐํฌ ์š”์ฒญ ๋ฐ์ดํ„ฐ
@@ -799,7 +810,7 @@ def deploy_to_vercel(code: str):
799
  "files": files,
800
  "target": "production",
801
  "projectSettings": project_settings,
802
- "framework": "vite" # ์—ฌ๊ธฐ๋„ 'vite'๋กœ ์„ค์ •
803
  }
804
 
805
  deploy_response = requests.post(deploy_url, headers=headers, json=deploy_data)
@@ -807,10 +818,14 @@ def deploy_to_vercel(code: str):
807
  if deploy_response.status_code != 200:
808
  return f"๋ฐฐํฌ ์‹คํŒจ: {deploy_response.text}"
809
 
810
- # ๋ฐฐํฌ URL ์ƒ์„ฑ
811
- deployment_url = f"https://{project_name}.vercel.app"
 
812
 
813
- return f"""๋ฐฐํฌ ์™„๋ฃŒ! <a href="{deployment_url}" target="_blank" style="color: #1890ff; text-decoration: underline; cursor: pointer;">์—ฌ๊ธฐ๋ฅผ ํด๋ฆญํ•˜์—ฌ ์—ด๊ธฐ</a>"""
 
 
 
814
 
815
  except Exception as e:
816
  return f"๋ฐฐํฌ ์ค‘ ์˜ค๋ฅ˜ ๋ฐœ์ƒ: {str(e)}"
 
775
  "Content-Type": "application/json"
776
  }
777
 
778
+ # package.json ํŒŒ์ผ ์ƒ์„ฑ (Vite ์„ค์ •)
779
+ package_json = {
780
+ "name": project_name,
781
+ "version": "1.0.0",
782
+ "scripts": {
783
+ "build": "vite build",
784
+ "dev": "vite"
785
+ }
786
+ }
787
+
788
  # ๋ฐฐํฌํ•  ํŒŒ์ผ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ
789
  files = [
790
  {
791
  "file": "index.html",
792
  "data": code
793
+ },
794
+ {
795
+ "file": "package.json",
796
+ "data": json.dumps(package_json)
797
  }
798
  ]
799
 
800
+ # ํ”„๋กœ์ ํŠธ ์„ค์ •
801
  project_settings = {
 
 
802
  "buildCommand": None,
803
  "outputDirectory": ".",
804
+ "framework": "create-react-app" # create-react-app์œผ๋กœ ๋ณ€๊ฒฝ
 
805
  }
806
 
807
  # ๋ฐฐํฌ ์š”์ฒญ ๋ฐ์ดํ„ฐ
 
810
  "files": files,
811
  "target": "production",
812
  "projectSettings": project_settings,
813
+ "framework": "create-react-app"
814
  }
815
 
816
  deploy_response = requests.post(deploy_url, headers=headers, json=deploy_data)
 
818
  if deploy_response.status_code != 200:
819
  return f"๋ฐฐํฌ ์‹คํŒจ: {deploy_response.text}"
820
 
821
+ # ์‘๋‹ต์—์„œ ์‹ค์ œ URL ๊ฐ€์ ธ์˜ค๊ธฐ
822
+ response_data = deploy_response.json()
823
+ deployment_url = response_data.get('url', f"https://{project_name}.vercel.app")
824
 
825
+ # ๋ฐฐํฌ ์ƒํƒœ ํ™•์ธ์„ ์œ„ํ•œ ๋Œ€๊ธฐ
826
+ time.sleep(5) # ๋ฐฐํฌ๊ฐ€ ์™„๋ฃŒ๋  ๋•Œ๊นŒ์ง€ ์ž ์‹œ ๋Œ€๊ธฐ
827
+
828
+ return f"""๋ฐฐํฌ ์™„๋ฃŒ! <a href="https://{deployment_url}" target="_blank" style="color: #1890ff; text-decoration: underline; cursor: pointer;">์—ฌ๊ธฐ๋ฅผ ํด๋ฆญํ•˜์—ฌ ์—ด๊ธฐ</a>"""
829
 
830
  except Exception as e:
831
  return f"๋ฐฐํฌ ์ค‘ ์˜ค๋ฅ˜ ๋ฐœ์ƒ: {str(e)}"