add build script (#21)
This commit is contained in:
parent
6b09ccd9d8
commit
6ff7f25e87
1 changed files with 54 additions and 0 deletions
54
build/build.py
Normal file
54
build/build.py
Normal file
|
@ -0,0 +1,54 @@
|
|||
# Build Go project for different platforms and create zip archive of project
|
||||
# directory structure.
|
||||
|
||||
import os
|
||||
import zipfile
|
||||
|
||||
def build(pkg, bin, env):
|
||||
src = 'github.com/wybiral/tube'
|
||||
x = os.system('{env} go build -o bin/{bin} {src}'.format(
|
||||
env=env,
|
||||
bin=bin,
|
||||
src=src,
|
||||
))
|
||||
if x != 0:
|
||||
print('Error building ' + pkg)
|
||||
return
|
||||
z = zipfile.ZipFile('bin/' + pkg, mode='w')
|
||||
z.write('bin/' + bin, arcname=bin)
|
||||
z.write('../config.json', arcname='config.json')
|
||||
z.write('../README.md', 'README.md')
|
||||
z.write('../videos/README.md', 'videos/README.md')
|
||||
for filename in os.listdir('../static'):
|
||||
z.write('../static/' + filename, 'static/' + filename)
|
||||
for filename in os.listdir('../templates'):
|
||||
z.write('../templates/' + filename, 'templates/' + filename)
|
||||
# cleanup executable
|
||||
os.remove('bin/' + bin)
|
||||
print('Built ' + pkg)
|
||||
|
||||
build(
|
||||
pkg='tube_linux.zip',
|
||||
bin='tube',
|
||||
env='GOOS=linux GOARCH=amd64',
|
||||
)
|
||||
|
||||
build(
|
||||
pkg='tube_windows.zip',
|
||||
bin='tube.exe',
|
||||
env='GOOS=windows GOARCH=amd64',
|
||||
)
|
||||
|
||||
build(
|
||||
pkg='tube_osx.zip',
|
||||
bin='tube',
|
||||
env='GOOS=darwin GOARCH=amd64',
|
||||
)
|
||||
|
||||
build(
|
||||
pkg='tube_arm6.zip',
|
||||
bin='tube',
|
||||
env='GOOS=linux GOARCH=arm GOARM=6',
|
||||
)
|
||||
|
||||
print('Done.')
|
Loading…
Reference in a new issue