Chaim Lev-Ari
db8b3d6e5a
create tag from tag selector ( #3640 )
...
* feat(tags): add button to save tag when doesn't exist
* feat(endpoints): allow the creating of tags in endpoint edit
* feat(groups): allow user to create tags in create group
* feat(groups): allow user to create tags in edit group
* feat(endpoint): allow user to create tags from endpoint create
* feat(tags): allow the creation of a new tag from dropdown
* feat(tag): replace "add" with "create"
* feat(tags): show tags input when not tags
* feat(tags): hide create message when not allowed
* refactor(tags): replace component controller with class
* refactor(tags): replace native methods with lodash
* refactor(tags): remove unused onChangeTags function
* refactor(tags): remove on-change binding
* style(tags): remove white space
* refactor(endpoint-groups): move controller to separate file
* fix(groups): allow admin to create tag in group form
* refactor(endpoints): wrap async function with try catch and $async
* style(tags): wrap arrow function args with parenthesis
* refactor(endpoints): return $async functions
* refactor(tags): throw error in the format Notification expects
2020-04-08 19:56:24 +12:00
Chaim Lev-Ari
edd86f2506
refactor(tags): refactor tag management ( #3628 )
...
* refactor(tags): replace tags with tag ids
* refactor(tags): revert tags to be strings and add tagids
* refactor(tags): enable search by tag in home view
* refactor(tags): show endpoint tags
* refactor(endpoints): expect tagIds on create payload
* refactor(endpoints): expect tagIds on update payload
* refactor(endpoints): replace TagIds to TagIDs
* refactor(endpoints): set endpoint group to get TagIDs
* refactor(endpoints): refactor tag-selector to receive tag-ids
* refactor(endpoints): show tags in multi-endpoint-selector
* chore(tags): revert reformat
* refactor(endpoints): remove unneeded bind
* refactor(endpoints): change param tags to tagids in endpoint create
* refactor(endpoints): remove console.log
* refactor(tags): remove deleted tag from endpoint and endpoint group
* fix(endpoints): show loading label while loading tags
* chore(go): remove obsolete import labels
* chore(db): add db version comment
* fix(db): add tag service to migrator
* refactor(db): add error checks in migrator
* style(db): sort props in alphabetical order
* style(tags): fix typo
Co-Authored-By: Anthony Lapenna <anthony.lapenna@portainer.io>
* refactor(endpoints): replace tagsMap with tag string representation
* refactor(tags): rewrite tag delete to be more readable
* refactor(home): rearange code to match former style
* refactor(tags): guard against missing model in tag-selector
* refactor(tags): rename vars in tag_delete
* refactor(tags): allow any authenticated user to fetch tag list
* refactor(endpoints): replace controller function with class
* refactor(endpoints): replace function with helper
* refactor(endpoints): replace controller with class
* refactor(tags): revert tags-selector to use 1 way bindings
* refactor(endpoints): load empty tag array instead of nil
* refactor(endpoints): revert default tag ids
* refactor(endpoints): use function in place
* refactor(tags): use lodash
* style(tags): use parens in arrow functions
* fix(tags): remove tag from tag model
Co-authored-by: Anthony Lapenna <anthony.lapenna@portainer.io>
2020-03-29 22:54:14 +13:00
Ben Brooks
fe89a4fc01
fix(services): enforce minimum replica count of 0 ( #3653 )
...
* fix(services): enforce minimum replica count of 0
Fixes #3652
Prevents replica count from being set below zero and causing an error.
* fix(services): enforce replica count is an integer
Prevents users entering decimals in the replica count
2020-03-29 13:25:50 +13:00
itsconquest
2c400eb3b4
feat(support): make support type dynamic ( #3621 )
2020-03-19 09:38:56 +13:00
Anthony Lapenna
a11a348893
fix(containers): do not persist container status filter ( #3615 )
2020-03-16 14:37:59 +13:00
itsconquest
d022853059
feat(support): add new offerings ( #3608 )
...
* feat(support): add new offerings
* feat(support): refactor for simplicity
* feat(support): rename for clarity
2020-03-16 11:35:55 +13:00
xAt0mZ
bfdb4dba12
fix(container-creation): validate runtime property ( #3581 )
...
Co-authored-by: linquize <linquize2@yahoo.com>
2020-02-26 16:31:59 +13:00
William
eff1b79a4a
fix(networks): patch datatable ( #3557 )
2020-02-12 20:41:41 +01:00
William
0330b16776
fix(container-create): patch dns ( #3556 )
2020-02-11 15:23:56 +01:00
William
97a0ea4a31
fix(templates): select volume name not object ( #3549 )
2020-02-06 09:07:23 +13:00
William
167d4319b5
fix(authentication): frontend changes ( #3456 )
...
* fix(authentication): frontend changes
* fix(authentication): suggested changes
* fix(authentication): support AnonymousMode boolean
* feat(authentication): support empty vals + move from scope to formValues
* feat(authentication): allow test of TLS & anon
* feat(authentication): remove unneeded whitespace
* feat(authentication): remove un-needed whitespace
* feat(refactor): rebase + cleanup logic
2020-02-06 09:06:22 +13:00
Mike Church
6f59f130a1
feat(dashboard): add health status to home page and dashboard ( #3489 )
...
* feat(dashboard): add health status to home page and dashboard
* fix(dashboard): code review updates, using builtin for substring search
2020-02-05 07:59:29 +13:00
William
cc8d3c8639
refactor(UX): disable/remove uneeded UI elements ( #3530 )
...
* refactor(UX): disable/remove uneeded UI elements
* refactor(UX): rm missed th in container network
* refactor(UX): minor formatting improvement
2020-01-31 16:49:59 +01:00
William
6c492d2290
fix(UX): prevent task expand on row selection ( #3531 )
...
* fix(UX): prevent task expand on row selection
* refactor(UX): apply service expand logic to networks
2020-01-29 14:44:02 +01:00
William
8dda67c8d0
refactor(UX): fix grammar ( #3528 )
2020-01-27 14:02:04 +13:00
William
7365afa1bb
feature(UX): sort dropdowns alphabetically ( #3524 )
2020-01-25 09:53:48 +13:00
Kirill K
1ef29f2671
feat: add setting to change DNS servers ( #3511 )
...
* feat: add setting to change DNS servers
* style: fixing codeclimate warning
Looks like conditional was excessive, it works as expected even without
it.
* style: rename 'DNS Server 1/2' to 'Primary/Secondary DNS Server'
Signed-off-by: Kirill K <kovalev.kirill.a@gmail.com>
* style: rename variables in code to match UI naming
* feat: add tooltips on DNS servers input fields
Signed-off-by: Kirill K <kovalev.kirill.a@gmail.com>
* Revert "feat: add tooltips on DNS servers input fields"
This reverts commit b83ef50825
.
* style: secondary DNS placeholder
Signed-off-by: Kirill K <kovalev.kirill.a@gmail.com>
2020-01-24 15:49:28 +01:00
William
fa5bb9b1be
feat(stack-creation): add note for 2FA ( #3509 )
...
* refactor(stack-creation): add note for 2FA
* Update app/portainer/views/stacks/create/createstack.html
Co-Authored-By: Anthony Lapenna <anthony.lapenna@portainer.io>
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
2020-01-23 09:17:04 +13:00
William
9da08bc792
refactor(endpoint-creation): remove unneeded port ( #3467 )
...
* refactor(endpoint-creation): remove unneeded port
* refactor(endpoint-creation): remove from clipboard
2020-01-22 09:17:41 +13:00
Iceyer
58c00401e9
fix: atob convert unicode in config failed ( #3415 )
...
atob only support decode ascii char, when this unicode in config, it will show unknown char.
2019-12-09 17:52:02 +01:00
xAt0mZ
1465825988
feat(container): disable recreate/duplicate buttons with RBAC for non admins ( #3426 )
2019-12-04 10:47:07 +13:00
xAt0mZ
2d576394d0
fix(registry-selector): unique images in auto suggest ( #3425 )
2019-12-04 10:46:03 +13:00
William
f79dae3e27
feat(about): add analytics notice ( #3423 )
2019-12-04 08:05:00 +13:00
William
dd0c80e915
fix(container-creation): preserve aliases if null ( #3405 )
...
* fix(container-creation): preserve aliases if null
* Update app/docker/views/containers/create/createContainerController.js
2019-11-29 09:21:23 +13:00
William
5ab63bd151
fix(container-create): patch aliases ( #3403 )
...
* fix(container-create): patch aliases
* Update app/docker/views/containers/create/createContainerController.js
2019-11-28 17:38:53 +13:00
xAt0mZ
ea1ca76f70
fix(auth): clean browser cache on logout ( #3402 )
2019-11-28 12:16:34 +13:00
xAt0mZ
e19bc8abc7
fix(app): registry push-pull features overhaul ( #3393 )
...
* feat(registry): registry or direct url selector
* feat(app): push pull container creation
* feat(app): push pull container duplicate
* feat(app): push pull container details recreate
* feat(app): push pull container details commit
* feat(app): push pull images
* feat(app): push pull image tag
* feat(app): push pull image push
* feat(app): push pull image pull
* feat(app): push pull service creation
* feat(app): push pull templates create container
* feat(app): push pull templates create stacks
* feat(app): push pull template edit
* feat(app): push pull service details update
* fix(app): refactor registry selector + registry auto select
* feat(app): remove autocomplete on registry selector
* style(image-registry): reword simple/advanced mode
* Revert "feat(app): remove autocomplete on registry selector"
This reverts commit 97ec2ddd62
.
* refactor(registry-selector): reverse registry and image fields
* feat(app): autocomplete on registry selector
* feat(registry-selector): change gitlab registry autocomplete
* feat(registry-selector): autocomplete for dockerhub
* feat(registry-selector): gitlab url based on locked value instead of name
* fix(registry-selector): gitlab registries URL are not modified anymore
* fix(registry-selector): change gitlab image autofill on duplicate
* fix(registry-selector): gitlab registries now only suggest their own images and not all from gitlab
* fix(registry-selector): psuh pull issues with gitlab registries
* fix(registry-selector): dockerhub registry selection on duplicate for dockerhub images
* fix(templates): registry retrieval for template
* feat(images): add autocomplete on image pull panel
* fix(registry-selector): add latest tag when no tag is specified
* fix(registry-selector): latest tag now applied for non gitlab registries
2019-11-28 11:36:39 +13:00
William
61c38534a7
fix(container-creation): preserve network aliases ( #3401 )
2019-11-28 09:35:14 +13:00
William
7f54584ed6
fix(container-creation): match container_network by id ( #3398 )
2019-11-27 09:19:22 +13:00
xAt0mZ
1a65dbf85f
fix(app): permissions lost for UI on browser refresh ( #3354 )
...
* fix(app): permissions lost for UI on browser refresh
* fix(app): permissions retrieval moved to global app resolve
2019-11-26 17:01:39 +13:00
William
a3a83d1d7e
fix(container): hide opts when autoremove true ( #3397 )
2019-11-26 08:08:48 +13:00
KemoNine
a41ca1fd46
feat(container-creation): allow empty value for labels ( #2655 )
...
* Allow empty values for labels
* Allow empty labels when creating containers from a template
2019-11-25 13:25:30 +13:00
Anthony Lapenna
130c188717
fix(libcompose): apply same normalize name rule as libcompose on stack name ( #3395 )
2019-11-24 14:28:07 +13:00
Anthony Lapenna
a85f0058ee
feat(extensions): add the ability to upload and enable an extension ( #3345 )
...
* feat(extensions): offline mode mockup
* feat(extensions): offline mode mockup
* feat(api): add support for extensionUpload API operation
* feat(extensions): offline extension upload
* feat(api): better support for extensions in offline mode
* feat(extension): update offline description
* feat(api): introduce local extension manifest
* fix(api): fix LocalExtensionManifestFile value
* feat(api): use a 5second timeout for online extension infos
* feat(extensions): add download archive link
* feat(extensions): add support for offline update
* fix(api): fix issues with offline install and online updates of extensions
* fix(extensions): fix extensions link URL
* fix(extension): hide screenshot in offline mode
2019-11-20 18:16:40 +13:00
Anthony Lapenna
b8be795505
feat(templates): replace volume selector with typeahead ( #3371 )
2019-11-20 12:18:27 +13:00
Anthony Lapenna
19d4db13be
feat(api): rewrite access control management in Docker ( #3337 )
...
* feat(api): decorate Docker resource creation response with resource control
* fix(api): fix a potential resource control conflict between stacks/volumes
* feat(api): generate a default private resource control instead of admin only
* fix(api): fix default RC value
* fix(api): update RC authorizations check to support admin only flag
* refactor(api): relocate access control related methods
* fix(api): fix a potential conflict when fetching RC from database
* refactor(api): refactor access control logic
* refactor(api): remove the concept of DecoratedStack
* feat(api): automatically remove RC when removing a Docker resource
* refactor(api): update filter resource methods documentation
* refactor(api): update proxy package structure
* refactor(api): renamed proxy/misc package
* feat(api): re-introduce ResourceControlDelete operation as admin restricted
* refactor(api): relocate default endpoint authorizations
* feat(api): migrate RBAC data
* feat(app): ResourceControl management refactor
* fix(api): fix access control issue on stack deletion and automatically delete RC
* fix(api): fix stack filtering
* fix(api): fix UpdateResourceControl operation checks
* refactor(api): introduce a NewTransport builder method
* refactor(api): inject endpoint in Docker transport
* refactor(api): introduce Docker client into Docker transport
* refactor(api): refactor http/proxy package
* feat(api): inspect a Docker resource labels during access control validation
* fix(api): only apply automatic resource control creation on success response
* fix(api): fix stack access control check
* fix(api): use StatusCreated instead of StatusOK for automatic resource control creation
* fix(app): resource control fixes
* fix(api): fix an issue preventing administrator to inspect a resource with a RC
* refactor(api): remove useless error return
* refactor(api): document DecorateStacks function
* fix(api): fix invalid resource control type for container deletion
* feat(api): support Docker system networks
* feat(api): update Swagger docs
* refactor(api): rename transport variable
* refactor(api): rename transport variable
* feat(networks): add system tag for system networks
* feat(api): add support for resource control labels
* feat(api): upgrade to DBVersion 22
* refactor(api): refactor access control management in Docker proxy
* refactor(api): re-implement docker proxy taskListOperation
* refactor(api): review parameters declaration
* refactor(api): remove extra blank line
* refactor(api): review method comments
* fix(api): fix invalid ServerAddress property and review method visibility
* feat(api): update error message
* feat(api): update restrictedVolumeBrowserOperation method
* refactor(api): refactor method parameters
* refactor(api): minor refactor
* refactor(api): change Azure transport visibility
* refactor(api): update struct documentation
* refactor(api): update struct documentation
* feat(api): review restrictedResourceOperation method
* refactor(api): remove unused authorization methods
* feat(api): apply RBAC when enabled on stack operations
* fix(api): fix invalid data migration procedure for DBVersion = 22
* fix(app): RC duplicate on private resource
* feat(api): change Docker API version logic for libcompose/client factory
* fix(api): update access denied error message to be Docker API compliant
* fix(api): update volume browsing authorizations data migration
* fix(api): fix an issue with access control in multi-node agent Swarm cluster
2019-11-13 12:41:42 +13:00
xAt0mZ
198e92c734
feat(registry): gitlab support ( #3107 )
...
* 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
2019-11-12 16:28:31 +13:00
George Cheng
c559b6b55c
fix(container-creation): Fix bad env in container creation ( #2996 )
...
Currently we are using RegExp `/\=(.+)/` to catch key-value
of environment variables, which could not match empty-value
environment variables such as `KEY=`.
This commit will change the RegExp to `/\=(.*)/`, which
matches the empty values.
2019-11-01 16:15:33 +13:00
William
542b76912a
feat(endpoint-details): add edge-key to commands ( #3302 )
2019-10-24 16:36:24 +02:00
Mattias Edlund
accca0f2a6
feat(containers): added support for port range mappings when deploying containers ( #3194 )
...
* feat(containers): added support for port range mappings when deploying containers
* feat(containers): added placeholders to port publishing input fields
* feat(containers): added a tooltip to the manual network port publishing
* feat(containers): improved the code consistency
2019-10-15 11:13:57 +02:00
xAt0mZ
f67e866e7e
feat(registry): inspect repository images ( #3121 )
...
* feat(registry): inspect repository images
* fix(registry): tag inspect column sorting
2019-10-14 15:46:33 +02:00
xAt0mZ
2445a5aed5
fix(registry): Performance issues with Registry Manager ( #2648 )
...
* 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
2019-10-14 15:45:09 +02:00
xAt0mZ
8a8cef9b20
feat(deps): multiselect library as dependency ( #3255 )
2019-10-14 15:43:58 +02:00
xAt0mZ
e20a139c5a
fix(registry): remove checkboxes on repositories list ( #3109 )
2019-10-14 15:43:27 +02:00
Tim van den Eijnden
774380fb44
chore(icons): update fontawesome dependency ( #3219 )
2019-10-14 15:40:19 +02:00
Soham Mondal
8de507a15d
feat(container-details): add entrypoint to container details view ( #3120 )
...
* feat(container-details): add entrypoint to container details view
* feat(container-details): restore file from develop branch to bring back original indentation
* feat(container-details): add entrypoint to container details view
2019-10-10 17:47:25 +13:00
Anthony Lapenna
ab2acea463
feat(app): add externally sourced support options ( #3249 )
...
* feat(app): add externally sourced support options
* refactor(api): rename struct fields
2019-10-10 10:59:27 +13:00
Anthony Lapenna
182f3734d0
fix(api): fix an issue with unsupported cron format ( #3240 )
...
* fix(api): fix an issue with unsupported cron format
* refactor(api): review migration method
2019-10-08 16:18:32 +13:00
Anthony Lapenna
9aa52a6975
feat(settings): add new settings to disable volume browser ( #3239 )
...
* feat(settings): add new settings to disable volume browser
* feat(api): update setting to be compliant with RBAC
* refactor(api): update method comment
* fix(api): remove volume browsing authorizations by default
* feat(settings): rewrite volume management setting description
* feat(settings): rewrite volume management setting tooltip
* Update app/portainer/views/settings/settings.html
Co-Authored-By: William <william.conquest@portainer.io>
2019-10-08 13:17:58 +13:00
Anthony Lapenna
b0f48ee3ad
feat(app): fix XSS vulnerabilities ( #3230 )
2019-10-07 16:24:48 +13:00
Anthony Lapenna
fb6f6738d9
fix(api): prevent the use of bind mounts in stacks if setting enabled ( #3232 )
2019-10-07 16:12:21 +13:00
Frans-Jan van Steenbeek
6c996377f5
fix(container-creation): prevent duplicate MAC addresses after edit ( #1645 ) ( #2993 )
2019-10-03 15:37:34 +13:00
Anthony Lapenna
ea05d96c73
feat(sidebar): add update notification ( #3196 )
...
* feat(sidebar): add update notification
* style(sidebar): update notification color palette
* refactor(api): rollback to latest version
* feat(sidebar): update style
* style(sidebar): fix color override
2019-09-26 08:38:11 +12:00
xAt0mZ
b034a60724
fix(auth): authController full rewrite ( #3173 )
...
* fix(auth): authController full rewrite
fixes 2 bugs caused by legacy code
* fix(auth): moving state to cookies for Firefox private browsing
* fix(auth): clean query params on OAuth response
2019-09-25 13:36:24 +12:00
Anthony Lapenna
7509283072
fix(home): refresh the view on endpoint ping failure ( #3161 )
...
* fix(api): remove automatic backend failure for Down endpoints
* fix(home): refresh the view on endpoint ping failure
2019-09-20 16:14:44 +12:00
Anthony Lapenna
07505fabcc
fix(api): remove automatic backend failure for Down endpoints ( #3160 )
2019-09-20 16:13:58 +12:00
William
8e922dbfc6
fix(endpoint-creation): clarify docker endpoint ( #3148 )
...
* fix(endpoint-creation): clarify docker endpoint
* fix(endpoint-creation): change default order
2019-09-11 07:24:29 +12:00
Anthony Lapenna
7d76bc89e7
feat(api): relocate authorizations outside of JWT ( #3079 )
...
* feat(api): relocate authorizations outside of JWT
* fix(api): update user authorization after enabling the RBAC extension
* feat(api): add PortainerEndpointList operation in the default portainer authorizations
* feat(auth): retrieve authorization from API instead of JWT
* refactor(auth): move permissions retrieval to function
* refactor(api): document authorizations methods
2019-09-10 10:58:26 +12:00
xAt0mZ
7ebb3e62dd
fix(services): mounted volumes are now persisted and displayed correctly ( #3114 )
2019-09-10 10:57:36 +12:00
xAt0mZ
52704e681b
feat(services): rollback service capability ( #3057 )
...
* feat(services): rollback service capability
* refactor(services): notification reword
Co-Authored-By: William <william.conquest@portainer.io>
* refactor(services): remove TODO comment + add note on rollback capability
* fix(services): service update rpc error version out of sync
* feat(services): confirmation modal on rollback
* feat(services): rpc error no previous spec message
2019-09-10 10:56:57 +12:00
Anthony Lapenna
628d4960cc
fix(api): fix an issue with RegistryUpdate operation ( #3137 )
2019-09-10 10:55:27 +12:00
Anthony Brame
ea6cddcfd3
feat(swarmvisualizer): add labels display under node info ( #2886 )
...
* feat(swarmvisualizer): add labels display under node info
* feat(swarmvisualizer): fix css
* add toggle to display node labels
* feat(swarmvisualizer): rename filters section + fix display when label has no value
* feat(swarmvisualizer): retrieve state from local storage for node labels display toggle
2019-08-13 17:38:04 +02:00
xAt0mZ
96155ac97f
feat(app): debounce on all search fields ( #3058 )
2019-08-12 16:27:05 +02:00
xAt0mZ
c12ce5a5c7
feat(networks): group networks for swarm endpoints ( #3028 )
...
* feat(networks): group networks for swarm endpoints
* fix(networks): display error on networks with 1 sub
2019-08-12 16:26:44 +02:00
xAt0mZ
552c897b3b
fix(oauth): okta support ( #3051 )
...
* fix(oauth): okta support
* fix(oauth): state to follow OAuth 2 RFC against CSRF
2019-08-12 16:26:06 +02:00
xAt0mZ
24013bc524
fix(datatables): saved orderBy was always overridden by the default one ( #3052 )
2019-08-12 16:25:35 +02:00
xAt0mZ
a33dbd1e91
fix(oauth): state to follow OAuth 2 RFC against CSRF
2019-07-26 20:05:25 +02:00
xAt0mZ
b537a9ad0d
fix(oauth): okta support
2019-07-26 20:05:25 +02:00
Anthony Lapenna
12a512f01f
feat(edge): introduce support for Edge agent ( #3031 )
...
* feat(edge): fix webconsole and agent deployment command
* feat(edge): display agent features when connected to IoT endpoint
* feat(edge): add -e CAP_HOST_MANAGEMENT=1 to agent command
* feat(edge): add -v /:/host and --name portainer_agent_iot to agent command
* style(endpoint-creation): refactor IoT agent to Edge agent
* refactor(api): rename AgentIoTEnvironment to AgentEdgeEnvironment
* refactor(api): rename AgentIoTEnvironment to AgentEdgeEnvironment
* feat(endpoint-creation): update Edge agent deployment instructions
* feat(edge): wip edge
* feat(edge): refactor key creation
* feat(edge): update deployment instructions
* feat(home): update Edge agent endpoint item
* feat(edge): support dynamic ports
* feat(edge): support sleep/wake and snapshots
* feat(edge): support offline mode
* feat(edge): host job support for Edge endpoints
* feat(edge): introduce STANDBY state
* feat(edge): update Edge agent deployment command
* feat(edge): introduce EDGE_ID support
* feat(edge): update default inactivity interval to 5min
* feat(edge): reload Edge schedules after restart
* fix(edge): fix execution of endpoint job against an Edge endpoint
* fix(edge): fix minor issues with scheduling UI/UX
* feat(edge): introduce EdgeSchedule version management
* feat(edge): switch back to REQUIRED state from ACTIVE on error
* refactor(edge): remove comment
* feat(edge): updated tunnel status management
* feat(edge): fix flickering UI when accessing Edge endpoint from home view
* feat(edge): remove STANDBY status
* fix(edge): fix an issue with console and Swarm endpoint
* fix(edge): fix an issue with stack deployment
* fix(edge): reset timer when applying active status
* feat(edge): add background ping for Edge endpoints
* fix(edge): fix infinite loading loop after Edge endpoint connection failure
* fix(home): fix an issue with merge
* 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
* fix(edge): prevent a pointer issue after removing an active Edge endpoint
* 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(auth): login spinner
* feat(api): support searching in associated endpoint group data
* refactor(api): remove unused API endpoint
* refactor(api): remove comment
* refactor(api): refactor proxy manager
* feat(api): declare EndpointList params as optional
* feat(api): support groupID filter on endpoints route
* feat(api): add new API operations endpointGroupAddEndpoint and endpointGroupDeleteEndpoint
* feat(edge): new icon for Edge agent endpoint
* fix(edge): fix missing exec quick action
* fix(edge): add loading indicator when connecting to Edge endpoint
* feat(edge): disable service webhooks for Edge endpoints
* feat(endpoints): backend pagination for endpoints view (#3004 )
* feat(edge): dynamic loading for stack migration feature
* feat(edge): wordwrap edge key
* 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(websocket): minor refactor associated to Edge agent
* 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
* Merge branch 'feat-endpoint-backend-pagination' into edge
# Conflicts:
# api/bolt/endpoint/endpoint.go
# api/http/handler/endpointgroups/endpointgroup_update.go
# api/http/handler/endpointgroups/handler.go
# api/http/handler/endpoints/endpoint_list.go
# app/portainer/services/api/endpointService.js
* fix(api): fix default tunnel server credentials
* feat(api): update endpointListOperation behavior and parameters
* fix(api): fix interface declaration
* feat(edge): support configurable Edge agent checkin interval
* feat(edge): support dynamic tunnel credentials
* feat(edge): update Edge agent deployment commands
* style(edge): update Edge agent settings text
* refactor(edge): remove unused credentials management methods
* feat(edge): associate a remote addr to tunnel credentials
* style(edge): update Edge endpoint icon
* feat(edge): support encrypted tunnel credentials
* fix(edge): fix invalid pointer cast
* feat(bolt): decode endpoints with jsoniter
* feat(edge): persist reverse tunnel keyseed
* refactor(edge): minor refactor
* feat(edge): update chisel library usage
* refactor(endpoint): use controller function
* feat(api): database migration to DBVersion 19
* refactor(api): refactor AddSchedule function
* refactor(schedules): remove comment
* refactor(api): remove comment
* refactor(api): remove comment
* feat(api): tunnel manager now only manage Edge endpoints
* refactor(api): clean-up and clarification of the Edge service
* refactor(api): clean-up and clarification of the Edge service
* fix(api): fix an issue with Edge agent snapshots
* refactor(api): add missing comments
* refactor(api): update constant description
* style(home): remove loading text on error
* feat(endpoint): remove 15s timeout for ping request
* style(home): display information about associated Edge endpoints
* feat(home): redirect to endpoint details on click on unassociated Edge endpoint
* feat(settings): remove 60s Edge poll frequency option
2019-07-26 10:38:07 +12:00
Anthony Lapenna
2252ab9da7
style(app): update app loading text ( #3046 )
2019-07-26 10:20:38 +12:00
xAt0mZ
66b6a6cbbd
fix(app): UI settings persistency ( #3025 )
2019-07-22 20:10:49 -07:00
xAt0mZ
1089846fd6
fix(datatables): default orderby now applied correctly ( #3022 )
2019-07-22 20:09:43 -07:00
xAt0mZ
2bf125c8cc
fix(app): un-needed checkbox in service details view ( #2982 )
2019-07-22 12:59:29 +02:00
xAt0mZ
9ec83bb065
style(container-stats): clarify network graph is aggregate ( #3003 )
2019-07-22 12:59:01 +02:00
xAt0mZ
64d382f612
fix(containers): multiple clics on image commit ( #3013 )
2019-07-22 12:58:22 +02:00
xAt0mZ
4fcd2e8afe
style(container-creation): clarify ports mapping ( #2995 )
2019-07-22 12:55:58 +02:00
William
16234aa0c1
style(users): fix typo/grammar ( #3010 )
2019-07-22 12:55:40 +02:00
xAt0mZ
03c82cac69
feat(datatables): auto refresh on datatables ( #2974 )
...
* feat(datatables): auto refresh on datatables
* feat(datatables): auto refresh implementation on docker related resources
2019-07-22 12:54:59 +02:00
linquize
cc487ae68a
fix(registries): can edit registries when --no-auth is set ( #2763 )
2019-07-20 16:48:59 -07:00
Anthony Lapenna
90d3f3a358
Enable endpoint backend pagination ( #2989 )
...
* 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
2019-07-20 16:28:11 -07:00
xAt0mZ
f71a565acc
refactor(container): reword notification messages
2019-07-18 17:19:00 +02:00
xAt0mZ
a856053338
fix(containers): multiple clics on image commit button were creating a lot of images
2019-07-15 13:28:30 +02:00
itsconquest
afda5d07bf
style(container-stats): clarify network graph is aggregate
2019-07-11 16:52:28 +12:00
xAt0mZ
693182fbd3
feat(auth): login spinner ( #2999 )
2019-07-11 04:13:03 +12:00
itsconquest
d1fee6f119
style(container-creation): clarify ports mapping
2019-07-10 17:16:43 +12:00
xAt0mZ
4084e7c8ec
feat(home): pagination on endpoints list ( #2981 )
2019-07-05 09:46:59 +12:00
xAt0mZ
f20526d662
fix(app): disable-authorization directive was hiding/showing elements instead of disabling them
2019-07-04 15:36:29 +02:00
xAt0mZ
3d4af7c54f
feat(registry): disable browse for quay.io registry ( #2971 )
...
* feat(registry): disable browse for quay.io registry
* refactor(registry): browsable urls check done with function
2019-07-03 00:33:46 +02:00
xAt0mZ
1138fd5ab1
fix(datatables): allow selecting range using shift ( #344 ) ( #2962 )
...
* 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
2019-07-02 17:51:17 +02: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 Brame
b3c7c76be2
fix(swarmvisualizer): nodes are now sorted by roles then by hostname ( #2885 )
2019-06-21 15:50:58 +02:00
Michael Oborne
fb69ffa764
fix(create-container): init ExposedPorts on container creation process ( #2933 )
2019-06-21 15:48:52 +02:00
Pedro Henrique
96f266adf6
fix(volume-browser): download capability for all types of files ( #2954 )
2019-06-21 15:44:29 +02:00
William
f3b9668629
fix(endpoints): always reset agent headers when switching state ( #2939 )
2019-06-18 14:45:49 +02:00
xAt0mZ
71b1da8d32
fix(app): wrapper for UI refresh trigger with async/await ( #2945 )
...
* 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
2019-06-17 16:51:39 +02:00
xAt0mZ
144e0ae07e
refactor(app): move storidge to new 'integrations' module ( #2905 )
...
* refactor(app): move storidge to new 'integrations' module
* style(storidge): revert TODO note removal
2019-06-11 23:13:18 +02:00
Anthony Lapenna
50f547a6e7
feat(motd): add the ability to use custom style ( #2918 )
...
* feat(motd): rework motd display mechanism for more flexibility on motd content
* feat(api): enhance MOTD
* refactor(api): refactor MOTD related codebase
* feat(motd): hash on message
2019-06-02 18:16:43 +12:00
Anthony Lapenna
1d9166216a
feat(app): set anonymizeIp property for GA ( #2919 )
2019-06-02 18:16:07 +12:00
baron_l
5388585ef1
fix(app): extensions status retrieval ( #2910 )
...
* fix(rbac): extensions status retrieval not interrupted anymore
* refactor(extensions): change endpoint used to retrieve extension activation status
2019-05-29 12:39:30 +12:00
Anthony Lapenna
086d4f1d1c
feat(containers): hide the attach quick action by default ( #2908 )
...
* feat(containers): hide the attach quick action by default
* fix(containers): add missing display checks for quick actions column
* fix(services): add missing showQuickActionAttach property
2019-05-29 12:15:52 +12:00
baron_l
608fc497a8
fix(app): extensions cache only for rbac ( #2904 )
2019-05-28 20:41:20 +12:00
Anthony Lapenna
dc3a29ad43
refactor(rbac): update RBAC name to full-length name
2019-05-27 15:48:46 +12:00
Anthony Lapenna
23eaf14f58
style(roles): fix typo
2019-05-27 10:43:03 +12:00
Anthony Lapenna
a2d29df21b
fix(rbac): add specific authorization for Storidge management
2019-05-27 10:41:12 +12:00
William
e3eeb32a11
style(container-creation): clarify port mapping ( #2899 )
2019-05-25 09:56:30 +12:00
baron_l
851607394c
feat(integrations): storidge evolution ( #2711 )
...
* feat(storidge): update storidge routes
* feat(storidge): add new fields on profile create/edit
* feat(storidge): add drives list and details view
* feat(storidge): add node details / cordon / uncordon / remove
* feat(storidge): add volume and snapshot details
* feat(storidge): add snapshot creation on volume details
* feat(storidge): add rescan drives button
* refactor(storidge): move add / remove / put in / put ouf maintenance buttons for cluster nodes
* style(storidge): change cluster / node icon color based on status
* feat(storidge): profiles can enable snapshots without interval + interval in minutes
* refactor(storidge): split cluster and node status badge filter
* fix(storidge): error on volume IOPS update
* fix(storidge): snapshot can now be created without comments
* feat(storidge): remove snapshots panels when volume snapshots are disabled
* fix(app): paginatedItemLimit now retrieved for datables extending GenericDatatableController
* fix(storidge): addDrive is called with the good parameters
* fix(storidge): update model and views for Storidge v2695
* refactor(storidge): webpack migration
* fix(storidge): display modifications + fix js errors
* feat(storidge): snapshots, profile and nodes evolution
* fix(storidge): values for InterfaceDriver on profile create/edit
* feat(storidge): v5 update without style (profile / statuses / volume)
* fix(storidge): description tables on the same view have now the same fixed offset
* fix(app): override rdash-ui select style
* Revert "fix(app): override rdash-ui select style"
This reverts commit e724833261
.
* feat(storidge): wip on update 6
* feat(storidge): update 6
* feat(storidge): update 6
* feat(storidge): update 6
* feat(storidge): update 7 - node details + cluster views
* fix(storidge): update 7 - profiles creation + volume details
* fix(storidge): update 7 - profile create/edit interface type
* feat(storidge): update 8 - add drive
* feat(storidge): update 8 - UI refactors + cluster availability
* fix(storidge): update 8 - revert cluster availability
* feat(storidge): update 8 - node availability on swarm overview
* feat(storidge): cluster condition badge
* fix(storidge): update 9 - move add storage button + api profile filesystem kv to obj
* feat(storidge): update 9 - disable add drive button when action is in progress
* fix(storidge): update 9 - add drive button will now change only for the concerned drive
* fix(storidge): update 10 - disable remove drive button when removal in progress
* fix(api): update Storidge proxy creation process
* refactor(api): update version number
* feat(extensions): fix an issue with Storidge API URL
* feat(storidge): force the use of a manager node
2019-05-25 09:53:10 +12:00
Anthony Lapenna
8057aa45c4
feat(extensions): introduce RBAC extension ( #2900 )
2019-05-24 18:04:58 +12:00
William
8025d4c817
fix(support): enforce minimum purchase amount ( #2891 )
...
* fix(support): enforce minimum purchase amount
* Update app/portainer/views/support/product/product.html
Co-Authored-By: Anthony Lapenna <lapenna.anthony@gmail.com>
* fix(support): fix product img tags for webpack
2019-05-24 17:57:27 +12:00
mrdrogdrog
1af9fb4490
feat(containers): add support docker attach ( #2842 )
...
* #592 feat(container-details): split websocket backend code into more files and add attach handler
* #592 feat(container-details): rename console to exec and add attach console
* Revert "#592 feat(container-details): rename console to exec and add attach console"
This reverts commit f2deaee1
* #592 feat(container-details): add attach to containerconsole
* #592 feat(container-details): catch more errors
* #592 feat(container-details): use less vars
* #592 feat(container-details): error message is more verbose
* #592 feat(container-details): go fmt
* #592 feat(container-details): unpack netdial
* #592 feat(container-details): reformat service
* #592 feat(container-details): fix go compiler bugs
* #592 feat(container-details): refactor services
* #592 feat(container-details): fix windows dial
* #592 feat(container-details): gofmt dial_windows.go
* #592 feat(container-details): split console into two views and fix breadcrumbs
* #592 feat(container-details): swap exec and attach action
* #592 feat(container-details): add some warnings
* #592 feat(container-details): refresh view more
* #592 feat(container-details): use less functions for connecting/disconnecting
* #592 feat(container-details): move link replacements into initTerm
* #592 feat(container-details): disable attach/exec button if container is not running
* #592 feat(container-details): fix typo
* #592 feat(container-details): autoconnect attach view
* #592 feat(container-details): fix first draw after attach + reformat code
* #592 feat(container-details): remove init-helper-div
* #592 feat(container-details): console resize code and remove padding
* #592 feat(container-details): swap height and width arguments in container tty resize restcall
* #592 feat(container-details): swap height and width arguments in exec tty resize restcall
* #592 feat(container-details): remove css unit
* #592 feat(container-details): remove loaded state from states object
* #592 feat(container-details): reword Disattach to Detach
* #592 feat(container-details): remove unloaded state from states object
* #592 feat(container-details): remove useless code
* #592 feat(container-details): clearer state-check
* #592 feat(container-details): fixed resize bugs by using xterms col attribute
2019-05-09 14:04:40 +12:00
baron_l
7b3ef7f1a2
fix(node-details): engine labels were displayed as Objects ( #2858 )
2019-05-02 08:37:24 +12:00
William
80c5052b55
style(users): fix typo/grammar ( #2848 )
2019-04-23 12:22:54 +12:00
William
845f4e912b
fix(secret-creation): prevent assignment of label with no name ( #2838 )
2019-04-19 09:18:40 +12:00
William
8a7a73fe84
fix(notifications): fix create user errormessage ( #2820 )
2019-04-08 15:48:43 +12:00
William
e4a81df42e
fix(group-access): fix authorize/deny all buttons behavior ( #2813 )
2019-04-08 09:28:57 +12:00
William
c39807e86c
fix(team): fix invalid team leader count ( #2811 )
2019-04-05 14:49:08 +13: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
Fabian Grutschus
dbab524e5d
style(containers): change order of container action buttons to match ordering of quick action buttons ( #2772 )
2019-03-13 11:10:15 +13:00
Anthony Lapenna
1618388e39
refactor(app): minor refactor ( #2773 )
2019-03-13 11:09:53 +13:00
William
ac4af41317
fix(services): Do not display quick actions in a regular swarm environment ( #2769 )
2019-03-11 16:48:00 +13:00
Anthony Lapenna
82078a8d8f
style(extensions): update extensions information panel
2019-03-05 16:09:03 +13:00
Anthony Lapenna
2b31f489d9
feat(api): add support for an externally fetched title for motd ( #2755 )
...
* feat(api): add support for an externally fetched title for motd
* refactor(api): gofmt motd.go
* refactor(api): update go comment
2019-03-05 16:05:15 +13:00
Anthony Lapenna
415c1759d1
Merge branch 'oath-poc' into develop
2019-03-01 14:16:04 +13:00
linquize
42529cc5ea
feat(volumes): show volume creation date ( #2745 )
2019-03-01 11:59:11 +13:00
Anthony Lapenna
60fbfeba23
fix(oauth): fix settings displaying issue for custom OAuth configuration
2019-03-01 11:24:47 +13:00
Anthony Lapenna
f5091ce5fb
fix(auth): fix invalid condition to display OAuth login button
2019-03-01 10:58:18 +13:00
Anthony Lapenna
58962de20e
Merge branch 'develop' into oath-poc
2019-03-01 09:42:38 +13:00
Anthony Lapenna
1eb7e6bacc
fix(auth): rollback changes introduced via #2591 ( #2747 )
2019-02-28 11:38:02 +13:00
Tim van den Eijnden
9cbf1f34a7
feat(networks): prevent removal of predefined networks ( #2697 )
...
* fix(networks): disable removing predefined networks (#1838 )
* fix(networks): disable select all for predefined networks (#1838 )
* fix(networks): do not allow delete in network-details & use constant (#1838 )
2019-02-25 14:25:48 +13:00
linquize
c152d3f62e
fix(stacks): update web editor to set tab key to insert spaces ( #2735 )
2019-02-25 14:19:53 +13:00
linquize
da44f14e07
fix(auth): prevent redirect parameter to use state portainer.auth ( #2701 )
2019-02-25 13:57:11 +13:00
Anthony Lapenna
49516e2c3f
style(oauth): update Azure UI elements
2019-02-25 13:38:27 +13:00
Anthony Lapenna
9c4c782a90
style(container-creation): review auto remove element position
2019-02-25 13:09:09 +13:00
baron_l
7aa6a30614
feat(registry-manager): allow regular users to use the registry browse feature ( #2664 )
...
* 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
2019-02-25 13:02:49 +13:00
linquize
99e50370bd
feat(container-creation): support auto remove option (docker run --rm) ( #2684 )
2019-02-25 09:48:31 +13:00
Anthony Lapenna
dc2a8cf1f4
feat(oauth): update OAuth configuration UX
2019-02-21 14:02:25 +13:00
Anthony Lapenna
b9ac3d4286
feat(oauth): fix the double refresh issue
2019-02-21 11:09:57 +13:00
Anthony Lapenna
6711e6c969
feat(oauth): update configuration override UX
2019-02-21 10:30:09 +13:00
Anthony Lapenna
4a5fa211a7
feat(account): display a warning message in the account view
2019-02-20 13:57:13 +13:00
Anthony Lapenna
d510d23408
feat(oauth): improve Azure OAuth support
2019-02-20 13:53:25 +13:00
Anthony Lapenna
ce9e009e22
feat(oauth): update UI/UX
2019-02-19 14:38:42 +13:00
Anthony Lapenna
9918c1260b
feat(oauth): update authentication panel with OAuth provider details
2019-02-19 09:54:02 +13:00
Anthony Lapenna
e325ad10dd
fix(oauth): fix an UX issue when updating microsoft oauth settings
2019-02-18 16:18:48 +13:00
Anthony Lapenna
73f20b5157
refactor(oauth): remove console log statement
2019-02-18 15:21:34 +13:00
Anthony Lapenna
b6f04c5e0d
fix(oauth): fix missing scopes for microsoft provider
2019-02-18 15:21:06 +13:00
Anthony Lapenna
2ef8c0b33e
fix(app): rewrite URLHelper to avoid an issue with minification
2019-02-18 15:08:54 +13:00
Anthony Lapenna
7643f8d08c
feat(oauth): dev build supporting Oauth extension
2019-02-18 14:46:34 +13:00
Anthony Lapenna
78e2aaf7d4
feat(oauth): update OAuth UX
2019-02-17 17:01:36 +13:00
Anthony Lapenna
17cf374c30
Merge branch 'develop' into oath-poc
2019-02-17 16:39:23 +13:00
Anthony Lapenna
de76ba4e67
feat(oauth): update OAuth UX
2019-02-14 15:58:45 +13:00
linquize
8f32d58fae
fix(templates): redirect to home if endpoint not yet selected #2709 ( #2710 )
2019-02-14 12:08:46 +13:00
baron_l
8f568c8699
style(oauth): oauth loading + oauth config rework
2019-02-08 16:07:16 +01:00
baron_l
2755527d28
feat(oauth): default team for user on oauth settings
2019-02-07 19:32:02 +01:00
baron_l
4d8133f696
feat(oauth): spinner on code evaluation after sucessfull oauth
2019-02-07 15:07:10 +01:00
Anthony Lapenna
508352f4ea
Merge branch 'develop' into oath-poc
2019-02-04 09:19:12 +13:00
Daniel Cardoza
9b6b6e09ae
fix(endpoints): correct agent stack download url ( #2667 )
...
* 2584 fix(endpoints): correct agent stack download url
The directions for installing the agent stack from the endpoints
view used an old url. Update to the new url.
* Drop the portainer- prefix for the download path and filename
Co-Authored-By: dang3r <danielpcardoza@gmail.com>
2019-02-04 09:06:07 +13:00
Anthony Lapenna
899cd5f279
fix(home): fix an issue when trying to connect to an Azure ACI endpoint ( #2671 )
2019-02-04 09:04:52 +13:00
Chaim Lev Ari
90281fd7f0
feat(oauth): add providers to providers-selector
2019-01-25 10:57:40 +02:00
Chaim Lev Ari
c1939f6070
feature(oauth): add provider selector
2019-01-25 10:46:17 +02:00
Chaim Lev Ari
50c604ee4c
fix(auth): use the right function to oauth validate
2019-01-25 10:44:31 +02:00
Chaim Lev Ari
41ded64037
Revert "refactor(auth): extract oauth login mechanism to service"
...
This reverts commit 0a439b3893
.
2019-01-25 10:37:23 +02:00
baron_l
801336336f
fix(registry-manager): add repositories pagination support ( #2641 )
...
* 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
2019-01-24 13:38:36 +13:00
Anthony Lapenna
1a4dff536d
fix(container-creation): fix an issue with command parsing ( #2642 )
...
* fix(container-creation): fix an issue with command parsing
* refactor(container-creation): remove indentation update
2019-01-23 12:25:42 +13:00
Chaim Lev-Ari
f772cd31cb
feat(auth): preserve url when redirected to login ( #2591 )
...
* feat(auth): preserve url when redirected to login
* feat(auth): add redirect also to unauthenticated flow
* style(app): remove style changes from files
* fix(app): remove reference to otpLogin
* style(auth): remove semicolon
2019-01-23 12:22:56 +13:00
Chaim Lev-Ari
8160fe4717
feat(app): redirect to home if no endpoint is set ( #2601 )
...
* refactor(stacks): set newstack state as a child state of stacks
* fix(docker): add check on docker states for endpoint
* refactor(app): remove redirect notification
2019-01-23 12:21:48 +13:00
Anthony Lapenna
86c60807cd
feat(endpoint-creation): fix invalid link ( #2644 )
2019-01-23 12:18:18 +13:00
baron_l
c1f2d90997
fix(container-creation): fix missing capabilities on duplicate ( #2635 )
2019-01-23 09:28:44 +13:00
Chaim Lev Ari
3699b794eb
feat(oauth): add providers selectors
2019-01-18 12:14:12 +02:00
Chaim Lev Ari
69252a8377
refactour(auth): move information body to each setting
2019-01-18 12:08:18 +02:00
Chaim Lev Ari
c28274667d
refactor(oauth): use oauth2 to generate login url
2019-01-18 10:13:33 +02:00
Anthony Lapenna
54163e3b92
fix(extensions): fix an issue with extensions with expired licenses ( #2628 )
...
* fix(extensions): fix an issue with extensions with expired licenses
* fix(api): fix invalid log call
* fix(api): allow to re-enable an extension
2019-01-18 10:00:18 +13:00
Chaim Lev-Ari
62eb47b3cb
fix(container-creation): revert container state if creation failed ( #2565 )
...
* fix(container): rename old container only if exist
* fix(container): remove new container only if created
* style(container): fix typo
Co-Authored-By: chiptus <chiptus@users.noreply.github.com>
2019-01-18 08:59:43 +13:00
hiyao
a33eca4bbb
fix(registry-manager): fix an issue when removing all tags of a repository ( #2545 )
...
* 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
2019-01-18 08:01:47 +13:00
baron_l
50e77d2bf1
fix(network-details): displaying all subnets and gateways on network details ( #2629 )
2019-01-17 11:39:15 +13:00
DevHugo
50a3b08209
feat(app): add driver name in the volume selector for container/service creation ( #2534 )
...
* Feat(containers): add driver name in the volume selector
* Feat(services): add driver name in the volume selector
2019-01-17 11:28:40 +13:00
Chaim Lev Ari
0a439b3893
refactor(auth): extract oauth login mechanism to service
2019-01-16 18:57:15 +02:00
Chaim Lev Ari
0d4e1d00f0
refactor(login): move oauth button to right
2019-01-16 18:00:01 +02:00
Chaim Lev Ari
b09f491f62
style(auth): remove comments and change error
2019-01-16 17:53:10 +02:00
Chaim Lev Ari
b121f975fa
refactor(settings): remove duplicate settings
2019-01-16 17:38:07 +02:00
Chaim Lev Ari
3f44925d7e
fix(auth): fix typo - missing function
2019-01-16 17:37:50 +02:00
Chaim Lev Ari
80d570861d
refactor(auth): move public settings into view model
2019-01-16 17:34:12 +02:00
Chaim Lev Ari
317bd53e43
Merge branch 'oath-poc' of github.com:portainer/pportainer into oath-poc
2019-01-16 17:26:29 +02:00
Chaim Lev Ari
24f066716b
refactor(auth): expose only the login url
2019-01-16 17:25:16 +02:00
Chaim Lev Ari
4cbde7bb0d
refactor(auth): move oauth handler under auth
2019-01-16 17:24:58 +02:00
Anthony Lapenna
c650fe56c2
fix(auth): fix typos
...
Co-Authored-By: chiptus <chiptus@users.noreply.github.com>
2019-01-16 16:53:24 +02:00
Chaim Lev-Ari
fe63b4a156
fix(container-creation): populate logger config from existing container ( #2602 )
...
* refactor(container): change map function to lodash
* style(container): add semicolon
2019-01-16 13:34:28 +13:00
Chaim Lev-Ari
42365a52b1
feat(container-details): change network identifier to name ( #2623 )
2019-01-16 08:05:55 +13:00
baron_l
c7983d8993
fix(app): remove endpoint status update on 502/503 http return
...
* refactor(app): removing unused dep and function
2019-01-16 07:58:35 +13:00
Anthony Lapenna
34667bd3b3
fix(network-creation): force overlay network creation on manager node ( #2622 )
...
* fix(network-creation): force overlay network creation on manager node
* fix(app): fix function override
* fix(app): use portainerAgentManagerOperation in interceptor
2019-01-15 12:10:29 +13:00
Anthony Lapenna
3a3577754e
fix(home): only display group name if available ( #2621 )
2019-01-15 08:52:26 +13:00
Anthony Lapenna
bed49c37e4
fix(teams): remove name sanitization when creating a team ( #2619 )
2019-01-14 17:27:55 +13:00
Chaim Lev Ari
17ac3e5ed1
refactor(oauth): move enpoint constant to extension
2019-01-03 13:36:17 +02:00
Chaim Lev Ari
25620c5008
refactor(auth): refactor get url params
2019-01-02 20:49:25 +02:00
Chaim Lev Ari
9bebe9dee7
refactor(auth): move user setter into function
2019-01-02 20:01:23 +02:00
Chaim Lev Ari
81e3ace232
fix(auth): fix oauh enabled function
2019-01-02 20:01:06 +02:00
Chaim Lev Ari
15b6941872
refactor(oauth): move oauth rest service to extension
2019-01-02 20:00:41 +02:00
Chaim Lev Ari
7aaa9e58e9
refactor(auth): move oauth info to component
2019-01-02 16:24:10 +02:00
Chaim Lev Ari
515daf6dba
refactor(auth): exprt oauth settings into extension
2019-01-02 16:21:36 +02:00
Chaim Lev Ari
0a1643bbcf
style(auth): remove added spaces
2019-01-02 16:01:10 +02:00
Chaim Lev Ari
38f24683a6
refactor(auth): remove empty $q.deffered
2019-01-02 15:59:38 +02:00
Chaim Lev Ari
7494101a4d
refactor(auth): refactor auth controller
2019-01-02 15:56:08 +02:00
Chaim Lev Ari
241a701eca
feat(oauth): merge pr from https://github.com/portainer/portainer/pull/2515
2018-12-30 18:02:22 +02:00
Chaim Lev-Ari
f2cd33e831
feat(container-creation): call stopAndRename after pullImage ( #2564 )
...
* refactor(container): remove bind of function
2018-12-21 00:37:35 +09:00
Anthony Lapenna
6c26cf1f39
style(support): update support pricing
2018-12-12 16:03:20 +13:00
Anthony Lapenna
5c2e714e69
style(extensions): minor update to extension UX/UI ( #2538 )
...
* style(extensions): update extension icons
* style(extensions): style update
* feat(extensions): update extension UX
* style(extensions): update extension style
* style(extension-details): update screenshot default size
* style(extensions): update overview diagram image
* refactor(support): fix support URLs
2018-12-12 10:28:21 +13:00
Anthony Lapenna
17d85fdc15
fix(registry-creation): fix registry creation request being fired twice on firefox
2018-12-10 21:56:07 +13:00
Anthony Lapenna
42a357f863
fix(support-details): fix a js error
2018-12-09 17:03:26 +13:00
Anthony Lapenna
6fd5ddc802
feat(extensions): introduce extension support ( #2527 )
...
* wip
* wip: missing repository & tags removal
* feat(registry): private registry management
* style(plugin-details): update view
* wip
* wip
* wip
* feat(plugins): add license info
* feat(plugins): browse feature preview
* feat(registry-configure): add the ability to configure registry management
* style(app): update text in app
* feat(plugins): add plugin version number
* feat(plugins): wip plugin upgrade process
* feat(plugins): wip plugin upgrade
* feat(plugins): add the ability to update a plugin
* feat(plugins): init plugins at startup time
* feat(plugins): add the ability to remove a plugin
* feat(plugins): update to latest plugin definitions
* feat(plugins): introduce plugin-tooltip component
* refactor(app): relocate plugin files to app/plugins
* feat(plugins): introduce PluginDefinitionsURL constant
* feat(plugins): update the flags used by the plugins
* feat(plugins): wip
* feat(plugins): display a label when a plugin has expired
* wip
* feat(registry-creation): update registry creation logic
* refactor(registry-creation): change name/ids for inputs
* feat(api): pass registry type to management configuration
* feat(api): unstrip /v2 in regsitry proxy
* docs(api): add TODO
* feat(store): mockup-1
* feat(store): mockup 2
* feat(store): mockup 2
* feat(store): update mockup-2
* feat(app): add unauthenticated event check
* update gruntfile
* style(support): update support views
* style(support): update product views
* refactor(extensions): refactor plugins to extensions
* feat(extensions): add a deal property
* feat(extensions): introduce ExtensionManager
* style(extensions): update extension details style
* feat(extensions): display license/company when enabling extension
* feat(extensions): update extensions views
* feat(extensions): use ProductId defined in extension schema
* style(app): remove padding left for form section title elements
* style(support): use per host model
* refactor(extensions): multiple refactors related to extensions mecanism
* feat(extensions): update tls file path for registry extension
* feat(extensions): update registry management configuration
* feat(extensions): send license in header to extension proxy
* fix(proxy): fix invalid default loopback address
* feat(extensions): add header X-RegistryManagement-ForceNew for specific operations
* feat(extensions): add the ability to display screenshots
* feat(extensions): center screenshots
* style(extensions): tune style
* feat(extensions-details): open full screen image on click (#2517 )
* feat(extension-details): show magnifying glass on images
* feat(extensions): support extension logo
* feat(extensions): update support logos
* refactor(lint): fix lint issues
2018-12-09 16:49:27 +13:00
Olli Janatuinen
2541f4daea
feat(UX): persist search criterias ( #2425 )
...
* feat(ui): persist search criteria
* fix(ui): trying make templates search working correctly
* fix(ui): corrected search persistance on home and templates
* fix(ui): corrected javascript errors
2018-12-07 08:54:34 +13:00
baron_l
1a94158f77
* feat(UX): schedule creation UX overhaul ( #2485 )
...
* feat(api): add a new Recurring property on Schedule
* feat(schedules): date to cron convert + recurring flag
* feat(schedules): update angularjs-datetime-picker from v1 to v2
* chore(app): use minified dependency for angularjs-datetime-picker
* chore(vendor): rollback version of angularjs-datetime-picker
* * feat(ux): replace datepicker for schedule creation/details
* feat(container-stats): add refresh rate of 1 and 3 seconds (#2493 )
* fix(templates): set var to default value if no value selected (#2323 )
* fix(templates): set preset to true iff var type is preset
* fix(templates): add env var value when changing type
* feat(security): shutdown instance after 5minutes if no admin account created (#2500 )
* feat(security): skip admin check if --no-auth
* fix(security): change error message
* fix(vendor): use datepicker minified version
* feat(schedule-creation): replace angular-datetime-picker
* feat(schedule): parse cron to datetime
* fix(schedule): fix zero based months
2018-12-07 08:53:23 +13:00
Anthony Lapenna
9e1800e2ec
style(settings): update host management tooltip
2018-12-06 14:01: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
Chaim Lev-Ari
acce5e0023
fix(templates): set var to default value if no value selected ( #2323 )
...
* fix(templates): set preset to true iff var type is preset
*
* fix(templates): add env var value when changing type
2018-12-04 09:52:59 +13:00
linquize
5fa4403d20
feat(container-stats): add refresh rate of 1 and 3 seconds ( #2493 )
2018-12-03 21:49:02 +13:00
baron_l
969f70edeb
fix(image-upload): uploading a tar with multiple images wont display an error anymore ( #2503 )
2018-11-29 07:00:58 +13:00
baron_l
c778e79004
fix(container-console): close the console when selected shell does not exist inside the container ( #2502 )
2018-11-29 06:57:36 +13:00
Andreas Roussos
b809177147
feat(dashboard): use plural form only when required
...
* fix(endpoint-item): use plural form only when required
* refactor(endpoint-item): use clearer patterns
* refactor(dashboard): use clearer patterns
2018-11-25 09:46:13 +13:00
baron_l
52788029ed
feat(container-details): add visual feedback when creating image from container ( #2487 )
2018-11-24 11:11:58 +13:00
baron_l
5e49f934b9
fix(containers-stats): accessing a down container stats wont display a js error anymore ( #2484 )
2018-11-23 21:44:34 +13:00
baron_l
fe8dfee69a
feat(home): display each endpoint URL ( #2471 )
2018-11-19 19:07:38 +13:00
baron_l
488dc5f9db
fix(network-creation): macvlan availability for standalone endpoints ( #2441 )
2018-11-16 13:26:56 +13:00
Anthony Lapenna
94d3d7bde2
feat(motd): relocate motd file URL and always return 200 ( #2466 )
2018-11-14 12:20:33 +13:00
baron_l
d455ab3fc7
feat(endpoints): enhance offline browsing ( #2454 )
...
* feat(api): rewrite error response when trying to query a down endpoint
* feat(interceptors): adding custom backend return code on offline fastfail
2018-11-13 16:08:12 +13:00
Anthony Lapenna
0825d05546
feat(endpoints): improve offline banner UX ( #2462 )
...
* feat(endpoints): add the last snapshot timestamp in offline banner
* feat(endpoints): add the ability to refresh a snapshot in the offline banner
2018-11-13 16:02:49 +13:00
Anthony Lapenna
64c29f7402
feat(schedules): add the ability to list tasks from snapshots ( #2458 )
...
* feat(schedules): add the ability to list tasks from snapshots
* feat(schedules): update schedules
* refactor(schedules): fix linting issue
2018-11-13 14:39:26 +13:00
Anthony Lapenna
a2d9f591a7
feat(schedules): add retry policy to script schedules ( #2445 )
2018-11-09 15:22:08 +13:00
Anthony Lapenna
e7ab057c81
feat(sidebar): add a new Scheduler top entry
2018-11-08 14:09:21 +13:00
Yassir Hannoun
309620545c
fix(container-stat): fix cpu/mem charts on Windows containers
...
* Fixing the CPU and Memory charts on Windows containers
* Fixing the CPU and Memory charts on Windows containers
2018-11-08 13:31:33 +13:00
Dmitriy Larionov
55b50c2a49
feat(container-creation): allow escaped quotes in command field ( #2419 )
2018-11-08 09:53:19 +13:00
Anthony Lapenna
807c830db0
feat(schedules): add the ability to update a schedule script ( #2438 )
2018-11-07 17:19:10 +13:00
Anthony Lapenna
695c28d4f8
fix(host): fix a typo in job history clear notification
2018-11-07 16:06:27 +13:00
Anthony Lapenna
4740375ba5
feat(schedules): add schedules UI ( #2414 )
...
* feat(schedules): add schedules UI mockups
* feat(schedules): update controller pattern
* feat(schedules): leverages API
* feat(schedules): add the ability create/edit a script execution job schedule
* feat(schedules): add form validation and details about cron expression
2018-11-07 11:59:21 +13:00
Jan Jansen
78bf374548
feat(ux): normalize quick actions buttons ( #2389 )
...
* feat(ux): normalize quick actions buttons
Fixes #2013
* fix(ux): fix wrong naming of variable
2018-10-31 15:50:38 +13:00
pc
8df64031e8
feat(log-viewer): change line count default to 100 and add a since parameter ( #2377 )
...
* chore(log-viewer): add the ability to use`since` parameter #1942
https://github.com/portainer/portainer/issues/1942#issuecomment-430246378
* chore(log-viewer): change lineCount to 100 #1942
https://github.com/portainer/portainer/issues/1942#issuecomment-430246378
* fix(log-viewer): js syntax typo for `;` and `'`
forget to lint the code, reported by codeclimate
* fix(log-viewer): use mementjs to format timestamp
1. use moment lib instead of define a function in filter.js(not the right place for this function, removed)
2. set sinceTimestamp init value to `24 hours ago`, as we just need to focus on the relative latest logs after the log-viewer loading, not all the logs(to speedup the process)
3. use moment().unix() to convert the `sinceTimestamp` to local unix timestamp(not utc)
* chore(log-viewer): add the ability to select the datetime for `since`
* chore(log-viewer): add the ability to fetch logs from specific time
2018-10-29 17:49:35 +13:00
baron_l
a61654a35d
feat(endpoints): add the ability to browse offline endpoints ( #2253 )
...
* feat(back): saved data in snapshot
* feat(endpoints): adding interceptors to retrieve saved data on offline endpoints
* feat(endpoints): offline dashboard working - need tests on offline views
* refactor(endpoints): interceptors cleaning and saving/loading offline endpoints data in/from localstorage
* feat(endpoints): browsing offline endpoints
* feat(endpoints): removing all the link in offline mode - sidebar not working when switching between off and on modes w/ stateManager logic
* feat(endpoints): endpoint status detection in real time
* fix(endpoints): offline swarm endpoint are not accessible anymore
* fix(endpoints): refactor message + disable offline browsing for an endpoint when no snapshot is available for it
* fix(endpoints): adding timeout and enabling loading bar for offline requests
* fix(endpoints): trying to access a down endpoint wont remove sidebar items if it fails
* feat(endpoints): disable checkboxes on offline views for offline mode
* feat(endpoints): updating endpoint status when detecting a change
* refactor(host): moved offline status panel from engine view to new host view
* fix(endpoints): missing endpoint update on ping from home view
* fix(api): rework EndpointUpdate operation
* refactor(offline): moved endpoint status to EndpointProvider and refactor the status-changed detection
* fix(offline): moved status detection to callback on views -> prevent displaying the offline message when endpoint is back online on view change
* fix(offline): offline message is now displayed online when browsing an offline endpoint
* fix(offline): sidebar updates correctly on endpoint status change
* fix(offline): offline panel not displayed and hidden on online mode
* refactor(offline): rework of OfflineMode management
* refactor(offline): extract information-panel for offlineMode into a component
* refactor(offline): remove redundant binding of informationPanel + endpointStatusInterceptor patter as service
* refactor(interceptors): moved interceptors pattern to service pattern
* feat(stacks): prevent inspection of a stack in offline mode
* feat(host): hide devices/disk panels in offline mode
* feat(host): disable browse action in offline mode
* refactor(home): remove comments
2018-10-28 22:27:06 +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
Damian Czaja
7e6c647e93
feat(container-creation): add the ability to override the logging driver ( #2384 )
2018-10-28 16:00:56 +13:00
Yassir Hannoun
07c1e1bc3e
feat(container-stats): display cache in memory usage chart ( #2383 )
2018-10-28 15:45:02 +13:00
Ricardo Cardona Ramirez
fe6ca042f3
feat(ux): Alphabetically sort configs and secrets in service details/creation ( #2396 )
...
* fix(sorting): Alphabetically sort configs in service details select box
* fix(sorting): Alphabetically sort configs and secrets for service creation
2018-10-28 15:39:09 +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
Anthony Lapenna
b5dfaff292
refactor(app): refactor unauthenticated state management ( #2393 )
...
* refactor(app): refactor Authentication service
* refactor(app): refactor unauthenticated state management
2018-10-23 17:28:59 +13:00
Yassir Hannoun
719299d75b
fix(container-stat) : exclude cache from the Memory Usage chart to avoid misinterpret… ( #2371 )
2018-10-18 10:00:45 +13:00
Jan Jansen
d6ba46ed7f
feat(ux): Redirect from init/admin to home when admin already exists ( #2340 )
...
Fixes #1853
2018-10-13 19:29:44 +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
baron_l
e948d606f4
fix(container-creation): set a default runtime value ( #2325 )
...
* fix(containers): creating a container with default runtime let the docker daemon assume the correct value
* refactor(containers): implementation simplification of default runtime value
2018-10-09 09:28:26 +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
275fcf5587
fix(volume-browser): move volume id to query params ( #2338 )
2018-10-08 11:34:47 +13:00
Anthony Lapenna
3422662191
fix(app): fix invalid state name ( #2330 )
...
* fix(app): fix invalid state name
* fix(app): update ui-sref
2018-10-04 13:28:39 +13:00
Brian Kabiro
f6d9a4c7c1
feat(nodes): display node name when available ( #2328 )
...
- check if the name of a node is available, otherwise default to the Hostname
2018-10-04 12:07:31 +13:00
Ricardo Cardona Ramirez
575735a6f7
feat(ux): sort networks alphabetically in network selection dropdowns ( #2326 )
...
* Sort network lists
2018-10-04 12:04:38 +13:00
Brian Kabiro
b7c48fcbed
feat(visualizer): sort tasks in alphabetical order on refresh ( #2329 )
...
- sort the tasks on each node in alphabetical order to make it easier to track what has changed
2018-10-04 11:57:07 +13:00