v/cmd/tools/fast/fast_job.v

44 lines
1.2 KiB
V
Raw Normal View History

// Copyright (c) 2019-2021 Alexander Medvednikov. All rights reserved.
// Use of this source code is governed by an MIT license
// that can be found in the LICENSE file.
import os
import time
// A job that runs in the background, checks for repo updates,
// runs fast.v, pushes the HTML result to the fast.vlang.io GH pages repo.
fn main() {
println(time.now())
if !os.exists('website') {
println('cloning the website repo...')
os.system('git clone git@github.com:/vlang/website.git')
}
if !os.exists('fast') {
println('"fast" binary (built with `v fast.v`) was not found')
return
}
for {
res_pull := os.execute('git pull --rebase')
if res_pull.exit_code != 0 {
println('failed to git pull. uncommitted changes?')
return
}
2021-02-07 04:00:58 +01:00
// println('running fast')
resp := os.execute('./fast')
if resp.exit_code < 0 {
println(resp.output)
return
}
if resp.exit_code != 0 {
println('resp != 0, skipping')
} else {
os.chdir('website')
os.execute_or_panic('git checkout gh-pages')
os.cp('../index.html', 'index.html') ?
os.system('git commit -am "update benchmark"')
2021-02-07 03:35:22 +01:00
os.system('git push origin gh-pages')
os.chdir('..')
}
2021-02-27 18:41:06 +01:00
time.sleep(60 * time.second)
}
}