[gcr.io/kubeflow-images-staging/tf_operatorsha256:1a3d1a2ee90f0108fff3e29023228fc686afbfa311752e8b3bf71859d488b435](https://console.cloud.google.com/gcr/images/kubeflow-images-staging/GLOBAL/tf_operatorsha256:1a3d1a2ee90f0108fff3e29023228fc686afbfa311752e8b3bf71859d488b435/details/info)
[v0.1.0](https://github.com/kubeflow/tf-operator/tree/v0.1.0) (2018-03-29)
**Closed issues:**
- \[v1alpha2\] Implement condition update [\502](https://github.com/kubeflow/tf-operator/issues/502)
- E2E tests timing out; job appears to remain in running state even though job is done. [\500](https://github.com/kubeflow/tf-operator/issues/500)
- \[v1alpha2\] TF\_CONFIG should be configurable by user [\499](https://github.com/kubeflow/tf-operator/issues/499)
- \[test\] All log is 404 in argo [\496](https://github.com/kubeflow/tf-operator/issues/496)
- Presubmit shows succeeded, but some test actually failed. [\479](https://github.com/kubeflow/tf-operator/issues/479)
- Waiting pods start too long [\461](https://github.com/kubeflow/tf-operator/issues/461)
- \[test\] Add unit test for pkg/controller [\455](https://github.com/kubeflow/tf-operator/issues/455)
- Create a suitable OWNERS file in /dashboard [\443](https://github.com/kubeflow/tf-operator/issues/443)
- Tide is misconfigured for this repository. [\433](https://github.com/kubeflow/tf-operator/issues/433)
- CI failed to setup the cluster [\420](https://github.com/kubeflow/tf-operator/issues/420)
- \[docs\] Add dashboard readme [\411](https://github.com/kubeflow/tf-operator/issues/411)
- Make coverall results advisory and not report as failure [\406](https://github.com/kubeflow/tf-operator/issues/406)
- Presubmits failing due to lint [\404](https://github.com/kubeflow/tf-operator/issues/404)
- \[enhancement\] Fix go vet errors which not caught by the compilers [\395](https://github.com/kubeflow/tf-operator/issues/395)
- User facing website for Kubeflow that details how to choose a stack [\371](https://github.com/kubeflow/tf-operator/issues/371)
- \[discussion\] How to set clusterspec [\369](https://github.com/kubeflow/tf-operator/issues/369)
- \[enhancement\] Rename the cmd/tf\_operator to cmd/tf-operator [\363](https://github.com/kubeflow/tf-operator/issues/363)
- Local releaser fails due to version\_tag [\360](https://github.com/kubeflow/tf-operator/issues/360)
- Helm test failure not reported to gubernator [\355](https://github.com/kubeflow/tf-operator/issues/355)
- \[discussion\] Whether to create CRD in helm charts [\353](https://github.com/kubeflow/tf-operator/issues/353)
- Should resourcelock be in the same namespace as controller? [\352](https://github.com/kubeflow/tf-operator/issues/352)
- Helm test tf-job does not pass validation [\351](https://github.com/kubeflow/tf-operator/issues/351)
- Move tensorflow/k8s to kubeflow/tf-operator [\350](https://github.com/kubeflow/tf-operator/issues/350)
- Get rid of TensorBoard replica [\347](https://github.com/kubeflow/tf-operator/issues/347)
- Performance Modeling and Evaluation of Distributed Deep Learning Frameworks on GPUs [\346](https://github.com/kubeflow/tf-operator/issues/346)
- Deprecate the ENV MY\_POD\_NAMESPACE and MY\_POD\_NAME [\341](https://github.com/kubeflow/tf-operator/issues/341)
- \[feature\] Does tfJob support setting different label/envVar for each worker\(replicas \>1\)? [\340](https://github.com/kubeflow/tf-operator/issues/340)
- \[Discussion\] Time to start tagging releases for the TF operator? [\339](https://github.com/kubeflow/tf-operator/issues/339)
- \[discussion\] Should group name be tensorflow.org or kubeflow.io or kubeflow.org? [\337](https://github.com/kubeflow/tf-operator/issues/337)
- dashboard silient error during calling non-existent tfjob [\335](https://github.com/kubeflow/tf-operator/issues/335)
- in dashboard, silent error when nonexistent namespace is specified [\334](https://github.com/kubeflow/tf-operator/issues/334)
- Deprecate the IsDefaultPS field [\329](https://github.com/kubeflow/tf-operator/issues/329)
- \[Convention\] Replace Tf with TF in CRD [\328](https://github.com/kubeflow/tf-operator/issues/328)
- Standardise labels for issues and PRs [\326](https://github.com/kubeflow/tf-operator/issues/326)
- Manage Pods directly instead of using Job controllers [\325](https://github.com/kubeflow/tf-operator/issues/325)
- TfJobs dashboard not showing jobs [\324](https://github.com/kubeflow/tf-operator/issues/324)
- TfJobs dashboard doesn't work with K8s API server proxy or envoy proxy [\323](https://github.com/kubeflow/tf-operator/issues/323)
- Recreating a failed/successful job with same name doesn't work [\322](https://github.com/kubeflow/tf-operator/issues/322)
- Releaser incorrectly tags images as "dirty" [\321](https://github.com/kubeflow/tf-operator/issues/321)
- Reenable the releaser [\320](https://github.com/kubeflow/tf-operator/issues/320)
- E2E tests are not isolated [\318](https://github.com/kubeflow/tf-operator/issues/318)
- Need to mark prow job as failed if any tests fail [\315](https://github.com/kubeflow/tf-operator/issues/315)
- Remove outdated branch wbuchwalter-patch-1 [\311](https://github.com/kubeflow/tf-operator/issues/311)
- E2E test delete and recreate job with same name [\310](https://github.com/kubeflow/tf-operator/issues/310)
- TrainingJob.reconcile not called periodically [\309](https://github.com/kubeflow/tf-operator/issues/309)
- rename master to chief [\306](https://github.com/kubeflow/tf-operator/issues/306)
- Assign resource quota for TensorBoard [\304](https://github.com/kubeflow/tf-operator/issues/304)
- Jobs evicted for lack of memory, potentially add resource field to tf-job prototype [\301](https://github.com/kubeflow/tf-operator/issues/301)
- \[Discussion\] Operators vs. controller pattern [\300](https://github.com/kubeflow/tf-operator/issues/300)
- \[bug\] Add a default pod template for PS [\297](https://github.com/kubeflow/tf-operator/issues/297)
- Bunch of pylint error messages [\294](https://github.com/kubeflow/tf-operator/issues/294)
- Fix Head [\293](https://github.com/kubeflow/tf-operator/issues/293)
- Operator deployment fails post-v20180108-190394d [\292](https://github.com/kubeflow/tf-operator/issues/292)
- Promote last known good release [\290](https://github.com/kubeflow/tf-operator/issues/290)
- \[bug\] metadata.ownerReferences.apiVersion is not set [\288](https://github.com/kubeflow/tf-operator/issues/288)
- fail to run example job. invalid job spec: tfReplicaSpec.TfPort can''t be nil [\284](https://github.com/kubeflow/tf-operator/issues/284)
- \[bug\] Build log 404 in https://prow.k8s.io/?repo=tensorflow%2Fk8s [\#282](https://github.com/kubeflow/tf-operator/issues/282)
- \[feature\] Seperate the CRD and controller [\281](https://github.com/kubeflow/tf-operator/issues/281)
- Gaps in test coverage [\280](https://github.com/kubeflow/tf-operator/issues/280)
- Regression in flag name: controller-config-file [\279](https://github.com/kubeflow/tf-operator/issues/279)
- \[bug\] glog before flag.Parse\(\) [\275](https://github.com/kubeflow/tf-operator/issues/275)
- build new code to new image and find some problem [\274](https://github.com/kubeflow/tf-operator/issues/274)
- Fix the releaser so we can build new images [\270](https://github.com/kubeflow/tf-operator/issues/270)
- deploy.py gives gcloud api error '... Version "1.8.1-gke.1" is invalid.' [\268](https://github.com/kubeflow/tf-operator/issues/268)
- Pods terminated without waiting [\267](https://github.com/kubeflow/tf-operator/issues/267)
- Attach appropriate header \(copyright\) to go files [\266](https://github.com/kubeflow/tf-operator/issues/266)
- suppose i've install the tfjob in my k8s cluster [\265](https://github.com/kubeflow/tf-operator/issues/265)
- what's the folder pkg for? [\264](https://github.com/kubeflow/tf-operator/issues/264)
- Build failing because of lint issues [\256](https://github.com/kubeflow/tf-operator/issues/256)
- what's the main change between version 0.2 and version 0.3? [\247](https://github.com/kubeflow/tf-operator/issues/247)
- SetupCluster failures unexpected keyword argument 'client\_configuration' [\242](https://github.com/kubeflow/tf-operator/issues/242)
- GPU test marked as succeeded but airflow step is failing [\240](https://github.com/kubeflow/tf-operator/issues/240)
- Use Kubeflow & ksonnet to install TfJob [\239](https://github.com/kubeflow/tf-operator/issues/239)
- tf\_smoke.py distributed computing doesn't work on minikube [\238](https://github.com/kubeflow/tf-operator/issues/238)
- example-job can not work in private k8s cluster [\233](https://github.com/kubeflow/tf-operator/issues/233)
- Test failures aren't properly reported in Gubernator [\229](https://github.com/kubeflow/tf-operator/issues/229)
- \[CRD\] Request for input and output dirs in TFJobSpec [\224](https://github.com/kubeflow/tf-operator/issues/224)
- TfJob should be marked as failed if setup fails [\218](https://github.com/kubeflow/tf-operator/issues/218)
- panic: runtime error: invalid memory address or nil pointer dereference can not run in k8s 1.8.5 [\212](https://github.com/kubeflow/tf-operator/issues/212)
- Rethink the TFJob CRD [\209](https://github.com/kubeflow/tf-operator/issues/209)
- ksonnet configs for deploying the TfJob CRD & Controller [\208](https://github.com/kubeflow/tf-operator/issues/208)
- Make default TfImage configurable by users [\207](https://github.com/kubeflow/tf-operator/issues/207)
- refactor the TfJob to use Informer and Controller [\206](https://github.com/kubeflow/tf-operator/issues/206)
- Use Argo workflow engine for CI/CD or releases [\205](https://github.com/kubeflow/tf-operator/issues/205)
- Potential issue with Tensorboard / value of simple best-practices example with tboard [\202](https://github.com/kubeflow/tf-operator/issues/202)
- Investigate using buildah to build our images [\201](https://github.com/kubeflow/tf-operator/issues/201)
- E2E tests pre & postsubmits are failing [\196](https://github.com/kubeflow/tf-operator/issues/196)
- Publishing a client to pypi [\193](https://github.com/kubeflow/tf-operator/issues/193)
- Don't require a master or chief [\192](https://github.com/kubeflow/tf-operator/issues/192)
- Make cloning the repo and building the artifacts separate commands in py/release.py [\189](https://github.com/kubeflow/tf-operator/issues/189)
- Handle the case where grpcServerFilePath is the empty string [\188](https://github.com/kubeflow/tf-operator/issues/188)
- Make Airflow logs accessible [\185](https://github.com/kubeflow/tf-operator/issues/185)
- Complement docs for Python 3rd party dependencies [\181](https://github.com/kubeflow/tf-operator/issues/181)
- Helm Test fails because grpcServerFilePath is the empty string [\179](https://github.com/kubeflow/tf-operator/issues/179)
- Helm should only set --controller\_config\_file conditionally [\175](https://github.com/kubeflow/tf-operator/issues/175)
- Troubleshooting Guide: no matches for tensorflow.org/, Kind=TfJob [\174](https://github.com/kubeflow/tf-operator/issues/174)
- no matches for tensorflow.org/, Kind=TfJob [\173](https://github.com/kubeflow/tf-operator/issues/173)
- Failed to build TFOperator [\171](https://github.com/kubeflow/tf-operator/issues/171)
- E2E test for GPUs [\164](https://github.com/kubeflow/tf-operator/issues/164)
- TfJob doesn't work on minikube [\160](https://github.com/kubeflow/tf-operator/issues/160)
- Deleted jobs re-starting [\156](https://github.com/kubeflow/tf-operator/issues/156)
- Use coveralls.io to report and check code coverage [\155](https://github.com/kubeflow/tf-operator/issues/155)
- Clarify scope of tensorflow/k8s [\150](https://github.com/kubeflow/tf-operator/issues/150)
- After init helm, install chart failed [\149](https://github.com/kubeflow/tf-operator/issues/149)
- Helm test; insufficient permissions on RBAC clusters [\135](https://github.com/kubeflow/tf-operator/issues/135)
- Need to trim trailing slash of host string in TfJobRestClient.Watch\(\) [\130](https://github.com/kubeflow/tf-operator/issues/130)
- results of lint test aren't reported in junit file used by gubernator [\126](https://github.com/kubeflow/tf-operator/issues/126)
- Collaborators need to be K8s members to trigger tests [\122](https://github.com/kubeflow/tf-operator/issues/122)
- Extend Test Infrastructure to run multiple E2E tests in parallel [\120](https://github.com/kubeflow/tf-operator/issues/120)
- initResource\(\) failed; findAllTfJobs returned error: [\118](https://github.com/kubeflow/tf-operator/issues/118)
- Latest tag on gcr.io is not up to date [\116](https://github.com/kubeflow/tf-operator/issues/116)
- duplicate [\115](https://github.com/kubeflow/tf-operator/issues/115)
- postsubmit results aren't showing up in testrgrid [\113](https://github.com/kubeflow/tf-operator/issues/113)
- TensorBoard replica set not deleted when job deleted. [\107](https://github.com/kubeflow/tf-operator/issues/107)
- helm permission issue on 1.8.1 [\106](https://github.com/kubeflow/tf-operator/issues/106)
- Run python unittests as part of pre/post/periodic tests [\101](https://github.com/kubeflow/tf-operator/issues/101)
- E2E tests are failing [\96](https://github.com/kubeflow/tf-operator/issues/96)
- E2E Test log should capture output from helm-test [\95](https://github.com/kubeflow/tf-operator/issues/95)
- Rename TfJob kind to remove mlkube.io [\89](https://github.com/kubeflow/tf-operator/issues/89)
- Setup travis for tensorflow/k8s [\88](https://github.com/kubeflow/tf-operator/issues/88)
- Update repo to use its new location tensorflow/k8s [\86](https://github.com/kubeflow/tf-operator/issues/86)
- mlkube.io -\> tensorflow/k8s [\85](https://github.com/kubeflow/tf-operator/issues/85)
- Update prow to use repo tensorflow/k8s [\84](https://github.com/kubeflow/tf-operator/issues/84)
- periodic test is failing [\83](https://github.com/kubeflow/tf-operator/issues/83)
- runner.py needs to create build-log.txt with stdout/stderr of test [\82](https://github.com/kubeflow/tf-operator/issues/82)
- E2E tests leaking GKE clusters [\80](https://github.com/kubeflow/tf-operator/issues/80)
- No results show up if you click on mlkube-build-periodic [\76](https://github.com/kubeflow/tf-operator/issues/76)
- No results show up in prow test grid for presubmit jobs [\75](https://github.com/kubeflow/tf-operator/issues/75)
- Include TfJob name in labels [\72](https://github.com/kubeflow/tf-operator/issues/72)
- Simplify/Clarify Accelerators config [\71](https://github.com/kubeflow/tf-operator/issues/71)
- Clean up examples; don't require cloning the repo [\68](https://github.com/kubeflow/tf-operator/issues/68)
- How to create TF Jobs from the user side? [\67](https://github.com/kubeflow/tf-operator/issues/67)
- Change version from beta -\> alpha [\65](https://github.com/kubeflow/tf-operator/issues/65)
- API Review [\64](https://github.com/kubeflow/tf-operator/issues/64)
- Setup release process for CRD [\63](https://github.com/kubeflow/tf-operator/issues/63)
- Post submit jobs don't correctly upload artifacts to GCS [\62](https://github.com/kubeflow/tf-operator/issues/62)
- presubmit test\(bootstrap.py\) doesn't properly check out PRs [\59](https://github.com/kubeflow/tf-operator/issues/59)
- E2E Test for default PS server [\58](https://github.com/kubeflow/tf-operator/issues/58)
- UI / Kubernetes Dashboard Integration [\57](https://github.com/kubeflow/tf-operator/issues/57)
- E2E test for GPUs [\54](https://github.com/kubeflow/tf-operator/issues/54)
- Integrate with Prow for Continuous Testing [\46](https://github.com/kubeflow/tf-operator/issues/46)
- Consider how we manage replicas \(stateful sets, managing pods directly\) [\45](https://github.com/kubeflow/tf-operator/issues/45)
- Use K8s Garbage Collection [\42](https://github.com/kubeflow/tf-operator/issues/42)
- func c.findAllTfJobs\(\) in controller.go will never reach [\41](https://github.com/kubeflow/tf-operator/issues/41)
- Rename project [\34](https://github.com/kubeflow/tf-operator/issues/34)
- Structured \(Json\) logging for Tf Processes [\32](https://github.com/kubeflow/tf-operator/issues/32)
- Permanent errors don't cause job failure [\28](https://github.com/kubeflow/tf-operator/issues/28)
- If handling Add event fails, TfJob should be marked as failed with appropriate error [\26](https://github.com/kubeflow/tf-operator/issues/26)
- Structured Logging For the operator [\24](https://github.com/kubeflow/tf-operator/issues/24)
- Operator Log Spam; replicas.go:287\] No container named: tensorflow found for pod; assuming POD is running [\23](https://github.com/kubeflow/tf-operator/issues/23)
- Provide a default value for TfPort, replicas, and tfReplicaType [\22](https://github.com/kubeflow/tf-operator/issues/22)
- Setup continuous build of containers [\19](https://github.com/kubeflow/tf-operator/issues/19)
- Should this be converted to a Custom Resource Definition \(CRD\) in anticipation of 1.7 [\17](https://github.com/kubeflow/tf-operator/issues/17)
- Run TensorFlow server for parameter servers by default [\16](https://github.com/kubeflow/tf-operator/issues/16)
- TensorBoard Integration [\13](https://github.com/kubeflow/tf-operator/issues/13)
- Dependency management [\7](https://github.com/kubeflow/tf-operator/issues/7)
- Better GPU support [\6](https://github.com/kubeflow/tf-operator/issues/6)
- TfJobRestClient.Create doesn't set kind appropriately [\5](https://github.com/kubeflow/tf-operator/issues/5)
- Add a creationTimestamp [\4](https://github.com/kubeflow/tf-operator/issues/4)
**Merged pull requests:**
- Fix outdated information about GPUs in README [\513](https://github.com/kubeflow/tf-operator/pull/513) ([mindprince](https://github.com/mindprince))
- Don't leave pods running when a job completes. [\512](https://github.com/kubeflow/tf-operator/pull/512) ([jlewi](https://github.com/jlewi))
- Check running status more gracefully [\507](https://github.com/kubeflow/tf-operator/pull/507) ([ScorpioCPH](https://github.com/ScorpioCPH))
- test: Add test cases for condition [\506](https://github.com/kubeflow/tf-operator/pull/506) ([gaocegege](https://github.com/gaocegege))
- test: Fix failed case because of update status [\505](https://github.com/kubeflow/tf-operator/pull/505) ([gaocegege](https://github.com/gaocegege))
- Add condition logic code [\504](https://github.com/kubeflow/tf-operator/pull/504) ([ScorpioCPH](https://github.com/ScorpioCPH))
- Fix bug with jobs not being marked as completed. [\501](https://github.com/kubeflow/tf-operator/pull/501) ([jlewi](https://github.com/jlewi))
- release: Fix style [\498](https://github.com/kubeflow/tf-operator/pull/498) ([gaocegege](https://github.com/gaocegege))
- pkg: Fix the code changed in \486 [\497](https://github.com/kubeflow/tf-operator/pull/497) ([gaocegege](https://github.com/gaocegege))
- Set JSONLogFormat to false by default [\495](https://github.com/kubeflow/tf-operator/pull/495) ([ScorpioCPH](https://github.com/ScorpioCPH))
- Fix env append issue [\494](https://github.com/kubeflow/tf-operator/pull/494) ([ScorpioCPH](https://github.com/ScorpioCPH))
- Add dist-mnist for e2e test [\493](https://github.com/kubeflow/tf-operator/pull/493) ([ScorpioCPH](https://github.com/ScorpioCPH))
- Set restart policy [\491](https://github.com/kubeflow/tf-operator/pull/491) ([ScorpioCPH](https://github.com/ScorpioCPH))
- test: Add test cases [\488](https://github.com/kubeflow/tf-operator/pull/488) ([gaocegege](https://github.com/gaocegege))
- Add sleep and random exit image for e2e test [\487](https://github.com/kubeflow/tf-operator/pull/487) ([ScorpioCPH](https://github.com/ScorpioCPH))
- fixed some golint warning [\486](https://github.com/kubeflow/tf-operator/pull/486) ([AK-ayush](https://github.com/AK-ayush))
- Support testing on minikube. [\485](https://github.com/kubeflow/tf-operator/pull/485) ([jlewi](https://github.com/jlewi))
- controller: Add defaulter [\483](https://github.com/kubeflow/tf-operator/pull/483) ([gaocegege](https://github.com/gaocegege))
- controller: Add check for service and fix service [\482](https://github.com/kubeflow/tf-operator/pull/482) ([gaocegege](https://github.com/gaocegege))
- controller: Separate ps and worker pods [\481](https://github.com/kubeflow/tf-operator/pull/481) ([gaocegege](https://github.com/gaocegege))
- controller: Add internal state test [\480](https://github.com/kubeflow/tf-operator/pull/480) ([gaocegege](https://github.com/gaocegege))
- \*: Fix some errors in Travis CI [\477](https://github.com/kubeflow/tf-operator/pull/477) ([gaocegege](https://github.com/gaocegege))
- controller: Update status in time [\476](https://github.com/kubeflow/tf-operator/pull/476) ([gaocegege](https://github.com/gaocegege))
- add LabelsByIndex method to eliminate code duplication [\474](https://github.com/kubeflow/tf-operator/pull/474) ([rc-zhang](https://github.com/rc-zhang))
- Make RestartPolicy a property of the ReplicaSpec [\473](https://github.com/kubeflow/tf-operator/pull/473) ([ScorpioCPH](https://github.com/ScorpioCPH))
- Update tfjob status [\472](https://github.com/kubeflow/tf-operator/pull/472) ([ScorpioCPH](https://github.com/ScorpioCPH))
- Use headless services for Training jobs [\471](https://github.com/kubeflow/tf-operator/pull/471) ([rc-zhang](https://github.com/rc-zhang))
- Append labels instead of rewriting [\468](https://github.com/kubeflow/tf-operator/pull/468) ([ScorpioCPH](https://github.com/ScorpioCPH))
- test: Add unit test for controller [\467](https://github.com/kubeflow/tf-operator/pull/467) ([gaocegege](https://github.com/gaocegege))
- linter: Fix linter ignore file [\466](https://github.com/kubeflow/tf-operator/pull/466) ([gaocegege](https://github.com/gaocegege))
- Fix field selectors in controller [\465](https://github.com/kubeflow/tf-operator/pull/465) ([wbuchwalter](https://github.com/wbuchwalter))
- Run ks upgrade [\464](https://github.com/kubeflow/tf-operator/pull/464) ([lluunn](https://github.com/lluunn))
- Import v1alpha2 logic code [\463](https://github.com/kubeflow/tf-operator/pull/463) ([ScorpioCPH](https://github.com/ScorpioCPH))
- Fix owners file id [\462](https://github.com/kubeflow/tf-operator/pull/462) ([lluunn](https://github.com/lluunn))
- Remove deprecated package retryutil [\460](https://github.com/kubeflow/tf-operator/pull/460) ([ScorpioCPH](https://github.com/ScorpioCPH))
- Change test cluster to kubeflow-ci [\459](https://github.com/kubeflow/tf-operator/pull/459) ([lluunn](https://github.com/lluunn))
- Update API to v1alpha2 [\457](https://github.com/kubeflow/tf-operator/pull/457) ([ScorpioCPH](https://github.com/ScorpioCPH))
- \*: Remove APIExtension clientset [\454](https://github.com/kubeflow/tf-operator/pull/454) ([gaocegege](https://github.com/gaocegege))
- travis: Ignore generated code [\453](https://github.com/kubeflow/tf-operator/pull/453) ([gaocegege](https://github.com/gaocegege))
- Create PDB of TFReplicaSet for gang scheduling by kube-arbitrator [\452](https://github.com/kubeflow/tf-operator/pull/452) ([mitake](https://github.com/mitake))
- Add OWNERS file for dashboard [\446](https://github.com/kubeflow/tf-operator/pull/446) ([wbuchwalter](https://github.com/wbuchwalter))
- Make local release cross-platform + fix [\445](https://github.com/kubeflow/tf-operator/pull/445) ([wbuchwalter](https://github.com/wbuchwalter))
- Add proxying to front-end development server. [\442](https://github.com/kubeflow/tf-operator/pull/442) ([wbuchwalter](https://github.com/wbuchwalter))
- Fix dashboard + proxy incompatibility [\441](https://github.com/kubeflow/tf-operator/pull/441) ([wbuchwalter](https://github.com/wbuchwalter))
- change kubeflow.io to kubeflow.org [\440](https://github.com/kubeflow/tf-operator/pull/440) ([Jimexist](https://github.com/Jimexist))
- Remove unreachable code [\434](https://github.com/kubeflow/tf-operator/pull/434) ([ScorpioCPH](https://github.com/ScorpioCPH))
- \*: Remove type ContainerName [\432](https://github.com/kubeflow/tf-operator/pull/432) ([gaocegege](https://github.com/gaocegege))
- add boilerplate header for go file [\431](https://github.com/kubeflow/tf-operator/pull/431) ([wackxu](https://github.com/wackxu))
- format the python files with yapf [\429](https://github.com/kubeflow/tf-operator/pull/429) ([mitake](https://github.com/mitake))
- clientset: Fix code which is changed manually [\428](https://github.com/kubeflow/tf-operator/pull/428) ([gaocegege](https://github.com/gaocegege))
- Delete Dockerfile to build a docker image to use for prow. [\425](https://github.com/kubeflow/tf-operator/pull/425) ([jlewi](https://github.com/jlewi))
- Fix setup\_cluster. [\421](https://github.com/kubeflow/tf-operator/pull/421) ([jlewi](https://github.com/jlewi))
- Add ScorpioCPH as approver/reviewer [\419](https://github.com/kubeflow/tf-operator/pull/419) ([ScorpioCPH](https://github.com/ScorpioCPH))
- Create resources \(Services/Jobs\) only once [\418](https://github.com/kubeflow/tf-operator/pull/418) ([ScorpioCPH](https://github.com/ScorpioCPH))
- Dashboard: Dev Guide [\417](https://github.com/kubeflow/tf-operator/pull/417) ([wbuchwalter](https://github.com/wbuchwalter))
- Use logrus for structured logging [\416](https://github.com/kubeflow/tf-operator/pull/416) ([ankushagarwal](https://github.com/ankushagarwal))
- Create an initial OWNERS file. [\414](https://github.com/kubeflow/tf-operator/pull/414) ([jlewi](https://github.com/jlewi))
- Docs should refer to Kubeflow user guide for deploying the TFJob operrator [\412](https://github.com/kubeflow/tf-operator/pull/412) ([jlewi](https://github.com/jlewi))
- Run glide update to update glide.lock [\410](https://github.com/kubeflow/tf-operator/pull/410) ([ankushagarwal](https://github.com/ankushagarwal))
- Fix typo in Makefile [\409](https://github.com/kubeflow/tf-operator/pull/409) ([ankushagarwal](https://github.com/ankushagarwal))
- Add a field SchedulerName to TFJob for specifying a scheduler [\408](https://github.com/kubeflow/tf-operator/pull/408) ([mitake](https://github.com/mitake))
- Fix lint issues with python3 and a bug in lint script [\405](https://github.com/kubeflow/tf-operator/pull/405) ([jlewi](https://github.com/jlewi))
- Support using our E2E workflow to build a Docker image for releases. [\403](https://github.com/kubeflow/tf-operator/pull/403) ([jlewi](https://github.com/jlewi))
- add go 1.10 support in travis [\402](https://github.com/kubeflow/tf-operator/pull/402) ([Jimexist](https://github.com/Jimexist))
- use yapf to format python code [\401](https://github.com/kubeflow/tf-operator/pull/401) ([Jimexist](https://github.com/Jimexist))
- Fix bug with jobs not working if you recreate a job with same name as previous job [\399](https://github.com/kubeflow/tf-operator/pull/399) ([jlewi](https://github.com/jlewi))
- Fixes go vet errors [\397](https://github.com/kubeflow/tf-operator/pull/397) ([swiftdiaries](https://github.com/swiftdiaries))
- Fixed-363: Rename cmd/tf\_operator -\> cmd/tf-operator [\393](https://github.com/kubeflow/tf-operator/pull/393) ([AK-ayush](https://github.com/AK-ayush))
- README: Add community section and quick links [\392](https://github.com/kubeflow/tf-operator/pull/392) ([gaocegege](https://github.com/gaocegege))
- Remove TensorBoard related code in operator [\391](https://github.com/kubeflow/tf-operator/pull/391) ([gaocegege](https://github.com/gaocegege))
- Fix something after move to kubeflow/tf-operator [\390](https://github.com/kubeflow/tf-operator/pull/390) ([sdf611097](https://github.com/sdf611097))
- Add a prow\_config.yaml file to configure our prow jobs. [\388](https://github.com/kubeflow/tf-operator/pull/388) ([jlewi](https://github.com/jlewi))
- fix a typo in the README file. [\387](https://github.com/kubeflow/tf-operator/pull/387) ([ChanYiLin](https://github.com/ChanYiLin))
- \*: Replace the repo name [\386](https://github.com/kubeflow/tf-operator/pull/386) ([gaocegege](https://github.com/gaocegege))
- travis: Add go build command [\383](https://github.com/kubeflow/tf-operator/pull/383) ([gaocegege](https://github.com/gaocegege))
- config.sh: Remove [\381](https://github.com/kubeflow/tf-operator/pull/381) ([gaocegege](https://github.com/gaocegege))
- Use ksonnet to easily define TFJobs to be run as tests [\374](https://github.com/kubeflow/tf-operator/pull/374) ([jlewi](https://github.com/jlewi))
- Fix repo name env [\372](https://github.com/kubeflow/tf-operator/pull/372) ([jose5918](https://github.com/jose5918))
- controller.go: Fix a glog typo [\368](https://github.com/kubeflow/tf-operator/pull/368) ([gaocegege](https://github.com/gaocegege))
- fix -version option: print version [\367](https://github.com/kubeflow/tf-operator/pull/367) ([caogj](https://github.com/caogj))
- \*: Add copyright owner in go files [\364](https://github.com/kubeflow/tf-operator/pull/364) ([gaocegege](https://github.com/gaocegege))
- Fix local releaser [\361](https://github.com/kubeflow/tf-operator/pull/361) ([jose5918](https://github.com/jose5918))
- nit: try to simplify e2e main.go [\359](https://github.com/kubeflow/tf-operator/pull/359) ([Jimexist](https://github.com/Jimexist))
- Use Argo rather than Airflow to run our E2E tests [\358](https://github.com/kubeflow/tf-operator/pull/358) ([jlewi](https://github.com/jlewi))
- Add an option to release.py to specify the tag for the image to use. [\357](https://github.com/kubeflow/tf-operator/pull/357) ([jlewi](https://github.com/jlewi))
- Fix helm test [\356](https://github.com/kubeflow/tf-operator/pull/356) ([jose5918](https://github.com/jose5918))
- feat\(group\): Update CRD group to kubeflow.org [\354](https://github.com/kubeflow/tf-operator/pull/354) ([gaocegege](https://github.com/gaocegege))
- Deprecate the ENV MY\_POD\_NAME and use default namespace [\348](https://github.com/kubeflow/tf-operator/pull/348) ([ScorpioCPH](https://github.com/ScorpioCPH))
- feat\(crd\): Separate CRD and controller [\345](https://github.com/kubeflow/tf-operator/pull/345) ([gaocegege](https://github.com/gaocegege))
- Create Pod instead of Job [\344](https://github.com/kubeflow/tf-operator/pull/344) ([ScorpioCPH](https://github.com/ScorpioCPH))
- Deprecate IsDefaultPS in TFJob CRD API [\343](https://github.com/kubeflow/tf-operator/pull/343) ([ScorpioCPH](https://github.com/ScorpioCPH))
- Update documentation [\342](https://github.com/kubeflow/tf-operator/pull/342) ([jose5918](https://github.com/jose5918))
- feat\(dashboard\): Namespace handling [\338](https://github.com/kubeflow/tf-operator/pull/338) ([wbuchwalter](https://github.com/wbuchwalter))
- feat\(dashboard\): better error handling in dashboard code [\336](https://github.com/kubeflow/tf-operator/pull/336) ([Jimexist](https://github.com/Jimexist))
- Rename Tf to TF [\332](https://github.com/kubeflow/tf-operator/pull/332) ([ScorpioCPH](https://github.com/ScorpioCPH))
- Delete binary file [\331](https://github.com/kubeflow/tf-operator/pull/331) ([ScorpioCPH](https://github.com/ScorpioCPH))
- Take test failures into account when setting prow job status [\319](https://github.com/kubeflow/tf-operator/pull/319) ([jlewi](https://github.com/jlewi))
- remove unused file rename.sh [\316](https://github.com/kubeflow/tf-operator/pull/316) ([caogj](https://github.com/caogj))
- add UpdateFunc to handle update events [\313](https://github.com/kubeflow/tf-operator/pull/313) ([mqliang](https://github.com/mqliang))
- pkg: Add recorder support [\312](https://github.com/kubeflow/tf-operator/pull/312) ([gaocegege](https://github.com/gaocegege))
- Fix a bunch of problems in TfJob CRD that crept in while tests were broken [\308](https://github.com/kubeflow/tf-operator/pull/308) ([jlewi](https://github.com/jlewi))
- replace TPR with CRD [\307](https://github.com/kubeflow/tf-operator/pull/307) ([mqliang](https://github.com/mqliang))
- fix broken link [\305](https://github.com/kubeflow/tf-operator/pull/305) ([caogj](https://github.com/caogj))
- Fix python lint checks [\303](https://github.com/kubeflow/tf-operator/pull/303) ([jlewi](https://github.com/jlewi))
- Fix setting defaults. [\299](https://github.com/kubeflow/tf-operator/pull/299) ([jlewi](https://github.com/jlewi))
- Add service account name to dashboard if RBAC. [\298](https://github.com/kubeflow/tf-operator/pull/298) ([ConnorDoyle](https://github.com/ConnorDoyle))
- The flag should be --controller-config-file. [\295](https://github.com/kubeflow/tf-operator/pull/295) ([jlewi](https://github.com/jlewi))
- Fix the junit XML file format. [\291](https://github.com/kubeflow/tf-operator/pull/291) ([jlewi](https://github.com/jlewi))
- \*: Fix API Version [\289](https://github.com/kubeflow/tf-operator/pull/289) ([gaocegege](https://github.com/gaocegege))
- \*: Implement the List interface for TfJobList [\278](https://github.com/kubeflow/tf-operator/pull/278) ([gaocegege](https://github.com/gaocegege))
- cmd: Fix the flag error caused by pflag [\277](https://github.com/kubeflow/tf-operator/pull/277) ([gaocegege](https://github.com/gaocegege))
- types.go: Fix CRDKind [\276](https://github.com/kubeflow/tf-operator/pull/276) ([gaocegege](https://github.com/gaocegege))
- Move around due to new directories layout [\273](https://github.com/kubeflow/tf-operator/pull/273) ([ScorpioCPH](https://github.com/ScorpioCPH))
- bugfix: set faliures=true if failed deleting configmap [\272](https://github.com/kubeflow/tf-operator/pull/272) ([mqliang](https://github.com/mqliang))
- Fix our continuous release process [\271](https://github.com/kubeflow/tf-operator/pull/271) ([jlewi](https://github.com/jlewi))
- update initialClusterVersion to 1.7.11-gke.1 [\269](https://github.com/kubeflow/tf-operator/pull/269) ([cwbeitel](https://github.com/cwbeitel))
- Misc Cleanup. [\262](https://github.com/kubeflow/tf-operator/pull/262) ([jlewi](https://github.com/jlewi))
- Add proposed directories layout [\261](https://github.com/kubeflow/tf-operator/pull/261) ([ScorpioCPH](https://github.com/ScorpioCPH))
- record event when tf\_operator failover [\260](https://github.com/kubeflow/tf-operator/pull/260) ([zjj2wry](https://github.com/zjj2wry))
- follow kubernetes flag convension [\259](https://github.com/kubeflow/tf-operator/pull/259) ([zjj2wry](https://github.com/zjj2wry))
- refactor dashboard backend, use versioned tfjob clientset [\258](https://github.com/kubeflow/tf-operator/pull/258) ([zjj2wry](https://github.com/zjj2wry))
- apply goimports -w to generated files [\257](https://github.com/kubeflow/tf-operator/pull/257) ([Jimexist](https://github.com/Jimexist))
- add gometaliner into travis build [\254](https://github.com/kubeflow/tf-operator/pull/254) ([Jimexist](https://github.com/Jimexist))
- fix\(no-dup\): reduce dup code in printVersion [\253](https://github.com/kubeflow/tf-operator/pull/253) ([Jimexist](https://github.com/Jimexist))
- Improve utilities for E2E tests. [\251](https://github.com/kubeflow/tf-operator/pull/251) ([jlewi](https://github.com/jlewi))
- Fix leaking of clusters in E2E tests \80 [\250](https://github.com/kubeflow/tf-operator/pull/250) ([jlewi](https://github.com/jlewi))
- feat\(pipenv\): Use pipenv to lock down python dependencies [\248](https://github.com/kubeflow/tf-operator/pull/248) ([Jimexist](https://github.com/Jimexist))
- fix\(lint\): add prop types and fix all eslint errors [\246](https://github.com/kubeflow/tf-operator/pull/246) ([Jimexist](https://github.com/Jimexist))
- refactor code and format imported package [\245](https://github.com/kubeflow/tf-operator/pull/245) ([zjj2wry](https://github.com/zjj2wry))
- feat\(lint\): apply prettier to format frontend src/ code [\244](https://github.com/kubeflow/tf-operator/pull/244) ([Jimexist](https://github.com/Jimexist))
- feature\(lint\): use prettier and lint-staged for frontend javascript code [\243](https://github.com/kubeflow/tf-operator/pull/243) ([Jimexist](https://github.com/Jimexist))
- Fix issues with tf\_job\_gpu test [\241](https://github.com/kubeflow/tf-operator/pull/241) ([jlewi](https://github.com/jlewi))
- Use the release/test python scripts pulled from the repo. [\237](https://github.com/kubeflow/tf-operator/pull/237) ([jlewi](https://github.com/jlewi))
- Don't run glide install in travis builds. [\236](https://github.com/kubeflow/tf-operator/pull/236) ([jlewi](https://github.com/jlewi))
- refactor the controller logic [\234](https://github.com/kubeflow/tf-operator/pull/234) ([wackxu](https://github.com/wackxu))
- feat\(coverage\): add covealls support [\232](https://github.com/kubeflow/tf-operator/pull/232) ([Jimexist](https://github.com/Jimexist))
- use glide install --strip-vendor remove subpackage vendor [\231](https://github.com/kubeflow/tf-operator/pull/231) ([zjj2wry](https://github.com/zjj2wry))
- update k8s dependency to stable version [\230](https://github.com/kubeflow/tf-operator/pull/230) ([wackxu](https://github.com/wackxu))
- let tfJob image configurable [\228](https://github.com/kubeflow/tf-operator/pull/228) ([zjj2wry](https://github.com/zjj2wry))
- remove todo, add gitSHA into version information [\227](https://github.com/kubeflow/tf-operator/pull/227) ([zjj2wry](https://github.com/zjj2wry))
- controller.go: Fix a print error [\226](https://github.com/kubeflow/tf-operator/pull/226) ([gaocegege](https://github.com/gaocegege))
- replace tf-job-operator-config configmap when it already exist [\225](https://github.com/kubeflow/tf-operator/pull/225) ([zjj2wry](https://github.com/zjj2wry))
- Add the vendor directory to the repository. [\222](https://github.com/kubeflow/tf-operator/pull/222) ([zjj2wry](https://github.com/zjj2wry))
- allow using WORKER:0 as chief [\221](https://github.com/kubeflow/tf-operator/pull/221) ([lluunn](https://github.com/lluunn))
- Fix issue with handling of json errors. [\220](https://github.com/kubeflow/tf-operator/pull/220) ([jlewi](https://github.com/jlewi))
- Set state to failed if there is a problem initializing job [\219](https://github.com/kubeflow/tf-operator/pull/219) ([jlewi](https://github.com/jlewi))
- On GKE mounting volumes should no longer be required for GPUs. [\217](https://github.com/kubeflow/tf-operator/pull/217) ([jlewi](https://github.com/jlewi))
- update developer guide [\216](https://github.com/kubeflow/tf-operator/pull/216) ([ddysher](https://github.com/ddysher))
- Refactor the TfJob to use K8s libraries [\215](https://github.com/kubeflow/tf-operator/pull/215) ([wackxu](https://github.com/wackxu))
- Add a basic GPU job test as part of our E2E tests. [\213](https://github.com/kubeflow/tf-operator/pull/213) ([jlewi](https://github.com/jlewi))
- minor spelling porxy =\> proxy [\211](https://github.com/kubeflow/tf-operator/pull/211) ([cbockman](https://github.com/cbockman))
- Add terminationPolicy to TfJobSpec [\204](https://github.com/kubeflow/tf-operator/pull/204) ([lluunn](https://github.com/lluunn))
- Split cloning the repo and building the images into two steps in our airflow pipeline [\200](https://github.com/kubeflow/tf-operator/pull/200) ([jlewi](https://github.com/jlewi))
- Create separate commands to clone and build the repo [\199](https://github.com/kubeflow/tf-operator/pull/199) ([jlewi](https://github.com/jlewi))
- Install yarn and nodejs inside the Airflow container. [\198](https://github.com/kubeflow/tf-operator/pull/198) ([jlewi](https://github.com/jlewi))
- Update the Airflow deployment to use Docker images built from a clean tree [\197](https://github.com/kubeflow/tf-operator/pull/197) ([jlewi](https://github.com/jlewi))
- Fix some cuda issues on Azure [\194](https://github.com/kubeflow/tf-operator/pull/194) ([wbuchwalter](https://github.com/wbuchwalter))
- Fixing front page documentation to have grpcServerFilePath [\190](https://github.com/kubeflow/tf-operator/pull/190) ([hyperbolic2346](https://github.com/hyperbolic2346))
- Add an option to build Docker images with GCB. [\187](https://github.com/kubeflow/tf-operator/pull/187) ([jlewi](https://github.com/jlewi))
- replace deprecated tf.initialize\_all\_variables [\184](https://github.com/kubeflow/tf-operator/pull/184) ([DjangoPeng](https://github.com/DjangoPeng))
- build\_and\_push.py: Support python3 [\183](https://github.com/kubeflow/tf-operator/pull/183) ([gaocegege](https://github.com/gaocegege))
- tf\_job\_design\_doc: Fix the apiVersion [\182](https://github.com/kubeflow/tf-operator/pull/182) ([gaocegege](https://github.com/gaocegege))
- py: Add requirements.txt [\180](https://github.com/kubeflow/tf-operator/pull/180) ([gaocegege](https://github.com/gaocegege))
- resolve a merge conflict imported by commit ae8c31 [\178](https://github.com/kubeflow/tf-operator/pull/178) ([DjangoPeng](https://github.com/DjangoPeng))
- tf\_job\_design\_doc.md: Fix a typo [\177](https://github.com/kubeflow/tf-operator/pull/177) ([gaocegege](https://github.com/gaocegege))
- Fix helm templates so that we don't require a configmap. [\176](https://github.com/kubeflow/tf-operator/pull/176) ([jlewi](https://github.com/jlewi))
- replace Google and Golang repos with corresponding github repos [\172](https://github.com/kubeflow/tf-operator/pull/172) ([DjangoPeng](https://github.com/DjangoPeng))
- Stop hardcoding namespace for TfJob config map [\169](https://github.com/kubeflow/tf-operator/pull/169) ([haitch](https://github.com/haitch))
- Tooling to make it easier to run a bunch of TfJob tests. [\168](https://github.com/kubeflow/tf-operator/pull/168) ([jlewi](https://github.com/jlewi))
- Run python lint and unittests as part of our E2E test pipeline [\166](https://github.com/kubeflow/tf-operator/pull/166) ([jlewi](https://github.com/jlewi))
- A binary to run pylint and python unittests [\163](https://github.com/kubeflow/tf-operator/pull/163) ([jlewi](https://github.com/jlewi))
- fix dev guide [\162](https://github.com/kubeflow/tf-operator/pull/162) ([lluunn](https://github.com/lluunn))
- Integrate Airflow with Prow [\158](https://github.com/kubeflow/tf-operator/pull/158) ([jlewi](https://github.com/jlewi))
- rename jlewi/mlkube.io in glide.yaml [\153](https://github.com/kubeflow/tf-operator/pull/153) ([moon03432](https://github.com/moon03432))
- add Create\(\), Delete\(\) in TfJobClient interface [\152](https://github.com/kubeflow/tf-operator/pull/152) ([moon03432](https://github.com/moon03432))
- change jobname from task-runtimeid-index to jobname-task-runtimeid-index [\151](https://github.com/kubeflow/tf-operator/pull/151) ([moon03432](https://github.com/moon03432))
- Create binaries to run steps in an E2E test pipeline. [\148](https://github.com/kubeflow/tf-operator/pull/148) ([jlewi](https://github.com/jlewi))
- Fix a typo in the command line help. [\147](https://github.com/kubeflow/tf-operator/pull/147) ([jlewi](https://github.com/jlewi))
- ignore too-many-locals. [\146](https://github.com/kubeflow/tf-operator/pull/146) ([jlewi](https://github.com/jlewi))
- On RBAC clusters, test needs a service account with appropriate permissions [\145](https://github.com/kubeflow/tf-operator/pull/145) ([jlewi](https://github.com/jlewi))
- Airflow pipeline to run our tests [\144](https://github.com/kubeflow/tf-operator/pull/144) ([jlewi](https://github.com/jlewi))
- fix\(\*\): amend the number of worker and ps in example yaml spec for a distributed job [\142](https://github.com/kubeflow/tf-operator/pull/142) ([lienhua34](https://github.com/lienhua34))
- fix a log issue [\141](https://github.com/kubeflow/tf-operator/pull/141) ([moon03432](https://github.com/moon03432))
- rename clus to tfjob in controller.go [\138](https://github.com/kubeflow/tf-operator/pull/138) ([moon03432](https://github.com/moon03432))
- rename InClusterConfig\(\) to GetClusterConfig\(\) [\137](https://github.com/kubeflow/tf-operator/pull/137) ([moon03432](https://github.com/moon03432))
- Remove trailing slash of host [\134](https://github.com/kubeflow/tf-operator/pull/134) ([ScorpioCPH](https://github.com/ScorpioCPH))
- Turn release.py into a binary to build the artifacts for all the different contexts [\133](https://github.com/kubeflow/tf-operator/pull/133) ([jlewi](https://github.com/jlewi))
- Minor fix typo and redundancy [\131](https://github.com/kubeflow/tf-operator/pull/131) ([ScorpioCPH](https://github.com/ScorpioCPH))
- Update developer\_guide.md [\129](https://github.com/kubeflow/tf-operator/pull/129) ([Jimexist](https://github.com/Jimexist))
- Use K8s Garbage Collection [\127](https://github.com/kubeflow/tf-operator/pull/127) ([jlewi](https://github.com/jlewi))
- Dashboard V1 [\125](https://github.com/kubeflow/tf-operator/pull/125) ([wbuchwalter](https://github.com/wbuchwalter))
- More verbose logging of resource deletion [\124](https://github.com/kubeflow/tf-operator/pull/124) ([jlewi](https://github.com/jlewi))
- Fix rbac settings in chart. [\123](https://github.com/kubeflow/tf-operator/pull/123) ([jlewi](https://github.com/jlewi))
- Fix issue in tpr\_util.Delete\(\) [\121](https://github.com/kubeflow/tf-operator/pull/121) ([wbuchwalter](https://github.com/wbuchwalter))
- Tag docker images with "latest". [\119](https://github.com/kubeflow/tf-operator/pull/119) ([jlewi](https://github.com/jlewi))
- Update API group in the chart [\117](https://github.com/kubeflow/tf-operator/pull/117) ([sozercan](https://github.com/sozercan))
- Helm instructions [\111](https://github.com/kubeflow/tf-operator/pull/111) ([jlewi](https://github.com/jlewi))
- Name label [\105](https://github.com/kubeflow/tf-operator/pull/105) ([jlewi](https://github.com/jlewi))
- Update helm install syntax in readme [\104](https://github.com/kubeflow/tf-operator/pull/104) ([sozercan](https://github.com/sozercan))
- Change group to tensorflow.org and version to v1alpha1. [\103](https://github.com/kubeflow/tf-operator/pull/103) ([jlewi](https://github.com/jlewi))
- \[WIP\] Notebook demonstrating use of TfJob on GKE [\102](https://github.com/kubeflow/tf-operator/pull/102) ([jlewi](https://github.com/jlewi))
- Fix bugs in the release script. [\100](https://github.com/kubeflow/tf-operator/pull/100) ([jlewi](https://github.com/jlewi))
- Fix bugs in the release script. [\99](https://github.com/kubeflow/tf-operator/pull/99) ([jlewi](https://github.com/jlewi))
- Update release.py so we can run it continuously. [\98](https://github.com/kubeflow/tf-operator/pull/98) ([jlewi](https://github.com/jlewi))
- Fix the E2E test by specifying cloud when deploying the helm package. [\97](https://github.com/kubeflow/tf-operator/pull/97) ([jlewi](https://github.com/jlewi))
- Need to set environment to enable Estimators with TF \<=1.3 [\94](https://github.com/kubeflow/tf-operator/pull/94) ([jlewi](https://github.com/jlewi))
- Update README.md [\92](https://github.com/kubeflow/tf-operator/pull/92) ([Jimexist](https://github.com/Jimexist))
- Add python lint check to travis and fix python lint issues [\91](https://github.com/kubeflow/tf-operator/pull/91) ([jlewi](https://github.com/jlewi))
- \71 Simplify accelerators config [\90](https://github.com/kubeflow/tf-operator/pull/90) ([wbuchwalter](https://github.com/wbuchwalter))
- Update test infrastructure to use repo tensorflow/k8s [\87](https://github.com/kubeflow/tf-operator/pull/87) ([jlewi](https://github.com/jlewi))
- Create symbolic links in GCS to output of presubmit results. [\79](https://github.com/kubeflow/tf-operator/pull/79) ([jlewi](https://github.com/jlewi))
- Fix periodic results \(\76\) [\78](https://github.com/kubeflow/tf-operator/pull/78) ([jlewi](https://github.com/jlewi))
- Another attempt to fix periodic jobs. [\77](https://github.com/kubeflow/tf-operator/pull/77) ([jlewi](https://github.com/jlewi))
- Fix location of the post submit results. [\74](https://github.com/kubeflow/tf-operator/pull/74) ([jlewi](https://github.com/jlewi))
- Overhaul the documentation [\73](https://github.com/kubeflow/tf-operator/pull/73) ([jlewi](https://github.com/jlewi))
- Release scripts [\69](https://github.com/kubeflow/tf-operator/pull/69) ([jlewi](https://github.com/jlewi))
- Record latest green from postsubmit [\66](https://github.com/kubeflow/tf-operator/pull/66) ([jlewi](https://github.com/jlewi))
- Fix presubmit jobs and periodic jobs [\60](https://github.com/kubeflow/tf-operator/pull/60) ([jlewi](https://github.com/jlewi))
- Fix periodic test [\56](https://github.com/kubeflow/tf-operator/pull/56) ([jlewi](https://github.com/jlewi))
- Updated chart with batch.jobs and extensions.deployments cluster roles [\52](https://github.com/kubeflow/tf-operator/pull/52) ([sozercan](https://github.com/sozercan))
- Added RBAC support for tf-operator chart [\51](https://github.com/kubeflow/tf-operator/pull/51) ([sozercan](https://github.com/sozercan))
- PR to test Prow presubmit integration. [\50](https://github.com/kubeflow/tf-operator/pull/50) ([jlewi](https://github.com/jlewi))
- E2E test for the CRD [\49](https://github.com/kubeflow/tf-operator/pull/49) ([jlewi](https://github.com/jlewi))
- Create configs for setting up Prow for continuous testing. [\47](https://github.com/kubeflow/tf-operator/pull/47) ([jlewi](https://github.com/jlewi))
- Fix bug that prevents permanent errors from causing job failure. [\44](https://github.com/kubeflow/tf-operator/pull/44) ([jlewi](https://github.com/jlewi))
- Always check for existing TfJobs and instantiate controllers for them. [\43](https://github.com/kubeflow/tf-operator/pull/43) ([jlewi](https://github.com/jlewi))
- support multi namespaces [\39](https://github.com/kubeflow/tf-operator/pull/39) ([loadwiki](https://github.com/loadwiki))
- Use Jinja templates and a Python script to build example Docker images for examples [\37](https://github.com/kubeflow/tf-operator/pull/37) ([jlewi](https://github.com/jlewi))
- Parameter Server: Run TF server by default [\36](https://github.com/kubeflow/tf-operator/pull/36) ([wbuchwalter](https://github.com/wbuchwalter))
- Set default values for Replicas, TfPort, TfReplicaType. [\31](https://github.com/kubeflow/tf-operator/pull/31) ([jlewi](https://github.com/jlewi))
- Fix a couple bugs. [\27](https://github.com/kubeflow/tf-operator/pull/27) ([jlewi](https://github.com/jlewi))
- \[WIP\] Update to CustomResourceDefinition instead of ThirdPartyResource. [\20](https://github.com/kubeflow/tf-operator/pull/20) ([jlewi](https://github.com/jlewi))
- Update glide config. [\18](https://github.com/kubeflow/tf-operator/pull/18) ([jlewi](https://github.com/jlewi))
- Add TensorBoard Integration [\15](https://github.com/kubeflow/tf-operator/pull/15) ([wbuchwalter](https://github.com/wbuchwalter))
- Changes to support CI using Travis. [\14](https://github.com/kubeflow/tf-operator/pull/14) ([jlewi](https://github.com/jlewi))
- Add Environment Variables in Controller Config [\12](https://github.com/kubeflow/tf-operator/pull/12) ([wbuchwalter](https://github.com/wbuchwalter))
- Fix tests [\11](https://github.com/kubeflow/tf-operator/pull/11) ([wbuchwalter](https://github.com/wbuchwalter))
- Helm charts renaming [\10](https://github.com/kubeflow/tf-operator/pull/10) ([wbuchwalter](https://github.com/wbuchwalter))
- Simplify GPU configuration process. [\9](https://github.com/kubeflow/tf-operator/pull/9) ([jlewi](https://github.com/jlewi))
- Fix build, add Glide for dependency management. [\8](https://github.com/kubeflow/tf-operator/pull/8) ([wbuchwalter](https://github.com/wbuchwalter))
- Update links in README.md [\3](https://github.com/kubeflow/tf-operator/pull/3) ([wbuchwalter](https://github.com/wbuchwalter))
- A more thorough E2E test. [\2](https://github.com/kubeflow/tf-operator/pull/2) ([jlewi](https://github.com/jlewi))
- Create a helm chart for deploying the TfJob operator [\1](https://github.com/kubeflow/tf-operator/pull/1) ([jlewi](https://github.com/jlewi))