| #!/bin/bash |
| # Emulate dw_wlm_cli (Cray's DataWarp interface) for testing purposes |
| # See "Flags=EmulateCray" in burst_buffer.conf man page |
| # |
| # create_persistent |
| # |
| if [ $2 == "create_persistent" ]; then |
| echo 'created' |
| fi |
| |
| # |
| # data_in |
| # |
| if [ $2 == "data_in" ]; then |
| sleep 3 |
| # echo "foo" |
| # exit 1 |
| fi |
| |
| # |
| # data_out |
| # |
| if [ $2 == "data_out" ]; then |
| sleep 20 |
| # echo "foo" |
| # exit 1 |
| fi |
| |
| # |
| # destroy_persistent is defunct, use teardown |
| # |
| if [ $2 == "destroy_persistent" ]; then |
| sleep 0.1 |
| fi |
| |
| # |
| # job_process |
| # |
| if [ $2 == "job_process" ]; then |
| sleep 0.1 |
| fi |
| |
| # |
| # paths |
| # |
| if [ $2 == "paths" ]; then |
| if [ $7 == "--pathfile" ]; then |
| echo 'DWPATHS=/tmp/dw' > $8 |
| fi |
| fi |
| |
| # |
| # pre_run |
| # |
| if [ $2 == "pre_run" ]; then |
| sleep 5 |
| fi |
| |
| # |
| # post_run |
| # |
| if [ $2 == "post_run" ]; then |
| sleep 0.1 |
| fi |
| |
| # |
| # pools |
| # |
| if [ $2 == "pools" ]; then |
| echo '{"pools": [{"free": 29, "granularity": 214748364800, "id": "wlm_pool", "quantity": 29, "units": "bytes"}]}' |
| fi |
| if [ $2 == "poolsx" ]; then |
| echo '{ "pools": [ { "id":"dwcache", "units":"bytes", "granularity":16777216, "quantity":2048, "free":2048 } ] }' |
| fi |
| |
| # |
| # setup |
| # |
| if [ $2 == "setup" ]; then |
| sleep 6 |
| fi |
| if [ $2 == "setupx" ]; then |
| sleep 0.1 |
| echo 'dwpost - failed client status code %s 400 |
| Error creating instance: 400' |
| exit 1 |
| fi |
| |
| # |
| # show_configurations |
| # |
| if [ $2 == "show_configurations" ]; then |
| echo '{ "configurations": [ ] }' |
| fi |
| |
| # |
| # show_instances |
| # |
| if [ $2 == "show_instances" ]; then |
| echo '{ "instances": [ ] }' |
| fi |
| if [ $2 == "show_instancesx" ]; then |
| echo '{ "instances": [ |
| {"capacity": {"bytes": 1288490188800, "nodes": 2}, "created": 1478232104, "expiration": 0, "expired": false, "id": 75, "intact": true, "label": "I75-0", "limits": {"write_window_length": 86400, "write_window_multiplier": 10}, "links": {"configurations": [73], "session": 75}, "public": false, "state": {"actualized": true, "fuse_blown": false, "goal": "create", "mixed": false, "transitioning": false}} |
| ] }' |
| fi |
| |
| # |
| # show_instances |
| # |
| if [ $2 == "show_sessions" ]; then |
| echo '{ "sessions": [ ] }' |
| fi |
| # Create a job with ID 347 or the buffer will get torn down at slurmctld startup |
| if [ $2 == "show_sessionsx" ]; then |
| echo '{ "sessions": [ |
| {"created": 1478232104, "creator": "SLURM", "expiration": 0, "expired": false, "id": 75, "links": {"client_nodes": ["nid00039"]}, "owner": 1001, "state": {"actualized": true, "fuse_blown": false, "goal": "create", "mixed": false, "transitioning": false}, "token": "347"} |
| ] }' |
| fi |
| |
| # |
| # teardown |
| # |
| if [ $2 == "teardown" ]; then |
| sleep 0.1 |
| fi |
| |
| exit 0 |