Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create Python SDK for tagbase-server a.k.a pytagbase #300

Closed
lewismc opened this issue Sep 15, 2023 · 3 comments
Closed

Create Python SDK for tagbase-server a.k.a pytagbase #300

lewismc opened this issue Sep 15, 2023 · 3 comments
Assignees
Labels
ci/cd Continuous Integration/Continuous Delivery enhancement New feature or request openapi Anything OpenAPI-related
Milestone

Comments

@lewismc
Copy link
Member

lewismc commented Sep 15, 2023

The work on #298 demands that we create a Python SDK for tagbase-server which can then be used rto demonstrate how one would interact with tagbase-server via a Jupyter notebook.

Because we use the OpenAPI specification, we can easily create a client using the OpenAPI Generator project. The command will be something like the following

brew install openapi-generator
git clone https://github.com/tagbase/pytagbase && cd pytagbase
openapi-generator generate -i https://raw.githubusercontent.com/tagbase/tagbase-server/main/openapi.yaml -g python -o . --additional-properties packageName=pytagbase packageUrl=https://github.com/tagbase/pytagbase packageVersion=0.1.0 projectName=pytagbase

The generated client can be stored in the pytagbase repository.

@lewismc lewismc added enhancement New feature or request ci/cd Continuous Integration/Continuous Delivery openapi Anything OpenAPI-related labels Sep 15, 2023
@lewismc lewismc added this to the 0.15.0 milestone Sep 15, 2023
@lewismc
Copy link
Member Author

lewismc commented Sep 15, 2023

Whenever tagbase-server is released we should autogenerate the new client and release it using the https://github.com/marketplace/actions/openapi-generator

@lewismc lewismc self-assigned this Sep 19, 2023
@lewismc
Copy link
Member Author

lewismc commented Sep 19, 2023

Done https://github.com/tagbase/pytagbase. The command to generate the Python toolkit was as follows

openapi-generator generate -i https://raw.githubusercontent.com/tagbase/tagbase-server/main/openapi.yaml -g python -o . --additional-properties packageName=pytagbase --additional-properties packageUrl=https://github.com/tagbase/pytagbase --additional-properties packageVersion=0.1.0 --additional-properties projectName=pytagbase

@lewismc
Copy link
Member Author

lewismc commented Sep 19, 2023

The next goal is for us to use a Github action such that we can generate a PR against pytagbase whenever we push a new tag and release for tagbase-server.

There are a few options for us doing that

As you guys can see there are quite a few options. More investigation is needed.

@lewismc lewismc closed this as completed Sep 19, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ci/cd Continuous Integration/Continuous Delivery enhancement New feature or request openapi Anything OpenAPI-related
Projects
None yet
Development

No branches or pull requests

1 participant