* refactor(http): parse axios errors (#6325)
* refactor(home): use endpoint-list as react component [EE-1814] (#6060)
* refactor(home): use endpoint-list as react component
fix(home): add missing features and refactors
- kubebutton
- group name
- poll when endpoint is off
- state management
refactor(endpoints): use stat component
fix(endpoints): add space between items
refactor(endpoints): move stats to components
refactor(endpoints): fetch time
refactor(home): move logic
refactor(home): move fe render logic
refactor(settings): use vanilla js for publicSettings
refactor(kube): remove angular from kube config service
feat(home): add kubeconfig button
feat(home): send analytics when opening kubeconfig modal
fix(home): memoize footer
refactor(home): use react-query for loading
fix(home): show correct control for kubeconfig modal
refactor(home): use debounce
refactor(home): use new components
refactor(home): replace endpoints with environments
refactor(home): move endpoint-list component to home
fix(home): show group name
refactor(home): use switch for environment icon
fix(kubeconfig): fix default case
refactor(axios): use parse axios error
refactor(home): use link components for navigate
fix(home): align azure icon
refactor(home): refactor stats
refactor(home): export envstatusbadge
refactor(home): remove unused bindings
* chore(home): write tests for edge indicator
* chore(home): basic stories for environment item
* style(settings): reformat
* fix(environments): add publicurl
* refactor(home): use table components
* refactor(datatables): merge useSearchBarState
* refactor(home): fetch group in env item
* chore(tests): basic tests
* chore(home): test when no envs
* refactor(tags): use axios for tagService
* refactor(env-groups): use axios for getGroups
* feat(app): ui-state context provider
* refactor(home): create MotdPanel
* refactor(app): create InformationPanel
* feat(endpoints): fetch number of total endpoints
* refactor(app): merge hooks
* refactor(home): migrate view to react [EE-1810]
fixes [EE-1810]
refactor(home): wip use react view
feat(home): show message if no endpoints
refactor(home): show endpoint list
refactor(home): don't use home to manage link
refactor(home): move state
refactor(home): check if edge using util
refactor(home): move inf panels
chore(home): tests
refactor(home): load groups and tags in env-item
refactor(settings): revert publicSettings change
refactor(home): move confirm snapshot method
* fix(home): show tags
* fix(environments): handle missing snapshots
* fix(kube/volumes): fetch pesistent volume claims
* refactor(kube): remove use of endpointProvider
* refactor(endpoints): set current endpoint
* chore(home): add data-cy for tests
* chore(tests): mock axios-progress-bar
* refactor(home): move use env list to env module
* feat(app): sync home view changes with ee
* fix(home): sort page header
* fix(app): fix tests
* chore(github): use yarn cache
* refactor(environments): load list of groups
* chore(babel): remove auto 18n keys extraction
* chore(environments): fix tests
* refactor(k8s/application): use current endpoint
* fix(app/header): add margin to header
* refactor(app): remove unused types
* refactor(app): use rq onError handler
* refactor(home): wrap element with button
* kubernetes sidebar configuration lingo updated
* configurations list view updated
* updated configurations list add config button
* - updated create and update configuration buttons to display type of configuration being created/updated
- configuration filter displays explicit configuration type
* updated create configuration sub-title
* add configmap wording update
* portainer service lingo updated in k8s app creation and update forms
* publishing mode text updates
* KubernetesApplicationPublishingTypes updated INTERNAL and CLUSTER to CLUSTER_IP and NODE_PORT respectively
* application ports datatable updated
* updated service and ingress lingo on application view page
* reduced spacing to fit in ConfigMaps & Secrets in sidenav for different screen res
* converting all kubernetes view reload to partial state heirarchy refresh
* updated helm and kube kustom templates headers to use the reusable k8s page header component
* feat(stack): backport changes to CE EE-1189
* feat(stack): front end backport changes to CE EE-1199 (#5455)
* feat(stack): front end backport changes to CE EE-1199
* fix k8s deploy logic
* fixed web editor confirmation message typo. EE-1501
* fix(stack): fixed issue auth detail not remembered EE-1502 (#5459)
* show status in buttons
* removed onChangeRef function.
* moved buttons in git form to its own component
* removed unused variable.
Co-authored-by: ArrisLee <arris_li@hotmail.com>
* moved formvalue to kube app component
* fix(stack): failed to pull and redeploy compose format k8s stack
* fixed form value
* fix(k8s): file content overridden when deployment failed with compose format EE-1548
* updated API response to get IsComposeFormat and show appropriate text.
* error message updates for different file type
* not display creation source for external application
* added confirmation modal to advanced app created by web editor
* stop showing confirmation modal when updating application
* disable rollback button when application type is not applicatiom form
* added analytics-on directive to pull and redeploy button
* fix(kube): don't valide resource control access for kube (#5568)
* added question marks to k8s app confirmation modal
* fix(k8s): Git authentication info not persisted
* removed unused function.
Co-authored-by: Hui <arris_li@hotmail.com>
Co-authored-by: fhanportainer <79428273+fhanportainer@users.noreply.github.com>
Co-authored-by: Felix Han <felix.han@portainer.io>
* feat(k8s/resource-pool): add the ability to mark/unmark resource pool as system
fix(kube/ns): check label to see if namespace is system
refactor(k8s/namespaces): rename variables
feat(kubernetes): toggle system state in the server (#5361)
fix(app/resource-pool): UI fixes
feat(app/resource-pool): add confirmation modal when unamrking system namespace
* refactor(app): review changes
* feat(app/namespaces): introduce store to retrieve namespace system status without changing all the kubernetes models
refactor(app/namespaces): remove unused code first introduced for system tagging
fix(app/namespaces): cache namespaces to retrieve system status regardless of namespace reference format
refactor(app): migrate namespace store from helper to a separate singleton
refactor(app): remove KubernetesNamespaceHelper from DI cycle
* refactor(app): normalize usage of KubernetesNamespaceHelper functions
* refactor(app/k8s): change namespace store to functions instead of class
Co-authored-by: LP B <xAt0mZ@users.noreply.github.com>
* kubernetes attributes done, swarm attributes halfway, aci to go
* all attributes for cypress selectors added
* kubernetes attributes done, swarm attributes halfway, aci to go
* all attributes for cypress selectors added
* all attributes for cypress selectors added
* fixed files from rebase, added docker sidebar element attributes
* kubernetes attributes done, swarm attributes halfway, aci to go
* all attributes for cypress selectors added
* all attributes for cypress selectors added
* removed files to match develop
* ammended comments
* removed bindings for switch
* feat(k8s/container): metrics layout
* feat(k8s/container): memory graph
* feat(k8s/container): cpu usage percent
* feat(k8s/metrics): metrics api validation to enable metrics server
* feat(k8s/pods): update error metrics view
* feat(k8s/container): improve stopRepeater function
* feat(k8s/pods): display empty view instead of empty graphs
* feat(k8s/pods): fix CPU usage
* feat(k8s/configure): fix the metrics server test
* feat(k8s/pod): fix cpu issue
* feat(k8s/pod): fix toaster for non register pods in metrics server
* feat(k8s/service): remove options before 30 secondes for refresh rate
* feat(k8s/pod): fix default value for the refresh rate
* feat(k8s/pod): fix rebase
* refactor(app): backport technical changes
* refactor(app): remove EE only features
* feat(app): small review changes to match EE codebase layout on some files
Co-authored-by: xAt0mZ <baron_l@epitech.eu>
* feat(app): sort environment variables
* feat(k8s/application): improve the sorting for the env variables when creating/editing application
* feat(k8s/application): update the removal of the env var
* feat(docker/service): improve the sorting order for env var in service edition view
* feat(placement): Add a warning notification under the placement tab when an application cannot be scheduled on any node in the cluster
* fix(applications): if there is at least one node the application can schedule on, then do not show the warning
* feat(k8s/resources-list-view): add advanced deployment panel to applications view, configurations view and volumes view
* feat(k8s/resources-list-view): move advanced deployment into a template and use it everywhere
* feat(k8s/configure): separate ingress class name and ingress class type
* feat(k8s/resource-pool): ability to add custom annotations to ingress classes on RP create/edit
* feat(k8s/ingresses): remove 'allow users to use ingress' switch
* feat(k8s/configure): minor UI update
* feat(k8s/resource-pool): minor UI update
* feat(k8s/application): update ingress route form validation
* refactor(k8s/resource-pool): remove console.log statement
* feat(k8s/resource-pool): update ingress annotation placeholders
* feat(k8s/configure): add pattern form validation on ingress class
* fix(k8s/resource-pool): automatically associate ingress class to ingress
* fix(k8s/resource-pool): fix invalid ingress when updating a resource pool
* fix(k8s/resource-pool): update ingress rewrite target annotation value
* feat(k8s/application): ingress form validation
* fix(k8s/application): squash ingress rules with empty host inside a single one
* feat(k8s/resource-pool): ingress host validation
* fix(k8s/resource-pool): rewrite rewrite option and only display it for ingress of type nginx
* feat(k8s/application): do not expose ingress applications over node port
* feat(k8s/application): add specific notice for ingress
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* feat(application): Support multi-container pods applications
* feat(application): Support multi-container pods applications
* fix(application): use only one pod in app details and fix logs and console links
* fix(application): show all containers in containers datatable
* fix(application): fix order by pod name
* feat(k8s/application): minor UI update
* feat(k8s/application): minor UI update
* feat(k8s/application): minor UI update
* feat(k8s/application): minor UI update
* feat(k8s/application): minor UI update
* fix(application): fix persisted folders in application details
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* feat(node): Add the ability to apply taints and labels to nodes
* feat(k8s/node): minor UI update
* feat(k8s/node): UI update and disable system labels
* feat(k8s/node): minor UI update
* fix(node): fix add first taint
* refacto(node): add KubernetesNodeHelper
* feat(node): add used label to labels
* feat(node): add node update modals
* fix(node): modal when used label changes
* feat(k8s/node): minor UI update
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* feat(application): add horizontalpodautoscaler creation
* feat(application): Add the ability to set the auto-scale policy of an application
* feat(k8s/application): minor UI update
* fix(application): set api version and prevent to use hpa with global deployment type
* feat(settings): add a switch to enable features based on server metrics
* feat(k8s/applications): minor UI update
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* feat(k8s/application): expose placement conditions
* feat(k8s/applications): minor UI update
* feat(k8s/application): update message for admin and non admin users
* feat(kubernetes/applications): minor UI update
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* feat(kubernetes): add ingress details
* fix(kubernetes): fix broken ingress generated links + ignore IP retrieval/display info on missing LB ingress ip
* refactor(kubernetes): each ingress rule in apps port mappings has now its own row
* feat(kubernetes): remove protocol column and concat it to container port
* feat(kubernetes): edit display of ingress rules in application details
* feat(kubernetes): minor UI update
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>