restackio/examples-python

`os.uname` not supported on Windows use platform module instead

Closed this issue · 1 comments

Examples fail with Error: AttributeError: module 'os' has no attribute 'uname'. Did you mean: 'name'?
os.uname doesn't work on Windows

the platform module is recommended alternative (has uname):

>>> import platform
>>> platform.uname()

and then instead of

os.uname().nodename 

it's

platform.uname().node 

stack trace:

[INFO]:[restack]: Starting service...
[ERROR]:[restack]: Failed to start service
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "src/services.py", line 15, in run_services
    asyncio.run(main())
  File "lib/asyncio/runners.py", line 194, in run
    return runner.run(main)
  File "lib/asyncio/runners.py", line 118, in run
    return self._loop.run_until_complete(task)
  File "lib/asyncio/base_events.py", line 687, in run_until_complete
    return future.result()
  File "src/services.py", line 9, in main
    await client.start_service(
  File "site-packages/restack_ai/restack.py", line 119, in start_service
    service = await self.create_service(
  File "site-packages/restack_ai/restack.py", line 87, in create_service
    raise e
  File "site-packages/restack_ai/restack.py", line 70, in create_service
    client = await self.create_client()
  File "site-packages/restack_ai/restack.py", line 62, in create_client
    return await Client.connect(
  File "site-packages/temporalio/client.py", line 173, in connect
    await temporalio.service.ServiceClient.connect(connect_config),
  File "site-packages/temporalio/service.py", line 209, in connect
    return await _BridgeServiceClient.connect(config)
  File "site-packages/temporalio/service.py", line 1008, in connect
    await client._connected_client()
  File "site-packages/temporalio/service.py", line 1021, in _connected_client
    self._bridge_client = await temporalio.bridge.client.Client.connect(
  File "site-packages/temporalio/bridge/client.py", line 97, in connect
    await temporalio.bridge.temporal_sdk_bridge.connect_client(
RuntimeError: Failed client connect: Server connection error: tonic::transport::Error(Transport, ConnectError(ConnectError("tcp connect error", Os {code: 10061, kind: ConnectionRefused, message: "No connection could be made because the target machine actively refused it." })))

[INFO]:[restack]: Starting service...
[ERROR]:[restack]: Failed to start service
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "src/services.py", line 15, in run_services
    asyncio.run(main())
  File "lib/asyncio/runners.py", line 194, in run
    return runner.run(main)
  File "lib/asyncio/runners.py", line 118, in run
    return self._loop.run_until_complete(task)
  File "lib/asyncio/base_events.py", line 687, in run_until_complete
    return future.result()
  File "src/services.py", line 9, in main
    await client.start_service(
  File "site-packages/restack_ai/restack.py", line 119, in start_service
    service = await self.create_service(
  File "site-packages/restack_ai/restack.py", line 87, in create_service
    raise e
  File "site-packages/restack_ai/restack.py", line 74, in create_service
    identity=f"{engine_id}-{os.getpid()}@{os.uname().nodename}",
AttributeError: module 'os' has no attribute 'uname'. Did you mean: 'name'?
		

was addressed in #50