From 99e5d25e650ea9fc2d288bda9d794fdab60516b7 Mon Sep 17 00:00:00 2001 From: Danny Chiao Date: Mon, 15 Aug 2022 11:34:10 -0400 Subject: [PATCH 1/4] chore: lint error Signed-off-by: Danny Chiao --- sdk/python/feast/on_demand_feature_view.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sdk/python/feast/on_demand_feature_view.py b/sdk/python/feast/on_demand_feature_view.py index 1978f51130f..7ef01252ee7 100644 --- a/sdk/python/feast/on_demand_feature_view.py +++ b/sdk/python/feast/on_demand_feature_view.py @@ -235,6 +235,9 @@ def __init__( # noqa: C901 odfv_source.name ] = odfv_source.projection + if _udf is None: + raise ValueError("The `udf` parameter must be specified.") + assert _udf self.udf = udf # type: ignore self.udf_string = udf_string From 298bdde51f7cbb9c74d30e387a09e450bd74332c Mon Sep 17 00:00:00 2001 From: Marco <73487483+acmarco@users.noreply.github.com> Date: Wed, 12 Oct 2022 12:39:06 -0400 Subject: [PATCH 2/4] fix: Fix numpy version specification (#3241) Signed-off-by: Marco Gagliano Signed-off-by: Marco Gagliano --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 9a6bcb9180b..ebff5f5cbcf 100644 --- a/setup.py +++ b/setup.py @@ -57,7 +57,7 @@ "Jinja2>=2,<4", "jsonschema", "mmh3", - "numpy<1.22,<2", + "numpy>1.22,<2", "pandas>=1,<2", "pandavro==1.5.*", "protobuf>3.20,<4", From cec9f610d6938ec9e1a09b38c10ee1bb2fbb39a5 Mon Sep 17 00:00:00 2001 From: Danny Chiao Date: Fri, 28 Oct 2022 15:07:09 -0700 Subject: [PATCH 3/4] ci: Backport release changes to 0.22 branch Signed-off-by: Danny Chiao --- .github/workflows/release.yml | 35 ++++-- .releaserc.js | 2 +- Makefile | 4 + .../feature-servers/python-feature-server.md | 2 +- infra/charts/feast-feature-server/README.md | 104 ++++++---------- .../feast-feature-server/README.md.gotmpl | 26 ++++ .../templates/deployment.yaml | 3 + infra/charts/feast-feature-server/values.yaml | 9 +- infra/charts/feast-python-server/.helmignore | 23 ---- infra/charts/feast-python-server/Chart.yaml | 12 -- infra/charts/feast-python-server/README.md | 59 --------- .../templates/_helpers.tpl | 52 -------- .../templates/deployment.yaml | 61 ---------- .../templates/service.yaml | 15 --- infra/charts/feast-python-server/values.yaml | 57 --------- infra/charts/feast/README.md | 24 ++-- infra/charts/feast/README.md.gotmpl | 23 ++-- .../feast/charts/feature-server/README.md | 114 +++++++++--------- .../charts/transformation-service/README.md | 29 ++--- infra/scripts/helm/push-helm-charts.sh | 2 - infra/scripts/release/files_to_bump.txt | 7 +- 21 files changed, 212 insertions(+), 451 deletions(-) create mode 100644 infra/charts/feast-feature-server/README.md.gotmpl delete mode 100644 infra/charts/feast-python-server/.helmignore delete mode 100644 infra/charts/feast-python-server/Chart.yaml delete mode 100644 infra/charts/feast-python-server/README.md delete mode 100644 infra/charts/feast-python-server/templates/_helpers.tpl delete mode 100644 infra/charts/feast-python-server/templates/deployment.yaml delete mode 100644 infra/charts/feast-python-server/templates/service.yaml delete mode 100644 infra/charts/feast-python-server/values.yaml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 9fcbc1e0522..e6eb018252f 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -42,13 +42,14 @@ jobs: echo "Current version is ${CURRENT_VERSION}" echo "Next version is ${NEXT_VERSION}" - publish-web-ui-npm: + validate_version_bumps: if: github.repository == 'feast-dev/feast' needs: get_dry_release_versions runs-on: ubuntu-latest env: # This publish is working using an NPM automation token to bypass 2FA NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + HELM_VERSION: v3.8.0 CURRENT_VERSION: ${{ needs.get_dry_release_versions.outputs.current_version }} NEXT_VERSION: ${{ needs.get_dry_release_versions.outputs.next_version }} steps: @@ -57,7 +58,7 @@ jobs: with: node-version: '17.x' registry-url: 'https://registry.npmjs.org' - - name: Bump file versions (temporarily for Web UI publish) + - name: Bump file versions run: python ./infra/scripts/release/bump_file_versions.py ${CURRENT_VERSION} ${NEXT_VERSION} - name: Install yarn dependencies working-directory: ./ui @@ -65,15 +66,27 @@ jobs: - name: Build yarn rollup working-directory: ./ui run: yarn build:lib - - name: Publish UI package - working-directory: ./ui - run: npm publish - env: - # This publish is working using an NPM automation token to bypass 2FA - NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + - name: Bundle UI in SDK + run: make build-ui + - name: Remove previous Helm + run: sudo rm -rf $(which helm) + - name: Set up Homebrew + uses: Homebrew/actions/setup-homebrew@master + - name: Setup Helm-docs + run: | + brew install norwoodj/tap/helm-docs + - name: Generate helm chart READMEs + run: make build-helm-docs + - name: Install Helm + run: ./infra/scripts/helm/install-helm.sh + - name: Validate Helm chart prior to publishing + run: ./infra/scripts/helm/validate-helm-chart-publish.sh + - name: Validate all version consistency + run: ./infra/scripts/helm/validate-helm-chart-versions.sh $NEXT_VERSION release: name: release + needs: validate_version_bumps runs-on: ubuntu-latest env: GITHUB_TOKEN: ${{ github.event.inputs.token }} @@ -90,6 +103,12 @@ jobs: uses: actions/setup-node@v2 with: node-version: '16' + - name: Set up Homebrew + id: set-up-homebrew + uses: Homebrew/actions/setup-homebrew@master + - name: Setup Helm-docs + run: | + brew install norwoodj/tap/helm-docs - name: Release (Dry Run) if: github.event.inputs.dry_run == 'true' run: | diff --git a/.releaserc.js b/.releaserc.js index bb8b9d4b75e..550637143c4 100644 --- a/.releaserc.js +++ b/.releaserc.js @@ -41,7 +41,7 @@ module.exports = { "verifyReleaseCmd": "./infra/scripts/validate-release.sh ${nextRelease.type} " + current_branch, // Bump all version files and build UI / update yarn.lock - "prepareCmd": "python ./infra/scripts/release/bump_file_versions.py ${lastRelease.version} ${nextRelease.version}; make build-ui" + "prepareCmd": "python ./infra/scripts/release/bump_file_versions.py ${lastRelease.version} ${nextRelease.version}; make build-ui; make build-helm-docs" }], ["@semantic-release/release-notes-generator", { diff --git a/Makefile b/Makefile index a88f933c536..9b2e6bbafeb 100644 --- a/Makefile +++ b/Makefile @@ -283,6 +283,10 @@ build-sphinx: compile-protos-python build-templates: python infra/scripts/compile-templates.py +build-helm-docs: + cd ${ROOT_DIR}/infra/charts/feast; helm-docs + cd ${ROOT_DIR}/infra/charts/feast-feature-server; helm-docs + # Web UI # Note: requires node and yarn to be installed diff --git a/docs/reference/feature-servers/python-feature-server.md b/docs/reference/feature-servers/python-feature-server.md index ecc12dd12d6..bfea5bfefa4 100644 --- a/docs/reference/feature-servers/python-feature-server.md +++ b/docs/reference/feature-servers/python-feature-server.md @@ -10,7 +10,7 @@ There is a CLI command that starts the server: `feast serve`. By default, Feast ## Deploying as a service -One can also deploy a feature server by building a docker image that bundles in the project's `feature_store.yaml`. See [helm chart](https://github.com/feast-dev/feast/blob/master/infra/charts/feast-python-server) for example. +One can also deploy a feature server by building a docker image that bundles in the project's `feature_store.yaml`. See [helm chart](https://github.com/feast-dev/feast/blob/master/infra/charts/feast-feature-server) for example. A [remote feature server](../alpha-aws-lambda-feature-server.md) on AWS Lambda is available. A remote feature server on GCP Cloud Run is currently being developed. diff --git a/infra/charts/feast-feature-server/README.md b/infra/charts/feast-feature-server/README.md index 9b9df7582fd..5834812f733 100644 --- a/infra/charts/feast-feature-server/README.md +++ b/infra/charts/feast-feature-server/README.md @@ -1,82 +1,48 @@ -# feast-feature-server +# Feast Python / Go Feature Server Helm Charts -![Version: 0.22.4](https://img.shields.io/badge/Version-0.22.4-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) +Current chart version is `0.22.4` -Feast Feature Server in Go or Python +## Installation -**Homepage:** +Run the following commands to add the repository -## Source Code - -* - -## Values - -| Key | Type | Default | Description | -| ---------------------------------- | ------ | ---------------- | ----------- | -| affinity | object | `{}` | | -| fullnameOverride | string | `""` | | -| image.pullPolicy | string | `"IfNotPresent"` | | -| image.repository | string | `""` | | -| image.tag | string | `""` | | -| imagePullSecrets | list | `[]` | | -| livenessProbe.initialDelaySeconds | int | `30` | | -| livenessProbe.periodSeconds | int | `30` | | -| nameOverride | string | `""` | | -| nodeSelector | object | `{}` | | -| podAnnotations | object | `{}` | | -| podSecurityContext | object | `{}` | | -| readinessProbe.initialDelaySeconds | int | `20` | | -| readinessProbe.periodSeconds | int | `10` | | -| replicaCount | int | `1` | | -| resources | object | `{}` | | -| securityContext | object | `{}` | | -| service.port | int | `80` | | -| service.type | string | `"ClusterIP"` | | -| tolerations | list | `[]` | | - ----------------------------------------------- -Autogenerated from chart metadata using [helm-docs v1.11.0](https://github.com/norwoodj/helm-docs/releases/v1.11.0) - - -Docker repository and tag are required. Helm install example: ``` -helm install feast-feature-server . --set image.repository=REPO --set image.tag=TAG +helm repo add feast-charts https://feast-helm-charts.storage.googleapis.com +helm repo update ``` -Deployment assumes that `feature_store.yaml` exists on docker image. Example docker image: -``` -FROM python:3.8 +Install Feast Feature Server on Kubernetes -RUN apt update && \ - apt install -y jq - -RUN pip install pip --upgrade - -RUN pip install feast - -COPY feature_store.yaml /feature_store.yaml +A base64 encoded version of the `feature_store.yaml` file is needed. Helm install example: ``` - -Furthermore, if you wish to use the Go feature server, then you must install the Apache Arrow C++ libraries, and your `feature_store.yaml` should include `go_feature_server: True`. -For more details, see the [docs](https://docs.feast.dev/reference/feature-servers/go-feature-server). -The docker image might look like: +helm install feast-feature-server feast-charts/feast-feature-server --set feature_store_yaml_base64=$(base64 feature_store.yaml) ``` -FROM python:3.8 -RUN apt update && \ - apt install -y jq +## Tutorial +See [here](https://github.com/feast-dev/feast/tree/master/examples/python-helm-demo) for a sample tutorial on testing this helm chart with a demo feature repository and a local Redis instance. -RUN pip install pip --upgrade - -RUN pip install feast - -RUN apt update -RUN apt install -y -V ca-certificates lsb-release wget -RUN wget https://apache.jfrog.io/artifactory/arrow/$(lsb_release --id --short | tr 'A-Z' 'a-z')/apache-arrow-apt-source-latest-$(lsb_release --codename --short).deb -RUN apt install -y -V ./apache-arrow-apt-source-latest-$(lsb_release --codename --short).deb -RUN apt update -RUN apt -y install libarrow-dev +## Values -COPY feature_store.yaml /feature_store.yaml -``` \ No newline at end of file +| Key | Type | Default | Description | +|-----|------|---------|-------------| +| affinity | object | `{}` | | +| feature_store_yaml_base64 | string | `""` | [required] a base64 encoded version of feature_store.yaml | +| fullnameOverride | string | `""` | | +| image.pullPolicy | string | `"IfNotPresent"` | | +| image.repository | string | `""` | | +| image.tag | string | `""` | | +| imagePullSecrets | list | `[]` | | +| livenessProbe.initialDelaySeconds | int | `30` | | +| livenessProbe.periodSeconds | int | `30` | | +| nameOverride | string | `""` | | +| nodeSelector | object | `{}` | | +| podAnnotations | object | `{}` | | +| podSecurityContext | object | `{}` | | +| readinessProbe.initialDelaySeconds | int | `20` | | +| readinessProbe.periodSeconds | int | `10` | | +| replicaCount | int | `1` | | +| resources | object | `{}` | | +| securityContext | object | `{}` | | +| service.port | int | `80` | | +| service.type | string | `"ClusterIP"` | | +| tolerations | list | `[]` | | \ No newline at end of file diff --git a/infra/charts/feast-feature-server/README.md.gotmpl b/infra/charts/feast-feature-server/README.md.gotmpl new file mode 100644 index 00000000000..fb877208e06 --- /dev/null +++ b/infra/charts/feast-feature-server/README.md.gotmpl @@ -0,0 +1,26 @@ +# Feast Python / Go Feature Server Helm Charts + +Current chart version is `{{ template "chart.version" . }}` + +## Installation + +Run the following commands to add the repository + +``` +helm repo add feast-charts https://feast-helm-charts.storage.googleapis.com +helm repo update +``` + +Install Feast Feature Server on Kubernetes + +A base64 encoded version of the `feature_store.yaml` file is needed. Helm install example: +``` +helm install feast-feature-server feast-charts/feast-feature-server --set feature_store_yaml_base64=$(base64 feature_store.yaml) +``` + +## Tutorial +See [here](https://github.com/feast-dev/feast/tree/master/examples/python-helm-demo) for a sample tutorial on testing this helm chart with a demo feature repository and a local Redis instance. + +{{ template "chart.requirementsSection" . }} + +{{ template "chart.valuesSection" . }} \ No newline at end of file diff --git a/infra/charts/feast-feature-server/templates/deployment.yaml b/infra/charts/feast-feature-server/templates/deployment.yaml index 69cf92f6c02..94c56de9dda 100644 --- a/infra/charts/feast-feature-server/templates/deployment.yaml +++ b/infra/charts/feast-feature-server/templates/deployment.yaml @@ -30,6 +30,9 @@ spec: {{- toYaml .Values.securityContext | nindent 12 }} image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" imagePullPolicy: {{ .Values.image.pullPolicy }} + env: + - name: FEATURE_STORE_YAML_BASE64 + value: {{ .Values.feature_store_yaml_base64 }} command: ["feast", "serve", "-h", "0.0.0.0"] ports: - name: http diff --git a/infra/charts/feast-feature-server/values.yaml b/infra/charts/feast-feature-server/values.yaml index f62f95a7577..96936681fbf 100644 --- a/infra/charts/feast-feature-server/values.yaml +++ b/infra/charts/feast-feature-server/values.yaml @@ -5,14 +5,19 @@ replicaCount: 1 image: - repository: "" + # image.repository -- Docker image for Feature Server repository + repository: feastdev/feature-server pullPolicy: IfNotPresent - tag: "" + # image.tag -- The Docker image tag (can be overwritten if custom feature server deps are needed for on demand transforms) + tag: 0.22.4 imagePullSecrets: [] nameOverride: "" fullnameOverride: "" +# feature_store_yaml_base64 -- [required] a base64 encoded version of feature_store.yaml +feature_store_yaml_base64: "" + podAnnotations: {} podSecurityContext: {} diff --git a/infra/charts/feast-python-server/.helmignore b/infra/charts/feast-python-server/.helmignore deleted file mode 100644 index 0e8a0eb36f4..00000000000 --- a/infra/charts/feast-python-server/.helmignore +++ /dev/null @@ -1,23 +0,0 @@ -# Patterns to ignore when building packages. -# This supports shell glob matching, relative path matching, and -# negation (prefixed with !). Only one pattern per line. -.DS_Store -# Common VCS dirs -.git/ -.gitignore -.bzr/ -.bzrignore -.hg/ -.hgignore -.svn/ -# Common backup files -*.swp -*.bak -*.tmp -*.orig -*~ -# Various IDEs -.project -.idea/ -*.tmproj -.vscode/ diff --git a/infra/charts/feast-python-server/Chart.yaml b/infra/charts/feast-python-server/Chart.yaml deleted file mode 100644 index 45913941610..00000000000 --- a/infra/charts/feast-python-server/Chart.yaml +++ /dev/null @@ -1,12 +0,0 @@ -apiVersion: v2 -name: feast-python-server -description: Feast Feature Server in Python -type: application -version: 0.22.4 -keywords: - - machine learning - - big data - - mlops -home: https://feast.dev/ -sources: - - https://github.com/feast-dev/feast diff --git a/infra/charts/feast-python-server/README.md b/infra/charts/feast-python-server/README.md deleted file mode 100644 index 8ffb351482e..00000000000 --- a/infra/charts/feast-python-server/README.md +++ /dev/null @@ -1,59 +0,0 @@ -# feast-python-server - -![Version: 0.22.4](https://img.shields.io/badge/Version-0.22.4-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) - -Feast Feature Server in Python - -**Homepage:** - -## Source Code - -* - -## Values - -| Key | Type | Default | Description | -|-----|------|---------|-------------| -| affinity | object | `{}` | | -| fullnameOverride | string | `""` | | -| image.pullPolicy | string | `"IfNotPresent"` | | -| image.repository | string | `""` | [required] The repository for the Docker image | -| image.tag | string | `""` | [required] The Docker image tag | -| imagePullSecrets | list | `[]` | | -| livenessProbe.initialDelaySeconds | int | `30` | | -| livenessProbe.periodSeconds | int | `30` | | -| nameOverride | string | `""` | | -| nodeSelector | object | `{}` | | -| podAnnotations | object | `{}` | | -| podSecurityContext | object | `{}` | | -| readinessProbe.initialDelaySeconds | int | `20` | | -| readinessProbe.periodSeconds | int | `10` | | -| replicaCount | int | `1` | | -| resources | object | `{}` | | -| securityContext | object | `{}` | | -| service.port | int | `80` | | -| service.type | string | `"ClusterIP"` | | -| tolerations | list | `[]` | | - ----------------------------------------------- -Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0) - - -Docker repository and tag are required. Helm install example: -``` -helm install feast-python-server . --set image.repository=REPO --set image.tag=TAG -``` - -Deployment assumes that `feature_store.yaml` exists on docker image. Example docker image: -``` -FROM python:3.8 - -RUN apt update && \ - apt install -y jq - -RUN pip install pip --upgrade - -RUN pip install feast - -COPY feature_store.yaml /feature_store.yaml -``` \ No newline at end of file diff --git a/infra/charts/feast-python-server/templates/_helpers.tpl b/infra/charts/feast-python-server/templates/_helpers.tpl deleted file mode 100644 index b64e10536d1..00000000000 --- a/infra/charts/feast-python-server/templates/_helpers.tpl +++ /dev/null @@ -1,52 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "feast-python-server.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} -{{- end }} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "feast-python-server.fullname" -}} -{{- if .Values.fullnameOverride }} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} -{{- else }} -{{- $name := default .Chart.Name .Values.nameOverride }} -{{- if contains $name .Release.Name }} -{{- .Release.Name | trunc 63 | trimSuffix "-" }} -{{- else }} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }} -{{- end }} -{{- end }} -{{- end }} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "feast-python-server.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} -{{- end }} - -{{/* -Common labels -*/}} -{{- define "feast-python-server.labels" -}} -helm.sh/chart: {{ include "feast-python-server.chart" . }} -{{ include "feast-python-server.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end }} - -{{/* -Selector labels -*/}} -{{- define "feast-python-server.selectorLabels" -}} -app.kubernetes.io/name: {{ include "feast-python-server.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end }} diff --git a/infra/charts/feast-python-server/templates/deployment.yaml b/infra/charts/feast-python-server/templates/deployment.yaml deleted file mode 100644 index 56439be658c..00000000000 --- a/infra/charts/feast-python-server/templates/deployment.yaml +++ /dev/null @@ -1,61 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ include "feast-python-server.fullname" . }} - labels: - {{- include "feast-python-server.labels" . | nindent 4 }} -spec: - replicas: {{ .Values.replicaCount }} - selector: - matchLabels: - {{- include "feast-python-server.selectorLabels" . | nindent 6 }} - template: - metadata: - {{- with .Values.podAnnotations }} - annotations: - {{- toYaml . | nindent 8 }} - {{- end }} - labels: - {{- include "feast-python-server.selectorLabels" . | nindent 8 }} - spec: - {{- with .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - containers: - - name: {{ .Chart.Name }} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - command: ["feast", "serve", "-h", "0.0.0.0"] - ports: - - name: http - containerPort: 6566 - protocol: TCP - livenessProbe: - tcpSocket: - port: http - initialDelaySeconds: {{ .Values.livenessProbe.initialDelaySeconds }} - periodSeconds: {{ .Values.livenessProbe.periodSeconds }} - readinessProbe: - tcpSocket: - port: http - initialDelaySeconds: {{ .Values.readinessProbe.initialDelaySeconds }} - periodSeconds: {{ .Values.readinessProbe.periodSeconds }} - resources: - {{- toYaml .Values.resources | nindent 12 }} - {{- with .Values.nodeSelector }} - nodeSelector: - {{- toYaml . | nindent 8 }} - {{- end }} - {{- with .Values.affinity }} - affinity: - {{- toYaml . | nindent 8 }} - {{- end }} - {{- with .Values.tolerations }} - tolerations: - {{- toYaml . | nindent 8 }} - {{- end }} diff --git a/infra/charts/feast-python-server/templates/service.yaml b/infra/charts/feast-python-server/templates/service.yaml deleted file mode 100644 index 86bf38a9a45..00000000000 --- a/infra/charts/feast-python-server/templates/service.yaml +++ /dev/null @@ -1,15 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: {{ include "feast-python-server.name" . }} - labels: - {{- include "feast-python-server.labels" . | nindent 4 }} -spec: - type: {{ .Values.service.type }} - ports: - - port: {{ .Values.service.port }} - targetPort: http - protocol: TCP - name: http - selector: - {{- include "feast-python-server.selectorLabels" . | nindent 4 }} diff --git a/infra/charts/feast-python-server/values.yaml b/infra/charts/feast-python-server/values.yaml deleted file mode 100644 index f62f95a7577..00000000000 --- a/infra/charts/feast-python-server/values.yaml +++ /dev/null @@ -1,57 +0,0 @@ -# Default values for feast. -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - repository: "" - pullPolicy: IfNotPresent - tag: "" - -imagePullSecrets: [] -nameOverride: "" -fullnameOverride: "" - -podAnnotations: {} - -podSecurityContext: {} - # fsGroup: 2000 - -securityContext: {} - # capabilities: - # drop: - # - ALL - # readOnlyRootFilesystem: true - # runAsNonRoot: true - # runAsUser: 1000 - -service: - type: ClusterIP - port: 80 - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} - -livenessProbe: - initialDelaySeconds: 30 - periodSeconds: 30 - -readinessProbe: - initialDelaySeconds: 20 - periodSeconds: 10 diff --git a/infra/charts/feast/README.md b/infra/charts/feast/README.md index 897bc583fc9..0a0923f827a 100644 --- a/infra/charts/feast/README.md +++ b/infra/charts/feast/README.md @@ -1,11 +1,11 @@ -# Feast Helm Charts +# Feast Java Helm Charts (alpha) -This repo contains Helm charts for Feast components that are being installed on Kubernetes: +This repo contains Helm charts for Feast Java components that are being installed on Kubernetes: * Feast (root chart): The complete Helm chart containing all Feast components and dependencies. Most users will use this chart, but can selectively enable/disable subcharts using the values.yaml file. * [Feature Server](charts/feature-server): High performant JVM-based implementation of feature server. * [Transformation Service](charts/transformation-service): Transformation server for calculating on-demand features * Redis: (Optional) One of possible options for an online store used by Feature Server - + ## Chart: Feast Feature store for machine learning Current chart version is `0.22.4` @@ -43,20 +43,30 @@ feature-server: config: host: localhost port: 6379 + entityKeySerializationVersion: 2 + +global: + registry: + path: gs://[YOUR GCS BUCKET]/demo-repo/registry.db + cache_ttl_seconds: 60 + project: feast_java_demo ``` -For the default configuration, please see the [Feature Server Configuration](https://github.com/feast-dev/feast-java/blob/master/serving/src/main/resources/application.yml). +For the default configuration, please see the [Feature Server Configuration](https://github.com/feast-dev/feast/blob/master/java/serving/src/main/resources/application.yml). For more details, please see: https://docs.feast.dev/how-to-guides/running-feast-in-production +## Example +See [here](https://github.com/feast-dev/feast/tree/master/examples/java-demo) for a sample tutorial on testing this helm chart with a demo feature repository and a local Redis instance. + ## Requirements | Repository | Name | Version | |------------|------|---------| -| https://charts.helm.sh/stable | redis | 10.5.6 | -| https://feast-helm-charts.storage.googleapis.com | feature-server(feature-server) | 0.22.4 | -| https://feast-helm-charts.storage.googleapis.com | transformation-service(transformation-service) | 0.22.4 | +| https://charts.helm.sh/stable | redis | 10.5.6 | +| https://feast-helm-charts.storage.googleapis.com | feature-server(feature-server) | 0.22.4 | +| https://feast-helm-charts.storage.googleapis.com | transformation-service(transformation-service) | 0.22.4 | ## Values diff --git a/infra/charts/feast/README.md.gotmpl b/infra/charts/feast/README.md.gotmpl index acb4e830e75..07f6659f0c3 100644 --- a/infra/charts/feast/README.md.gotmpl +++ b/infra/charts/feast/README.md.gotmpl @@ -1,13 +1,11 @@ -# Feast Helm Charts +# Feast Java Helm Charts (alpha) -> :warning: **Disclaimer**: Since Feast 0.10 our vision is to manage all infrastructure for feature store from one place - Feast SDK. But while this new paradigm is still in development, we are planning to support the installation of some Feast components (like Java feature server) through Helm chart presented in this repository. However, we do not expect helm chart to become a long-term solution for deploying Feast components to production, and some frictions still might exist. For example, you will need to manually sync some configurations from [feature_store.yaml](https://docs.feast.dev/reference/feature-repository/feature-store-yaml) into the chart context (like path to the registry file or project name). - -This repo contains Helm charts for Feast components that are being installed on Kubernetes: +This repo contains Helm charts for Feast Java components that are being installed on Kubernetes: * Feast (root chart): The complete Helm chart containing all Feast components and dependencies. Most users will use this chart, but can selectively enable/disable subcharts using the values.yaml file. - * [Feature Server](charts/feature-server): High performant JVM-based implementation of feature server. + * [Feature Server](charts/feature-server): High performant JVM-based implementation of feature server. * [Transformation Service](charts/transformation-service): Transformation server for calculating on-demand features * Redis: (Optional) One of possible options for an online store used by Feature Server - + ## Chart: Feast {{ template "chart.description" . }} Current chart version is `{{ template "chart.version" . }}` @@ -45,13 +43,24 @@ feature-server: config: host: localhost port: 6379 + entityKeySerializationVersion: 2 + +global: + registry: + path: gs://[YOUR GCS BUCKET]/demo-repo/registry.db + cache_ttl_seconds: 60 + project: feast_java_demo ``` -For the default configuration, please see the [Feature Server Configuration](https://github.com/feast-dev/feast-java/blob/master/serving/src/main/resources/application.yml). +For the default configuration, please see the [Feature Server Configuration](https://github.com/feast-dev/feast/blob/master/java/serving/src/main/resources/application.yml). For more details, please see: https://docs.feast.dev/how-to-guides/running-feast-in-production +## Example +See [here](https://github.com/feast-dev/feast/tree/master/examples/java-demo) for a sample tutorial on testing this helm chart with a demo feature repository and a local Redis instance. + + {{ template "chart.requirementsSection" . }} {{ template "chart.valuesSection" . }} \ No newline at end of file diff --git a/infra/charts/feast/charts/feature-server/README.md b/infra/charts/feast/charts/feature-server/README.md index 6aa60685795..c95d5b2e6ef 100644 --- a/infra/charts/feast/charts/feature-server/README.md +++ b/infra/charts/feast/charts/feature-server/README.md @@ -8,63 +8,63 @@ Feast Feature Server: Online feature serving service for Feast ## Values -| Key | Type | Default | Description | -|-----|------|-------------------------------------------------------|-------------| -| "application-generated.yaml".enabled | bool | `true` | Flag to include Helm generated configuration. Please set `application-override.yaml` to override this configuration. | -| "application-override.yaml" | object | `{"enabled":true}` | Configuration to override the default [application.yaml](https://github.com/feast-dev/feast/blob/master/java/serving/src/main/resources/application.yml). Will be created as a ConfigMap. `application-override.yaml` has a higher precedence than `application-secret.yaml` | -| "application-secret.yaml" | object | `{"enabled":true}` | Configuration to override the default [application.yaml](https://github.com/feast-dev/feast/blob/master/java/serving/src/main/resources/application.yml). Will be created as a Secret. `application-override.yaml` has a higher precedence than `application-secret.yaml`. It is recommended to either set `application-override.yaml` or `application-secret.yaml` only to simplify config management. | -| "application.yaml".enabled | bool | `true` | Flag to include the default [configuration](https://github.com/feast-dev/feast/blob/master/java/serving/src/main/resources/application.yml). Please set `application-override.yaml` to override this configuration. | -| envOverrides | object | `{}` | Extra environment variables to set | -| image.pullPolicy | string | `"IfNotPresent"` | Image pull policy | -| image.repository | string | `"feastdev/feature-server-java"` | Docker image for Feature Server repository | -| image.tag | string | `"0.22.4"` | Image tag | -| ingress.grpc.annotations | object | `{}` | Extra annotations for the ingress | -| ingress.grpc.auth.enabled | bool | `false` | Flag to enable auth | -| ingress.grpc.class | string | `"nginx"` | Which ingress controller to use | -| ingress.grpc.enabled | bool | `false` | Flag to create an ingress resource for the service | -| ingress.grpc.hosts | list | `[]` | List of hostnames to match when routing requests | -| ingress.grpc.https.enabled | bool | `true` | Flag to enable HTTPS | -| ingress.grpc.https.secretNames | object | `{}` | Map of hostname to TLS secret name | -| ingress.grpc.whitelist | string | `""` | Allowed client IP source ranges | -| ingress.http.annotations | object | `{}` | Extra annotations for the ingress | +| Key | Type | Default | Description | +|-----|------|---------|-------------| +| "application-generated.yaml".enabled | bool | `true` | Flag to include Helm generated configuration. Please set `application-override.yaml` to override this configuration. | +| "application-override.yaml" | object | `{"enabled":true}` | Configuration to override the default [application.yaml](https://github.com/feast-dev/feast/blob/master/java/serving/src/main/resources/application.yml). Will be created as a ConfigMap. `application-override.yaml` has a higher precedence than `application-secret.yaml` | +| "application-secret.yaml" | object | `{"enabled":false}` | Configuration to override the default [application.yaml](https://github.com/feast-dev/feast/blob/master/java/serving/src/main/resources/application.yml). Will be created as a Secret. `application-override.yaml` has a higher precedence than `application-secret.yaml`. It is recommended to either set `application-override.yaml` or `application-secret.yaml` only to simplify config management. | +| "application.yaml".enabled | bool | `true` | Flag to include the default [configuration](https://github.com/feast-dev/feast/blob/master/java/serving/src/main/resources/application.yml). Please set `application-override.yaml` to override this configuration. | +| envOverrides | object | `{}` | Extra environment variables to set | +| image.pullPolicy | string | `"IfNotPresent"` | Image pull policy | +| image.repository | string | `"feastdev/feature-server-java"` | Docker image for Feature Server repository | +| image.tag | string | `"0.22.4"` | Image tag | +| ingress.grpc.annotations | object | `{}` | Extra annotations for the ingress | +| ingress.grpc.auth.enabled | bool | `false` | Flag to enable auth | +| ingress.grpc.class | string | `"nginx"` | Which ingress controller to use | +| ingress.grpc.enabled | bool | `false` | Flag to create an ingress resource for the service | +| ingress.grpc.hosts | list | `[]` | List of hostnames to match when routing requests | +| ingress.grpc.https.enabled | bool | `true` | Flag to enable HTTPS | +| ingress.grpc.https.secretNames | object | `{}` | Map of hostname to TLS secret name | +| ingress.grpc.whitelist | string | `""` | Allowed client IP source ranges | +| ingress.http.annotations | object | `{}` | Extra annotations for the ingress | | ingress.http.auth.authUrl | string | `"http://auth-server.auth-ns.svc.cluster.local/auth"` | URL to an existing authentication service | -| ingress.http.auth.enabled | bool | `false` | Flag to enable auth | -| ingress.http.class | string | `"nginx"` | Which ingress controller to use | -| ingress.http.enabled | bool | `false` | Flag to create an ingress resource for the service | -| ingress.http.hosts | list | `[]` | List of hostnames to match when routing requests | -| ingress.http.https.enabled | bool | `true` | Flag to enable HTTPS | -| ingress.http.https.secretNames | object | `{}` | Map of hostname to TLS secret name | -| ingress.http.whitelist | string | `""` | Allowed client IP source ranges | -| javaOpts | string | `nil` | [JVM options](https://docs.oracle.com/cd/E22289_01/html/821-1274/configuring-the-default-jvm-and-java-arguments.html). For better performance, it is advised to set the min and max heap:
`-Xms2048m -Xmx2048m` | -| livenessProbe.enabled | bool | `true` | Flag to enabled the probe | -| livenessProbe.failureThreshold | int | `5` | Min consecutive failures for the probe to be considered failed | -| livenessProbe.initialDelaySeconds | int | `60` | Delay before the probe is initiated | -| livenessProbe.periodSeconds | int | `10` | How often to perform the probe | -| livenessProbe.successThreshold | int | `1` | Min consecutive success for the probe to be considered successful | -| livenessProbe.timeoutSeconds | int | `5` | When the probe times out | -| logLevel | string | `"WARN"` | Default log level, use either one of `DEBUG`, `INFO`, `WARN` or `ERROR` | -| logType | string | `"Console"` | Log format, either `JSON` or `Console` | -| nodeSelector | object | `{}` | Node labels for pod assignment | -| podAnnotations | object | `{}` | Annotations to be added to Feast Serving pods | -| podLabels | object | `{}` | Labels to be added to Feast Serving pods | -| readinessProbe.enabled | bool | `true` | Flag to enabled the probe | -| readinessProbe.failureThreshold | int | `5` | Min consecutive failures for the probe to be considered failed | -| readinessProbe.initialDelaySeconds | int | `15` | Delay before the probe is initiated | -| readinessProbe.periodSeconds | int | `10` | How often to perform the probe | -| readinessProbe.successThreshold | int | `1` | Min consecutive success for the probe to be considered successful | -| readinessProbe.timeoutSeconds | int | `10` | When the probe times out | -| replicaCount | int | `1` | Number of pods that will be created | -| resources | object | `{}` | CPU/memory [resource requests/limit](https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#resource-requests-and-limits-of-pod-and-container) | -| secrets | list | `[]` | List of Kubernetes secrets to be mounted. These secrets will be mounted on /etc/secrets/. | -| service.grpc.nodePort | string | `nil` | Port number that each cluster node will listen to | -| service.grpc.port | int | `6566` | Service port for GRPC requests | -| service.grpc.targetPort | int | `6566` | Container port serving GRPC requests | -| service.http.nodePort | string | `nil` | Port number that each cluster node will listen to | -| service.http.port | int | `80` | Service port for HTTP requests | -| service.http.targetPort | int | `8080` | Container port serving HTTP requests and Prometheus metrics | -| service.type | string | `"ClusterIP"` | Kubernetes service type | -| transformationService.host | string | `""` | | -| transformationService.port | int | `6566` | | +| ingress.http.auth.enabled | bool | `false` | Flag to enable auth | +| ingress.http.class | string | `"nginx"` | Which ingress controller to use | +| ingress.http.enabled | bool | `false` | Flag to create an ingress resource for the service | +| ingress.http.hosts | list | `[]` | List of hostnames to match when routing requests | +| ingress.http.https.enabled | bool | `true` | Flag to enable HTTPS | +| ingress.http.https.secretNames | object | `{}` | Map of hostname to TLS secret name | +| ingress.http.whitelist | string | `""` | Allowed client IP source ranges | +| javaOpts | string | `nil` | [JVM options](https://docs.oracle.com/cd/E22289_01/html/821-1274/configuring-the-default-jvm-and-java-arguments.html). For better performance, it is advised to set the min and max heap:
`-Xms2048m -Xmx2048m` | +| livenessProbe.enabled | bool | `true` | Flag to enabled the probe | +| livenessProbe.failureThreshold | int | `5` | Min consecutive failures for the probe to be considered failed | +| livenessProbe.initialDelaySeconds | int | `60` | Delay before the probe is initiated | +| livenessProbe.periodSeconds | int | `10` | How often to perform the probe | +| livenessProbe.successThreshold | int | `1` | Min consecutive success for the probe to be considered successful | +| livenessProbe.timeoutSeconds | int | `5` | When the probe times out | +| logLevel | string | `"WARN"` | Default log level, use either one of `DEBUG`, `INFO`, `WARN` or `ERROR` | +| logType | string | `"Console"` | Log format, either `JSON` or `Console` | +| nodeSelector | object | `{}` | Node labels for pod assignment | +| podAnnotations | object | `{}` | Annotations to be added to Feast Serving pods | +| podLabels | object | `{}` | Labels to be added to Feast Serving pods | +| readinessProbe.enabled | bool | `true` | Flag to enabled the probe | +| readinessProbe.failureThreshold | int | `5` | Min consecutive failures for the probe to be considered failed | +| readinessProbe.initialDelaySeconds | int | `15` | Delay before the probe is initiated | +| readinessProbe.periodSeconds | int | `10` | How often to perform the probe | +| readinessProbe.successThreshold | int | `1` | Min consecutive success for the probe to be considered successful | +| readinessProbe.timeoutSeconds | int | `10` | When the probe times out | +| replicaCount | int | `1` | Number of pods that will be created | +| resources | object | `{}` | CPU/memory [resource requests/limit](https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#resource-requests-and-limits-of-pod-and-container) | +| secrets | list | `[]` | List of Kubernetes secrets to be mounted. These secrets will be mounted on /etc/secrets/. | +| service.grpc.nodePort | string | `nil` | Port number that each cluster node will listen to | +| service.grpc.port | int | `6566` | Service port for GRPC requests | +| service.grpc.targetPort | int | `6566` | Container port serving GRPC requests | +| service.http.nodePort | string | `nil` | Port number that each cluster node will listen to | +| service.http.port | int | `80` | Service port for HTTP requests | +| service.http.targetPort | int | `8080` | Container port serving HTTP requests and Prometheus metrics | +| service.type | string | `"ClusterIP"` | Kubernetes service type | +| transformationService.host | string | `""` | | +| transformationService.port | int | `6566` | | ---------------------------------------------- -Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0) +Autogenerated from chart metadata using [helm-docs v1.11.0](https://github.com/norwoodj/helm-docs/releases/v1.11.0) diff --git a/infra/charts/feast/charts/transformation-service/README.md b/infra/charts/feast/charts/transformation-service/README.md index 63b9d44c481..2659b42d167 100644 --- a/infra/charts/feast/charts/transformation-service/README.md +++ b/infra/charts/feast/charts/transformation-service/README.md @@ -8,20 +8,21 @@ Transformation service: to compute on-demand features ## Values -| Key | Type | Default | Description | -|-----|------|--------------------------------------------|-------------| -| envOverrides | object | `{}` | Extra environment variables to set | -| image.pullPolicy | string | `"IfNotPresent"` | Image pull policy | +| Key | Type | Default | Description | +|-----|------|---------|-------------| +| envOverrides | object | `{}` | Extra environment variables to set | +| image.pullPolicy | string | `"IfNotPresent"` | Image pull policy | | image.repository | string | `"feastdev/feature-transformation-server"` | Docker image for Transformation Server repository | -| image.tag | string | `"0.22.4"` | Image tag | -| nodeSelector | object | `{}` | Node labels for pod assignment | -| podLabels | object | `{}` | Labels to be added to Feast Serving pods | -| replicaCount | int | `1` | Number of pods that will be created | -| resources | object | `{}` | CPU/memory [resource requests/limit](https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#resource-requests-and-limits-of-pod-and-container) | -| service.grpc.nodePort | string | `nil` | Port number that each cluster node will listen to | -| service.grpc.port | int | `6566` | Service port for GRPC requests | -| service.grpc.targetPort | int | `6566` | Container port serving GRPC requests | -| service.type | string | `"ClusterIP"` | Kubernetes service type | +| image.tag | string | `"0.22.4"` | Image tag | +| nodeSelector | object | `{}` | Node labels for pod assignment | +| podLabels | object | `{}` | Labels to be added to Feast Serving pods | +| replicaCount | int | `1` | Number of pods that will be created | +| resources | object | `{}` | CPU/memory [resource requests/limit](https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#resource-requests-and-limits-of-pod-and-container) | +| secrets | list | `[]` | List of Kubernetes secrets to be mounted. These secrets will be mounted on /etc/secrets/. | +| service.grpc.nodePort | string | `nil` | Port number that each cluster node will listen to | +| service.grpc.port | int | `6566` | Service port for GRPC requests | +| service.grpc.targetPort | int | `6566` | Container port serving GRPC requests | +| service.type | string | `"ClusterIP"` | Kubernetes service type | ---------------------------------------------- -Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0) +Autogenerated from chart metadata using [helm-docs v1.11.0](https://github.com/norwoodj/helm-docs/releases/v1.11.0) diff --git a/infra/scripts/helm/push-helm-charts.sh b/infra/scripts/helm/push-helm-charts.sh index 1c32ee985b8..338751c28b8 100755 --- a/infra/scripts/helm/push-helm-charts.sh +++ b/infra/scripts/helm/push-helm-charts.sh @@ -16,10 +16,8 @@ helm repo add feast-helm-chart-repo $bucket cd infra/charts helm package feast -helm package feast-python-server helm package feast-feature-server helm gcs push --public feast-${1}.tgz feast-helm-chart-repo --force -helm gcs push --public feast-python-server-${1}.tgz feast-helm-chart-repo --force helm gcs push --public feast-feature-server-${1}.tgz feast-helm-chart-repo --force rm -f ./*.tgz \ No newline at end of file diff --git a/infra/scripts/release/files_to_bump.txt b/infra/scripts/release/files_to_bump.txt index 37f53933260..6e10723c9ba 100644 --- a/infra/scripts/release/files_to_bump.txt +++ b/infra/scripts/release/files_to_bump.txt @@ -6,10 +6,9 @@ infra/charts/feast/charts/transformation-service/values.yaml 8 infra/charts/feast/charts/feature-server/Chart.yaml 4 5 infra/charts/feast/charts/feature-server/README.md 3 20 infra/charts/feast/charts/feature-server/values.yaml 8 -infra/charts/feast/README.md 11 58 59 -infra/charts/feast-python-server/Chart.yaml 5 -infra/charts/feast-python-server/README.md 3 +infra/charts/feast/README.md 11 68 69 infra/charts/feast-feature-server/Chart.yaml 5 infra/charts/feast-feature-server/README.md 3 +infra/charts/feast-feature-server/values.yaml 12 java/pom.xml 41 -ui/package.json 3 +ui/package.json 3 \ No newline at end of file From 31009b5c716ed3bc0871b2fd274235afe4db5480 Mon Sep 17 00:00:00 2001 From: feast-ci-bot Date: Fri, 28 Oct 2022 23:36:32 +0000 Subject: [PATCH 4/4] chore(release): release 0.22.5 ## [0.22.5](https://github.com/feast-dev/feast/compare/v0.22.4...v0.22.5) (2022-10-28) ### Bug Fixes * Fix numpy version specification ([#3241](https://github.com/feast-dev/feast/issues/3241)) ([298bdde](https://github.com/feast-dev/feast/commit/298bdde51f7cbb9c74d30e387a09e450bd74332c)) --- CHANGELOG.md | 7 +++++++ infra/charts/feast-feature-server/Chart.yaml | 2 +- infra/charts/feast-feature-server/README.md | 6 +++--- infra/charts/feast-feature-server/values.yaml | 2 +- infra/charts/feast/Chart.yaml | 2 +- infra/charts/feast/README.md | 6 +++--- infra/charts/feast/charts/feature-server/Chart.yaml | 4 ++-- infra/charts/feast/charts/feature-server/README.md | 4 ++-- infra/charts/feast/charts/feature-server/values.yaml | 2 +- .../charts/feast/charts/transformation-service/Chart.yaml | 4 ++-- infra/charts/feast/charts/transformation-service/README.md | 4 ++-- .../charts/feast/charts/transformation-service/values.yaml | 2 +- infra/charts/feast/requirements.yaml | 4 ++-- java/pom.xml | 2 +- ui/package.json | 2 +- 15 files changed, 30 insertions(+), 23 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d6e3e8159a3..0773781f264 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.22.5](https://github.com/feast-dev/feast/compare/v0.22.4...v0.22.5) (2022-10-28) + + +### Bug Fixes + +* Fix numpy version specification ([#3241](https://github.com/feast-dev/feast/issues/3241)) ([298bdde](https://github.com/feast-dev/feast/commit/298bdde51f7cbb9c74d30e387a09e450bd74332c)) + ## [0.22.4](https://github.com/feast-dev/feast/compare/v0.22.3...v0.22.4) (2022-08-15) diff --git a/infra/charts/feast-feature-server/Chart.yaml b/infra/charts/feast-feature-server/Chart.yaml index bac4c7c74e1..21c8f1fd6df 100644 --- a/infra/charts/feast-feature-server/Chart.yaml +++ b/infra/charts/feast-feature-server/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: feast-feature-server description: Feast Feature Server in Go or Python type: application -version: 0.22.4 +version: 0.22.5 keywords: - machine learning - big data diff --git a/infra/charts/feast-feature-server/README.md b/infra/charts/feast-feature-server/README.md index 5834812f733..75885be4987 100644 --- a/infra/charts/feast-feature-server/README.md +++ b/infra/charts/feast-feature-server/README.md @@ -1,6 +1,6 @@ # Feast Python / Go Feature Server Helm Charts -Current chart version is `0.22.4` +Current chart version is `0.22.5` ## Installation @@ -29,8 +29,8 @@ See [here](https://github.com/feast-dev/feast/tree/master/examples/python-helm-d | feature_store_yaml_base64 | string | `""` | [required] a base64 encoded version of feature_store.yaml | | fullnameOverride | string | `""` | | | image.pullPolicy | string | `"IfNotPresent"` | | -| image.repository | string | `""` | | -| image.tag | string | `""` | | +| image.repository | string | `"feastdev/feature-server"` | Docker image for Feature Server repository | +| image.tag | string | `"0.22.5"` | The Docker image tag (can be overwritten if custom feature server deps are needed for on demand transforms) | | imagePullSecrets | list | `[]` | | | livenessProbe.initialDelaySeconds | int | `30` | | | livenessProbe.periodSeconds | int | `30` | | diff --git a/infra/charts/feast-feature-server/values.yaml b/infra/charts/feast-feature-server/values.yaml index 96936681fbf..45f560e8915 100644 --- a/infra/charts/feast-feature-server/values.yaml +++ b/infra/charts/feast-feature-server/values.yaml @@ -9,7 +9,7 @@ image: repository: feastdev/feature-server pullPolicy: IfNotPresent # image.tag -- The Docker image tag (can be overwritten if custom feature server deps are needed for on demand transforms) - tag: 0.22.4 + tag: 0.22.5 imagePullSecrets: [] nameOverride: "" diff --git a/infra/charts/feast/Chart.yaml b/infra/charts/feast/Chart.yaml index 0869ab443ea..270ba98fa87 100644 --- a/infra/charts/feast/Chart.yaml +++ b/infra/charts/feast/Chart.yaml @@ -1,7 +1,7 @@ apiVersion: v1 description: Feature store for machine learning name: feast -version: 0.22.4 +version: 0.22.5 keywords: - machine learning - big data diff --git a/infra/charts/feast/README.md b/infra/charts/feast/README.md index 0a0923f827a..2c1f6abdffc 100644 --- a/infra/charts/feast/README.md +++ b/infra/charts/feast/README.md @@ -8,7 +8,7 @@ This repo contains Helm charts for Feast Java components that are being installe ## Chart: Feast -Feature store for machine learning Current chart version is `0.22.4` +Feature store for machine learning Current chart version is `0.22.5` ## Installation @@ -65,8 +65,8 @@ See [here](https://github.com/feast-dev/feast/tree/master/examples/java-demo) fo | Repository | Name | Version | |------------|------|---------| | https://charts.helm.sh/stable | redis | 10.5.6 | -| https://feast-helm-charts.storage.googleapis.com | feature-server(feature-server) | 0.22.4 | -| https://feast-helm-charts.storage.googleapis.com | transformation-service(transformation-service) | 0.22.4 | +| https://feast-helm-charts.storage.googleapis.com | feature-server(feature-server) | 0.22.5 | +| https://feast-helm-charts.storage.googleapis.com | transformation-service(transformation-service) | 0.22.5 | ## Values diff --git a/infra/charts/feast/charts/feature-server/Chart.yaml b/infra/charts/feast/charts/feature-server/Chart.yaml index f25472aecac..674768b3048 100644 --- a/infra/charts/feast/charts/feature-server/Chart.yaml +++ b/infra/charts/feast/charts/feature-server/Chart.yaml @@ -1,8 +1,8 @@ apiVersion: v1 description: "Feast Feature Server: Online feature serving service for Feast" name: feature-server -version: 0.22.4 -appVersion: v0.22.4 +version: 0.22.5 +appVersion: v0.22.5 keywords: - machine learning - big data diff --git a/infra/charts/feast/charts/feature-server/README.md b/infra/charts/feast/charts/feature-server/README.md index c95d5b2e6ef..accd74a9293 100644 --- a/infra/charts/feast/charts/feature-server/README.md +++ b/infra/charts/feast/charts/feature-server/README.md @@ -1,6 +1,6 @@ # feature-server -![Version: 0.22.4](https://img.shields.io/badge/Version-0.22.4-informational?style=flat-square) ![AppVersion: v0.22.4](https://img.shields.io/badge/AppVersion-v0.22.4-informational?style=flat-square) +![Version: 0.22.5](https://img.shields.io/badge/Version-0.22.5-informational?style=flat-square) ![AppVersion: v0.22.5](https://img.shields.io/badge/AppVersion-v0.22.5-informational?style=flat-square) Feast Feature Server: Online feature serving service for Feast @@ -17,7 +17,7 @@ Feast Feature Server: Online feature serving service for Feast | envOverrides | object | `{}` | Extra environment variables to set | | image.pullPolicy | string | `"IfNotPresent"` | Image pull policy | | image.repository | string | `"feastdev/feature-server-java"` | Docker image for Feature Server repository | -| image.tag | string | `"0.22.4"` | Image tag | +| image.tag | string | `"0.22.5"` | Image tag | | ingress.grpc.annotations | object | `{}` | Extra annotations for the ingress | | ingress.grpc.auth.enabled | bool | `false` | Flag to enable auth | | ingress.grpc.class | string | `"nginx"` | Which ingress controller to use | diff --git a/infra/charts/feast/charts/feature-server/values.yaml b/infra/charts/feast/charts/feature-server/values.yaml index b70f1fdda0b..33672811743 100644 --- a/infra/charts/feast/charts/feature-server/values.yaml +++ b/infra/charts/feast/charts/feature-server/values.yaml @@ -5,7 +5,7 @@ image: # image.repository -- Docker image for Feature Server repository repository: feastdev/feature-server-java # image.tag -- Image tag - tag: 0.22.4 + tag: 0.22.5 # image.pullPolicy -- Image pull policy pullPolicy: IfNotPresent diff --git a/infra/charts/feast/charts/transformation-service/Chart.yaml b/infra/charts/feast/charts/transformation-service/Chart.yaml index bd4cb9fbecd..87a87aeef00 100644 --- a/infra/charts/feast/charts/transformation-service/Chart.yaml +++ b/infra/charts/feast/charts/transformation-service/Chart.yaml @@ -1,8 +1,8 @@ apiVersion: v1 description: "Transformation service: to compute on-demand features" name: transformation-service -version: 0.22.4 -appVersion: v0.22.4 +version: 0.22.5 +appVersion: v0.22.5 keywords: - machine learning - big data diff --git a/infra/charts/feast/charts/transformation-service/README.md b/infra/charts/feast/charts/transformation-service/README.md index 2659b42d167..d08df2bcd82 100644 --- a/infra/charts/feast/charts/transformation-service/README.md +++ b/infra/charts/feast/charts/transformation-service/README.md @@ -1,6 +1,6 @@ # transformation-service -![Version: 0.22.4](https://img.shields.io/badge/Version-0.22.4-informational?style=flat-square) ![AppVersion: v0.22.4](https://img.shields.io/badge/AppVersion-v0.22.4-informational?style=flat-square) +![Version: 0.22.5](https://img.shields.io/badge/Version-0.22.5-informational?style=flat-square) ![AppVersion: v0.22.5](https://img.shields.io/badge/AppVersion-v0.22.5-informational?style=flat-square) Transformation service: to compute on-demand features @@ -13,7 +13,7 @@ Transformation service: to compute on-demand features | envOverrides | object | `{}` | Extra environment variables to set | | image.pullPolicy | string | `"IfNotPresent"` | Image pull policy | | image.repository | string | `"feastdev/feature-transformation-server"` | Docker image for Transformation Server repository | -| image.tag | string | `"0.22.4"` | Image tag | +| image.tag | string | `"0.22.5"` | Image tag | | nodeSelector | object | `{}` | Node labels for pod assignment | | podLabels | object | `{}` | Labels to be added to Feast Serving pods | | replicaCount | int | `1` | Number of pods that will be created | diff --git a/infra/charts/feast/charts/transformation-service/values.yaml b/infra/charts/feast/charts/transformation-service/values.yaml index 53d221ded74..6b132bd4ae4 100644 --- a/infra/charts/feast/charts/transformation-service/values.yaml +++ b/infra/charts/feast/charts/transformation-service/values.yaml @@ -5,7 +5,7 @@ image: # image.repository -- Docker image for Transformation Server repository repository: feastdev/feature-transformation-server # image.tag -- Image tag - tag: 0.22.4 + tag: 0.22.5 # image.pullPolicy -- Image pull policy pullPolicy: IfNotPresent diff --git a/infra/charts/feast/requirements.yaml b/infra/charts/feast/requirements.yaml index 4b3c4a01a61..8ba3dde4545 100644 --- a/infra/charts/feast/requirements.yaml +++ b/infra/charts/feast/requirements.yaml @@ -1,12 +1,12 @@ dependencies: - name: feature-server alias: feature-server - version: 0.22.4 + version: 0.22.5 condition: feature-server.enabled repository: https://feast-helm-charts.storage.googleapis.com - name: transformation-service alias: transformation-service - version: 0.22.4 + version: 0.22.5 condition: transformation-service.enabled repository: https://feast-helm-charts.storage.googleapis.com - name: redis diff --git a/java/pom.xml b/java/pom.xml index 1cb73c42ca0..c940e0e0195 100644 --- a/java/pom.xml +++ b/java/pom.xml @@ -38,7 +38,7 @@ - 0.22.4 + 0.22.5 https://github.com/feast-dev/feast UTF-8 diff --git a/ui/package.json b/ui/package.json index 2278f9043c6..737898bf581 100644 --- a/ui/package.json +++ b/ui/package.json @@ -1,6 +1,6 @@ { "name": "@feast-dev/feast-ui", - "version": "0.22.4", + "version": "0.22.5", "private": false, "files": [ "dist"