I expected to see the getting started diagrams in my new workspace on successful call of put_workspace, but the call fails with the attached callstack.
The following is shows what I changed in getting started to push up the workspace:
if __name__ == "__main__":
logging.basicConfig(level="INFO")
ws = main()
settings = StructurizrClientSettings()
ws.id = settings.workspace_id
structurizr.show_versions()
print(settings)
scli = StructurizrClient(settings=settings)
scli.put_workspace(ws)
/home/mjc/code/python/architecture/venv/bin/python /home/mjc/code/python/architecture/getting_started.py
System Information
==================
OS Linux
OS-release 5.6.15-arch1-1
Python 3.8.3
Package Versions
================
depinfo 1.5.3
httpx 0.13.3
pip 20.1.1
pydantic 1.5.1
python-dotenv 0.13.0
setuptools 47.1.1
structurizr-python 0.0.1a1
url=HttpUrl('https://api.structurizr.com', scheme='https', host='api.structurizr.com', tld='com', host_type='domain') workspace_id=***** api_key=UUID('****') api_secret=UUID('****') user='**@**.**' agent='structurizr-python/0.0.1a1' workspace_archive_location=PosixPath('/home/mjc/code/python/architecture')
Traceback (most recent call last):
File "/home/mjc/code/python/architecture/getting_started.py", line 69, in <module>
scli.put_workspace(ws)
File "/home/mjc/.local/lib/python3.8/site-packages/structurizr/api/structurizr_client.py", line 161, in put_workspace
workspace_json = ws_io.json(by_alias=True, exclude_none=True)
File "/home/mjc/.local/lib/python3.8/site-packages/structurizr/base_model.py", line 79, in json
return super().json(
File "pydantic/main.py", line 423, in pydantic.main.BaseModel.json
File "/home/mjc/.local/lib/python3.8/site-packages/structurizr/base_model.py", line 55, in dict
return super().dict(
File "pydantic/main.py", line 386, in pydantic.main.BaseModel.dict
File "pydantic/main.py", line 698, in _iter
File "pydantic/main.py", line 755, in pydantic.main.BaseModel.__eq__
File "/home/mjc/.local/lib/python3.8/site-packages/structurizr/base_model.py", line 55, in dict
return super().dict(
File "pydantic/main.py", line 386, in pydantic.main.BaseModel.dict
File "pydantic/main.py", line 706, in _iter
File "pydantic/main.py", line 639, in pydantic.main.BaseModel._get_value
File "pydantic/main.py", line 640, in genexpr
File "pydantic/main.py", line 607, in pydantic.main.BaseModel._get_value
File "/home/mjc/.local/lib/python3.8/site-packages/structurizr/model/model_item.py", line 58, in dict
obj["tags"] = ",".join(obj["tags"])
KeyError: 'tags'
Process finished with exit code 1
See output above.