Richard Wei
a66fd78dc1
feat(ui): apply react pageheader to all pageview EE-3615 ( #7178 )
...
Co-authored-by: Chaim Lev-Ari <chiptus@gmail.com>
2022-07-06 09:08:45 +03:00
congs
89359a21ce
fix(docker): EE-3247 Portainer should not send a host information request when host management features are disabled ( #7038 )
2022-07-04 17:13:15 +12:00
Chaim Lev-Ari
eb9f6c77f4
refactor(endpoints): remove endpointProvider from views [EE-1136] ( #5359 )
...
[EE-1136]
2021-12-14 09:34:54 +02:00
Chaim Lev-Ari
46dec01fe3
feat(endpoint): relocate docker security settings ( #4657 )
...
* feat(endpoint): migrate security settings to endpoint
* feat(endpoint): check for specific endpoint settings
* feat(endpoint): check security settings
* feat(docker): add config page
* feat(endpoint): save settings page
* feat(endpoints): disable features when not agent
* feat(sidebar): hide docker settings for regular user
* fix(docker): small fixes in configs
* fix(volumes): hide browse button for non admins
* refactor(docker): introduce switch component
* refactor(components/switch): seprate label from switch
* feat(app/components): align switch label
* refactor(app/components): move switch css
* fix(docker/settings): add ngijnect
* feat(endpoints): set default security values
* style(portainer): sort types
* fix(endpoint): rename security heading
* fix(endpoints): update endpoints settings
2021-02-09 21:09:06 +13:00
Chaim Lev-Ari
24528ecea8
feat(edge-compute): move host jobs to edge ( #3840 )
...
* feat(endpoints): create an associated endpoints selector
* feat(schedules): remove edge specific explanations
* refactor(schedule): replace multi-endpoint-selector
* refactor(schedule): move controller to single file
* refactor(endpoints): remove multi-endpoint-selector
* feat(edge): rename host jobs to edge jobs
* feat(edge-jobs): remove edge warning
* refactor(edge-jobs): move schedule pages to edge
* refactor(edge-jobs): mv views to edgeJobs
* refactor(edge-jobs): rename edge jobs
* refactor(edge-jobs): move services to edge
* refactor(edge-jobs): move tasks datatable
* fix(edge-jobs): fix import
* fix(edge-jobs): use right services
* feat(settings): adjust host management description
* feat(edge-jobs): introduce interfaces and types
* feat(edge-jobs): implement bolt service
* refactor(edge-jobs): replace schedule routes
* refactor(edge-job): replace Schedule service
* refactor(edge-jobs): remove job_script_exec
* refactor(host): remove jobs table
* feat(edge-jobs): replace schedule
* feat(edge-jobs): load file on inspect
* fix(edge-job): parse cron correctly
* feat(edge-jobs): show tasks
* feat(host): rename tooltip
* refactor(host): remove old components
* refactor(main): remove schedule types
* refactor(snapshot): replace job service with snapshot service
* refactor(jobs): remove jobs form and datatable
* feat(edge-jobs): create db migration
* fix(main): start snapshot service with correct interval
* feat(settings): change host tooltip
* feat(edge-jobs): load endpoints
* fix(edge-job): disable form submit when form is invalid
* refactor(edge-compute): use const
* refactor(edge-jobs): use generic controller
* refactor(edge-jobs): replace $scope with controllerAs
* refactor(edge-jobs): replace routes with components
* refactor(edge-jobs): replace functions with classes
* refactor(edge-jobs): use async/await
* refactor(edge-jobs): rename functions
* feat(edge-jobs): introduce beta panel
* feat(edge-jobs): allow single character names
* fix(snapshot): run snapshot in coroutine
* feat(edge-jobs): add logs status
* feat(filesystem): add edge job logs methods
* feat(edge-jobs): intoduce edge jobs tasks api
* feat(edge-jobs): remove schedule task model
* fix(fs): build edge job task file path
* fix(edge-jobs): update task meta
* fix(edge-jobs): return a list of endpoints
* feat(edge-jobs): update logs from agent
* feat(edge-jobs): collect logs
* feat(edge-jobs): rename url
* feat(edge-jobs): refresh to same tab
* feat(edge-jobs): remove old info
* refactor(edge-jobs): rename script path json
* fix(edge-job): save file before adding job
* feat(edge-job): show retrieving logs label
* feat(edge-job): replace cron with 5 places
* refactor(edge-jobs): replace tasks with results
* feat(edge-jobs): add auto refresh until logs are collected
* feat(edge-jobs): fix column size
* feat(edge-job): display editor
* feat(edge-job): add name validation
* feat(edge-job): set default time for 1 hour from now
* feat(edge-job): add validation for cron format
* feat(edge-job): add a note about timezone
* fix(edge-job): replace regex
* fix(edge-job): check for every minute cron
* style(edge-jobs): add reference for cron regex
* refactor(edge-jobs): rename migration name
* refactor(edge-job): rename edge job response
* refactor(snapshot): rename snapshot endpoint method
* refactor(edge-jobs): move tasks handler to edgejobs
* feat(security): introduce a middleware for edge compute operations
* feat(edge-job): use edge compute middleware
* feat(edge-groups): filter http actions based on edge setting
* fix(security): return from edge bouncer if failed
* feat(edge-stacks): filter http actions based on edge setting
* feat(edge-groups): show error when failed to load groups
* refactor(db): remove edge-jobs migration
* refactor(migrator): remove unused dependency
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
2020-06-25 15:25:51 +12:00
Chaim Lev-Ari
cf5056d9c0
chore(project): add prettier for code format ( #3645 )
...
* 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>
2020-04-11 09:54:53 +12:00
xAt0mZ
6591498ab9
feat(node-details): move engine labels from node-details panel to engine-details panel ( #2966 )
2019-06-25 11:22:45 +12:00
Anthony Lapenna
8057aa45c4
feat(extensions): introduce RBAC extension ( #2900 )
2019-05-24 18:04:58 +12:00
Chaim Lev-Ari
45113a7ff4
refactor(app): introduce webpack and babel ( #2407 )
...
* feat(agent): add new host page
* feat(agent): convert volume-browser to files-datatable
* fix(agent): browse folders in file-datatable
* feat(engine-details): replace engine view with host view
* feat(engine-details): remove old panels
* feat(engine-details): add basic engine-details-panel component
* feat(engine-details): pass details to the different components
* feat(engine-details): replace host-view with host-overview
* feat(engine-details): add commaseperated filter
* feat(engine-details): add host-view container component
* feat(engine-details): add host-details component
* feat(engine-details): build host details object
* feat(engine-details): format engine version
* feat(engine-details): get details for one node
* feat(engine-details): pass is-agent from view
* feat(engine-details): replace old node view with a new component
* feat(engine-details): add swarm-node-details component
* feat(engine-details): remove isSwarm binding
* feat(engine-details): remove node-details and include in parent
* feat(engine-details): add labels-table component
* feat(engine-details): add update node service
* feat(engine-details): add update label functionality
* style(engine-details): remove whitespaces
* feat(engine-details): remove old node page
* feat(engine-details): pass is agent to host details
* feat(host-details): hide missing info
* feat(host-details): update node availability
* style(host-details): remove obsolete event object
* feat(host-details): fix labels not sending
* feat(host-details): remove flags for hiding data
* feat(host-details): create mock call to server for agent host info
* style(host-details): fix spelling mistake in filter's name
* feat(host-details): get info from agent
* feat(host-details): hide engine labels when empty
* feat(node-details): move labels table and save button
* feat(host-info): add different urls for refresh
* feat(host-details): show disk/devices info for agent
* feat(host-view): add loading indicator to devices-panel
* feat(host-details): add loading indicator to disks panel
* feat(agent): fix browse volume
* feat(agent): browse files
* feat(agent): enable rename
* feat(agent): download file
* fix(agent): download file from root
* feat(agent): delete file
* style(agent): remove whitespaces
* fix(agent): fix link on node browser
* feat(agent): basic file uploader
* feat(agent): add basic file upload
* fix(volume-browser): move volume id to query params
* feat(node-browser): moved uploader into browser
* feat(node-browser): add upload spinner
* feat(agent): browse files relative to root
* feat(build): add webpack build config
* feat(build): add missing imports
* feat(webpack): add missing imports
* feat(build): enable eslint on build
* feat(build): add webpack notifier
* feat(build): clean terminal on build
* feat(build): import all globals
* feat(build): add angular import
* feat(build): fix styles
* feat(build): load favicons
* feat(build): load css before script
* feat(webpack): split vendors css and js to a different bundle
* feat(webpack): import angular in all files
* feat(webpack): remove eslint global config
* feat(webpack): add webpack clean dist
* feat(webpack): fix styling issues
* refactor(webpack): remove empty controllers
* refactor(webpack): optimize moment
* refactor(webpack): add bundle analyzer
* feat(webpack): add babel
* refactor(webpack): optimize lodash
* refactor(toastr): update toastr
* feat(webpack): create basic production and dev config
* fix(webpack): fix production config
* fix(webpack): fix html templates url
* refactor(webpack): remove angular imports
* refactor(webpack): remove more angular imports
* refactor(webpack): return angular to entry file
* style(webpack): remove comments from config
* fix(hosts): remove browse button
* fix(webpack): import lodash
* fix(webpack): import missing htmls
* feat(webpack): reduce lodash size
* feat(webpack): config grunt to use webpack
* feat(webpack): add postcss
* chore(codeclimate): use eslint-5 channel
* feat(deps): upgrade from lodash to lodash-es
* fix(webpack): fix bug with lodash
* chore(build): add build client script
* fix(webpack): fix missing jsyaml reference
* refactor(webpack): seperate builds of img files
* chore(build): add a way to check times of webpack build
* feat(webpack): add dev server
* fix(webpack): fix css output name
* chore(webpack): optimize images
* chore(webpack): add node env
* fix(build): copy templates on release
* chore(webpack): set env NODE_ENV
* feat(webpack): set NODE_ENV on production builds
* fix(extensions): set image path
* refactor(css): move vendor css to js import
* style(app): remove whitespaces
* fix(build-system): allow DevOps pipeline to leverage webpack (#2670 )
* Update devopsbuild task to use webpack & remove AppVeyor environment var
* Added -Force to replace the existing dist folder
* Removed Test-Path
* dep(build-system): add angularjs-annotate to webpack + fix on imports
* Merge branch 'develop' into webpack
* refactor(app): webpack aliases for imports + async / await dep + start refactor
* style(extensions): use develop version of the view
* fix(app): fix several issues introduced by webpack migration
* fix(webpack): fix ng-include not loading templates with webpack
* Fix Windows CI with Webpack (#2782 )
* fix(configs): refactor broke configs creation and list views
* fix(build-system): update build_binary_devops for Windows
2019-03-21 18:46:49 +13:00
baron_l
a9b107dbb5
feat(app): add the capability to enable/disable host management features ( #2472 )
...
* feat(settings): add the capability to enable/disable the host management features
* feat(settings): remove the validation of EnableHostManagementFeatures in frontend
* feat(api): disable schedules API when HostManagementFeatures is false + DB migration
* style(settings): update host management settings tooltip
* refacot(schedules): update DBVersion to 15
2018-12-06 11:36:25 +13:00
baron_l
354fda31f1
feat(jobs): add the ability to run a job on a target endpoint #2374
...
* feat(jobs): adding the ability to run scripts on endpoints
fix(job): click on containerId in JobsDatatable redirects to container's logs
refactor(job): remove the jobs datatable settings + texts changes on JobCreation view
fix(jobs): jobs payloads are now following API rules and case
feat(jobs): adding the capability to run scripts on hosts
* feat(jobs): adding the ability to purge jobs containers
* refactor(job): apply review changes
* feat(job-creation): store image name in local storage
* feat(host): disable job exec link in non-agent Swarm setup
* feat(host): only display execute job in agent setups or standalone
* feat(job): job execution overhaul
* docs(swagger): update EndpointJob documentation
2018-10-28 19:06:50 +13:00
Chaim Lev-Ari
9813099aa4
feat(app): toggle features based on agent API version ( #2378 )
...
* feat(agent): get agent's version from ping
* feat(agent): add version to api url
* feat(agent): query agent with api version
* feat(agent): rename agent api version name on state
* feat(agent): disable feature based on agent's api version
* style(agent): rename ping rest service + remove whitespaces
* style(state): remove whitespace
* style(agent): add whitespace
* fix(agent): remove check for error status 403
* refactor(agent): rename ping file name
* refactor(agent): move old services to v1 folder
* refactor(agent): turn ping service to usual pattern
* refactor(agent): change version to a global variable
* refactor(agent): move ping to version2
* refactor(agent): restore ping to use root ping
* fix(volumes): add volumeID to browse api path
* feat(volume): add upload button to volume browser
2018-10-26 16:16:29 +13:00
Chaim Lev-Ari
c5aecfe6f3
feat(host): Add host file browser with upload/download files ( #2337 )
...
* feat(agent): add new host page
* feat(agent): convert volume-browser to files-datatable
* fix(agent): browse folders in file-datatable
* feat(engine-details): replace engine view with host view
* feat(engine-details): remove old panels
* feat(engine-details): add basic engine-details-panel component
* feat(engine-details): pass details to the different components
* feat(engine-details): replace host-view with host-overview
* feat(engine-details): add commaseperated filter
* feat(engine-details): add host-view container component
* feat(engine-details): add host-details component
* feat(engine-details): build host details object
* feat(engine-details): format engine version
* feat(engine-details): get details for one node
* feat(engine-details): pass is-agent from view
* feat(engine-details): replace old node view with a new component
* feat(engine-details): add swarm-node-details component
* feat(engine-details): remove isSwarm binding
* feat(engine-details): remove node-details and include in parent
* feat(engine-details): add labels-table component
* feat(engine-details): add update node service
* feat(engine-details): add update label functionality
* style(engine-details): remove whitespaces
* feat(engine-details): remove old node page
* feat(engine-details): pass is agent to host details
* feat(host-details): hide missing info
* feat(host-details): update node availability
* style(host-details): remove obsolete event object
* feat(host-details): fix labels not sending
* feat(host-details): remove flags for hiding data
* feat(host-details): create mock call to server for agent host info
* style(host-details): fix spelling mistake in filter's name
* feat(host-details): get info from agent
* feat(host-details): hide engine labels when empty
* feat(node-details): move labels table and save button
* feat(host-info): add different urls for refresh
* feat(host-details): show disk/devices info for agent
* feat(host-view): add loading indicator to devices-panel
* feat(host-details): add loading indicator to disks panel
* feat(agent): fix browse volume
* feat(agent): browse files
* feat(agent): enable rename
* feat(agent): download file
* fix(agent): download file from root
* feat(agent): delete file
* style(agent): remove whitespaces
* fix(agent): fix link on node browser
* feat(agent): basic file uploader
* feat(agent): add basic file upload
* fix(volume-browser): move volume id to query params
* feat(node-browser): moved uploader into browser
* feat(node-browser): add upload spinner
* feat(agent): browse files relative to root
* feat(agent): browse standalone agent
* feat(agent): move browse button from header
* fix(agent): fix url of browser view
* fix(agent): fix breadcrumb on title of host-browser
* feat(agent): fix url on node-browser breadcrumb
* refactor(agent): remove unused controller
* refactor(docker): remove unused filter
* refactor(docker): remove unused controllers
* refactor(docker): remove isAgent binding
2018-10-12 11:32:17 +13:00
Chaim Lev-Ari
ca08b2fa2a
feat(host): replace engine view with host view ( #2255 )
...
* feat(engine-details): remove old panels
* feat(engine-details): add basic engine-details-panel component
* feat(engine-details): pass details to the different components
* feat(engine-details): replace host-view with host-overview
* feat(engine-details): add commaseperated filter
* feat(engine-details): add host-view container component
* feat(engine-details): add host-details component
* feat(engine-details): build host details object
* feat(engine-details): format engine version
* feat(engine-details): get details for one node
* feat(engine-details): pass is-agent from view
* feat(engine-details): replace old node view with a new component
* feat(engine-details): add swarm-node-details component
* feat(engine-details): remove isSwarm binding
* feat(engine-details): remove node-details and include in parent
* feat(engine-details): add labels-table component
* feat(engine-details): add update node service
* feat(engine-details): add update label functionality
* style(engine-details): remove whitespaces
* feat(engine-details): remove old node page
* feat(engine-details): pass is agent to host details
* feat(host-details): hide missing info
* feat(host-details): update node availability
* style(host-details): remove obsolete event object
* feat(host-details): fix labels not sending
* feat(host-details): remove flags for hiding data
* feat(host-details): create mock call to server for agent host info
* style(host-details): fix spelling mistake in filter's name
* feat(host-details): get info from agent
* feat(host-details): hide engine labels when empty
* feat(node-details): move labels table and save button
* feat(host-info): add different urls for refresh
* feat(host-details): show disk/devices info for agent
* feat(host-view): add loading indicator to devices-panel
* feat(host-details): add loading indicator to disks panel
* feat(host-details): show devices/disks on standalone agent
* refactor(host-details): remove default value
* refactor(host-details): remove redundant commaSeperated filter
* refactor(host-details): remove unused functions
* style(host-details): remove whitespace
2018-10-08 11:44:08 +13:00
Chaim Lev-Ari
e58acd7dd6
* chore(eslint): update esllint and remove unused variables
...
* chore(eslint-config): change no-unused-vars to warn
* chore(eslint): remove unused variables
* chore(eslint): allow unused globals
* fixup! chore(eslint): allow unused globals
* chore(eslint): remove commented unused vars
* fixup! chore(eslint): remove commented unused vars
2018-08-22 17:33:06 +02:00
Anthony Lapenna
cdf79c731b
feat(ux): always display search bar in datatables ( #2034 )
2018-07-11 16:18:44 +02:00
Anthony Lapenna
ef15cd30eb
style(app): update widget title property ( #1952 )
...
* style(app): update widget title property
* style(containerinstances): fix invalid component title
2018-06-06 18:12:35 +02:00
Herwono W. Wijaya
66f29dd103
style(app): upgrade to font awesome v5
2018-03-13 15:36:53 +10:00
Anthony Lapenna
27dceadba1
refactor(app): introduce new project structure for the frontend ( #1623 )
2018-02-01 13:27:52 +01:00