Tests a realistic GlobusOnline Workflow driven by an external GO python-API script on Galen's Mac (moved to nebula openstack vm: 141.142.210.14 ).
Builds every other hour.
The workflow:
1. bwjenkins places a jenkins_test_request in bw:~arnoldg/jenkins-mule to request arnoldg#macos to run a test workflow
2. arnoldg#macos is running GLobusConnect and a python Globus API script with refresh tokens, arnoldg must do a tfca authentication each week to keep these endpoints active: ncsa#jyc , ncsa#BlueWaters , ncsa#Nearline, and ensure python script and GlobusConnect are up and running on the client mac. See: https://wiki.ncsa.illinois.edu/display/CRAY/Jenkins+test+mule+python+script+for+Globus+Online for the python script.
3. client python script copies a folder with Globus Online: jyc -> BlueWaters, jyc -> Nearline , BlueWaters -> Nearline (~arnoldg/scratch/jenkins-mule/ ) . All operations are blocking and timeout at 5 minutes ( see: globus_sdk.TransferData deadline at http://globus-sdk-python.readthedocs.io/en/latest/clients/transfer/ )
4. bwjenkins retreives the status_file and error_file showing the transfer rates and removes the ./jenkins_test_request to enable the next jenkins test iteration. Anything in the error_file will be logged into the jenkins console output for the build.
For documentation purposes, eval_status.sh script and the most recent status_file should be present in this project's Workspace folder.
Code for the GO python script running on the client system is at: https://github.com/ncsa/jenkins-globus-online-workflow
Tests: Globus Online service, BW related endpoints
Builds every other hour.
The workflow:
1. bwjenkins places a jenkins_test_request in bw:~arnoldg/jenkins-mule to request arnoldg#macos to run a test workflow
2. arnoldg#macos is running GLobusConnect and a python Globus API script with refresh tokens, arnoldg must do a tfca authentication each week to keep these endpoints active: ncsa#jyc , ncsa#BlueWaters , ncsa#Nearline, and ensure python script and GlobusConnect are up and running on the client mac. See: https://wiki.ncsa.illinois.edu/display/CRAY/Jenkins+test+mule+python+script+for+Globus+Online for the python script.
3. client python script copies a folder with Globus Online: jyc -> BlueWaters, jyc -> Nearline , BlueWaters -> Nearline (~arnoldg/scratch/jenkins-mule/ ) . All operations are blocking and timeout at 5 minutes ( see: globus_sdk.TransferData deadline at http://globus-sdk-python.readthedocs.io/en/latest/clients/transfer/ )
4. bwjenkins retreives the status_file and error_file showing the transfer rates and removes the ./jenkins_test_request to enable the next jenkins test iteration. Anything in the error_file will be logged into the jenkins console output for the build.
For documentation purposes, eval_status.sh script and the most recent status_file should be present in this project's Workspace folder.
Code for the GO python script running on the client system is at: https://github.com/ncsa/jenkins-globus-online-workflow
Tests: Globus Online service, BW related endpoints