capactio / hub-manifests Goto Github PK
View Code? Open in Web Editor NEWHolds Capact Hub manifests
License: Apache License 2.0
Holds Capact Hub manifests
License: Apache License 2.0
We should use Capact CLI inside the capact.upgrade
manifest to simplify the upgrade flow, and also maintain just a single upgrade process definition (inside CLI).
Current problems:
For now the knowledge how to use it is internal, and we want to share it with other to get feedback if the generators as usable and if some parts need to be optimized.
Add document about best practices for storing and creating Hub manifests.
Describe:
cap.interface.database.postgresql
instead of cap.interface.postgres
install-0.0.1
, install-0.2.1
"Consistent code is easier to maintain, is easier to rationalize, requires less cognitive overhead, and is easier to migrate or update as new conventions emerge or classes of bugs are fixed."
This task is based on the investigation from capactio/capact#300. See the current doc here.
CStorPoolCluster
node: volume
. If that’s not possible, require volume IDs from user as input params.NOTE: User is still required to provide storageClass
during app installation.
replicaCount: 1
and as shared storage set storageClass: cstor
OpenEBS could provide us a cross-cloud distributed storage without any vendor lock-in. It could also simplify implementation of the backup/restore operations for apps.
Since Kubernetes 1.20, the evicted Pods stay in cluster with failed reason. For example:
cert-manager-webhook-c654fc8b-bqrnd 1/1 Running 0 109m
cert-manager-webhook-c654fc8b-kqgwk 0/1 Shutdown 0 20h
cert-manager-webhook-c654fc8b-st6kd 0/1 Shutdown 0 16h
cert-manager-webhook-c654fc8b-x5kkq 0/1 Shutdown 0 168m
ingress-nginx-controller-bf5464b58-g4ls8 0/1 Shutdown 0 16h
ingress-nginx-controller-bf5464b58-rp2k2 1/1 Running 0 109m
In our Capact upgrade Action we wait for cert-manager and ingress:
hub-manifests/manifests/implementation/capactio/capact/upgrade.yaml
Lines 266 to 281 in 32e1423
Unfortunately we use kubectl wait --for=condition=ready pod -n capact-system --selector=...
which takes into account all Pods also those in failed state which were evicted.
A better approach is to use a dedicated command which understands a given workflow, e.g.: kubectl rollout status sts/neo4j-neo4j-core --watch
Ignore failed Pods which don't impact a given workload
cap.type.database.object.aws.s3
with URL and related credentials for admin (cap.type.aws.credentials
)cap.interface.database.object.aws.s3.install
, takes as an input:cap.type.aws.credentials
,cap.type.database.object.aws.s3
- endpointname
, policy
Add ability to install MinIO and create bucket to extend our Hub manifests base.
Prepare simple manifests, much simpler than the Mattermost one. Think about something like whalesay
example from Docker: https://docs.dockstore.org/en/feature-bcc-2020-notes/docker_instructions.html#part-a-running-containers
- Show the dependencies interchangeability - simple examples
- capactsay
image? 🤔 With different text in a bubble for different Implementations (which output TypeInstance)
Currently, the Mattermost example is complicated to showcase it to the first time clients.
It would be useful to have a dedicated section which discusses the process around contributing new abstractions/core types or updating previously existing abstractions/core types.
All Implementations for Interface capactio.capact.validation.hub.install
are not runnable. After executing Capact Action for this Interface we will get error:
"Cannot render given action: while validating rendered Action: while linting workflow: templates.capact-root.steps[1].start-entrypoint template 'main' type is unknown (will retry - 1/15)"
I can create and execute Action for capactio.capact.validation.hub.install
capact act create cap.interface.capactio.capact.validation.hub.install
This should be fixed, but it will be worth to add additional check for our manifest validation, to check whether Argo workflow is valid and can be rendered.
Write proposal about our approach for automated Hub manifests testing.
capactio/capact
repository summarizing the possibilities with a short comparisonCurrently, to test the manifests inside the hub-manifests
repository, we need to manually run Actions. Our end goal is to have it automated, so that all Implementations are executed to check whether they work properly.
hub-manifests
repository is automatically validated on CI without a need to run Actions manually.When I tried to install some of the manifests using Dashboard UI, there is a problem with providing the additional-parameters for them.
I want to be able to change all of the additional-parameters using Dashboard UI.
I can't provide some of the additional input due to reasons:
Unsupported field schema for field root: Missing items definition.
A mapping of tags to assign to all resources.
dashboard.capact.local
)cap.interface.database.redis
)Redis Install Action
with the cap.implementation.aws.redis.install:0.1.0
and click ,,Provide input"It would be helpful to have the content-specific contribution guidelines, which could discuss the requirements, review process and strategy around content governance & lifecycle.
cap.interface.database.postgresql
instead of cap.interface.postgres
install-0.0.1
, install-0.2.1
"Consistent code is easier to maintain, is easier to rationalize, requires less cognitive overhead, and is easier to migrate or update as new conventions emerge or classes of bugs are fixed."
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.