parent
64f36613ef
commit
14cc2efcfe
1 changed files with 51 additions and 0 deletions
@ -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() |
Loading…
Reference in new issue