* Feat: support serviceaccount in multicluster
* Fix: add compatibility & support sa
* Fix: add multicluster sa test
* Fix: add test for upgrade func
* Style: format
* Refactor: set rollout as a pointer reference
see issue #2289 for more details
Closes#2289
* Refactor: set rollout as a pointer reference
see issue #2289 for more details
Closes#2289
* Feat(trait): annotation and labels trait should also affect the workload object along with pod
* Feat(trait): annotation and labels trait should also affect the workload object along with pod
* Feat(trait): annotation and labels trait should also affect the workload object along with pod
* Feat(trait): annotation and labels trait should also affect the workload object along with pod
* Chore: deprecate containerized workload
* Chore: deprecate containerized workload
* Chore: run make reviewable as per review comment
* Chore: fix import
* Chore: merge with master
* Chore: merge with master
* Chore: remove references for containerized workload
* Chore: fix failiing e2e test
* Chore: fix failing e2e test
* Chore: fix failing e2e test
* Chore: fix failing e2e test
* Chore: fix e2e tests
* Chore: fix e2e tests
* Chore: fix e2e tests
* Chore: fix e2e tests
* Chore: fix e2e tests
* Chore: merge with upstream
Co-authored-by: Reeta Singh <reetas@twitter.com>
* Fix: add e2e plugin test back
* Fix: e2e rollout test and try change port to 37081
* Fix: add rollout plan test back
* Refactor: change the workflow state machine and add workflow succeed state
* Refactor: refine definition controller and fix e2e of app revision
* Refactor: unlock all the normal cases
* Fix: add helm schematic logic back into workflow
* Feat(trait): annotation and labels trait should also affect the workload object along with pod
* Feat(trait): annotation and labels trait should also affect the workload object along with pod
* Feat(trait): annotation and labels trait should also affect the workload object along with pod
* Feat(trait): annotation and labels trait should also affect the workload object along with pod
* Feat: vela show annotations display undefined should be refined
Co-authored-by: Reeta Singh <reetas@twitter.com>
The io/ioutil package has been deprecated as of Go 1.16, see
https://golang.org/doc/go1.16#ioutil. This commit replaces the existing
io/ioutil functions with their new definitions in io and os packages.
Signed-off-by: Eng Zer Jun <zerjun@beatchain.co>
* Support Obsevability
- Support displaying and filter logs
- Support metrics and traces
* register datasource
* install prometheus
* install prometheus and register datasource
* Also install and register Prometheus
* remove unneeded file
* register datasource with clusterip
* register prometheus
* Support importing Grafana Dashboard
Added a trait to import Grafana Dashboard on component Grafana
* tmp
* 1. make observability as addon
2. make it more esay to gen addon
* use [[]] as gen addon delim
* url->urls
* add 2 url
* fix template
* fix args
* remove doc
* move url,fix test
* last modify!
* change arg name to grafana-domain
Co-authored-by: zzxwill <zzxwill@gmail.com>
* Feat allow users to specify component revision name
* Add unit tests
Signed-off-by: LeoLiuYan <929908264@qq.com>
* Add ExternalRevision field to ComponentManifest
* Add handleComponentRevisionNameUnspecified func
* Add unit tests for webhook
Signed-off-by: LeoLiuYan <929908264@qq.com>
* Add more unit tests
* Feat allow users to specify component revision name
* Add unit tests
Signed-off-by: LeoLiuYan <929908264@qq.com>
* Add ExternalRevision field to ComponentManifest
* Add handleComponentRevisionNameUnspecified func
* Add unit tests for webhook
Signed-off-by: LeoLiuYan <929908264@qq.com>
* Add more unit tests
* Try to fix webhook unit tests
* fix race (#2040)
* fix test bug
* More unit tst
* More unit test and trigger ci
Co-authored-by: yangsoon <yangsoonlx@gmail.com>
Co-authored-by: Yin Da <yd219913@alibaba-inc.com>
* draft vela def enhancement
* add format and amend test
* fix generation bugs
* force CI
* work around lifecycle definition in avoid of vela show --web crash
* fix data race in envbinding
* upgrade K8s dependency to v0.21
* update CRD for new version of controller-runtime
* fix ci component revision create must fill Raw in runtime.RawExtension
* try fix test
* start control plane timeout set to 1min and fix tests
* add timeout for env test start and stop
* longer timeout time for BeforeSuit function
* upgrade kubebuilder and k8s cluster version to match with v1.21.2 in github action
* fix test
* fix resource tracker ownerRef override
* update developer guides
* enhance `addon enable` command
* fix: initializer requeue twice
fix: initializer won't update status while checking dependency
* not delete ns while disable addon
* add init delete webhook and test
* use poll func
* fix get init logic
* fix get init logic
* fix CI
* fix CI
* unfocus
* check diff
* CI
* - add: list/enable/disable an addon.
- add: test addon
- add: full flux addon
- fix: flaky test
* try again
* 1. add readme
2. gen demo file
* fix ci
* change name
* try again
* allow vela CLI to specify NS
* vela up support application yaml
* fix
* add default cap center to vela CLI
* add alias for `vela components`(`vela comp`,or `vela component`) and `vela traits`(`vela trait`)
* fix cap ls STATUS fields are always "uninstalled"
* fix vela up process
* Revert "allow vela CLI to specify NS"
This reverts commit 33f27362
will refactor to use Initializer
* add --discover for vela CLI
* * rfc capcenter to reuse registry type
* change default cap center to oss
* judge if application file in advance
* fix CI
* try CI
* fix error check
rfc appfile pkg: remove appConfig&component
fix unit test
rfc vela cli dryrun & livediff
fix unit test & e2e test
rfc app controller: remove appConfig&component
fix unit test & e2e test
fix rollout and webhook
fix use AppRevision as others' owner
move ComponentManifest to oam.types
add a util to make conversion between AppConfig and ComponentManifest
complete Component revision mechanism in app controller
add test for component revision
rename
fix unit tests
add clean up for component revision
fix unit test
Signed-off-by: roywang <seiwy2010@gmail.com>
* vela show support show the paramters of KUBE model ComponentDefinition
* fix
* fix
fix
* enchance test case and add function in show -web
fmt and vet
fix
fix522
* add resolve for kubedef type trait in reconcil process
* fix StoreOpenAPISchema args para and ret para
* fix GetCapabilityObject uncover
* Update samples for "vela show xxx --web"
Also stop generating components/traits docs under
docs/en/end-user and remove the command from Makefile
Fix#1602
* fix doc build issue
* Update references/plugins/references.go
Co-authored-by: Jianbo Sun <wonderflow.sun@gmail.com>
* Enhance --web feature for "vela show"
- Find the capability in "vela-system" if notfound in the current ns
- Don't depend on local capabilities
* add ut for GetCapabilityByName in references/plugins/cluster.go
* add ut for GetNamespacedCapabilitiesFromCluster in references/plugins/cluster.go
* add ut for GenerateTerraformCapabilityProperties in references/plugins/references.go
* fix import issue
Co-authored-by: Jianbo Sun <wonderflow.sun@gmail.com>
As we don't need to sync the defintiion .yaml and .cue to local and
then extract it, besides, there is a simliar function "SyncDefinitionsToLocal"
just besides it, rename function "SyncDefinitionToLocal" in order
not to cause confustions
* Support server-side Terraform as cloud resource provider
Provide another schematic `Terraform` to provision cloud
resource.
Fix#698
* make namespace optional
add unit-tests
* support vela show to generate componentdefinition usage
* add unit-tests
* tidy go mod
* clean go mod and updated go sum
* Remove `variable` from `properties` of Terraform compoent
* don't literally set component catagory
* refine error message when a capability could not be found
* fix ut
* Code refactor and add unittests
* fix ci issues
* Update references/plugins/references.go
Co-authored-by: Jianbo Sun <wonderflow.sun@gmail.com>
* add test cases
* fix ci issue
* revert lowercase of "Properties"
* fix ci issue
* add ut for appfile
* fix e2e issue
* add docs
* fix official site build
Co-authored-by: Jianbo Sun <wonderflow.sun@gmail.com>
* Enable "vela show" to support namespaced capability
Provide option `-namespace`, if not set, the default namespace
is default. If not found, as by default, capabilities are located in
vela-system, it will continue to retrieve the capability in
vela-system directory.
Fix#1520
* add e2e tests
* Address comments: Revert env context back
Get namespace from env, instead of adding option "-namespace"
* fix unittest issue
* Address comments
Co-authored-by: Jianbo Sun <wonderflow.sun@gmail.com>
* fix e2e
Co-authored-by: Jianbo Sun <wonderflow.sun@gmail.com>
move dry-run and live-diff into an independent pkg
WIP add sample and doc
WIP unit test for live-diff
add unit test
Signed-off-by: roy wang <seiwy2010@gmail.com>
* add podDisruptive to traitdefinition
* fix docs & example
* fix diff and add docs
* use bool type for podDisruptive
Co-authored-by: 天元 <jianbo.sjb@alibaba-inc.com>
* Support cloud resource provisioning and consuming (Crossplane)
Provided a way to store secret for cloud resource generated by
Crossplane and to consume the secret
Refer to #1128
* Separate cloud resource producer and consumer in two applications
* add unit test to check whether application can consume cloud resource secret
* update Cloud Resource doc
* Provisioning and consuming cloud resource in different applications v1 (one cloud resource)
* one component consumes two cloud resources
Co-authored-by: Jianbo Sun <wonderflow.sun@gmail.com>
fix diff
update example and test data version
fix convert function
fix e2e for helm
clean up creationTimestamp in a hack way
fix ci
pending package suit test
fix group version
fix ci
fix ut
rename type to kind
fix example
fix conflicts
Co-authored-by: yangsoon <yangsoonlx@gmail.com>
* generate appRevision and create AC with the same name
* Update pkg/controller/core.oam.dev/v1alpha2/application/application_controller_test.go
* fix ci
Co-authored-by: Ryan Zhang <yangzhangrice@hotmail.com>
* Store capability OpenAPI V3 JSON schema in ConfigMap
Store the OpenAPI v3 JSON Schema generated from the parameters of
a capability which could be used by api server
To fix#899
address comments
try to fix data race issue
Co-authored-by: Jianbo Sun <wonderflow.sun@gmail.com>
* address comments: generate cue instance from cue json instead of local file
* update ConfigMap data at any time
* add more unit-test
* fix conflicts
* adapt to new spec.schematic.cue.template
* adapt to new spec.schematic.cue.template for controller unittest cases
* fix ci issues
* adapt to namespaced scope definition
* add more testcases on namespaced definitions with and without namespaces
Co-authored-by: Jianbo Sun <wonderflow.sun@gmail.com>
solve failed test
add compatibility test for old crd
add app ns for cli
modify compatibility test
solve compatibility problem
add testing for GetDefinition func with cluster scope CRD
generate code for compatibility-test
move testdata generate to makefile
optimize ci pipeline for compatibility-test