-
Notifications
You must be signed in to change notification settings - Fork 69
Expand file tree
/
Copy pathbuild_all.ps1
More file actions
37 lines (32 loc) · 1.1 KB
/
build_all.ps1
File metadata and controls
37 lines (32 loc) · 1.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# Building web frontend...
Write-Host "Building web frontend..."
Set-Location "$PSScriptRoot/../web"
npm install
npm run build
# Preparing server public directory...
Write-Host "Preparing server public directory..."
$publicDir = "$PSScriptRoot/../server/public"
if (!(Test-Path $publicDir)) {
New-Item -ItemType Directory -Path $publicDir
}
Remove-Item -Path "$publicDir/*" -Recurse -Force -ErrorAction SilentlyContinue
Copy-Item -Path "$PSScriptRoot/../web/dist/*" -Destination $publicDir -Recurse
# Create build directory
$buildDir = "$PSScriptRoot/../build"
if (!(Test-Path $buildDir)) {
New-Item -ItemType Directory -Path $buildDir
}
# Building Windows binary...
Write-Host "Building Windows binary..."
Set-Location "$PSScriptRoot/../server"
$env:CGO_ENABLED = "0"
$env:GOOS = "windows"
$env:GOARCH = "amd64"
go build -o "$buildDir/tavily-proxy-win.exe" main.go
# Building Linux binary...
Write-Host "Building Linux binary..."
$env:CGO_ENABLED = "0"
$env:GOOS = "linux"
$env:GOARCH = "amd64"
go build -o "$buildDir/tavily-proxy-linux" main.go
Write-Host "Build complete! Binaries are in the build/ directory."