On Thu, Nov 11, 2021 at 3:57 PM Huji Lee <[email protected]> wrote: > > Hi all, > > Starting Nov 7, a number of the jobs I would run through Toolforge grid have > stopped working. Each job consists of a .sh file like this on the first line > of which I use the source command to activate a python virtual environment. > When I run source by hand, subsequent lines work. But when I call the .sh > file and it tries to run the source command, I get a "source: not found" > message,
How are you calling the .sh file? It doesn't have a shebang so I'm guessing you are doing $ sh daily.sh In that case, invoke it with `bash`/ `zsh` instead of `sh`, since `sh` is dash which does not have the not have the source command. Alternatively you can use a dot instead of `source` which actually is part of POSIX [1] and is implemented in dash, `source` is also a zsh builtin [2] so I have no idea how it's breaking for you. Somehow your scripts are being run by dash if you have `exec zsh`, but since I don't know how you are invoking the scripts I cannot trace the code. YiFei Zhu [1] https://man7.org/linux/man-pages/man1/dot.1p.html [2] https://sourceforge.net/p/zsh/code/ci/master/tree/Src/builtin.c#l116 > the virtual environment does not get activated and indeed running which > python returns /usr/bin/python which is bad. All my scripts depend on pip > packages that are installed in the virtual env and not available with the > system python. > > The main thing I did on Nov 7 was to add a line at the end of my too's > account's .bash_profile as below: > > exec zsh > > This is because when I manually log into toolforge, I would like zsh to be my > shell, and since tool accounts don't support chsh, I thought executing zsh > directly from bash would be okay. But apparently, that now breaks the source > command somehow. > > So I wonder: > > (a) Is there a way to properly change the default shell of tool accounts? > (b) Is there a way to make source work under zsh? > > Importantly, I know the problem is with exec zsh because once I removed it > and logged out and back in, all scripts worked correctly. > > Thanks, > Huji > _______________________________________________ > Cloud mailing list -- [email protected] > List information: > https://lists.wikimedia.org/postorius/lists/cloud.lists.wikimedia.org/ _______________________________________________ Cloud mailing list -- [email protected] List information: https://lists.wikimedia.org/postorius/lists/cloud.lists.wikimedia.org/
