Commit graph

29 commits

Author SHA1 Message Date
Jesse Suen
39b9f4d31a
Add ability to terminate a running operation (resolves #379) (#409) 2018-07-13 17:13:31 -07:00
Jesse Suen
d633f6b299
Support for PreSync, Sync, PostSync resource hooks (#350)
* Rewrite controller sync logic to support workflow-based sync

* Redesign hook implementation to support generic resources as hooks
2018-07-07 00:54:06 -07:00
Jesse Suen
279b01a180
Refresh flag to sync should be optional, not required 2018-06-27 16:31:41 -07:00
Andrew Merenbach
ab00aef75e
Generate swagger files (#278)
* Generate swagger files

* Add basic Swagger definitions

* Add reposerver swagger file

* Consolidate swagger files

* Move swagger files to swagger-ui directory instead

* Put swagger files in swagger-ui

* Fix order of operations

* Move back to swagger directory

* Serve API server swagger files raw for now

* Serve reposerver swagger files from API server

* Move back to subdirectories, thanks @alexmt

* Fix comment on application Rollback

* Update two more comments

* Fix comment in session.proto

* Update generated code

* Update generated swagger docs

* Fix comment for delete actions in cluster and repository swagger

* Set expected collisions and invoke mixins

* Update generated code

* Create swagger mixins from codegen

* Move swagger.json location, thanks @jazminGonzalez-Rivero

* Add ref cleanup for swagger combined

* Make fewer temp files when generating swagger

* Delete intermediate swagger files

* Serve new file at /swagger.json

* Set up UI server

* Update package lock

* Commit generated swagger.json files

* Add install commands for swagger

* Use ReDoc server instead of Swagger UI server

* Update lockfile

* Make URL paths more consistent

* Update package lock

* Separate out handlers for Swagger UI, JSON

* Rm unnecessary CORS headers

...since we're serving from the app server

* Simplify serving

* Further simplify serving code

* Update package lock

* Factor out swagger serving into util

* Add test for Swagger server

* Use ServeSwaggerUI method to run tests

* Update package lock

* Don't generate swagger for reposerver

* Reset to master Gopkg.lock and server/server.go

* Merge in prev change to server/server.go

* Redo changes to Gopkg.lock

* Fix number of conflicts

* Update generated swagger.json for server

* Fix issue with project feature error
2018-06-25 13:49:38 -07:00
Alexander Matyushentsev
81021839d5
Issue #295 - implement app destination permissions validation (#310)
* Issue #295 - implement app destination permissions validation

* Apply reviewer notes. Use project to check application access. Update project access checks

* Use GetProject() instead of project to make sure default value is inferred

* Apply reviewer notes
2018-06-22 10:05:57 -07:00
Jesse Suen
bcc114ec60
Add ability to force a refresh of an app during get (resolves #269) (#293) 2018-06-18 10:22:58 -07:00
Jesse Suen
371492bf5c
Handle case where upsert could be nil. Use proper error codes. More RESTful endpoints 2018-05-31 17:54:27 -07:00
Jesse Suen
7df831e96d
Clean up .proto definitions for consistency and reduction of pointer usage (#253) 2018-05-31 17:21:09 -07:00
Andrew Merenbach
4f68a0f634
Wrap method signatures (#249)
* Update application create to use upsert attribute

* Update CLI interface

* Use pointer to upsert

* Rename DeleteApplicationRequest for parity

* Add new ApplicationUpdateRequest wrapper

* Rename RepoUpdateRequest => RepoRESTUpdateRequest

* Add new RepositoryUpdateRequest

* Rename ClusterUpdateRequest -> ClusterRESTUpdateRequest

* Fix var names

* Update var use

* Use intermediate vars for clarity

* Update generated code

* Update mocks

* Update e2e cluster creation
2018-05-31 14:21:08 -07:00
Andrew Merenbach
0f4f1262af
Add Events API endpoint (#237)
* Flesh out initial endpoint

* Update generated code

* Update prototype for list of events

* Update endpoints

* Update initialization of app service

* Use proper interfaces here

* Use event list

* Use preexisting events list struct

* Simplify initial architecture significantly

* Rename ListDirResponse => FileList, thanks @jessesuen

* Rm unneeded error check

* Narrow down event query, thanks @alexmt

* Use tests to fix bug

* Don't reinvent the wheel

* Rm comment

* Add Uid field, thanks @alexmt @jessesuen

* Update generated files

* Support external clusters, thanks @alexmt

* Filter by proper namespace
2018-05-30 15:30:58 -07:00
Alexander Matyushentsev
96c05babe0
Issue #238 - add upsert flag to 'argocd app create' command (#245) 2018-05-30 13:49:20 -07:00
Andrew Merenbach
f62c825495
Manifest endpoint (#207)
* Add manifests endpoint

* Draft app.go changes

* Fix some issues with imports, symbols, args

* Reduce duplication between components

* Revert "Reduce duplication between components"

This reverts commit 87b166885d53778683bc0a0a826671c2c67dc082.

* Add ManifestQuery type, thanks @jessesuen

* Add required/optional flags to protobuf

* Update generated code

* Add missing pointer dereferences

* Default to app target revision, thanks @jessesuen

* Account for nil
2018-05-17 16:33:04 -07:00
Alexander Matyushentsev
e04d315853
Issue #118 - app delete should be done through controller using finalizers (#206)
* Issue #118 - app delete should be done through controller using finalizers

* Apply reviewer notes: introduce application

* Apply reviewer notes: fix app deletion
2018-05-16 16:30:28 -07:00
Alexander Matyushentsev
3dbbcf8918
Move sync logic to contoller (#180)
* Issue #119 - Move sync logic to contoller

* Implement app compare/sycn e2e test

* Fix panic in kube ApplyResource method

* Apply reviewer notes: add separate rollback operation instead of reusing sync for sync and rollback
2018-05-11 11:50:32 -07:00
Alexander Matyushentsev
1b2f89995c
Issue #155 - Application update failes due to concurrent access (#156) 2018-05-03 15:55:01 -07:00
Alexander Matyushentsev
3c9845719f
Issue #139 - Application sync should delete 'unexpected' resources (#144)
* Issue #139 - Application sync should delete 'unexpected' resources

* Issue #139 - Add --prune flag to app sync and rollback commands

* Apply reviewer notes: s/skipped/ignored/g; take pruned flag into consideration in dry mode
2018-05-01 10:32:46 -07:00
Jesse Suen
36b3b2b853
Switch to gogo/protobuf for golang code generation in order to use gogo extensions 2018-04-24 15:20:59 -07:00
Alexander Matyushentsev
63dafa08cc
Issue #110 - Rollback ignores parameter overrides (#117)
* Issue #110 - Rollback ignores parameter overrides

* Issue #110 - Move rollback functionality to separate API endpoint

* Use status.Errorf to report invalid rollback id parameter
2018-04-24 13:34:03 -07:00
Alexander Matyushentsev
e719035ea5
Allow ignoring recource deletion related errors while deleting application (#98)
* Allow ignoring recource deletion related errors while deleting application

* Rename IgnoreResourceDeletionError to Force
2018-04-18 14:27:37 -07:00
Alexander Matyushentsev
0002f8db9e Issue #75 - Implement delete pod API 2018-04-09 10:40:26 -07:00
Alexander Matyushentsev
59ed50d230 Issue #74 - Implement stream logs API 2018-04-06 13:08:29 -07:00
Alexander Matyushentsev
820b4bac1a Remove obsolete pods api 2018-04-06 10:05:25 -07:00
Alexander Matyushentsev
234ace173e
Replace ephemeral environments with override parameters (#52) 2018-03-26 08:28:56 -07:00
Alexander Matyushentsev
5c062bd3e5
Support deploying/destroying ephemeral environments (#40)
* Support deploying ephemeral environments

* Support deleting application resources

* Fix merge conflict

* Add missing break statement
2018-03-16 16:17:03 -07:00
Alexander Matyushentsev
8081065160 Allow passing version parameter in application/sync API call 2018-03-08 11:18:37 -08:00
Alexander Matyushentsev
2eeeea37ab
Issue #21 - Support rollback without updating spec in git repo (#23) 2018-03-07 14:34:43 -08:00
Jesse Suen
a369d51a27
Add ability to sync an application to its target state 2018-02-28 03:07:56 -08:00
Alexander Matyushentsev
542ee63b3f
Implement application watch API (#12) 2018-02-27 21:37:23 -08:00
Jesse Suen
0932e9c558
Add application CLI sub-command and backend implementation 2018-02-19 03:39:03 -08:00