* For legacy interface, we switch to the new presentation underhood
* when create run, if user specify a pipeline, we subsitute it with the pipeline's default version
* Add a case where a version and a pipeline are both specified
* comment; get ready pipeline
* comments
* fix upgrade integration test
* comments of todo; expected run/job now has resource references
* fix upgrade test expected value according to the new response
* fix a typo
* a quick hack for upgrade test
* surface err from conversion
* Add pipeline version to job/run integration test so that job/run is created from pipeline version
* Use set comparison to check array equation in test
* address comments to use elements match
* Implement upgrade test
* mark upgrade-tests.sh as executable
* Fix comments
* Base upgrade_test_setup.yaml
* e2e integration of upgrade test
* Fix entrypoint argument
* Fix e2e workflow yaml
* Fix run_test.sh argument processing
* Fix no closing backtick
* Restrucutre upgrade_test.go to focus the test on upgrade verification
* clean up code
* Clean up after upgrade test when it is run in integration tests.
* Include pipeline tests in upgrade test
* Reorder tests
* Add upgrade test coverage for run api resources
* Add job api resource coverage in upgrade test & refactored upgrade test
* Fix add missing step in upgrade test
* Fix BUILD.bazel
* Fix upgrade_test.go
* Try to fix upgrade test failure
* Fix hard coded namespace
* Sync upgrade-tests.sh with new changes in presubmit-tests-with-pipeline-deployment.sh
* Update upgrade test
* Remove redundant code
* Fix integration test exit code
* Fix trigger interval second mismatch
* create a new version upload integration test file
* checkpoint
* checkpoint
* test
* checkpoint
* checkpoint
* version api integration test
* Fix a typo
* typo in comment
* error message
* Make local testing easier
* Move cleanup to test setup stage
* Add readme for how to run integration tests
* Add warning about data loss
* Add warning also in the script
* Change flag to isDevMode and cleanup resources if not in dev mode
* Pass through arguments in the bash script
* Fix unit tests
* integration tests for swf NoCatchup option
* Also add cron catchup option tests
* Restructure test
* Adjust format
* Fix BUILD.bazel
* fix typo
* Make local testing easier
* Move cleanup to test setup stage
* Add readme for how to run integration tests
* Add warning about data loss
* Add warning also in the script
* Change flag to isDevMode and cleanup resources if not in dev mode
* Pass through arguments in the bash script
* Fix unit tests
* add upload pipeline version to upload_pipeline_server and http main
* add apiPipelineVersion to pipeline upload swagger json
* add apiResourceReference to pipeline upload swagger json
* Add yet more types to pipeline upload swagger json
* Unit tests
* Created visualization_api_test.go
* Updated BUILD.bazel files
* Removed clean_up from e2e test
* Revert "Removed clean_up from e2e test"
This reverts commit 82fd4f5a00.
* Update e2e tests to build visualizationserver and viewer-crd
* Fix bug where wrong image is set
* Fixed incorrect image names
* Fixed additional instance of incorrect image names
* 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
* WIP - Create default experiment upon API server initialization
* Default experiment initialization caused crashes if API server pod was restarted without clearing DB
* Adding new table to store default experiment ID
* Add default experiment type model definition
* Minor fixes, everything seems to work now
* Clean up. Renamed to default_experiment_store
* Adds tests for the default_experiment_store
* Add integration test for verifying initial cluster state. Currently only covers existence of default experiment
* Don't run initialization tests except as integration tests
* Fixes comments
* PR comments and cleanup
* Extract code in resource_manager to helper func
* add finished time for list runs
* add finished time for list runs
* fix tests
* add finished time for list runs
* Update run.proto
* address comments
* make query more robust
* fix e2e test
* fix e2e test
* Enable pipeline packages with multiple files
* Added tests
* Initialize the variables to nil
* Trying to read the archive file entry immediately
* Fixed the pipeline packages used by the `TestPipelineAPI` test.
Also added a failing test case. Will disable it in next commit.
* Disabling the test for the UploadFile bug I've discovered
* Fixed the pipeline name.
* Removed the disabled extra test.
* Addressed the feedback.
* Removed the "header == nil" check (feedback).
* Fixed typo
* Addressed the PR feedback
Added space before comment.
Checking for the error again.
* Added the terminate run command to backend and CLI.
No generated files for now.
* Added the generated files.
* Moved the code to run_store.go
Now the call chain is run_client->run_server->resource_manager->run_store
* Using the backoff package for retries.
* Trying to update run status in the DB to "Terminating" before patching the workflow.
* Stopped using the Argo errors module.
* Fixed the compilation errors due to recent backend changes.
* RILEY - WIP - Implementation of workflow_fake.go and first test
Added successful test in resource_manager_test.go and completed, barring nits and conventions, the implementation of Patch() and isTerimated() within workflow_fake.go
Additional tests and lots of clean-up are still necessary
* Adds a few more tests to resource_manager_test and cleans up a bit
* Further clean up. Stopped using squirrel for UPDATE query. Added run_store_tests
* Adds terminate run integration test
* Undo changes to go.sum
* Fixes path to long-running.yaml in integration test
* Allow runs with no Conditions to be terminated
* 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
* 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
* skip integration tests when unit test flag is set to true
* wip
* add StorageState enum to proto
* add StorageState to model
* archive proto/model changes
* wip archive endpoint
* wip adding tests
* archive test
* unarchive proto and implementation
* cleanup
* make storage state required, with a default value
* remove unspecified value from storage state enum
* pr comments
* pr comments
* fix archive/unarchive endpoints, add api integration test
* typo
* 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