Commit graph

60 commits

Author SHA1 Message Date
Alexander Matyushentsev
15dfa79708
Issue #357 - Expose application nodes networking information (#1333) 2019-03-29 20:59:25 -07:00
Jesse Suen
39174ab969
Move parameters listing from GenerateManifests to GetAppDetails (#1221)
* Move parameters listing from GenerateManifests to GetAppDetails
* Fix logging to use standard logger to honor CLI loglevel
2019-03-05 14:56:47 -08:00
Jesse Suen
cc7b283f23
Deprecate componentParameterOverrides in favor of source specific config (#1207)
* Deprecate componentParameterOverrides in favor of source specific config
* Support rollback when application source changes
* Removes the legacy spec.source.environment and spec.source.valuesFiles which were deprecated in v0.11
* Fix issue where argocd app create APPNAME --file didn't fail when there were name conflicts
* Fix issue where auto-sync and app deletion would cause infighting
2019-03-04 00:56:36 -08:00
Alexander Matyushentsev
863e66ecde
Support patching resource using REST API (#1186) 2019-02-26 15:57:47 -08:00
Alex Collins
e0594aa9b5
Adds support for patching applications. Closes #1162 (#1166) 2019-02-25 14:25:25 -08:00
Alexander Matyushentsev
cb9eb0a9bb
Issue #937 - Use redis as a shared throwaway cache (#1120) 2019-02-13 15:20:40 -08:00
Jesse Suen
297a91fde4
Refactor packr box usage into new assets library. Add faster DEV_IMAGE build (#1073) 2019-02-01 13:12:52 -08:00
Danny Thomson
204428cf0a Add Patch resource to API server 2019-01-29 11:57:49 -08:00
Jesse Suen
04564add01 Make injected application instance label configurable from default (#944)
* Make injected application instance label configurable from default
Stop removing ksonnet.io/component label, unless using legacy label

* Fix applying of resources when namespace is empty
2018-12-23 22:25:04 -08:00
Alexander Matyushentsev
c904fa9092
Issue 914 - Allow invalidating application related cache (#931) 2018-12-17 18:23:35 -08:00
dthomson25
8ea474a3c9
Remove gracePeriod seconds option from API (#900) 2018-12-07 10:50:40 -08:00
Jesse Suen
689c498549
Add protection from malformed project policies being sent to casbin (#888)
Group and role name validation (resolves #843)
2018-12-06 16:11:59 -08:00
dthomson25
0af3836f74 Add force delete option to API (#891) 2018-12-06 16:00:10 -08:00
Alexander Matyushentsev
c73ea2de1d
Remove parameters field from ApplicationStatus (#872)
* Remove parameters field from ApplicationStatus

* Remove unnecessary override parameters validation
2018-12-04 22:28:58 -08:00
Jesse Suen
f5861aa708 Refactor, consolidate and rename resource type datastructures 2018-12-04 10:03:01 -08:00
Alexander Matyushentsev
246392f0f6
Issue #858 - Support loading resource events for multi-network apps (#865) 2018-12-03 14:53:11 -08:00
Jesse Suen
2c8e9fa9ac
Switch to k8s recommended app.kubernetes.io/instance label (#857)
Remove ability to set helm release name
Reorganize Argo CD constants
2018-11-30 23:54:01 -08:00
Alexander Matyushentsev
6ac3e8ec45
Issue #853 - pod logs does not work in multi namespaced apps (#855) 2018-11-30 15:40:01 -08:00
Jesse Suen
83fb5fb388
Rename 'controlled resources' to 'managed resources' (#850)
Rename 'resources tree' to 'resource tree'
2018-11-30 10:32:31 -08:00
Alexander Matyushentsev
6368a3e548
Refactor application controller (#840)
* Refactor application controller
2018-11-28 13:38:02 -08:00
Jesse Suen
925f9486e3
Restructure application sources to separate types (#799) 2018-11-17 16:20:25 -08:00
Alexander Matyushentsev
44087fa1b5
Issue #621 - Remove resources state from application CRD (#758) 2018-11-16 17:10:04 -08:00
dthomson25
2c8c2fcd64
Support adding name prefix in helm and kustomize (#735) 2018-10-29 16:05:22 -07:00
Jesse Suen
2498f60c57
Update dependencies to k8s v1.12 and client-go v9.0 (#729)
Update dependencies to k8s v1.12 and client-go v9.0 (resolves #353)
Fix issue where applications could not be deleted on k8s v1.12 (resolves #718)
Refactor k8s dynamic resource libraries to promote code reuse
2018-10-28 22:46:13 -07:00
Alexander Matyushentsev
c76db90437
Issue #628 - Remove RollbackOperation in favor of Sync with ParameterOverrides (#706) 2018-10-18 20:23:22 -07:00
Andrew Merenbach
1ba52c8880
Allow more fine-grained sync (closes #508) (#666) 2018-10-10 10:12:20 -07:00
dthomson25
7f84f7d541
Add project get permission automatically to roles (#665) 2018-10-01 12:44:06 -07:00
Andrew Merenbach
f5a32f47d3
Update generated files (#660) 2018-09-27 13:07:16 -07:00
dthomson25
1ba10a1a20
Remove default params from app history (#649) 2018-09-27 11:24:25 -07:00
Jesse Suen
0af77a0706 Add more event sources and provide better detail in event messages (issue #635) (#637)
* Expand SyncOperation to also store parameter overrides
Fix auto-sync when used with parameter overrides

* Add more event sources and provide better detail in event messages (issue #635)
2018-09-24 08:52:43 -07:00
Jesse Suen
dc8a2f5d62
Support for exporting prometheus metrics about ArgoCD applications (#608) 2018-09-17 14:05:11 -07:00
Jesse Suen
39f0a17d0d
Add ability to delete a single application resource (issue #262) (#511) 2018-08-15 15:01:29 -07:00
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
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