Shivam Goyal
bfd6cca33f
feat(image-build): fix typo ( #3787 )
2020-05-04 19:54:09 +12:00
Maxime Bajeux
7fe7ce1a0a
fix(container-creation): ensure exposedPorts exists ( #3770 )
2020-04-29 14:33:37 +12:00
Maxime Bajeux
7f0ce61413
feat(networks): remove the ability to create host network ( #3771 )
2020-04-29 14:05:32 +12:00
Maxime Bajeux
3de533042d
feat(networks): add ipv6 support ( #3717 )
...
* feat(portainer-core): add ipv6 support
* feat(networks): add few changes
* refacto(networks): write regex once
* fix(networks): fix indentation
* refacto(networks): use foreach instead map and pluralize ipvxconfig
* refacto(networks): pluralize ipvxconfig
* feat(networks): support ipv6 with ports
* feat(networks): add an explicit error message
* fix(networks): hide ipv6 configuration when creating macvlan
2020-04-28 12:34:54 +12:00
Mariell
f525c8d022
feat(container-creation): add support for --init ( #2111 ) ( #3714 )
2020-04-15 13:09:42 +12:00
Chaim Lev-Ari
bba622a500
chore(eslint): add rule to sort imports ( #3715 )
...
* chore(eslint): add plugin to sort imports
* chore(eslint): sort imports
* chore(eslint): add eslint-config-prettier
2020-04-15 11:46:34 +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
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
Anthony Lapenna
a11a348893
fix(containers): do not persist container status filter ( #3615 )
2020-03-16 14:37:59 +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
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
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
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
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
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
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
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
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
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
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
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
Frans-Jan van Steenbeek
6c996377f5
fix(container-creation): prevent duplicate MAC addresses after edit ( #1645 ) ( #2993 )
2019-10-03 15:37:34 +13: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 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
24013bc524
fix(datatables): saved orderBy was always overridden by the default one ( #3052 )
2019-08-12 16:25:35 +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
xAt0mZ
1089846fd6
fix(datatables): default orderby now applied correctly ( #3022 )
2019-07-22 20:09:43 -07: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
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
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
itsconquest
d1fee6f119
style(container-creation): clarify ports mapping
2019-07-10 17:16:43 +12:00