Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

How to run python script in virtualenv?

Deleted user October 10, 2017

This is my (example) python script:

!#${bamboo.build.working.directory}/../${bamboo.planKey}/env/bin/python3 <<EOF
print("Hello World")
EOF

This is the error I am getting:

/opt/bamboo-home/temp/RTE-RT-HDR-14-ScriptBuildTask-7622273598056907388.sh: 1: /opt/bamboo-home/temp/RTE-RT-HDR-14-ScriptBuildTask-7622273598056907388.sh: !#/opt/bamboo-home/xml-data/build-dir/RTE-RT-HDR/../RTE-RT/env/bin/python3: not found

I have successfully created the virtualenv in a previous stage. Logging into the machine and executing:

/opt/bamboo-home/xml-data/build-dir/RTE-RT-HDR/../RTE-RT/env/bin/python3

starts python3.

It fails with both Interpreters "Shell" and "/bin/sh or cmd.exe".

2 answers

2 votes
robhit
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
October 11, 2017

Hi Tobias,

 

Since Bamboo only uses "Shell" and "/bin/sh or cmd.exe" I am suspecting running python commands using the script task won't be possible.

But, I have a workaround:

  1. Create your python script and store it at some location.
  2. In the Bamboo Script Task use the following command to invoke the python script:
    python <path-to-file>/filename.py

 

Also, ensure that you have the python in the path such as :

PATH="/Library/Frameworks/Python.framework/Versions/3.5/bin:${PATH}"

If you find this answer useful, please accept it so that others can also benefit from it.

 

Thanks,

Robhit

0 votes
Deleted user October 11, 2017

I've done something similar to Rohit (see above). This is how my script looks now:

VIRTUALENV_DIR=/${bamboo.build.working.directory}/../${bamboo.planKey}/env

$VIRTUALENV_DIR/bin/python3 <path_to_script>/script.py

 

(a previous job has created the virtualenv in the plan directory)

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events