Yinan Li
0c2f973883
Added basic jsonschema validation for SparkApplication
2018-02-06 21:51:06 -08:00
Yinan Li
3bb2168a5d
Use the cache store instead of using the runningApp
2018-02-06 11:55:51 -08:00
Yinan Li
5887d27deb
Simplified the handling of pod state updates
...
Combined communicating driver and executor pod updates into a single channel.
2018-02-01 14:10:57 -08:00
Yinan Li
fd23d8443b
Do not wait for application to complete
2018-02-01 09:38:38 -08:00
Yinan Li
542a13854f
Delete the CRD definition when the operator is stopped
...
When the operator is stopped and started, the CRD definition stays the same. There is a problem with this: changes to the CRD definition won't take effect if the definition is not updated to the API server. Deleting the definition when the operator stops and recreating it when the operator starts effectively updates the definition.
2018-01-29 15:05:44 -08:00
Yinan Li
2520f0547e
Ran go fmt on code
2018-01-29 12:54:47 -08:00
Yinan Li
165428d795
Added a field for specifying the init-container image
2018-01-29 10:15:37 -08:00
Yinan Li
313a45e910
Added support for more Spark configuration properties
2018-01-29 10:00:37 -08:00
Yinan Li
c3b21ff95f
Added support for core limits, labels, and annotations
2018-01-26 17:03:07 -08:00
Yinan Li
3373b30e6d
Added support for uploading local dependencies to GCS
2018-01-25 10:23:08 -08:00
Yinan Li
b7d3401df5
Set application state based on driver pod phase
...
Unless submission fails, in which case the application state is set to "SUBMISSION_FAILED".
2018-01-23 21:51:42 -08:00
Yinan Li
7d3aa7a39e
Updated to support the single image
2018-01-23 10:41:43 -08:00
Yinan Li
fa9483358c
Fixed import order
2018-01-21 14:22:56 -08:00
Yinan Li
f2c15ee34f
Better handle crashes in the components
2018-01-19 14:40:25 -08:00
Yinan Li
d1f3b3a48e
Fixed a bug in adding configmap mounting annotations
2018-01-19 14:18:01 -08:00
Yinan Li
0eae0ee94b
Some refactoring to controller.go
2018-01-16 10:58:10 -08:00
Yinan Li
a1d8356b02
Switched to use a work queue in the crd controller
2018-01-16 10:36:20 -08:00
Yinan Li
321d37dc0d
Refactored the controller code
2018-01-15 22:06:12 -08:00
Yinan Li
8c16ca8c82
Use versioned pod client to list and watch pods
2018-01-14 21:26:54 -08:00
Yinan Li
e021f07993
Switched to use auto-generated clientset
2018-01-14 12:36:00 -08:00
Yinan Li
d36b30ceac
Simplified the way the UI service is named
2018-01-12 15:24:14 -08:00
Yinan Li
3dd2de685b
Support application restart with a configurable restart policy
2018-01-12 15:07:12 -08:00
Yinan Li
cd7df2b5f8
Added auto generated clientset, informers, and listers
2018-01-10 21:49:50 -08:00
Yinan Li
6d88b9bd75
Made the unit tests to use a fake event recorder
2018-01-10 13:22:04 -08:00
Yinan Li
ef75f05b5d
Added Kubernetes event recording for SparkApplications
2018-01-10 11:24:24 -08:00
Yinan Li
a2882f8a3b
Simplified names of some fields of SparkApplicationSpec
2018-01-08 15:49:53 -08:00
Yinan Li
76e5bff5fa
Do not use shared informer in the initializer and pod monitor
...
This is because we may move to using an admission webhook to replace the initializer in the future and also because the two are using different ListWatch anyway.
2018-01-08 14:19:15 -08:00
Yinan Li
28e4c710ef
Wait for caches to sync
2018-01-08 14:00:42 -08:00
Yinan Li
11edfadd57
Used shared pod informer in the initializer and spark pod monitor
2018-01-08 12:43:34 -08:00
Yinan Li
bd24ec6b48
Migrated to base off Spark 2.3
2018-01-03 16:20:25 -08:00
Yinan Li
03bffd6ca2
Fixed build
2018-01-03 15:01:30 -08:00
Yinan Li
552ad22601
Set submission time and completion time
2018-01-03 09:41:42 -08:00
Yinan Li
b8a58ab9c4
Refactored types.go
2018-01-03 09:41:29 -08:00
Yinan Li
7691e7a61f
Implement handling of update of SparkApplication
2018-01-03 09:41:16 -08:00
Yinan Li
14da4914d7
Added CONTRIBUTING.md and license headers
2017-12-18 11:31:49 -08:00
Yinan Li
4bf598a253
More unit tests and fixed the nodeport used for the driver UI service
2017-12-18 10:32:37 -08:00
Yinan Li
7900fb5793
Added more unit tests for the controller
2017-12-15 16:29:25 -08:00
Yinan Li
7339d7530f
Added a new field for supporting in-cluster client mode
2017-12-15 10:44:10 -08:00
Yinan Li
e27dd1d642
Initial unit tests for the crd controller
2017-12-06 21:29:08 -08:00
Yinan Li
febc11392b
Refactored some names to not with prefixes the same as package names
2017-12-06 10:46:54 -08:00
Yinan Li
9fd90f8d30
Separate Hadoop config properties out into a field of their own
2017-11-30 11:10:37 -08:00
Yinan Li
5b20544aaf
Moved structs not supposed to be exposed to be package private
2017-11-21 13:13:42 -08:00
Yinan Li
b89165a75b
Retry failed updates to the API server
2017-11-21 10:39:41 -08:00
Yinan Li
6ff5ccc9c2
Avoid updating SparkApplication when nothing gets changed
2017-11-20 21:42:27 -08:00
Yinan Li
0b6f97f619
Bug fixes around SparkApplication updating
2017-11-17 16:51:52 -08:00
Yinan Li
ce89ef98cd
Fixed a bug on use of files nad pyFiles
2017-11-17 10:46:34 -08:00
Yinan Li
4c28131091
Added missing code for mounting general ConfigMaps
2017-11-16 12:01:42 -08:00
Yinan Li
e29daee845
Code refactoring to make the naming consistent and clear
2017-11-16 11:12:03 -08:00
Yinan Li
3ba82a8682
Update application state based on the driver state
2017-11-15 13:32:02 -08:00
Yinan Li
5a5f90d386
Added fields for specifying driver/executor cores and memory
2017-11-13 11:50:19 -08:00
Yinan Li
73f55f6fe1
Set URL of the Spark web UI
2017-11-02 15:51:14 -07:00
Yinan Li
8e7ce966d3
Added a flag for number of submission runner threads
2017-11-02 11:45:18 -07:00
Yinan Li
b8f173b3ce
Delete the driver and its service when the crd is deleted
2017-11-02 11:33:06 -07:00
Yinan Li
3fc215c089
Close the newly added channel for driver state updates
2017-11-02 10:59:53 -07:00
Yinan Li
fe84083d03
Added reporting of driver state
2017-11-02 10:53:09 -07:00
Yinan Li
a6ef7a1662
Added executor state updating
2017-11-01 22:51:03 -07:00
Yinan Li
81bdaf7f24
Record application error message in SparkApplicationStatus
2017-11-01 12:14:46 -07:00
Yinan Li
a41b8273e3
Added application state reporting back to controller
2017-10-31 16:00:25 -07:00
Yinan Li
47477807f4
Restored creation of the UI service
2017-10-31 11:51:20 -07:00
Yinan Li
af1dcf16b4
Fixed and maked application submission work
2017-10-31 10:09:58 -07:00
Yinan Li
a9f10258d9
Removed unused code
...
And added app id label to driver/executor pods and ui service.
2017-10-05 10:28:48 -07:00
Yinan Li
20a09dab1a
Added more unit tests and dependency testify/assert
2017-10-05 09:31:26 -07:00
Yinan Li
30cdb078b9
Added a runner for running spark-submit commands
2017-10-04 14:21:05 -07:00
Yinan Li
d19d40727c
Use spark-base as the base image
2017-09-28 22:41:29 -07:00
Yinan Li
bf3a47925f
Upated the type definition to include driver and executor images
2017-09-25 10:11:19 -07:00
Yinan Li
286d5966ec
Make sure the UI service gets deleted when a SparkApplication is deleted
2017-09-22 12:05:23 -07:00
Yinan Li
d335b137dc
Completed the submission command construction
2017-09-22 11:54:25 -07:00
Yinan Li
2aed58a995
Fixed crd controller logging and added an example crd yaml
2017-09-22 10:29:36 -07:00
Yinan Li
619131f2a0
Added deepcopy code-gen and updated dependency versions
2017-09-20 08:54:51 -07:00
Yinan Li
55ffb8080f
Fixed the build of the crd controller
2017-09-15 15:04:05 -07:00
Yinan Li
93ac1c98f6
Fixed main.go and the use of stop channel
2017-08-31 12:08:37 -07:00
Yinan Li
b941255f3c
Added some more unit tests for the initializer
2017-08-29 22:16:29 -07:00
Yinan Li
1b01ed0fdd
Added more annotation definitions
2017-08-29 16:23:13 -07:00
Yinan Li
9fa0f2baad
More refactoring of types.go and pkg/controller
2017-08-28 15:32:15 -07:00
Yinan Li
4cf6191a8d
Added some more status fields for application and executor state
2017-08-25 16:15:44 -07:00
Yinan Li
ea16bd2636
Added code for creating a service for the Spark UI
2017-08-24 08:55:04 -07:00
Yinan Li
f315571870
Refactored the type definition
2017-08-22 08:54:53 -07:00
Yinan Li
d7fcf86a86
Added code for mounting configmaps in the initializer
2017-08-18 16:32:18 -07:00
Yinan Li
3692f32d48
Added doc.go for all packages
2017-08-17 09:07:59 -07:00
Yinan Li
c49e4559f2
Added code for creating ConfigMap for Spark and Hadoop conf dirs
2017-08-17 09:07:51 -07:00
Yinan Li
fc4bd05db5
Added initial implementation of API types, client, and controllers
2017-08-15 23:33:30 -07:00