# HG changeset patch # User wenzelm # Date 1494093629 -7200 # Node ID dead160070972ffc421954808cd61a40bd510fca # Parent a124fbf8b2b99997f12adbdf29aab6d8391e52b3 present build status; tuned; diff -r a124fbf8b2b9 -r dead16007097 src/Pure/Admin/isabelle_cronjob.scala --- a/src/Pure/Admin/isabelle_cronjob.scala Sat May 06 20:00:08 2017 +0200 +++ b/src/Pure/Admin/isabelle_cronjob.scala Sat May 06 20:00:29 2017 +0200 @@ -29,8 +29,9 @@ val afp_source = "https://bitbucket.org/isa-afp/afp-devel" val devel_dir = Path.explode("~/html-data/devel") - val release_snapshot = devel_dir + Path.explode("release_snapshot") - val build_log_snapshot = devel_dir + Path.explode("build_log.db") + val release_snapshot_dir = devel_dir + Path.explode("release_snapshot") + val build_log_db = devel_dir + Path.explode("build_log.db") + val build_status_dir = devel_dir + Path.explode("build_status") val jenkins_jobs = "identify" :: Jenkins.build_log_jobs @@ -50,8 +51,8 @@ File.write(logger.log_dir + Build_Log.log_filename("isabelle_identify", logger.start_date), Build_Log.Identify.content(logger.start_date, Some(rev), Some(afp_rev))) - val new_snapshot = release_snapshot.ext("new") - val old_snapshot = release_snapshot.ext("old") + val new_snapshot = release_snapshot_dir.ext("new") + val old_snapshot = release_snapshot_dir.ext("old") Isabelle_System.rm_tree(new_snapshot) Isabelle_System.rm_tree(old_snapshot) @@ -59,8 +60,8 @@ Build_Release.build_release(base_dir, rev = rev, afp_rev = afp_rev, parallel_jobs = 4, remote_mac = "macbroy31", website = Some(new_snapshot)) - if (release_snapshot.is_dir) File.move(release_snapshot, old_snapshot) - File.move(new_snapshot, release_snapshot) + if (release_snapshot_dir.is_dir) File.move(release_snapshot_dir, old_snapshot) + File.move(new_snapshot, release_snapshot_dir) Isabelle_System.rm_tree(old_snapshot) })) @@ -175,11 +176,19 @@ using(store.open_database())(db => { store.update_database(db, database_dirs, ml_statistics = true) - store.snapshot_database(db, build_log_snapshot) + store.snapshot_database(db, build_log_db) }) } + /* present build status */ + + def build_status(options: Options) + { + Build_Status.present_data(Build_Status.read_data(options), target_dir = build_status_dir) + } + + /** task logging **/ @@ -326,7 +335,8 @@ SEQ(List(build_release, build_history_base, PAR(remote_builds.map(seq => SEQ(seq.map(remote_build_history(rev, _))))), Logger_Task("jenkins_logs", _ => Jenkins.download_logs(jenkins_jobs, main_dir)), - Logger_Task("build_log_database", logger => database_update(logger.options))))))) + Logger_Task("build_log_database", logger => database_update(logger.options)), + Logger_Task("build_status", logger => build_status(logger.options))))))) log_service.shutdown()