Commit Graph

23 Commits

Author SHA1 Message Date
Alexey Volkov cc83e1089b
Assigned copyright to the project authors (#5587) 2021-05-05 13:53:22 +08:00
Luis Magana 5df2801603
feat(backend): Added multi-user pipelines (UI + API); Fixes #4197 (#4835)
* Added multi-user pipelines backend


corrected typo


updating code based on review


fixes for pipelines server


reverting this back

* removing unnecessary info logging
2021-02-26 06:10:15 -08:00
Yuan (Bob) Gong 3d40bba9a3
chore(backend): clean up backend code generation (#5116)
* chore(backend): tidy go.mod and update tools.go

* go install, instead of go get

* fix problems reported by go vet

* simplify some ide reported redundant syntax

* license is not required for generated code

* remove licenses for generated code

* cleanup

* remove license more

* rm unused BUILD.bazel files

* fixed generate_api.sh

* reimport error.proto
2021-02-09 07:10:57 -08:00
Niklas Hansson 5742991c1a
feat(API): exposing api for setting the default version of pipeline. Fixes #4049 (#4406)
* initial work on exposing the default version of pipeline

* update description

* added missing files

* updated api build, unsure if this is correct ...

* updated after feedback

* clean up

* remove empty line

* started to make the integration test

* added integreation test

* fixed build and feedback

* updated the tests

* Updated the test

* new test

* typo

* updated the pipeline default

* updated the pipeline version

* formatting

* error in comparison
2020-10-15 16:19:25 -07:00
Yihong Wang 06bf42998e
chore(backend): remove unused import in .proto (#4448)
nit: Clean up unused `import`s in proto files.
Since no actually code change, code gen is skipped.
2020-09-22 00:28:47 -07:00
Amy 5d302b6edb
fix typo on sort order: 'des' --> 'desc' (#3893) 2020-06-02 18:00:17 -07:00
jingzhang36 286492591b
More documentation on backend API methods (#3758)
* list experiment desc

* changes should be made in proto

* add comments and descriptions

* comments/descriptions in run.proto

* comments in job.proto and pipeline.proto

* try starting a new line

* newline doesnt help

* add swagger gen'ed file

* address comments

* regenerate json and client via swagger

* address comments

* regenerate go_http_client and swagger from proto

* two periods

* re-generate
2020-06-01 12:26:25 +08:00
Michael Benavidez 811af3811d
Updated the API reference comments (#2916)
* Update comments with requested edits

* Update comments with requested edits
2020-02-12 01:34:52 -08:00
jingzhang36 6c1c641e40 Open version api in BE proto and auto-generate BE/FE api methods (#2620)
* Open the version api in BE for later FE PR to use. Including
auto-generated BE and FE code.

* format FE

* re-generate

* remove an unnecessary auto-generated file

* format
2019-11-26 19:35:19 -08:00
Michael Benavidez 452c360473 MDez patch 2 (#2635)
* Update job.proto

Added comments to describe endpoints.

* Adding endpoint comments for swagger.

* Spacing fix

* Spacing fix, comment consistency

* Add endpoint comments for swagger descriptions.

* Update experiment.proto

Add spacing

* Update experiment.proto

* Update job.proto

* Update pipeline.proto

* Update run.proto
2019-11-21 11:23:29 -08:00
Michael Benavidez e2c83759a2 MDez patch 1 (#2550)
* Add descriptive comments to all endpoints

* Add link to filter.proto page

* Update job.proto

* Add link to filter.proto page

* Update run.proto
2019-11-07 14:48:27 -08:00
jingzhang36 47aaf08280 Runs and jobs can be created from pipeline version (#2445)
* add version api

* unit tests

* remove debug fmt

* remove unused func

* remove another unused method

* formatting

* remove unused consts

* some comments

* build

* unit tests

* unit tests

* formatting

* unit tests

* run from pipeline version

* pipeline version as resource type

* run store and resource reference store

* formatting and removing debug traces

* run server test

* job created from pipeline version

* variable names

* address comments

* Get pipeline version template is used on pipeline details page, which fetches pipelien version file.

* a temp revert

* address comment

* address comment

* add comment

* get pipeline version template

* verify pipeline version in resource reference

* add unit test for create run from pipeline version

* unit test for create job from pipeline version

* remove some comments

* reformat

* reformat again

* Remove an unrelated change

* change method name
2019-10-28 11:02:42 -07:00
Ajay Gopinathan 26f8e628b4 Fix documentation for filter.proto (#2447)
* Fix documentation for filter.proto

* Fix file generation
2019-10-25 02:35:38 -07:00
jingzhang36 f66af1f0ee Add pipeline version api methods (#2338)
* add version api

* unit tests

* remove debug fmt

* remove unused func

* remove another unused method

* formatting

* remove unused consts

* some comments

* build

* unit tests

* unit tests

* formatting

* unit tests

* address comments

* address comment

* address comment

* add comment
2019-10-17 01:34:39 -07:00
jingzhang36 7aaecb1501 Add necessary data types to api and database to support pipeline version. (#1873)
* Add necessary data types/tables for pipeline version. Mostly based
on Yang's branch at https://github.com/IronPan/pipelines/tree/kfpci/.
Backward compatible.

* Modified comment

* Modify api converter according with new pipeline (version) definition

* Change pipeline_store for DefaultVersionId field

* Add pipeline spec to pipeline version

* fix model converter

* fix a comment

* Add foreign key, pagination of list request, refactor code source

* Refactor code source

* Foreign key

* Change code source and package source type

* Fix ; separator

* Add versions table and modify existing pipeline apis

* Remove api pipeline defintiion change and leave it for later PR

* Add comment

* Make schema changing and data backfilling a single transaction

* Tolerate null default version id in code

* fix status

* Revise delete pipeline func

* Use raw query to migrate data

* No need to update versions status

* rename and minor changes

* accidentally removed a where clause

* Fix a model name prefix

* Refine comments

* Revise if condition

* Address comments

* address more comments

* Rearrange pipeline and version related parts inside CreatePipeline, to make them more separate.

* Add package url to pipeline version. Required when calling CreatePipelineVersionRequest

* Single code source url; remove pipeline id as sorting field; reformat

* resolve remote branch and local branch diff

* remove unused func

* Remove an empty line
2019-09-25 23:59:07 -07:00
IronPan 06e4dc6604
Add doc for API (#1406)
* initial update

* initial update

* update

* add doc

* update
2019-05-30 17:48:50 -07:00
Ajay Gopinathan 5f1b41171f Fix API package names and regenerate checked-in proto files. (#1404)
* Fix API package names and regenerate checked-in proto files. Also bump version of GRPC gateway used.

* Fix BUILD.bazel file for api as well.

* Update Bazel version
2019-05-30 11:26:28 -07:00
Yasser Elsayed ec4d7e8bd3 Return resource count from ListXXX calls (#595)
* add count to protos and libs

* close db rows before second query

* count -> total_size

* int32 -> int

* move scan count row to util

* add comments

* add logs when transactions fail

* dedup from and where clauses

* simplify job count query

* job count queries

* run count queries

* add job_store total size test

* added tests for list util

* pr comments

* list_utils -> list

* fix clients and fake clients to support TotalSize

* added TotalSize checks in api integration tests
2019-01-31 11:15:54 -08:00
Ajay Gopinathan 163545b370 Use Bazel to build the entire backend and perform API code generation (#609)
* Use Bazel to build the entire backend.

This also uses Bazel to generate code from the API definition in the
proto files.

The Makefile is replaced with a script that uses Bazel to first generate
the code, and then copy them back into the source tree.

Most of the BUILD files were generated automatically using Gazelle.

* Fix indentation in generate_api.sh

* Clean up WORKSPACE

* Add README for building/testing backend.

Also fix the missing licenses in the generated proto files.

* Add license to files under go_http_client
2019-01-04 17:17:20 -08:00
Ajay Gopinathan 8616398602 Encode filter parameter as a base64-encoded JSON string in List requests (#563)
* Make all ListXXX operations use POST instead of GET.

Generate new swagger definitions and use these to generate the frontend
APIs using `npm run apis`.

This is to support filtering in List requests, as the current
grpc-gateway swagger generator tool does not support repeated fields in
requests used in GET endpoints.

* Use base64-encoded JSON-stringified version of Filter instead.

This lets us keep filter as a simple parameter in the ListXXX requests,
and gets around having to use POST for List requests.

* refactor filter parsing to parseAPIFilter and add tests

* Hack to ensure correct Swagger definitions are generated for Filter.

* Fix merge conflicts with master after rebase

* fix indentation

* Fix hack so frontend apis compile.

* print failing experiments

* try print again.

* revert experiment_api_test

* Use StdEncoding for base64 encoding

* Fix nil pointer dereference error caused err variable shadowing
2019-01-02 13:03:14 -08:00
Ajay Gopinathan 0c0d8a2b91 Add filtering ability for all backend API ListXXX requests (#537)
* WIP: Add filter package with tests.

* Add tests for IN predicate.

* Add listing functions

* Try updating list experiments

* Cleanup and finalize list API.

Add tests for list package, and let ExperimentStore use this new API.
Update tests for the latter as well.

* Add comments. BuildSQL -> AddToSelect for flexibility

* Run dep ensure

* Add filter proto to all other resources

* Add filtering for pipeline server

* Add filtering for job server

* Add filtering for run server

* Try to fix integration tests
2018-12-14 00:18:31 -08:00
IronPan 9eee2bbb47 move name (#498) 2018-12-07 16:41:15 -08:00
Pascal Vicaire 633e2ddcc8 Initial commit of the kubeflow/pipeline project. 2018-11-02 14:02:31 -07:00