Skip to content

Commit fe3c16a

Browse files
authored
Merge branch '0.3-dev' into 0.3-dev-serving-api-change
2 parents a1cf8ff + 5bca082 commit fe3c16a

37 files changed

Lines changed: 4220 additions & 3209 deletions

Makefile

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,6 @@
1414
# limitations under the License.
1515
#
1616

17-
VERSION_FILE = VERSION
18-
FEAST_VERSION = `cat $(VERSION_FILE)`
19-
2017
test:
2118
mvn test
2219

@@ -32,13 +29,13 @@ build-cli:
3229
$(MAKE) -C cli build-all
3330

3431
build-java:
35-
mvn clean verify -Drevision=$(FEAST_VERSION)
32+
mvn clean verify -Drevision=$(VERSION)
3633

3734
build-docker:
38-
docker build -t $(registry)/feast-core:$(version) -f docker/core/Dockerfile .
39-
docker build -t $(registry)/feast-serving:$(version) -f docker/serving/Dockerfile .
35+
docker build -t $(REGISTRY)/feast-core:$(VERSION) -f infra/docker/core/Dockerfile .
36+
docker build -t $(REGISTRY)/feast-serving:$(VERSION) -f infra/docker/serving/Dockerfile .
4037

4138
build-push-docker:
42-
@$(MAKE) build-docker registry=$(registry) version=$(version)
43-
docker push $(registry)/feast-core:$(version)
44-
docker push $(registry)/feast-serving:$(version)
39+
@$(MAKE) build-docker registry=$(REGISTRY) version=$(VERSION)
40+
docker push $(REGISTRY)/feast-core:$(VERSION)
41+
docker push $(REGISTRY)/feast-serving:$(VERSION)
-18.7 KB
Binary file not shown.

infra/charts/feast/requirements.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,5 @@ dependencies:
99
condition: redis.provision
1010
- name: kafka
1111
version: 0.17.0
12-
repository: "@stable"
13-
condition: kafka.provision
12+
repository: "@incubator"
13+
condition: kafka.provision

infra/charts/feast/templates/core-config.yaml

Lines changed: 49 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,52 @@ metadata:
1111
heritage: {{ .Release.Service }}
1212
data:
1313
config: |
14-
{{ toYaml core.config | indent 4 }}
14+
15+
# Please see gojek/feast/core/src/main/resources/application.yml for an explanation of config
16+
17+
grpc:
18+
port: {{ .Values.core.service.grpc.port }}
19+
enable-reflection: {{ .Values.core.enableReflection }}
20+
21+
feast:
22+
store:
23+
serving-type: {{ .Values.core.store.serving.type }}
24+
serving-options:
25+
host: {{ .Values.core.store.serving.options.redis.host }}
26+
port: {{ .Values.core.store.serving.options.redis.port }}
27+
subscriptions: ".*:>0"
28+
warehouse-type: ""
29+
jobs:
30+
runner: {{ .Values.core.jobs.runner }}
31+
options: {{ .Values.core.jobs.options }}
32+
stream:
33+
# Feature stream type. Only kafka is supported.
34+
type: {{ .Values.stream.type }}
35+
# Feature stream options.
36+
options:
37+
bootstrapServers: {{ .Values.stream.options.bootstrapServers }}
38+
replicationFactor: {{ .Values.stream.options.replicationFactor }}
39+
partitions: {{ .Values.stream.options.partitions }}
40+
statsd:
41+
host: {{ .Values.statsd.host }}
42+
port: {{ .Values.statsd.port }}
43+
44+
spring:
45+
jpa:
46+
properties.hibernate.format_sql: true
47+
hibernate.naming.physical-strategy=org.hibernate.boot.model.naming: PhysicalNamingStrategyStandardImpl
48+
hibernate.ddl-auto: update
49+
datasource:
50+
url: jdbc:postgresql://{{ .Values.core.postgres.host }}:{{ .Values.core.postgres.port }}/{{ .Values.core.postgres.database }}
51+
username: {{ .Values.core.postgres.username }}
52+
password: {{ .Values.core.postgres.password }}
53+
54+
management:
55+
metrics:
56+
export:
57+
simple:
58+
enabled: false
59+
statsd:
60+
enabled: true
61+
host: {{ .Values.statsd.host }}
62+
port: {{ .Values.statsd.port }}

infra/charts/feast/templates/core-deploy.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,11 @@ spec:
6161
requests:
6262
cpu: {{ .Values.core.resources.requests.cpu }}
6363
memory: {{ .Values.core.resources.requests.memory }}
64+
{{- if .Values.core.resources.limits }}
6465
limits:
6566
cpu: {{ .Values.core.resources.limits.cpu }}
6667
memory: {{ .Values.core.resources.limits.memory }}
68+
{{- end }}
6769
{{- if .Values.serviceAccount }}
6870
volumeMounts:
6971
- name: "{{ .Values.serviceAccount.name }}"

infra/charts/feast/templates/serving-deploy.yaml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -62,22 +62,24 @@ spec:
6262
requests:
6363
cpu: "{{ .Values.serving.resources.requests.cpu }}"
6464
memory: "{{ .Values.serving.resources.requests.memory }}"
65+
{{- if .Values.serving.resources.limits }}
6566
limits:
6667
cpu: "{{ .Values.serving.resources.limits.cpu }}"
6768
memory: "{{ .Values.serving.resources.limits.memory }}"
69+
{{- end }}
6870
env:
6971
- name: FEAST_SERVING_HTTP_PORT
7072
value: "{{ .Values.serving.service.http.targetPort }}"
7173
- name: FEAST_SERVING_GRPC_PORT
7274
value: "{{ .Values.serving.service.grpc.targetPort }}"
7375
- name: FEAST_CORE_HOST
74-
value: "{{ printf "%s.%s.svc.cluster.local" (include "feast.core.name" .) .Release.Namespace }}"
76+
value: '{{ printf "%s.%s.svc.cluster.local" (include "feast.core.name" .) .Release.Namespace }}'
7577
- name: FEAST_CORE_GRPC_PORT
7678
value: "{{ .Values.core.service.grpc.port }}"
7779
- name: STORE_SERVING_TYPE
78-
value: {{ .Values.store.serving.type }}
80+
value: '{{ .Values.core.store.serving.type }}'
7981
- name: STORE_SERVING_OPTIONS
80-
value: {{ .Values.store.serving.options | toJson }}
82+
value: '{{ .Values.core.store.serving.options | toJson }}'
8183
- name: FEAST_MAX_NB_THREAD
8284
value: "{{ .Values.serving.config.maxNumberOfThread }}"
8385
- name: FEAST_MAX_ENTITY_PER_BATCH

infra/charts/feast/values.yaml

Lines changed: 32 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,9 @@ core:
66
pullPolicy: IfNotPresent
77
registry: gcr.io/kf-feast
88
repository: feast-core
9-
tag: "0.1.1"
9+
tag: "0.3.0"
1010
replicaCount: 1
11-
resources:
12-
limits:
13-
cpu: 4
14-
memory: 6G
11+
resources:
1512
requests:
1613
cpu: 1
1714
memory: 2G
@@ -29,52 +26,59 @@ core:
2926
# loadBalancerSourceRanges sets the accepted IP ranges for firewall ingress rule
3027
# this firewall rule is usually created when the service type is "LoadBalancer"
3128
# loadBalancerSourceRanges: ["10.0.0.0/8"]
29+
postgres:
30+
host: 127.0.0.1
31+
port: 5432
32+
database: postgres
33+
username: postgres
34+
password: password
3235
jobs:
33-
workspace: "/tmp"
3436
# runner specifies the Beam pipeline runner, use either DirectRunner (for development) or DataflowRunner (for production)
3537
runner: DirectRunner
3638
options: "{}"
3739
monitoring:
3840
period: 5000
3941
initialDelay: 60000
40-
trainingDatasetPrefix: "fs"
41-
# logType: JSON
4242
livenessProbe:
4343
initialDelaySeconds: 120
4444
failureThreshold: 3
4545
readinessProbe:
4646
initialDelaySeconds: 60
4747
failureThreshold: 1
48+
enableReflection: true
49+
store:
50+
errors:
51+
type: "STDOUT"
52+
warehouse:
53+
type: "BIGQUERY"
54+
serving:
55+
type: "REDIS"
56+
options:
57+
redis:
58+
host: localhost
59+
port: 6379
4860

49-
# dataflow configuration is required when core.jobs.runner=DataflowRunner
50-
# dataflow:
51-
# projectID: ${GCP_PROJECT}
52-
# location: ${GCP_REGION}
61+
# dataflow configuration is required when core.jobs.runner=DataflowRunner
62+
# dataflow:
63+
# projectID: ${GCP_PROJECT}
64+
# location: ${GCP_REGION}
5365

5466
###### Feature stream ######
5567
stream:
5668
type: kafka
57-
options: '{"bootstrapServers":""}'
69+
options:
70+
bootstrapServers: ""
71+
replicationFactor: 1
72+
partitions: 1
5873

5974
kafka:
6075
provision: false
6176

62-
###### Stores/Sinks ######
63-
store:
64-
errors:
65-
type: "STDOUT"
66-
warehouse:
67-
type: "BIGQUERY"
68-
# options: '{"project": "gcp-project-id", "dataset": "feast"}'
69-
serving:
70-
type: "REDIS"
71-
# options: '{"host": "redis-master", "port": "6379"}'
72-
73-
postgresql:
77+
postgresql:
7478
provision: true
7579
persistence:
7680
enabled: true
77-
81+
7882
redis:
7983
provision: false
8084
cluster:
@@ -93,12 +97,9 @@ serving:
9397
pullPolicy: IfNotPresent
9498
registry: gcr.io/kf-feast
9599
repository: feast-serving
96-
tag: "0.1.1"
100+
tag: "0.3.0"
97101
replicaCount: 1
98-
resources:
99-
limits:
100-
cpu: 2
101-
memory: 4G
102+
resources:
102103
requests:
103104
cpu: 1
104105
memory: 1G
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,20 @@
11
FROM maven:3.6-jdk-8-slim as builder
22
ARG REVISION=dev
3+
4+
WORKDIR /build
5+
COPY pom.xml .
6+
COPY core/pom.xml core/pom.xml
7+
COPY ingestion/pom.xml ingestion/pom.xml
8+
COPY serving/pom.xml serving/pom.xml
9+
10+
RUN mvn dependency:go-offline -B
11+
312
COPY . /build
413
WORKDIR /build
5-
ENV MAVEN_OPTS="-Dmaven.repo.local=/build/.m2/repository -DdependencyLocationsEnabled=false"
614
RUN mvn --projects core,ingestion -Drevision=$REVISION -DskipTests=true --batch-mode package
715

816
FROM openjdk:8-jre as production
917
ARG REVISION=dev
1018
COPY --from=builder /build/core/target/feast-core-$REVISION.jar /usr/share/feast/feast-core.jar
11-
COPY --from=builder /build/infra/Dockerfiles/core/bootstrap.sh /usr/share/feast/bootstrap.sh
19+
COPY --from=builder /build/infra/docker/core/bootstrap.sh /usr/share/feast/bootstrap.sh
1220
ENTRYPOINT ["/usr/share/feast/boostrap.sh"]
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
CONFIG_PATH_FLAG=""
44
if [ -z "$CONFIG_PATH" ]; then
5-
CONFIG_PATH_FLAG="-Dspring.config.additional-location=${CONFIG_PATH}"
5+
CONFIG_PATH_FLAG="-Dspring.config.location=${CONFIG_PATH}"
66
fi
77

88
java $CONFIG_PATH_FLAG \

0 commit comments

Comments
 (0)