tools: use os.symlink instead of system('ln -s') in `v symlink` (#10769)

pull/10773/head
pancake 2021-07-12 13:23:25 +02:00 committed by GitHub
parent 0a66d8dc10
commit fe65cde03b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 6 deletions

View File

@ -31,11 +31,10 @@ fn setup_symlink_unix(vexe string) {
}
link_path = link_dir + '/v'
}
ret := os.execute('ln -sf "$vexe" "$link_path"')
if ret.exit_code == 0 {
println('Symlink "$link_path" has been created')
} else {
os.rm(link_path) or {}
os.symlink(vexe, link_path) or {
eprintln('Failed to create symlink "$link_path". Try again with sudo.')
exit(1)
}
}

View File

@ -111,7 +111,7 @@ fn test_is_file() {
assert true
} $else {
dsymlink := os.join_path(work_dir, 'dir_symlink')
os.system('ln -s $work_dir $dsymlink')
os.symlink(work_dir, dsymlink) or { panic(err) }
assert os.is_file(dsymlink) == false
}
// Test file symlinks
@ -119,7 +119,7 @@ fn test_is_file() {
assert true
} $else {
fsymlink := os.join_path(work_dir, 'file_symlink')
os.system('ln -s $tfile $fsymlink')
os.symlink(tfile, fsymlink) or { panic(err) }
assert os.is_file(fsymlink)
}
}