2021-02-07 00:28:42 +03:00
|
|
|
// 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 {
|
2021-03-08 21:52:13 +03:00
|
|
|
res_pull := os.execute('git pull --rebase')
|
|
|
|
if res_pull.exit_code != 0 {
|
2021-02-07 00:28:42 +03:00
|
|
|
println('failed to git pull. uncommitted changes?')
|
|
|
|
return
|
|
|
|
}
|
2021-05-11 09:30:01 +03:00
|
|
|
// println('running ./fast')
|
2021-03-08 21:52:13 +03:00
|
|
|
resp := os.execute('./fast')
|
|
|
|
if resp.exit_code < 0 {
|
|
|
|
println(resp.output)
|
2021-02-07 00:28:42 +03:00
|
|
|
return
|
|
|
|
}
|
|
|
|
if resp.exit_code != 0 {
|
|
|
|
println('resp != 0, skipping')
|
|
|
|
} else {
|
|
|
|
os.chdir('website')
|
2021-03-08 21:52:13 +03:00
|
|
|
os.execute_or_panic('git checkout gh-pages')
|
2021-02-07 00:28:42 +03:00
|
|
|
os.cp('../index.html', 'index.html') ?
|
|
|
|
os.system('git commit -am "update benchmark"')
|
2021-02-07 05:35:22 +03:00
|
|
|
os.system('git push origin gh-pages')
|
2021-02-07 00:28:42 +03:00
|
|
|
os.chdir('..')
|
|
|
|
}
|
2021-05-11 09:30:01 +03:00
|
|
|
time.sleep(180 * time.second)
|
2021-02-07 00:28:42 +03:00
|
|
|
}
|
|
|
|
}
|