* refactor(oauth): move oauth client code
* feat(oauth): move extension code into server code
* feat(oauth): enable oauth without extension
* refactor(oauth): make it easier to remove providers
* feat(kubernetes): fix duplicate published mode
* feat(kubernetes): group port mappings by applications
* feat(kubernetes): updated UX
* feat(kubernetes): updated UX
* feat(kubernetes): new applications list view
* fix(kubernetes): applications - expand ports on row click
* refactor(kubernetes): applications - replace old view with new
* fix(kubernetes): disable access management for default resource pool
* feat(kubernetes): app creation - limit stacks suggestion to selected resource pool
* feat(kubernetes): do not allow access management on system resource pools
* refactor(kubernetes): refactor services
* create view node detail
* compute node status
* compute resource reservations
* resource reservation progress bar
* create applications node datatable
* fix(kubernetes): fix invalid method name
* feat(kubernetes): minor UI changes
* feat(kubernetes): update application inspect UI
* feat(kubernetes): add the ability to copy load balancer IP
* fix(kubernetes): minor fixes on applications view
* feat(kubernetes): set usage level info on progress bars
* fix(kubernetes): fix an issue with duplicate pagination controls
* fix(kubernetes): fix an issue with unexpandable items
* refacto(kubernetes): clean status and resource computation
* fix(kubernetes): remove a bad line
* feat(kubernetes): update application detail view
* feat(kubernetes): change few things on view
* refacto(kubernetes): Corrections relative to PR #13
* refacto(kubernetes): remove old functions
* feat(kubernetes): add application pod logs
* fix(kubernetes): PR #13
* feat(kubernetes): Enable quotas by default
* feat(kubernetes): allow non admin to have access to ressource pool list/detail view
* feat(kubernetes): UI changes
* fix(kubernetes): fix resource reservation computation in node view
* fix(kubernetes): pods are correctly filter by app name
* fix(kubernetes): nodeapplicationsdatatable is correctly reorder by cpu and memory
* fix(kubernetes): nodeapplications datatable is correctly reorder on reload
* feat(kubernetes): update podService
* refacto(kubernetes): rename nodeInspect as node
* refaceto(kubernetes): use colspan 6 instead of colspan 3
* refacto(kubernetes): use genericdatatablecontroller and make isadmin a binding
* refacto(kubernetes): remove not needed lines
* refacto(kubernetes) extract usageLevelInfo as html filter
* refacto(kubernetes): no line break for params
* refacto(kubernetes): change on node converter and filters
* refacto(kubernetes): remove bad indentations
* feat(kubernetes): add plain text informations about resources limits for non admibn user
* refacto(kubernetes): ES6 format
* refacto(kubernetes): format
* refacto(kubernetes): format
* refacto(kubernetes): add refresh callback for nodeapplicationsdatatable
* refacto(kubernetes): change if else structure
* refactor(kubernetes): files naming and format
* fix(kubernetes): remove checkbox and actions on resourcespools view for non admin
* feat(kubernetes): minor UI update
* fix(kubernetes): bind this on getPodsApplications to allow it to access $async
* fix(kubernetes): bind this on getEvents to allow it to access $async
* fix(kubernetes): format
* feat(kubernetes): minor UI update
* feat(kubernetes): add support for container console
* fix(kubernetes): fix a merge issue
* feat(kubernetes): update container console UI
* fix(api): fix typo
* feat(api): proxy pod websocket to agent
* fix(api): fix websocket pod proxy
* refactor(kubernetes): uniformize k8s merge comments
* refactor(kubernetes): update consoleController
* feat(kubernetes): prevent the removal of the default resource pool (#38)
* feat(kubernetes): show all applications running inside the resource pool (#35)
* add new datatable
* feat(kubernetes): add resource pool applications datatable to resource pool detail view
* refacto(kubernetes): factorise computeResourceReservation
* fix(kubernetes): colspan 6 to colspan 5
* fix(kubernetes): rename resourceReservationHelper into kubernetesResourceReservationHelper
* fix(kubernetes): add await to avoid double diggest cycles
* feat(kubernetes): add link to application name
* fix(kubernetes): change kubernetes-resource-pool-applications-datatable table key
* fix(kubernetes): change wording
* feat(kubernetes): add proper support for persisted folders (#36)
* feat(kubernetes): persistent volume mockups
* feat(kubernetes): persistent volume mockups
* feat(kubernetes): update persisted folders mockups
* feat(kubernetes): endpoint configure storage access policies
* fix(kubernetes): restrict advanced deployment to admin
* refactor(kubernetes): storageclass service / rest / model
* refactor(kubernetes): params/payload/converter pattern for deployments and daemonsets
* feat(kubernetes): statefulset management for applications
* fix(kubernets): associate application and pods
* feat(kubernetes): statefulset support for applications
* refactor(kubernetes): rebase on pportainer/k8s
* fix(kubernetes): app create - invalid targetPort on loadbalancer
* fix(kubernetes): internal services showed as loadbalancer
* fix(kubernetes): service ports creation / parsing
* fix(kubernetes): remove ports on headless services + ensure nodePort is used only for Cluster publishing
* fix(kubernetes): delete headless service on statefulset delete
* fix(kubernetes): statefulset replicas count display
* refactor(kubernetes): rebase on pportainer/k8s
* refactor(kubernetes): cleanup
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* fix(kubernetes): remove mockup routes
* feat(kubernetes): only display applications running on node/in resource pool when there are any
* feat(kubernetes): review resource reservations and leverage requests instead of limits (#40)
* fix(kubernetes): filter resource reservation by app in node view (#48)
* refactor(kubernetes): remove review comment
* chore(version): bump version number
* refactor(kubernetes): remove unused stacks view and components
* feat(kubernetes): update CPU slider step to 0.1 for resource pools (#60)
* feat(kubernetes): round up application CPU values (#61)
* feat(kubernetes): add information about application resource reservat… (#62)
* feat(kubernetes): add information about application resource reservations
* feat(kubernetes): apply kubernetesApplicationCPUValue to application CPU reservation
* refactor(kubernetes): services layer with models/converter/payloads (#64)
* refactor(kubernetes): services layer with models/converter/payloads
* refactor(kubernetes): file rename and comment update
* style(kubernetes): replace strings double quotes with simple quotes
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* fix(kubernetes): filter application by node in node detail view (#69)
* fix(kubernetes): filter applications by node
* fix(kubernetes): remove js error
* refactor(kubernetes): delete resource quota deletion process when deleting a resource pool (#68)
* feat(kubernetes): enforce valid resource reservations and clarify its… (#70)
* feat(kubernetes): enforce valid resource reservations and clarify its usage
* feat(kubernetes): update instance count input behavior
* feat(kubernetes): resource pools labels (#71)
* feat(kubernetes): resource pools labels
* fix(kubernetes): RP/RQ/LR owner label
* feat(kubernetes): confirmation popup on RP delete (#76)
* feat(kubernetes): application labels (#72)
* feat(kubernetes): application labels
* feat(kubernetes): display application owner in details when available
* style(kubernetes): revert StackName column labels
* fix(kubernetes): default displayed StackName
* feat(kubernetes): remove RQ query across cluster (#73)
* refactor(kubernetes): routes as components (#75)
* refactor(kubernetes): routes as components
* refactor(kubernetes): use component lifecycle hook
* refactor(kubernetes): files naming consistency
* fix(kubernetes): fix invalid component name for cluster view
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* feat(kubernetes): update portaineruser cluster role policy rules (#78)
* refactor(kubernetes): remove unused helper
* fix(kubernetes): fix invalid reload link in cluster view
* feat(kubernetes): add cluster resource reservation (#77)
* feat(kubernetes): add cluster resource reservation
* fix(kubernetes): filter resource reservation with applications
* fix(kubernetes): fix indent
* refacto(kubernetes): extract megabytes value calc as resourceReservationHelper method
* fix(kubernetes): remove unused import
* refacto(kubernetes): add resourcereservation model
* fix(kubernetes): add parenthesis on arrow functions parameters
* refacto(kubernetes): getpods in applicationService getAll
* fix(kubernetes): let to const
* fix(kubernetes): remove unused podservice
* fix(kubernetes): fix computeResourceReservation
* fix(kubernetes): app.pods to app.Pods everywhere and camelcase of this.ResourceReservation
* feat(kubernetes): configurations list view (#74)
* feat(kubernetes): add configuration list view
* feat(kubernetes): add configurations datatable
* feat(kubernetes): add item selection
* feat(kubernetes): allow to remove configuration
* feat(kubernetes): allow non admin user to see configurations
* fix(kubernetes): configurations view as component
* feat(kubernetes): remove stack property for secret and configurations
* fix(kubernetes): update import
* fix(kubernetes): remove secret delete payload
* fix(kubernetes): rename configuration model
* fix(kubernetes): remove configmap delete payload
* fix(Kubernetes): fix configuration getAsync
* fix(kubernetes): extract params as variables
* refacto(kubernetes): extract configurations used lines as helper
* fix(kubernetes): add verification of _.find return value
* fix(kubernetes): fix kubernetes configurations datatable callback
* refacto(Kubernetes): extract find before if
* fix(kubernetes): replace this by KubernetesConfigurationHelper in static method
* fix(Kubernetes): fix getASync
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* review(kubernetes): todo comments (#80)
* feat(kubernetes): minor UI update
* feat(kubernetes): round max cpu value in application creation
* feat(kubernetes): minor UI update
* fix(kubernetes): no-wrap resource reservation bar text (#89)
* docs(kubernetes): add review for formValues to resource conversion (#91)
* feat(kubernetes): configuration creation view (#82)
* feat(kubernetes): create configuration view
* feat(kubernetes): add advanced mode and create entry from file
* fix(kubernetes): fix validation issues
* fix(kubernetes): fix wording
* fix(kubernetes): replace data by stringdata in secret payloads
* fix(kubernetes): rename KubernetesConfigurationEntry to KubernetesConfigurationFormValuesDataEntry
* refacto(kubernetes): add isSimple to formValues and change configuration creation pattern
* fix(kubernetes): fix some bugs
* refacto(kubernetes): renaming
* fix(kubernetes): fix few bugs
* fix(kubernetes): fix few bugs
* review(kubernetes): refactor notices
Co-authored-by: xAt0mZ <baron_l@epitech.eu>
* feat(kubernetes): rename codeclimate file
* feat(kubernetes): re-enable codeclimate
* feat(project): update codeclimate configuration
* feat(project): update codeclimate configuration
* feat(project): update codeclimate configuration
* feat(kubernetes): minor UI update
* feat(project): update codeclimate
* feat(project): update codeclimate configuration
* feat(project): update codeclimate configuration
* feat(kubernetes): configuration details view (#93)
* feat(kubernetes): configuration details view
* fix(kubernetes): fix wording
* fix(kubernetes): fix update button
* fix(kubernetes): line indent
* refacto(kubernetes): remove conversion
* refacto(kubernetes): remove useless line
* refacto(kubernetes): remove useless lines
* fix(kubernetes): revert error handling
* fix(kubernetes): fix wording
* fix(kubernetes): revert line deletion
* refacto(kubernetes): change data mapping
* fix(kubernetes): create before delete
* fix(kubernetes): fix duplicate bug
* feat(kubernetes): configurations in application creation (#92)
* feat(kubernetes): application configuration mockups
* feat(kubernetes): update mockup
* feat(kubernetes): app create - dynamic view for configurations
* feat(kubernetes): app create - configuration support
* refactor(kubernetes): more generic configuration conversion function
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* feat(kubernetes): automatically display first entry in configuration creation
* feat(kubernetes): minor UI update regarding applications and configurations
* feat(kubernetes): update Cluster icon in sidebar
* feat(kubernetes): volumes list view (#112)
* feat(kubernetes): add a feedback panel on main views (#111)
* feat(kubernetes): add a feedback panel on main views
* feat(kubernetes): add feedback panel to volumes view
* fix(kubernetes): isolated volumes showed as unused even when used (#116)
* feat(kubernetes): remove limit range from Portainer (#119)
* limits instead of requests (#121)
* feat(kubernetes): volume details (#117)
* feat(kubernetes): volume details
* fix(kubernetes): yaml not showed
* feat(kubernetes): expandable stacks list (#122)
* feat(kubernetes): expandable stacks list
* feat(kubernetes): minor UI update to stacks datatable
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* feat(kubernetes): uibprogress font color (#129)
* feat(kubernetes): minor UI update to resource reservation component
* feat(kubernetes): automatically select a configuration
* refactor(kubernetes): remove comment
* feat(kubernetes): minor UI update
* feat(kubernetes): add resource links and uniformize view headers (#133)
* feat(kubernetes): prevent removal of system configurations (#128)
* feat(kubernetes): prevent removal of system configurations
* fix(kubernetes): KubernetesNamespaceHelper is not a function
* refacto(kubernetes): change prevent removal pattern
* fix(kubernetes): remove unused dependencies
* fix(kubernetes): fix configuration used label (#123)
* fix(kubernetes): fix used configurations
* fix(kubernetes): remove console log
* feat(kubernetes): rename configuration types (#127)
* refacto(kubernetes): fix wording and use configMap instead of Basic in the code
* feat(kubernetes): prevent the removal of system configuration
* fix(kubernetes): remove feat on bad branch
* fix(kubernetes): rename configuration types
* refacto(kubernetes): use a numeric enum and add a filter to display the text type
* refacto(kubernetes): fix wording and use configMap instead of Basic in the code
* feat(kubernetes): prevent the removal of system configuration
* fix(kubernetes): remove feat on bad branch
* fix(kubernetes): rename configuration types
* refacto(kubernetes): use a numeric enum and add a filter to display the text type
* fix(kubernetes): rename file and not use default in switch case
* feat(kubernetes): update advanced deployment UI/UX (#130)
* feat(kubernetes): update advanced deployment UI/UX
* feat(kubernetes): review HTML tags indentation
* feat(kubernetes): applications stacks delete (#135)
* fix(kubernetes): multinode resources reservations (#118)
* fix(kubernetes): filter pods by node
* fix(kubernetes): fix applications by node filter
* fix(kubernetes): filter pods by node
* Update app/kubernetes/views/cluster/node/nodeController.js
Co-authored-by: Anthony Lapenna <anthony.lapenna@portainer.io>
* feat(kubernetes): limit usage of pod console view (#136)
* feat(kubernetes): add yaml and events to configuration details (#126)
* feat(kubernetes): add yaml and events to configuration details
* fix(kubernetes): fix errors on secret details view
* fix(kubernetes): display only events related to configuration
* fix(kubernetes): fix applications by node filter
* fix(kubernetes): revert commit on bad branch
* refacto(kubernetes): refacto configmap get yaml function
* refacto(kubernetes): add yaml into converter
* feat(kubernetes): improve application details (#141)
* refactor(kubernetes): remove applications retrieval from volume service
* feat(kubernetes): improve application details view
* feat(kubernetes): update kompose binary version (#143)
* feat(kubernetes): update kubectl version (#144)
* refactor(kubernetes): rename portainer system namespace (#145)
* feat(kubernetes): add a loading view indicator (#140)
* feat(kubernetes): add an example of view loading indicator
* refactor(css): remove comment
* feat(kubernetes): updated loading pattern
* feat(kubernetes): add loading indicator for resource pool views
* feat(kubernetes): add loading indicator for deploy view
* feat(kubernetes): add loading view indicator to dashboard
* feat(kubernetes): add loading view indicator to configure view
* feat(kubernetes): add loading indicator to configuration views
* feat(kubernetes): add loading indicator to cluster views
* feat(kubernetes): rebase on k8s branch
* feat(kubernetes): update icon size
* refactor(kubernetes): update indentation and tag format
* feat(kubernetes): backend role validation for stack deployment (#147)
* feat(kubernetes): show applications when volume is used
* feat(kubernetes): set empty value when node is not set
* feat(kubernetes): update configuration UI/UX
* feat(kubernetes): update configuration UX
* fix(kubernetes): Invalid value for a configuration (#139)
* fix(kubernetes): Invalid value for a configuration
* fix(kubernetes): remove auto JSON convertion for configMap ; apply it for RPool Accesses only
* refactor(kubernetes): remove unneeded line
* fix(kubernetes): remove default JSON parsing on configMap API retrieval
Co-authored-by: xAt0mZ <baron_l@epitech.eu>
* feat(kubernetes): applications table in configuration details (#154)
* feat(kubernetes): Add the ability to filter system resources (#142)
* feat(kubernetes): hide system configurations
* feat(kubernetes): Add the ability to filter system resources
* feat(kubernetes): add the ability to hide system resources on volumes
* fix(kubernetes): fix few issue in volumesDatatableController
* fix(kubernetes): fix applications / ports / stacks labels
* feat(kubernetes): add volumes and configurations to dashboard (#152)
* feat(kubernetes): event warning indicator (#150)
* feat(kubernetes): event warning indicator for applications
* refactor(kubernetes): refactor events indicator logic
* feat(kubernetes): add event warning indicator to all resources
* feat(kubernetes): fix missing YAML panel for node (#157)
* feat(kubernetes): revised application details view (#159)
* feat(kubernetes): revised application details view
* refactor(kubernetes): remove comment
* feat(kubernetes): rebase on k8s
* refactor(kubernetes): remove extra line
* feat(kubernetes): update kubernetes beta feedback panel locations (#161)
* feat(kubernetes): stack logs (#160)
* feat(kubernetes): stack logs
* fix(kubernetes): ignore starting pods
* fix(kubernetes): colspan on expandable stack applications table
* feat(kubernetes): add an information message about system resources (#163)
* fix(kubernetes): fix empty panel being display in cluster view (#165)
* fix(kubernetes): Invalid CPU unit for node (#156)
* fix(kubernetes): Invalid CPU unit for node
* fix(kubernetes): Invalid CPU unit for node
* refacto(kubernetes): extract parseCPU function in helper
* refacto(kubernetes): rewrite parseCPU function
* feat(kubernetes): add the kube-node-lease namespace to system namespaces (#177)
* feat(kubernetes): tag system applications on node details view (#175)
* feat(kubernetes): tag system applications on node details view
* fix(kubernetes): remove system resources filter
* feat(kubernetes): review UI/UX around volume size unit (#178)
* feat(kubernetes): updates after review (#174)
* feat(kubernetes): update access user message
* feat(kubernetes): relocate resource pool to a specific form section
* feat(kubernetes): review responsiveness of port mappings
* feat(kubernetes): clarify table settings
* feat(kubernetes): add resource reservation summary message
* feat(kubernetes): review wording (#182)
* feat(kubernetes): application stack edit (#179)
* feat(kubernetes): update UI -- update action missing
* feat(kubernetes): application stack update
* feat(kubernetes): change services stacks
* feat(kubernetes): hide default-tokens + prevent remove (#183)
* feat(kubernetes): hide default-tokens + prevent remove
* feat(kubernetes): do not display unused label for system configurations
* fix(kubernetes): minor fix around showing system configurations
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* feat(kubernetes): rebase on k8s branch (#180)
* fix(kubernetes): prevent the display of system resources in dashboard (#186)
* fix(kubernetes): prevent the display of system resources in dashboard
* fix(kubernetes): prevent the display of frontend filtered resource pools
* feat(kubernetes): support downward API for env vars in application details (#181)
* feat(kubernetes): support downward API for env vars in application details
* refactor(kubernetes): remove comment
* feat(kubernetes): minor UI update
* feat(kubernetes): remove Docker features (#189)
* chore(version): bump version number (#187)
* chore(version): bump version number
* feat(kubernetes): disable update notice
* feat(kubernetes): minor UI update
* feat(kubernetes): minor UI update
* feat(kubernetes): form validation (#170)
* feat(kubernetes): add published node port value check
* feat(kubernetes): add a dns compliant validation
* fix(kubernetes): fix port range validation
* feat(kubernetes): lot of form validation
* feat(kubernetes): add lot of form validation
* feat(kubernetes): persisted folders size validation
* feat(kubernetes): persisted folder path should be unique
* fix(kubernetes): fix createResourcePool button
* fix(kubernetes): change few things
* fix(kubernetes): fix slider memory
* fix(kubernetes): fix duplicates on dynamic field list
* fix(kubernetes): remove bad validation on keys
* feat(kubernetes): minor UI enhancements and validation updates
* feat(kubernetes): minor UI update
* fix(kubernetes): revert on slider fix
* review(kubernetes): add future changes to do
* fix(kubernetes): add form validation on create application memory slider
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
Co-authored-by: xAt0mZ <baron_l@epitech.eu>
* feat(kubernetes): remove Docker related content
* feat(kubernetes): update build system to remove docker binary install
* fix(kubernetes): fix an issue with missing user settings
* feat(kubernetes): created column for apps and resource pools (#184)
* feat(kubernetes): created column for apps and resource pools
* feat(kubernetes): configurations and volumes owner
* feat(kubernetes): rename datatables columns
* fix(kubernetes): auto detect statefulset headless service name (#196)
* fix(applications): display used configurations (#198)
* feat(kubernetes): app details - display data access policy (#199)
* feat(kubernetes): app details - display data access policy
* feat(kubernetes): tooltip on data access info
* feat(kubernetes): move DAP tooltip to end of line
* feat(kubernetes): minor UI update
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* fix(kubernetes): fix an issue when updating the local endpoint (#204)
* fix(kubernetes): add unique key to configuration overriden key path field (#207)
* feat(kubernetes): tag applications as external (#221)
* feat(kubernetes): tag applications as external first approach
* feat(kubernetes): tag applications as external
* feat(kubernetes): Use ibytes as the default volume size unit sent to the Kubernetes API (#222)
* feat(kubernetes): Use ibytes as the default volume size unit sent to the Kubernetes API
* fix(kubernetes): only display b units in list and details views
* feat(kubernetes): add note to application details (#212)
* feat(kubernetes): add note to application details
* fix(kubernetes): remove eslintcache
* feat(kubernetes): update application note UI
* feat(kubernetes): add an update button to the note form when a note is already associated to an app
* feat(kubernetes): fix with UI changes
* fix(kubernetes): change few things
* fix(kubernetes): remove duplicate button
* fix(kubernetes): just use a ternary
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* feat(kubernetes): fix data persistence display for isolated DAP (#223)
* feat(kubernetes): add a quick action to copy application name to clipboard (#225)
* feat(kubernetes): revert useless converter changes (#228)
* feat(kubernetes): edit application view (#200)
* feat(kubernetes): application to formValues conversion
* feat(kubernetes): extract applicationFormValues conversion as converter function
* feat(kubernetes): draft app patch
* feat(kubernetes): patch on all apps services + service service + pvc service
* feat(kubernetes): move name to labels and use UUID as kubernetes Name + patch recreate if necessary
* feat(kubernetes): move user app name to label and use UUID for Kubernetes Name field
* feat(kubernetes): kubernetes service patch mechanism
* feat(kubernetes): application edit
* feat(kubernetes): remove stack edit on app details
* feat(kubernetes): revert app name saving in label - now reuse kubernetes Name field
* feat(kubernetes): remove the ability to edit the DAP
* feat(kubernetes): cancel button on edit view
* feat(kubernetes): remove ability to add/remove persisted folders for SFS edition
* feat(kubernetes): minor UI update and action changes
* feat(kubernetes): minor UI update
* feat(kubernetes): remove ability to edit app volumes sizes + disable update button if no changes are made + codeclimate
* fix(kubernetes): resource reservation sliders in app edit
* fix(kubernetes): patch returned with 422 when trying to create nested objects
* fix(kubernetes): changing app deployment type wasn't working (delete failure)
* style(kubernetes): codeclimate
* fix(kubernetes): app edit - limits sliders max value
* feat(kubernetes): remove prefix on service name as we enforce DNS compliant app names
* fix(kubernetes): edit app formvalues replica based on target replica count and not total pods count
* fix(kubernetes): disable update for RWO on multi replica + delete service when changing app type
* fix(kubernetes): app details running / target pods display
* feat(kubernetes): add partial patch for app details view
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* feat(kubernetes): disable edit capability for external and system apps (#233)
* feat(kubernetes): minor UI update
* fix(kubernetes): edit application issues (#235)
* feat(kubernetes): disable edition of load balancer if it's in pending state
* fix(kubernetes): now able to change from LB to other publishing types
* feat(kuberntes): modal on edit click to inform on potential service interruption
* feat(kubernetes): hide note when empty + add capability to collapse it
* fix(kubernetes): UI/API desync + app update button enabled in some cases where it shouldn't be
* fix(kubernetes): all apps are now using rolling updates with specific conditions
* style(kubernetes): code indent
* fix(kubernetes): disable sync process on endpoint init as current endpoint is not saved in client state
* fix(kubernetes): sliders refresh on app create + app details bad display for sfs running pods
* feat(kubernetes): minor UI update
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* feat(kubernetes): bump up kubectl version to v1.18.0
* feat(kubernetes): when refreshing a view, remember currently opened tabs (#226)
* feat(kubernetes): When refreshing a view, remember currently opened tabs
* fix(kubernetes): only persist the current tab inside the actual view
* fix(kubernetes): not working with refresh in view header
* fix(kubernetes): skip error on 404 headless service retrieval if missconfigured in sfs (#242)
* refactor(kubernetes): use KubernetesResourcePoolService instead of KubernetesNamespaceService (#243)
* fix(kubernetes): create service before app to enforce port availability (#239)
* fix(kubernetes): external flag on application ports mappings datatable (#245)
* refactor(kubernetes): remove unused KubernetesResourcePoolHelper (#246)
* refactor(kubernetes): make all *service.getAllAsync functions consistent (#249)
* feat(kubernetes): Tag external applications in the application table of the resource pool details view (#251)
* feat(kubernetes): add ability to redeploy application (#240)
* feat(kubernetes): add ability to redeploy application
* feat(kubernetes): allow redeploy for external apps
* Revert "feat(kubernetes): allow redeploy for external apps"
This reverts commit 093375a7e93c1a07b845ebca1618da034a97fbcd.
* refactor(kubernetes): use KubernetesPodService instead of REST KubernetesPods (#247)
* feat(kubernetes): prevent configuration properties edition (#248)
* feat(kubernetes): prevent configuration properties edition
* feat(kubernetes): Relocate the Data/Actions to a separate panel
* feat(kubernetes): remove unused functions
* feat(kubernetes): minor UI update
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* refactor(kubernetes): Simplify the FileReader usage (#254)
* refactor(kubernetes): simplify FileReader usage
* refactor(kubernetes): Simplify FileReader usage
* refactor(kubernetes): rename e as event for readability
* feat(kubernetes): Tag system Configs in the Config details view (#257)
* refactor(kubernetes): Refactor the isFormValid function of multiple controllers (#253)
* refactor(kubernetes): refactor isFormValid functions in configurations
* refactor(kubernetes): refactor isformValid functions in create application
* refactor(kubernetes): remove duplicate lines
* refactor(kubernetes): remove commented line
* feat(kubernetes): Tag external volumes and configs (#250)
* feat(kubernetes): Tag external volumes and configs
* feat(kubernetes): remove .eslintcache
* feat(kubernetes): change few things
* feat(kubernetes): don't tag system configuration as external
* feat(kubernetes): minor UI update
* feat(kubernetes): extract inline css and clean all tags
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* fix(kubernetes): daemon set edit (#258)
* fix(kubernetes): persistent folder unit parsing
* fix(kubernetes): edit daemonset on RWO storage
* fix(kubernetes): external SFS had unlinked volumes (#264)
* feat(kubernetes): prevent to override two different configs on the same filesystem path (#259)
* feat(kubernetes): prevent to override two different configs on the same filesystem path
* feat(kubernetes): The validation should only be triggered across Configurations.
* feat(kubernetes): fix validations issues
* feat(kubernetes): fix form validation
* feat(kubernetes): fix few things
* refactor(kubernetes): Review the code mirror component update for configurations (#260)
* refactor(kubernetes): extract duplicate configuration code into a component
* refactor(kubernetes): fix form validation issues
* refactor(kubernetes): fix missing value
* refactor(kubernetes): remove useless await
* feat(kubernetes): Update the shared access policy configuration for Storage (#263)
* feat(kubernetes): Update the shared access policy configuration for Storage
* Update app/kubernetes/models/storage-class/models.js
* feat(kubernetes): remove ROX references and checks
Co-authored-by: Anthony Lapenna <anthony.lapenna@portainer.io>
Co-authored-by: xAt0mZ <baron_l@epitech.eu>
* feat(kubernetes): provide the remove/restore UX for environment variables when editing an application (#261)
* feat(kubernetes): Provide the remove/restore UX for environment variables when editing an application
* feat(kubernetes): fix ui issue
* feat(kubernetes): change few things
* fix(kubernetes): Invalid display for exposed ports in accessing the application section (#267)
* feat(kubernetes): application rollback (#269)
* feat(kubernetes): retrieve all versions of a deployment
* feat(kubernetes): application history for all types
* feat(kubernetes): deployment rollback
* feat(kubernetes): daemonset / statefulset rollback
* feat(kubernetes): remove the revision selector and rollback on previous version everytime
* feat(kubernetes): minor UI changes
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* feat(kubernetes): reservations should be computed based on requests instead of limits (#268)
* feat(kubernetes): Reservations should be computed based on requests instead of limits
* feat(kubernetes): use requests instead of limits in application details
* feat(kubernetes): removes unused limits
* feat(kubernetes): Not so useless
* feat(kubernetes): use service selectors to bind apps and services (#270)
* feat(kubernetes): use service selectors to bind apps and services
* Update app/kubernetes/services/statefulSetService.js
* style(kubernetes): remove comment block
Co-authored-by: Anthony Lapenna <anthony.lapenna@portainer.io>
* chore(version): bump version number
* feat(kubernetes): update feedback panel text
* chore(app): add prettier to k8s
* style(app): apply prettier to k8s codebase
* fix(kubernetes): Cannot read property 'port' of undefined (#272)
* fix(kubernetes): Cannot read property 'port' of undefined
* fix(kubernetes): concat app ports outside publishedports loop
* fix(application): fix broken display of the persistence layer (#274)
* chore(kubernetes): fix conflicts
* chore(kubernetes): fix issues related to conflict resolution
* refactor(kubernetes): refactor code related to conflict resolution
* fix(kubernetes): fix a minor issue with assets import
* chore(app): update yarn.lock
* fix(application): ports mapping are now correctly detected (#300)
* fix(build-system): fix missing docker binary download step
* feat(kubernetes): application auto scaling details (#301)
* feat(kubernetes): application auto scaling details
* feat(kubernetes): minor UI update
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* feat(kubernetes): Introduce a "used by" column in the volume list view (#303)
Co-authored-by: xAt0mZ <baron_l@epitech.eu>
Co-authored-by: Maxime Bajeux <max.bajeux@gmail.com>
Co-authored-by: xAt0mZ <xAt0mZ@users.noreply.github.com>
* feat(auth): introduce new timeout constant
* feat(auth): pass timeout from handler
* feat(auth): add timeout selector to auth settings view
* feat(settings): add user session timeout property
* feat(auth): load user session timeout from settings
* fix(settings): use correct time format
* feat(auth): remove no-auth flag
* refactor(auth): move timeout mgmt to jwt service
* refactor(client): remove no-auth checks from client
* refactor(cli): remove defaultNoAuth
* feat(settings): create settings with default user timeout value
* refactor(db): save user session timeout always
* refactor(jwt): return error
* feat(auth): set session timeout in jwt service on update
* feat(auth): add description and time settings
* feat(auth): parse duration
* feat(settings): validate user timeout format
* refactor(settings): remove unneccesary import
* chore(project): install prettier and lint-staged
* chore(project): apply prettier to html too
* chore(project): git ignore eslintcache
* chore(project): add a comment about format script
* chore(prettier): update printWidth
* chore(prettier): remove useTabs option
* chore(prettier): add HTML validation
* refactor(prettier): fix closing tags
* feat(prettier): define angular parser for html templates
* style(prettier): run prettier on codebase
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* feat(api): gitlab registry type
* feat(registries): early support for gitlab registries
* feat(app): registry service selector
* feat(registry): gitlab support : list repositories and tags - remove features missing
* feat(registry): gitlab registry remove features
* feat(registry): gitlab switch to registry V2 API for repositories and tags
* feat(api): use development extension binary
* fix(registry): avoid 401 on gitlab retrieve to disconnect the user
* feat(registry): gitlab browse projects without extension
* style(app): code cleaning
* refactor(app): PR review changes + refactor on types
* fix(gitlab): remove gitlab info from registrymanagementconfig and force gitlab type
* style(api): go fmt
* feat(api): update APIVersion and ExtensionDefinitionsURL
* fix(api): fix invalid RM extension URL
* feat(registry): PAT scope help
* feat(registry): defaults on registry creation
* style(registry-creation): update layout and text for Gitlab registry
* feat(registry-creation): update gitlab notice
* fix(registry): fetch datatable details on page/filter/order state change instead of fetching all data on first load
* fix(registry): fetch tags datatable details on state change instead of fetching all data on first load
* fix(registry): add pagination support for tags + loading display on data load
* fix(registry): debounce on text filter to avoid querying transient matching values
* refactor(registry): rebase on latest develop
* feat(registries): background tags and optimisation -- need code cleanup and for-await-of to cancel on page leave
* refactor(registry-management): code cleanup
* feat(registry): most optimized version -- need fix for add/retag
* fix(registry): addTag working without page reload
* fix(registry): retag working without reload
* fix(registry): remove tag working without reload
* fix(registry): remove repository working with latest changes
* fix(registry): disable cache on firefox
* feat(registry): use jquery for all 'most used' manifests requests
* feat(registry): retag with progression + rewrite manifest REST service to jquery
* fix(registry): remove forgotten DI
* fix(registry): pagination on repository details
* refactor(registry): info message + hidding images count until fetch has been done
* fix(registry): fix selection reset deleting selectAll function and not resetting status
* fix(registry): resetSelection was trying to set value on a getter
* fix(registry): tags were dropped when too much tags were impacted by a tag removal
* fix(registry): firefox add tag + progression
* refactor(registry): rewording of elements
* style(registry): add space between buttons and texts in status elements
* fix(registry): cancelling a retag/delete action was not removing the status panel
* fix(registry): tags count of empty repositories
* feat(registry): reload page on action cancel to avoid desync
* feat(registry): uncancellable modal on long operations
* feat(registry): modal now closes on error + modal message improvement
* feat(registries): remove empty repositories from the list
* fix(registry): various bugfixes
* feat(registry): independant timer on async actions + modal fix
* feat(api): remove SnapshotRaw from EndpointList response
* feat(api): add pagination for EndpointList operation
* feat(api): rename last_id query parameter to start
* feat(api): implement filter for EndpointList operation
* feat(home): front - endpoint backend pagination (#2990)
* feat(home): endpoint pagination with backend
* feat(api): remove default limit value
* fix(endpoints): fix a minor issue with column span
* fix(endpointgroup-create): fix an issue with endpoint group creation
* feat(app): minor loading optimizations
* refactor(api): small refactor of EndpointList operation
* fix(home): fix minor loading text display issue
* refactor(api): document bolt services functions
* feat(home): minor optimization
* fix(api): replace seek with index scanning for EndpointPaginated
* fix(api): fix invalid starting index issue
* fix(api): first implementation of working filter
* fix(home): endpoints list keeps backend pagination when it needs to
* fix(api): endpoint pagination doesn't drop the first item on pages >=2 anymore
* fix(home): UI flickering on page/filter load/change
* feat(api): support searching in associated endpoint group data
* feat(api): declare EndpointList params as optional
* feat(endpoints): backend pagination for endpoints view (#3004)
* feat(endpoint-group): enable backend pagination (#3017)
* feat(api): support groupID filter on endpoints route
* feat(api): add new API operations endpointGroupAddEndpoint and endpointGroupDeleteEndpoint
* feat(endpoint-groups): backend pagination support for create and edit
* feat(endpoint-groups): debounce on filter for create/edit views
* feat(endpoint-groups): filter assigned on create view
* (endpoint-groups): unassigned endpoints edit view
* refactor(endpoint-groups): code clean
* feat(endpoint-groups): remove message for Unassigned group
* refactor(api): endpoint group endpoint association refactor
* refactor(api): rename files and remove comments
* refactor(api): remove usage of utils
* refactor(api): optional parameters
* feat(api): update endpointListOperation behavior and parameters
* refactor(api): remove unused methods associated to EndpointService
* refactor(api): remove unused methods associated to EndpointService
* refactor(api): minor refactor
* fix(datatables): allow selecting range using shift (#344)
* feat(datatables): more intuitive batch select behaviour
* feat(datatables): add overridable function called on selection change
* refactor(datatables): remove custom selectAll on Generic-extending Controllers
* fix(datatables): stored state data retrieval on Generic-extanding datatables controllers
* refactor(datatables): remove code duplication between GenericController and extending controllers
* fix(app): wrapper for UI refresh trigger with async/await
* fix(async): $async wrapper now accepts functions with params
* fix(async): $async should return a promise to be chained with ES5 .then() style
* fix(async): $async with multiple params was not working
* refactor(app): wrap all async functions with $async
* docs(async): add link to async wrapper documentation
* feat(registries): registries accessibility to all authorized people and not only admins
* feat(registry): dockerhub settings for admin only
* feat(registry): remove registry config access for non admin users
* feat(api): use AuthenticatedAccess policy instead of RestrictedAccess for extensionList operation
* refactor(api): minor update to security package
* refactor(api): revert unexporting function changes
* refactor(api): apply gofmt
* fix(registry-management): add support for repositories list with multiple requests
* refactor(registry-management): change regex usage to a reusable interceptor function
* refactor(registry-management): change interceptor to transformResponse function
* fix repository reload got error in remove tags
When I remove all tags, removeTags() will reload and do initView() again, but data.tags response null, that trigger data.tags.length got error.
* Revert "fix repository reload got error in remove tags"
This reverts commit 5d9b1778ef.
* fix(registry-management): change response repository tags type to array by force
* feat(registry-management): redirect to repositories page when no tag in the repository after delete tags