start-dev.ps1 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. Set-StrictMode -Version Latest
  2. $ErrorActionPreference = "Stop"
  3. $scriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path
  4. $backendDir = Split-Path -Parent $scriptDir
  5. Set-Location $backendDir
  6. $env:APP_ENV = if ($env:APP_ENV) { $env:APP_ENV } else { "development" }
  7. $env:HTTP_ADDR = if ($env:HTTP_ADDR) { $env:HTTP_ADDR } else { ":18090" }
  8. $env:DATABASE_URL = if ($env:DATABASE_URL) { $env:DATABASE_URL } else { "postgres://postgres:asdf*123@192.168.100.77:5432/cmr20260401?sslmode=disable" }
  9. $env:JWT_ACCESS_SECRET = if ($env:JWT_ACCESS_SECRET) { $env:JWT_ACCESS_SECRET } else { "change-me-in-production" }
  10. $env:AUTH_SMS_PROVIDER = if ($env:AUTH_SMS_PROVIDER) { $env:AUTH_SMS_PROVIDER } else { "console" }
  11. $env:WECHAT_MINI_DEV_PREFIX = if ($env:WECHAT_MINI_DEV_PREFIX) { $env:WECHAT_MINI_DEV_PREFIX } else { "dev-" }
  12. $env:LOCAL_EVENT_DIR = if ($env:LOCAL_EVENT_DIR) { $env:LOCAL_EVENT_DIR } else { "D:\dev\cmr-mini\event" }
  13. $env:ASSET_BASE_URL = if ($env:ASSET_BASE_URL) { $env:ASSET_BASE_URL } else { "https://oss-mbh5.colormaprun.com/gotomars" }
  14. $env:ASSET_PUBLIC_BASE_URL = if ($env:ASSET_PUBLIC_BASE_URL) { $env:ASSET_PUBLIC_BASE_URL } else { "https://oss-mbh5.colormaprun.com" }
  15. $env:ASSET_BUCKET_ROOT = if ($env:ASSET_BUCKET_ROOT) { $env:ASSET_BUCKET_ROOT } else { "oss://color-map-html" }
  16. $env:OSSUTIL_PATH = if ($env:OSSUTIL_PATH) { $env:OSSUTIL_PATH } else { "D:\dev\cmr-mini\tools\ossutil.exe" }
  17. $env:OSSUTIL_CONFIG_FILE = if ($env:OSSUTIL_CONFIG_FILE) { $env:OSSUTIL_CONFIG_FILE } else { (Join-Path $HOME ".ossutilconfig") }
  18. if (-not (Test-Path $env:LOCAL_EVENT_DIR)) {
  19. throw ("LOCAL_EVENT_DIR not found: " + $env:LOCAL_EVENT_DIR)
  20. }
  21. if (-not (Test-Path $env:OSSUTIL_PATH)) {
  22. Write-Warning ("OSSUTIL_PATH not found: " + $env:OSSUTIL_PATH)
  23. }
  24. if (-not (Test-Path $env:OSSUTIL_CONFIG_FILE)) {
  25. Write-Warning ("OSSUTIL_CONFIG_FILE not found: " + $env:OSSUTIL_CONFIG_FILE)
  26. }
  27. Write-Host "CMR backend dev server" -ForegroundColor Cyan
  28. Write-Host ("APP_ENV=" + $env:APP_ENV)
  29. Write-Host ("HTTP_ADDR=" + $env:HTTP_ADDR)
  30. Write-Host ("DATABASE_URL=" + $env:DATABASE_URL)
  31. Write-Host ("LOCAL_EVENT_DIR=" + $env:LOCAL_EVENT_DIR)
  32. Write-Host ("ASSET_BASE_URL=" + $env:ASSET_BASE_URL)
  33. Write-Host ""
  34. Write-Host "Workbench:" -ForegroundColor Yellow
  35. $workbenchAddr = $env:HTTP_ADDR
  36. if ($workbenchAddr.StartsWith(":")) {
  37. $workbenchAddr = "127.0.0.1" + $workbenchAddr
  38. }
  39. Write-Host ("http://" + $workbenchAddr + "/dev/workbench")
  40. Write-Host ""
  41. $exePath = Join-Path $backendDir "cmr-backend.exe"
  42. Write-Host "Build:" -ForegroundColor Yellow
  43. Write-Host $exePath
  44. Write-Host ""
  45. go build -o $exePath .\cmd\api
  46. if ($LASTEXITCODE -ne 0) {
  47. throw "go build failed"
  48. }
  49. & $exePath