lbry-desktop/build/build.ps1

49 lines
1.6 KiB
PowerShell
Raw Normal View History

2017-04-11 16:38:32 +02:00
pip install -r build\requirements.txt
2017-06-26 19:07:44 +02:00
2017-04-11 16:38:32 +02:00
# Get the latest stable version of Node.js or io.js
Install-Product node $env:nodejs_version
2017-06-23 21:18:03 +02:00
npm install -g yarn
yarn install
2017-06-26 19:07:44 +02:00
# clean dist\
if (Test-Path -Path dist\) {
Remove-Item -Recurse -Force dist\
}
New-Item -ItemType directory -Path dist\
2017-06-26 19:07:44 +02:00
# build ui
2017-06-26 19:07:44 +02:00
npm rebuild node-sass
node src\renderer\extractLocals.js
node_modules\.bin\node-sass --output dist\css --sourcemap=none src\renderer\scss\
node_modules\.bin\webpack --config src\renderer\webpack.prod.js
Copy-Item src\renderer\dist dist -recurse
2017-04-11 16:38:32 +02:00
2017-06-26 19:07:44 +02:00
2017-04-11 16:38:32 +02:00
# get daemon and cli executable
$package_settings = (Get-Content package.json -Raw | ConvertFrom-Json).lbrySettings
$daemon_ver = $package_settings.lbrynetDaemonVersion
$daemon_url_template = $package_settings.lbrynetDaemonUrlTemplate
$daemon_url = $daemon_url_template.Replace('OSNAME', 'windows').Replace('DAEMONVER', $daemon_ver)
2017-04-11 16:38:32 +02:00
Invoke-WebRequest -Uri $daemon_url -OutFile daemon.zip
Expand-Archive daemon.zip -DestinationPath dist\
dir dist\ # verify that daemon binary is there
2017-04-11 16:38:32 +02:00
rm daemon.zip
2017-06-26 19:07:44 +02:00
2017-04-11 16:38:32 +02:00
# build electron app
node_modules\.bin\build -p never
$binary_name = Get-ChildItem -Path dist -Filter 'LBRY Setup*.exe' -Name
2017-04-11 16:38:32 +02:00
$new_name = $binary_name -replace '^LBRY Setup (.*)\.exe$', 'LBRY_$1.exe'
Rename-Item -Path "dist\$binary_name" -NewName $new_name
dir dist # verify that binary was built/named correctly
2017-04-25 20:41:26 +02:00
2017-06-26 19:07:44 +02:00
2017-04-25 20:41:26 +02:00
# sign binary
nuget install secure-file -ExcludeVersion
2017-07-24 22:10:57 +02:00
secure-file\tools\secure-file -decrypt build\lbry3.pfx.enc -secret "$env:pfx_key"
& ${env:SIGNTOOL_PATH} sign /f build\lbry3.pfx /p "$env:key_pass" /tr http://tsa.starfieldtech.com /td SHA256 /fd SHA256 dist\*.exe
2017-04-25 20:41:26 +02:00
2017-06-26 19:07:44 +02:00
2017-07-24 22:10:57 +02:00
python build\upload_assets.py