File tree 3 files changed +13
-5
lines changed
3 files changed +13
-5
lines changed Original file line number Diff line number Diff line change @@ -104,7 +104,7 @@ argsh::main() {
104
104
local tty=" "
105
105
[[ ! -t 1 ]] || tty=" -it"
106
106
# shellcheck disable=SC2046
107
- docker run --rm ${tty} $( docker::user) \
107
+ docker run --rm ${tty} $( docker::user) -w /workspace \
108
108
-e " BATS_LOAD" \
109
109
-e " ARGSH_SOURCE" \
110
110
-e " GIT_COMMIT_SHA=$( git rev-parse HEAD || :) " \
Original file line number Diff line number Diff line change @@ -25,12 +25,20 @@ docker::user() {
25
25
local user=" ${3:- " $( whoami) " } "
26
26
local home=" ${4:- " /workspace" } "
27
27
local shell=" ${5:- " /bin/sh" } "
28
+ local curr
29
+ curr=" $( pwd) "
30
+ curr=" ${curr# " ${PATH_BASE:- } " } "
31
+ if [[ " ${curr} " == " $( pwd) " ]]; then
32
+ curr=" ${home} "
33
+ else
34
+ curr=" ${home}${curr} "
35
+ fi
28
36
29
37
echo " ${user} :x:${uid} :${gid} ::${home} :${shell} " > /tmp/docker_passwd
30
38
echo " ${user} :x:${gid} :" > /tmp/docker_group
31
39
echo " -v /tmp/docker_passwd:/etc/passwd -v /tmp/docker_group:/etc/group"
32
40
echo " -u ${uid} :${gid} "
33
41
34
- echo " -v ${PATH_BASE:- . } :${home} "
35
- echo " -w ${home } "
42
+ echo " -v ${PATH_BASE:- " $( pwd ) " } :${home} "
43
+ echo " -w ${curr } "
36
44
}
Original file line number Diff line number Diff line change @@ -28,7 +28,7 @@ argsh::shebang() {
28
28
return 1
29
29
} >&2
30
30
local tty=" "
31
- [[ ! -t 1 ]] || tty=" -it"
31
+ ! tty -s || tty=" -it"
32
32
# shellcheck disable=SC2046
33
33
docker run --rm ${tty} $( docker::user) \
34
34
-e " BATS_LOAD" \
@@ -37,7 +37,7 @@ argsh::shebang() {
37
37
-e " GIT_VERSION=$( git describe --tags --dirty || :) " \
38
38
ghcr.io/arg-sh/argsh:latest " ${@ } "
39
39
return 0
40
- } >&2
40
+ }
41
41
bash::version 4 3 0 || {
42
42
echo " This script requires bash 4.3.0 or later"
43
43
return 1
You can’t perform that action at this time.
0 commit comments