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
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
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
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
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
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
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
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
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
linquize
42529cc5ea
feat(volumes): show volume creation date ( #2745 )
2019-03-01 11:59:11 +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
Anthony Lapenna
9c4c782a90
style(container-creation): review auto remove element position
2019-02-25 13:09:09 +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
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
baron_l
c1f2d90997
fix(container-creation): fix missing capabilities on duplicate ( #2635 )
2019-01-23 09:28:44 +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
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
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
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
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
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
linquize
5fa4403d20
feat(container-stats): add refresh rate of 1 and 3 seconds ( #2493 )
2018-12-03 21:49:02 +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
488dc5f9db
fix(network-creation): macvlan availability for standalone endpoints ( #2441 )
2018-11-16 13:26:56 +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
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
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
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
Anthony Lapenna
77913543b1
feat(container-details): update container-restart-policy component ( #2273 )
2018-09-15 09:53:35 +08:00
Kendrick
0efeeaf185
feat(webhooks): add support for service update webhooks ( #2161 )
...
* Initial pass at adding webhook controller and routes
* Moving some objects around
* Cleaning up comments
* Fixing syntax, switching to using the docker sdk over building an http client
* Adding delete and list functionality
* Updating the handler to use the correct permissions. Updating some comments
* Fixing some comments
* Code cleanup per pull request comments
* Cleanup per PR feedback. Syntax error fix
* Initial creation of webhook app code
* Moving ClientFactory creation out of handler code and instead using the one created by the main process. Removing webhookInspect method and updating the list function to use json filters
* Delete now works on the webhook ID vs service ID
* WIP - Service creates a webhook. Display will show an existing webhook URL.
* Adding the webhook field to the service view. There is now the ability to add or remove a webhook from a service
* Moving all api calls to be webhooks vs webhook
* Code cleanup. Moving all api calls to be webhooks vs webhook
* More conversion of webhook to webhooks?
* Moving UI elements around. Starting function for copying to clipboard
* Finalizing function for copying to clipboard. Adding button that calls function and copies webhook to clipboard.
* Fixing UI issues. Hiding field entirely when there is no webhook
* Moving URL crafting to a helper method. The edit pane for service now creates/deletes webhooks immidiately.
* style(service-details): update webhook line
* feat(api): strip sha when updating an image via the update webhook
* Fixing up some copy. Only displying the port if it is not http or https
* Fixing tooltip copy. Setting the forceupdate to be true to require an update to occur
* Fixing code climate errors
* Adding WebhookType field and setting to ServiceWebhook for new webhooks. Renaming ServiceID to resourceID so future work can add new types of webhooks in other resource areas.
* Adding the webhook type to the payload to support more types of webhooks in the future. Setting the type correctly when creating one for a service
* feat(webhooks): changes related to webhook management
* API code cleanup, removing unneeded functions, and updating validation logic
* Incorrectly ignoring the error that the webhook did not exist
* Re-adding missing error handling. Changing error response to be a 404 vs 500 when token can't find an object
* fix(webhooks): close Docker client after service webhook execution
2018-09-03 12:08:03 +02:00
aksappy
bfccf55729
fix(images): Fix upload modal to allow both tar and tar.gz images ( #2218 )
2018-08-27 21:43:58 +02:00
Chaim Lev-Ari
e58acd7dd6
* chore(eslint): update esllint and remove unused variables
...
* chore(eslint-config): change no-unused-vars to warn
* chore(eslint): remove unused variables
* chore(eslint): allow unused globals
* fixup! chore(eslint): allow unused globals
* chore(eslint): remove commented unused vars
* fixup! chore(eslint): remove commented unused vars
2018-08-22 17:33:06 +02:00
Luca
68d77e5e0e
feat(networks): add details about the attachable/internal properties ( #2200 )
2018-08-22 08:45:14 +02:00
Luca
e8ab89ae79
feat(config-details): add the ability to clone a config ( #2189 )
2018-08-22 08:41:02 +02:00
Anthony Lapenna
6ab6cfafb7
feat(motd): add the ability to display motd and dimiss information panels ( #2191 )
...
* feat(api): add motd handler
* feat(app): add the motd api layer
* feat(motd): display motd and add the ability to dismiss information messages
* style(home): relocate important message before info01
* feat(api): silently fail when an error occurs during motd retrieval
2018-08-21 20:40:42 +02:00
Anthony Lapenna
e60d809154
fix(container-creation): fix an issue with container-edition and UAC
2018-08-20 21:06:30 +02:00
Anthony Lapenna
64beaaa279
feat(container-details): update re-creation flow ( #2193 )
2018-08-20 20:55:12 +02:00
Ricardo Cardona Ramirez
e1e263d8c8
feat(UAC): change default ownership to admininstrators ( #2137 )
...
* #960 feat(UAC): change ownership to admins for externally created ressources
* feat(UAC): change ownership to admins for externally created resources
Deprecated AdministratorsOnly js and go backend
* #960 feat(UAC): remove AdministratorsOnly property and minor GUI fixes
Update swagger definition changing AdministratorsOnly to Public
* #960 feat(UAC): fix create resource with access control data
* #960 feat(UAC): authorization of non-admin users for restricted operations
On stacks, containers networks, services , tasks and volumes.
* #960 feat(UAC): database migration to version 14
The administrator resources are deleted and Public resources are now managed by admins
* #960 feat(UAC): small fixes from PR #2137
* #960 feat(UAC): improve the readability of the source code
* feat(UAC) fix displayed ownership for Swarm related resources (#960 )
2018-08-19 07:57:28 +02:00
Hasnat
31c2a6d9e7
feat(container-console): Adds custom commands based on container labels ( #2159 )
...
* feat(console): Adds custom commands based on container labels
* feat(console): Update custom commands label prefix
2018-08-18 10:31:01 +02:00
Chaim Lev-Ari
102e63e1e5
refactor(container-creation): change order of container re-creation/duplication steps
...
* refactor(container-creation): change order of container creation steps
* refactor(container-creation): remove nested methods
* fix(container-creation): skip actions if old container missing
* fix(container-creation): reject if user is not authorized
* fix(container-creation): remove rejection on invalid form
* refactor(container-creation): start container after duplicate
* fix(container-creation): add form validation error message
* fix(container-creation): pass correct id to create resource control
* fix(container-creation): set action in progress after confirmation
2018-08-18 10:27:24 +02:00
baron_l
bda5eac0c1
feat(network-creation): enhance UX with macvlan driver for swarm mode ( #2082 ) ( #2122 )
...
* feat(network-creation): macvlan driver for swarm
* refactor(network-creation): layout rework to make it simpler with MACVLAN and keep it consistent with other drivers
* fix(network-creation): MACVLAN - parent network card is now properly saved, names are not prefixed anymore and the --attachable option is now supported
* refactor(network-creation): PR macvlan review - rework of macvlan view + code optimisation
* fix(network-creation): disable attachable and internal options on macvlan config creation
2018-08-16 12:29:15 +02:00
Chaim Lev-Ari
8769fadd5c
feat(container-details): add the ability to update restart policy
2018-08-16 11:31:00 +02:00
Ru Fan
de9f99d030
feat(container-creation): add runtime option in ( #2162 ) ( #2163 )
2018-08-16 11:28:06 +02:00
Chaim Lev-Ari
594daf0de8
fix(home): Show correct number of cpus and total memory for swarm ( #2147 )
...
* fix(home): show cpu/mem for swarm
* fix(home): add nodes data to snapshot
* fix(dashboard): get cpus/mem from snapshot
* refactor(home): remove temp variable
2018-08-13 21:20:56 +02:00
Chaim Lev-Ari
f3dc67a852
fix(container-details): change order of container recreation
2018-08-13 21:13:42 +02:00
baron_l
9c0b568773
feat(container-creation): container add/drop capabilities on creation ( #468 ) ( #2078 )
...
* feat(container-creation): container add/drop capabilities on creation
* feat(container-creation): capabilities are now loaded on edit/duplicate/update
2018-08-09 10:40:06 +02:00
baron_l
5222413532
feat(volume-creation) : NFS volume creation ( #2083 ) ( #2108 )
...
* feat(volume-creation): NFS support for volume creation - layout
* feat(volume-creation): NFS support for volume creation
* fix(volume-creation): NFS style, display and check on submit
* refactor(volume-creation): remove useless controller + refactor var naming
* refactor(volume-creation): NFS wording, help and style
2018-08-09 10:33:16 +02:00
Chaim Lev-Ari
8dfa129129
fix(dashboard): update stopped/running container filters
2018-08-06 15:09:23 +02:00
Kendrick
0ae10c6f82
feat(container-details): add the image name to the container details in addition to the sha ( #1369 ) ( #2121 )
2018-08-02 21:00:58 +02:00
baron_l
5bca9560c9
feat(images): add the ability to export/import Docker images ( #935 ) ( #2073 )
2018-07-26 15:09:48 +02:00
Anthony Lapenna
134a38a566
style(dashboard): update dashboard information ( #2079 )
...
* style(dashboard): update dashboard information
* docs(swagger): update swagger.yml
2018-07-25 20:47:33 +02:00
hiyao
4de83f793f
fix(container-stats): fix invalid component closing tag ( #2069 )
2018-07-24 09:25:46 +02:00
Anthony Lapenna
7225619456
feat(agent): support agent deployed on standalone engine endpoint ( #2061 )
2018-07-23 11:31:21 +02:00
Anthony Lapenna
48179b9e3d
feat(volume-browser): add the ability to browse volume content ( #2051 )
2018-07-23 07:01:03 +02:00
Anthony Lapenna
cdf79c731b
feat(ux): always display search bar in datatables ( #2034 )
2018-07-11 16:18:44 +02:00
Anthony Lapenna
b6792461a4
feat(home): add a new home view ( #2033 )
2018-07-11 10:39:20 +02:00
Anthony Lapenna
61c285bd2e
feat(templates): introduce templates management ( #2017 )
2018-07-03 20:31:02 +02:00
Anthony Lapenna
61c74e22f0
feat(services): add the ability to pull latest image when updating a … ( #1984 )
...
* feat(services): add the ability to pull latest image when updating a service
* feat(services): update version header value
* refactor(services): remove TODO
* feat(services): rollback version header value to 1.29
2018-06-20 15:53:58 +02:00
Anthony Lapenna
da5a430b8c
fix(api): add an authenticated access policy to the websocket endpoint ( #1979 )
...
* fix(api): add an authenticated access policy to the websocket endpoint
* refactor(api): centralize EndpointAccess validation
* feat(api): validate id query parameter for the /websocket/exec endpoint
2018-06-18 11:56:31 +02:00
Anthony Lapenna
e3d564325b
feat(stacks): support compose v2.0 stack ( #1963 )
2018-06-11 15:13:19 +02:00
Anthony Lapenna
ef15cd30eb
style(app): update widget title property ( #1952 )
...
* style(app): update widget title property
* style(containerinstances): fix invalid component title
2018-06-06 18:12:35 +02:00
Anthony Lapenna
3ace184069
feat(dashboard): update dashboard info ( #1944 )
2018-06-04 10:30:53 +02:00
Konstantin Azizov
4429c6a160
fix(container-details): recreate container with multiple networks ( #1907 )
...
* fix(container): Use first network's Mac address by default
* fix(container): Connect additional networks to container after creation
* fix(container): Remove warning message
2018-06-02 08:44:18 +02:00
Anthony Lapenna
9ad9cc5e2d
feat(azure): add experimental Azure endpoint support ( #1936 )
2018-05-28 16:40:33 +02:00
kirdia
19c3fa276b
feat(log-viewer): Add the ability to specify displayed line count ( #1914 )
2018-05-21 10:51:56 +02:00
Anthony Lapenna
a0a667053e
feat(tasks): change task name format in tasks datatable ( #1884 )
2018-05-10 17:17:53 +02:00
Miguel A. C
b2b1c86067
fix(service-details): avoid sending unmodified service reservation, limits and update config ( #1625 )
2018-05-10 09:54:22 +02:00
Andrew Pearson
1c06bfd911
feat(container-details): update port mapping order ( #1878 )
...
Switching container port mapping around to match docker, correcting issue #1871
2018-05-09 10:26:47 +02:00
Anthony Lapenna
2327d696e0
feat(agent): add agent support ( #1828 )
2018-05-06 09:15:57 +02:00
Anthony Lapenna
77a85bd385
fix(container-edit): fix an issue related to missing extra hosts in network config ( #1862 )
2018-05-04 09:59:51 +02:00
Anthony Lapenna
e0cf088428
fix(log-viewer): strip headers in container logs when TTY is disabled ( #1861 )
2018-05-04 09:45:05 +02:00
Hans-Joachim Krauch
1e55ada6af
feat(templates): allow to set hostname in container templates ( #1833 )
2018-05-02 20:41:46 +02:00
Anthony Lapenna
fe74f36f62
fix(volume-creation): fix missing endpointProvider variable
2018-04-23 08:05:22 +02:00
Maximilian Pachl
2a9ba1f9a2
feat(swarm-visualizer): save settings to local storage ( #1777 )
2018-04-06 18:59:25 +10:00
Shahar Hadas
216d6c2b14
feat(container-console): add the ability to select ash ( #1790 )
...
Add /bin/ash as another dropbox option in addition to bash and sh
2018-04-06 18:43:08 +10:00
Rahul Ruikar
dca1976252
feat(stack): Add the ability to scale services in stack-details ( #1776 )
2018-04-04 19:45:35 +10:00
Anthony Lapenna
1cfbec557c
refactor(project): remove Swarm standalone support ( #1720 )
...
* refactor(project): remove Swarm standalone support
* fix(state): fix an issue with endpoint state not being registered
2018-04-04 10:31:04 +10:00
Anthony Lapenna
8d32703456
fix(service-details): prevent regular users from using bind mounts ( #1778 )
2018-03-29 18:41:47 +11:00
moncho
7e26d09881
feat(service-details): display stop grace period in a human-friendly format ( #1773 )
2018-03-28 08:05:01 +11:00
Rahul Ruikar
80a23b5351
feat(log-viewer): add the ability to display timestamps ( #1697 )
2018-03-25 10:36:13 +10:00
Anthony Lapenna
c267f8bf57
fix(stacks): fix an issue when deploying public stacks
2018-03-22 15:38:00 +10:00
Herwono W. Wijaya
bca8936faa
fix(templates): fix app templates stack deployment ( #1747 )
...
* fix(templates): fix app templates stack deployment
* fix(templates): stack deployment remove return statement and fix identation
2018-03-22 15:28:55 +10:00
Anthony Lapenna
adf1ba7b47
feat(stack-creation): add the ability to specify git credentials ( #1722 )
...
* feat(stack-creation): add the ability to specify git credentials
* docs(api): update Swagger
2018-03-16 07:22:05 +10:00
Anthony Lapenna
50ece68f35
style(app): update icon style ( #1727 )
2018-03-14 15:32:14 +10:00
Paweł Kozioł
4e38e4ba33
feat(image-details): display image layer order and sort by it by default ( #1715 )
...
* feat(image-details): display image layer depth and sort by it by default (#1706 )
* refactor(image-details): rename 'Depth' to 'Order' in image layers table
* refactor(image-details): sort image layers from the bottom to the top one
2018-03-14 10:27:06 +10:00
Herwono W. Wijaya
66f29dd103
style(app): upgrade to font awesome v5
2018-03-13 15:36:53 +10:00
Herwono W. Wijaya
b389e3c65a
fix(service-logs): fix services log view breadcrumb link ( #1709 )
2018-03-10 08:09:03 +10:00
Anthony Lapenna
f1a21c07bd
feat(storidge): add extension check on endpoint switch ( #1693 )
...
* feat(storidge): add extension check on endpoint switch
* feat(storidge): add extension check post login
2018-03-09 08:49:43 +10:00
Anthony Lapenna
a76ccff7c9
refactor(xterm): update xtermjs to latest version ( #1692 )
2018-03-06 17:40:02 +10:00
Anthony Lapenna
73e6498d2f
refactor(swarm-visualizer): move task border logic to a filter ( #1686 )
2018-03-02 09:00:34 +10:00
Mauro Cortellazzi
1b8d5e89d1
feat(swarm-visualizer): swarm visualizer color by service ( #1683 )
2018-03-02 08:10:14 +10:00
Anthony Lapenna
76aeee7237
feat(templates): add support for the name property ( #1680 )
2018-02-28 08:59:31 +01:00
Anthony Lapenna
0c5152fb5f
feat(log-viewer): introduce the log viewer component ( #1666 )
2018-02-28 07:19:28 +01:00
Anthony Lapenna
81de2a5afb
feat(image-build): add the ability to build images ( #1672 )
2018-02-28 07:19:06 +01:00
Anthony Lapenna
9b80b6adb2
refactor(code-editor): introduce code-editor component ( #1674 )
...
* refactor(code-editor): introduce code-editor component
* refactor(code-editor): add some extra validation
2018-02-27 08:19:21 +01:00
Anthony Lapenna
eb43579378
feat(storidge): introduce endpoint extensions and proxy Storidge API ( #1661 )
2018-02-23 03:10:26 +01:00
Anthony Lapenna
b5e256c967
fix(services): use the Public URL instead of a manager IP ( #1665 )
2018-02-21 10:55:51 +01:00
Anthony Lapenna
27dceadba1
refactor(app): introduce new project structure for the frontend ( #1623 )
2018-02-01 13:27:52 +01:00