name: "bun run script"

mode: ONCE
hostname: "bun"
log_level: ERROR

disable_rl: true

mount_proc: true

cwd: "/tmp/bun"

clone_newnet: false
clone_newuser: {CLONE_NEWUSER}
clone_newcgroup: false

keep_caps: false
keep_env: true

mount {
    src: "/bin"
    dst: "/bin"
	is_bind: true
}

mount {
    src: "/lib"
    dst: "/lib"
	is_bind: true
}

mount {
    src: "/sys/fs"
    dst: "/sys/fs"
	is_bind: true
}

mount {
    src: "/lib64"
    dst: "/lib64"
	is_bind: true
}


mount {
    src: "/usr"
    dst: "/usr"
	is_bind: true
}

mount {
	src: "/dev/null"
	dst: "/dev/null"
	is_bind: true
	rw: true
}

mount {
	dst: "/tmp"
	fstype: "tmpfs"
	rw: true
    options: "size=500000000"
}

mount {
    src: "{JOB_DIR}/package.json"
    dst: "/tmp/bun/package.json"
    is_bind: true
    mandatory: true
}

mount {
    src: "{JOB_DIR}/bun.lockb"
    dst: "/tmp/bun/bun.lockb"
    is_bind: true
    mandatory: false
}


mount {
    src: "{JOB_DIR}/wrapper.ts"
    dst: "/tmp/bun/wrapper.ts"
    is_bind: true
    mandatory: false
}


mount {
    src: "{JOB_DIR}/loader.bun.ts"
    dst: "/tmp/bun/loader.bun.ts"
    is_bind: true
    mandatory: false
}

mount {
    src: "{JOB_DIR}/main.ts"
    dst: "/tmp/bun/main.ts"
    is_bind: true
    mandatory: false
}


mount {
    src: "{JOB_DIR}/args.json"
    dst: "/tmp/bun/args.json"
    is_bind: true
}

mount {
    src: "{JOB_DIR}/result.json"
    dst: "/tmp/bun/result.json"
    rw: true
    is_bind: true
}

mount {
    src: "/etc"
    dst: "/etc"
	is_bind: true
}

mount {
    src: "/dev/random"
    dst: "/dev/random"
    is_bind: true
}

mount {
    src: "/dev/urandom"
    dst: "/dev/urandom"
    is_bind: true
}

iface_no_lo: true

mount {
    src: "{CACHE_DIR}"
    dst: "/tmp/windmill/cache/bun"
    is_bind: true
    mandatory: false
    rw: true
}

{SHARED_MOUNT}

envar: "HOME=/tmp/bun"


