Register cleanup routines via atexit() instead.

This commit is contained in:
Jakub Klama
2015-04-22 21:50:15 +02:00
parent 42b8283ffe
commit c4110791a3
3 changed files with 8 additions and 11 deletions

View File

@@ -30,7 +30,7 @@ import sys
import time
import datetime
import subprocess
import signal
import atexit
import string
import signal
import inspect
@@ -123,13 +123,12 @@ def appendfile(filename, contents):
f.write('\n')
def on_abort(func):
def on_exit(func):
def abort():
info('Build aborted, cleaning up')
func()
signal.signal(signal.SIGINT, abort)
signal.signal(signal.SIGTERM, abort)
atexit.register(abort)
def get_caller_vars():

View File

@@ -30,7 +30,7 @@ import os
import sys
import string
from dsl import load_file
from utils import sh, sh_str, env, e, objdir, pathjoin, setfile, setup_env, template, debug, error, on_abort, info
from utils import sh, sh_str, env, e, objdir, pathjoin, setfile, setup_env, template, debug, error, on_exit, info
makejobs = 1
@@ -159,7 +159,7 @@ if __name__ == '__main__':
sys.exit(0)
create_overlay()
on_abort(cleanup_env)
on_exit(cleanup_env)
obtain_jail_name()
calculate_make_jobs()
create_poudriere_config()
@@ -169,4 +169,3 @@ if __name__ == '__main__':
merge_freenas_ports()
prepare_env()
run()
cleanup_env()

View File

@@ -31,7 +31,7 @@ import os
import sys
import glob
from dsl import load_file
from utils import sh, setup_env, objdir, info, debug, error, setfile, e, on_abort, chroot
from utils import sh, setup_env, objdir, info, debug, error, setfile, e, on_exit, chroot
dsl = load_file('${BUILD_CONFIG}/ports.pyd', os.environ)
@@ -66,8 +66,7 @@ if __name__ == '__main__':
info('Installing ports')
info('Log file: {0}', logfile)
on_abort(umount_packages)
on_exit(umount_packages)
mount_packages()
create_pkgng_configuration()
install_ports()
umount_packages()
install_ports()