Skip to content

Commit

Permalink
Store website build script. [skip ci]
Browse files Browse the repository at this point in the history
  • Loading branch information
jpakkane committed Jul 1, 2020
1 parent 64f3661 commit 14cc2ef
Showing 1 changed file with 51 additions and 0 deletions.
51 changes: 51 additions & 0 deletions tools/build_website.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
#!/usr/bin/env python3

import os, sys, subprocess, shutil

assert(os.getcwd() == '/home/jpakkane')

from glob import glob

def purge(fname):
if not os.path.exists(fname):
return
if os.path.isdir(fname):
shutil.rmtree(fname)
os.unlink(fname)

def update():
webdir = 'mesonweb'
repodir = 'mesonwebbuild'
docdir = os.path.join(repodir, 'docs')
builddir = os.path.join(docdir, 'builddir')
htmldir = os.path.join(builddir, 'Meson documentation-doc/html')
# subprocess.check_call(['git', 'pull'], cwd=webdir)
subprocess.check_call(['git', 'fetch', '-a'], cwd=repodir)
subprocess.check_call(['git', 'reset', '--hard', 'origin/master'],
cwd=repodir)
if os.path.isdir(htmldir):
shutil.rmtree(htmldir)
if os.path.isdir(builddir):
shutil.rmtree(builddir)
env = os.environ.copy()
env['PATH'] = env['PATH'] + ':/home/jpakkane/.local/bin'
subprocess.check_call(['../meson.py', '.', 'builddir'], cwd=docdir, env=env)
subprocess.check_call(['ninja'], cwd=builddir)
old_files = glob(os.path.join(webdir, '*'))
for f in old_files:
base = f[len(webdir)+1:]
if base == 'CNAME' or base == 'favicon.png':
continue
subprocess.check_call(['git', 'rm', '-rf', base], cwd=webdir)
assert(os.path.isdir(webdir))
new_entries = glob(os.path.join(htmldir, '*'))
for e in new_entries:
shutil.move(e, webdir)
subprocess.check_call('git add *', shell=True, cwd=webdir)
subprocess.check_call(['git', 'commit', '-a', '-m', 'Bleep. Bloop. I am a bot.'],
cwd=webdir)
subprocess.check_call(['git', 'push'], cwd=webdir)
shutil.rmtree(builddir)

if __name__ == '__main__':
update()

0 comments on commit 14cc2ef

Please sign in to comment.