karannaoh's Blog

Final Week | Helm chart tweeks

Published: 08/22/2019

PR:- #638

Added helm charts for Guillotina


1 Deployement with 2 pods by default

1 configmap to mount guillotina configuration yaml on the pods 

1 Service to expose guillotina

Guillotina allows user to pass arguments to override values defined in configuration fine similar to that user can pass arguments to `helm install` to override configuration.

Simple way to edit configurations is to edit configuration file in values.yaml

View Blog Post

Week #11 Added validation for query Parameters

Published: 08/13/2019

PR:- #630

This Week:-

- Added OpenAPI definitions to @search service for both post and get request.

- Added validation of query parameters, so that a query parameters of a request can also be validated against defined schema only by adding `validate=True` in the service definition.

Stuck Anywhere:-

The way we are validating query params is iterating over all the params and validating there schema, it's short of like implementing our own jsonschema package which is a bit redundant and in efficient. 

View Blog Post

Week #10 | Helm chart Guillotina

Published: 08/07/2019


Task is to add helm charts for guillotina, so that guillotina can easily be deployed on kubernetes with all availble configurations.

The helm chart should have support for configuring n number of databases and all the settings that guillotina supports. It would package these configuration settings into a config.json(or yaml if you prefer) that is mounted and referenced in the command arguments.

Make sure to provide the ability to also customize the image because people using this will likely be customizing the docker image used to package other things with guillotina(like customize addons).

This helm chart would serve as a generic chart to be able to deploy guillotina with.

View Blog Post

Week #9 | Fixes in Swagger and schema validation

Published: 07/29/2019

PR #618

This week:-

Updated services parameters definitions according to OpenAPI 3.0

- Added path parameters for endpoints

- Added schemas to parameter definitions

- and added definitions to the endpoint which didnt had definitions of swagger


View Blog Post

Week #8 | Fixes in decorator for validation

Published: 07/23/2019

Issue: #508 Validating all the request hiting Guillotina against proper jsonschema.

This Week:

PR: #517 

Requests coming to the API were not being validated, task was to validate all the request hitting the API. Jsonschema is already defined for most of the endpoints, only a validation wrapper was required to be added to all the endpoint(along with jsonschema for missing endpoints and testcases for validation). Now all the request hitting being validated against a well defined schema and through 412(Precondition failed) along with proper error in case of a bad request. 

Next Week:

Issue: #507

Added validation is a wrapper over all the endpoint causing too much redundancy in code base because its need to be added to all the endpoint. Next thing is to replace the validation with a decorator, which will validate the request automatically and will have very less code redundancy

Stuck anywhere:


View Blog Post