Use case:
1. Archive an OS agnostic job, for example running pure python or pnacl code.
For example from swarming/client run on ubuntu:
./isolate.py archive -i example/payload/hello_world.isolate -s i.isolated -I isolateserver.appspot.com
2. Run the .isolated on another OS than the OS that archived it via Swarming.
For example from swarming/client run on ubuntu:
./swarming.py run -I isolateserver.appspot.com -S https://chromium-swarm.appspot.com -d os Windows-5.1 cc0f218f629175564d6da6264b2cad19f1e612ea --task-name maruel/Windows-5.1/cc0f218f629175564d6da6264b2cad19f1e612ea
Expected:
Works fine.
Actual:
vm166-m4.golo.chromium.org/vm166-m4: 1, 0
[==========] Running 2 tests from maruel/Windows-5.1/cc0f218f629175564d6da6264b2cad19f1e612ea test run.
[------ Swarming Error ------]
Expected 'os' to be 'win' but got 'linux'
Traceback (most recent call last):
File "run_isolated.zip\__main__.py", line 690, in run_tha_test
require_command=True)
File "run_isolated.zip\isolateserver.py", line 1816, in fetch_isolated
settings.load(fetch_queue, isolated_hash, os_flavor, algo)
File "run_isolated.zip\isolateserver.py", line 1743, in load
item.load(os_flavor, fetch_queue.cache.read(item_hash))
File "run_isolated.zip\isolateserver.py", line 1665, in load
self.data = load_isolated(content, os_flavor, self.algo)
File "run_isolated.zip\isolateserver.py", line 1609, in load_isolated
(os_flavor, value))
ConfigError: Expected 'os' to be 'win' but got 'linux'
[----------------------------]
Workaround:
Use --config-variable OS win when archiving so the command looks like:
./isolate.py archive -i example/payload/hello_world.isolate -s i.isolated -I isolateserver.appspot.com --config-variable OS win
but that should not be necessary. Back in the days it was a safety check but
now it is only an hinderance.
Original issue reported on code.google.com by maruel@chromium.org on 14 Feb 2014 at 3:16
Original issue reported on code.google.com by
maruel@chromium.org
on 14 Feb 2014 at 3:16