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

Refactor Feast Helm charts for better end user install experience #533

Merged
merged 15 commits into from
May 2, 2020

Commits on Mar 12, 2020

  1. Refactor Feast Helm charts

    1. Use --spring.config.additional-location to specify Spring application config
       so the default application.yaml bundled in the jar can be used, and users
       only need to override required config. This is to prevent chart users being
       overwhelmed by the amount of config to set.
    
    2. Use less templating, if else, and functions in configmap.yaml in Feast
       charts. Instead set a reasonable default and allow users to override
       in application-override.yaml. This makes it easier to manage when
       application.yaml structure changes and documentation for application.yaml
       can be delegated to:
       https://github.com/gojek/feast/blob/master/core/src/main/resources/application.yml
       https://github.com/gojek/feast/blob/master/serving/src/main/resources/application.yml
    
    3. Remove double nesting of charts. Previously, Postgresql and Kafka subcharts
       are bundled in Feast Core suchart. Now all 3 subcharts are sibling charts.
       This reduces coupling between charts and it's easier to configure chart
       values one at a time than one big values yaml. Also, documentation for
       third party subcharts can be delegated to the original authors.
    
    4. Use helm-docs to generate README for Feast charts so the documentation
       is reproducible and easier to keep up to date when values.yaml changes.
       It is also easier to follow best practices when writing values.yaml.
       https://github.com/norwoodj/helm-docs
    
    5. Add prometheus and grafana charts to support out of the box metrics
       collector and visualization when users install Feast with this chart.
    
    6. Add tests for users to verify installation:
    
    7. Add examples to install Feast with 3 different profiles:
       - online serving only with direct runner
       - online and batch serving with DirectRunner
       - online and batch serving with DataflowRunner
    davidheryanto committed Mar 12, 2020
    Configuration menu
    Copy the full SHA
    571f1d9 View commit details
    Browse the repository at this point in the history

Commits on Mar 13, 2020

  1. Update docs

    davidheryanto committed Mar 13, 2020
    Configuration menu
    Copy the full SHA
    cf26d16 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d26b1dc View commit details
    Browse the repository at this point in the history
  3. Move .helmdocsignore to correct location

    helm-docs look for it in repo root folder
    davidheryanto committed Mar 13, 2020
    Configuration menu
    Copy the full SHA
    392fad1 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    c54faf4 View commit details
    Browse the repository at this point in the history
  5. Add missing kafka port in example feast stream config

    Incorrectly swapped resources requests and limit
    davidheryanto committed Mar 13, 2020
    Configuration menu
    Copy the full SHA
    2a728db View commit details
    Browse the repository at this point in the history
  6. Typo

    davidheryanto committed Mar 13, 2020
    Configuration menu
    Copy the full SHA
    9976aa0 View commit details
    Browse the repository at this point in the history

Commits on Apr 29, 2020

  1. Add application-secret.yaml, make it optional to use feast-core.postg…

    …resql.existingSecret, use JAVA_TOOL_OPTIONS instead of JAVA_OPTS
    
    - Also adjust CPU request and memory limit for test pods to fit the actual usage
    davidheryanto committed Apr 29, 2020
    Configuration menu
    Copy the full SHA
    4232679 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c4047bf View commit details
    Browse the repository at this point in the history
  3. Typo

    davidheryanto committed Apr 29, 2020
    Configuration menu
    Copy the full SHA
    718f45f View commit details
    Browse the repository at this point in the history

Commits on Apr 30, 2020

  1. Add 4 different application config with flag toggle for Feast Core an…

    …d Serving
    
    - application.yaml: default application.yaml bundled in the jar
    - application-generated.yaml: additional config generated by Helm that is valid when the dependencies like Postgres, Kafka and Redis are installed with default config
    - application-secret.yaml: config to override default and Helm generated config
    - application-override.yaml: same as application-secret.yaml but config is created as ConfigMap vs Secret and has a higher precendence than application-secret.yaml
    davidheryanto committed Apr 30, 2020
    Configuration menu
    Copy the full SHA
    5291a49 View commit details
    Browse the repository at this point in the history
  2. Update apiVersion for deployment in prometheus-statsd-exporter so it …

    …works with latest Kubernetes version
    davidheryanto committed Apr 30, 2020
    Configuration menu
    Copy the full SHA
    45a271c View commit details
    Browse the repository at this point in the history
  3. Cleanup unsued template function and add checksum to configmap and se…

    …cret
    
    So that deployment will be updated when configmap and secret are updated
    davidheryanto committed Apr 30, 2020
    Configuration menu
    Copy the full SHA
    3d50664 View commit details
    Browse the repository at this point in the history

Commits on May 2, 2020

  1. Configuration menu
    Copy the full SHA
    72e6144 View commit details
    Browse the repository at this point in the history
  2. Update example values so it's compatible with Feast v0.5. Add helm do…

    …cumentation for .Values.gcpProjectId
    davidheryanto committed May 2, 2020
    Configuration menu
    Copy the full SHA
    24c30d6 View commit details
    Browse the repository at this point in the history