kintoproj / kintohub Goto Github PK
View Code? Open in Web Editor NEWCommon project repo for all Kinto Projects
Home Page: https://www.kintohub.com
License: Apache License 2.0
Common project repo for all Kinto Projects
Home Page: https://www.kintohub.com
License: Apache License 2.0
The login feature on https://www.kintohub.com/ is not working.
Is your feature request related to a problem? Please describe.
Sixergame has their dev, staging and prod running on the same node pool atm.
For security reasons, they would like to segregate their prod services from their dev/staging services. Meaning different node pools running in different subnets.
Describe the solution you'd like
Add an "advanced config" for every service so that user can specify "labels" for targetting node pools.
It would be hard to explain KintoHub without a simple and clear architecture diagram.
We should add a page on docs to describe what components/modules KintoHub has, to give a clear idea for a new user/contributors
Is your feature request related to a problem? Please describe.
We confirmed being able to install KintoHub on Minikube -> https://www.kintohub.com/installation/minikube
We need also be able to install it on K3s and provide a doc for that.
Describe the solution you'd like
Test the deployment of KintoHub on K3s and create a page in our kinto-docs for that.
Need to merge all current repositories into one catalog repository.
for the ephemeral storage by default it is 1GB. But if you build with nodejs (not via Dockerfile) it may failed because the node_modules may eventually exceeds 1GB.
Idea is, on the installation docs (getting started page) we should include the parameter to set it to a higher value (something like 2GB or even 5GB, depending how much the initial disk were), making sure we should be able to build and deploy a simple nodejs app on a new cluster which installed Kinto. (e.g. DO)
here is the parameter on helm chart
https://github.com/kintoproj/kinto-helm/blob/main/charts/kinto/values.yaml#L83
it should be something like
--set builder.env. ARGO_WORKFLOW_VOLUME_SIZE=2Gi
Is your feature request related to a problem? Please describe.
New contributors cannot start development easily unless they reach out to core contributors.
Describe the solution you'd like
Folder location: https://github.com/kintoproj/kintohub/tree/main/builder/images
Images:
Get all the yml files merged into this repository.
While suspending a cronjob, it gets failed.
On console I get this error message :
ERR Error during cronjobs suspension cronjobsSuspension=[" \"\" is invalid: patch: Invalid value: \"{\\\"apiVersion\\\":\\\"batch/v1beta1\\\",\\\"kind\\\":\\\"CronJob\\\",\\\"metadata\\\":{\\\"name\\\":\\\"asset-daily\\\",\\\"namespace\\\":\\\"602fae39ea073d8689700594\\\",\\\"uid\\\":\\\"baa61aa1-377b-4803-99ec-5eee42c23497\\\",\\\"resourceVersion\\\":\\\"6494059\\\",\\\"creationTimestamp\\\":\\\"2021-03-02T19:01:04Z\\\",\\\"labels\\\":{\\\"app\\\":\\\"asset-daily\\\",\\\"env\\\":\\\"602fae39ea073d8689700594\\\",\\\"owner\\\":\\\"kinto\\\"},\\\"managedFields\\\":[{\\\"manager\\\":\\\"kintodeploy\\\",\\\"operation\\\":\\\"Update\\\",\\\"apiVersion\\\":\\\"batch/v1beta1\\\",\\\"time\\\":\\\"2021-03-02T19:01:04Z\\\",\\\"fieldsType\\\":\\\"FieldsV1\\\",\\\"fieldsV1\\\":{\\\"f:metadata\\\":{\\\"f:labels\\\":{\\\".\\\":{},\\\"f:app\\\":{},\\\"f:env\\\":{},\\\"f:owner\\\":{}}},\\\"f:spec\\\":{\\\"f:concurrencyPolicy\\\":{},\\\"f:failedJobsHistoryLimit\\\":{},\\\"f:jobTemplate\\\":{\\\"f:metadata\\\":{\\\"f:labels\\\":{\\\".\\\":{},\\\"f:app\\\":{},\\\"f:env\\\":{},\\\"f:owner\\\":{}}},\\\"f:spec\\\":{\\\"f:activeDeadlineSeconds\\\":{},\\\"f:backoffLimit\\\":{},\\\"f:template\\\":{\\\"f:metadata\\\":{\\\"f:labels\\\":{\\\".\\\":{},\\\"f:app\\\":{},\\\"f:env\\\":{},\\\"f:owner\\\":{},\\\"f:release\\\":{}}},\\\"f:spec\\\":{\\\"f:automountServiceAccountToken\\\":{},\\\"f:containers\\\":{\\\"k:{\\\\\\\"name\\\\\\\":\\\\\\\"asset-daily\\\\\\\"}\\\":{\\\".\\\":{},\\\"f:env\\\":{\\\".\\\":{},\\\"k:{\\\\\\\"name\\\\\\\":\\\\\\\"cron_type\\\\\\\"}\\\":{\\\".\\\":{},\\\"f:name\\\":{},\\\"f:value\\\":{}},\\\"k:{\\\\\\\"name\\\\\\\":\\\\\\\"envtag\\\\\\\"}\\\":{\\\".\\\":{},\\\"f:name\\\":{},\\\"f:value\\\":{}},\\\"k:{\\\\\\\"name\\\\\\\":\\\\\\\"pool_database\\\\\\\"}\\\":{\\\".\\\":{},\\\"f:name\\\":{},\\\"f:value\\\":{}},\\\"k:{\\\\\\\"name\\\\\\\":\\\\\\\"pool_host\\\\\\\"}\\\":{\\\".\\\":{},\\\"f:name\\\":{},\\\"f:value\\\":{}},\\\"k:{\\\\\\\"name\\\\\\\":\\\\\\\"pool_max\\\\\\\"}\\\":{\\\".\\\":{},\\\"f:name\\\":{},\\\"f:value\\\":{}},\\\"k:{\\\\\\\"name\\\\\\\":\\\\\\\"pool_password\\\\\\\"}\\\":{\\\".\\\":{},\\\"f:name\\\":{},\\\"f:value\\\":{}},\\\"k:{\\\\\\\"name\\\\\\\":\\\\\\\"pool_port\\\\\\\"}\\\":{\\\".\\\":{},\\\"f:name\\\":{},\\\"f:value\\\":{}},\\\"k:{\\\\\\\"name\\\\\\\":\\\\\\\"pool_user\\\\\\\"}\\\":{\\\".\\\":{},\\\"f:name\\\":{},\\\"f:value\\\":{}},\\\"k:{\\\\\\\"name\\\\\\\":\\\\\\\"slack_webhook\\\\\\\"}\\\":{\\\".\\\":{},\\\"f:name\\\":{},\\\"f:value\\\":{}}},\\\"f:image\\\":{},\\\"f:imagePullPolicy\\\":{},\\\"f:name\\\":{},\\\"f:resources\\\":{\\\".\\\":{},\\\"f:limits\\\":{\\\".\\\":{},\\\"f:cpu\\\":{},\\\"f:memory\\\":{}},\\\"f:requests\\\":{\\\".\\\":{},\\\"f:cpu\\\":{},\\\"f:memory\\\":{}}},\\\"f:terminationMessagePath\\\":{},\\\"f:terminationMessagePolicy\\\":{}}},\\\"f:dnsPolicy\\\":{},\\\"f:restartPolicy\\\":{},\\\"f:schedulerName\\\":{},\\\"f:securityContext\\\":{},\\\"f:terminationGracePeriodSeconds\\\":{}}}}},\\\"f:schedule\\\":{},\\\"f:successfulJobsHistoryLimit\\\":{},\\\"f:suspend\\\":{}}}}]},\\\"spec\\\":{\\\"concurrencyPolicy\\\":\\\"Forbid\\\",\\\"failedJobsHistoryLimit\\\":5,\\\"jobTemplate\\\":{\\\"metadata\\\":{\\\"creationTimestamp\\\":null,\\\"labels\\\":{\\\"app\\\":\\\"asset-daily\\\",\\\"env\\\":\\\"602fae39ea073d8689700594\\\",\\\"owner\\\":\\\"kinto\\\"}},\\\"spec\\\":{\\\"activeDeadlineSeconds\\\":1800,\\\"backoffLimit\\\":0,\\\"template\\\":{\\\"metadata\\\":{\\\"creationTimestamp\\\":null,\\\"labels\\\":{\\\"app\\\":\\\"asset-daily\\\",\\\"env\\\":\\\"602fae39ea073d8689700594\\\",\\\"owner\\\":\\\"kinto\\\",\\\"release\\\":\\\"d70e8a0b-d4e2-494b-909a-2aaf852d8bf0\\\"}},\\\"spec\\\":{\\\"containers\\\":[{\\\"name\\\":\\\"asset-daily\\\",\\\"image\\\":\\\"368321788536.dkr.ecr.ap-south-1.amazonaws.com/asset-daily:73553b4\\\",\\\"env\\\":,\\\"resources\\\":{\\\"limits\\\":{\\\"cpu\\\":\\\"200m\\\",\\\"memory\\\":\\\"512Mi\\\"},\\\"requests\\\":{\\\"cpu\\\":\\\"200m\\\",\\\"memory\\\":\\\"512Mi\\\"}},\\\"terminationMessagePath\\\":\\\"/dev/termination-log\\\",\\\"terminationMessagePolicy\\\":\\\"File\\\",\\\"imagePullPolicy\\\":\\\"IfNotPresent\\\"}],\\\"restartPolicy\\\":\\\"Never\\\",\\\"terminationGracePeriodSeconds\\\":30,\\\"dnsPolicy\\\":\\\"ClusterFirst\\\",\\\"automountServiceAccountToken\\\":false,\\\"securityContext\\\":{},\\\"schedulerName\\\":\\\"default-scheduler\\\"}}}},\\\"schedule\\\":\\\"0 0 * * *\\\",\\\"successfulJobsHistoryLimit\\\":5,\\\"suspend\\\":\\\"true\\\"},\\\"status\\\":{}}\": v1beta1.CronJob.Spec: v1beta1.CronJobSpec.Suspend: ReadBool: expect t or f, but found \", error found in #10 byte of ...|suspend\":\"true\"},\"st|..., bigger context ...| * * *\",\"successfulJobsHistoryLimit\":5,\"suspend\":\"true\"},\"status\":{}}|..."]
FTL error happened during the cronjob suspension
HI all,
First of all congratz for this amazing product.
I would like to use kintohub as the management platform for my kubernetes cluster but i see that it seems that is not actively maintained therefore i have a couple of questions:
Thx in advanced for your answer!
Is your feature request related to a problem? Please describe.
For releasing a new release (a new version of a helm chart), we didn't test and guarantee there are no obvious/blocking bugs.
Describe the solution you'd like
We should have an automated e2e tests that spin a new k8s cluster and install KintoHub on it, and test deploying all major types of services to guarantee they all work fine.
This would be complex and also resource-intensive but I would put it onto the list first to make sure our future developments are testable/test-oriented.
Is your feature request related to a problem? Please describe.
Exposing kintohub publicly is a serious security breach since there is no user management or password to access it.
KintoHub is mostly supposed to be a kubernetes dashboard that users port-forward into.
However, it might be good to be able to expose publicly but protect it with a strong secret key, similar to what Hasura is doing.
Describe the solution you'd like
Add an option to set a secret key on kinto-core and kinto-dashboard so that users must provide this key to access kintohub.
Describe the bug
On new vanilla kintohub cluster, we can't a deploy catalog service with persistent storage because it is trying to use the storage class ssd
while it does not exist by default on the cluster.
Expected behavior
We should change all our helm charts to not use the ssd
sc (they will use the standard
default one).
And we should also move them to kintoproj
under the same repository. That means a change in kinto-frontend is needed too.
for "How-to deploy KintoHub on X" series
for "How-to deploy KintoHub on X" series
It should be just helm upgrade
but it is nice to provide a page on how to upgrade and what things we need to pay attention to while upgrading
new user may not understand how to create/configure the k8s cluster
we should have some screenshots showing them how to do it
Is your feature request related to a problem? Please describe.
Now that KintoHub is an abstraction of Kubernetes, we need to show more information on the dashboard. For example, a cronjob that is not running might have precious information in the k8s events. So we need to display the events to the user.
Describe the solution you'd like
Add a new tab on the service's page that will display the kubernetes event for a specific service.
Since it is possible to deploy KintoHub on DO with a single 1GB node,
we should create a document describing the steps
Note for setting up on DO:
set --set controller.containerRuntimeExecutor=kubelet \
when installing argo (DO default using k8s v1.20+)
configure the network policy (DO default enabled network policy)
for "How-to deploy KintoHub on X" series
Describe the bug
We can't push images to DO's container registry
To Reproduce
https://cloudsupport.digitalocean.com/s/case/5004P00001RmkFMQAZ/kaniko-push-permission
Expected behavior
It should work
We should also mention how to set a secret token when installing KintoHub with public dashboard
user may not understand what is the minimum requirement for running KintoHub/k8s
include system requirements for page Deploy on Minikube
and Deploy on Digital Ocean
e.g. Node group/ memory/CPU
we want to keep kintohub as a monorepo
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.