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

How do remote agents execute tasks?

almironm March 16, 2018

I have a Python project for which I run pytest using tox.

When I run tox manually on the agent (from the same directory from where the task runs) everything works, but when running with the remote agent I am getting some issues with the environment variables already set by tox. Tox creates a virtual environment, set variables there and then executes pytest. Somehow, this is not working when executed from Bamboo.

This is a problem because we expect to run unit tests in bamboo in the same way as we run them locally.

How does a remote agent execute the tasks? Is the agent setting some virtual environment? Clearly is not running a task in the same way as in the script section. What are the differences?

We are thinking about moving all our automation from TeamCity to Bamboo (given that we use Bitbacket, JIRA and Confluence already), but it's not a good shift if Bamboo doesn't behave as expected (we expect a script to behave the same as if run manually from the command line).

2 answers

1 accepted

0 votes
Answer accepted
almironm March 16, 2018

The problem was solved by restarting the remote agent. Does the agent need to be restarted each time you install something in the box?

almironm March 16, 2018

In particular, the installation was setting the global PATH variable, and this was not reflected within the agent until restarting.

Marcin Gardias
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
March 17, 2018

Processes that are already running don't see the changes to environment variables made after they were started. 

0 votes
Jobin Kuruvilla [Adaptavist]
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
March 16, 2018

Maybe your agent is running as different user? And picking up a different set of env variables?

almironm March 16, 2018

The variables are set on the tox.ini file that runs on the Script. Tox doesn't depend on any environment variable set. But looks like bamboo in interfering on that. Tox works on any machine independently of the environment variables, that's why my concern about how the agent actually run the tasks.

Additionally, the agent is running with the same user and location for which the manual execution of tox works.

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events