Melanie Retter f5f51bfc2c Remove footer, expand layout and move functions to other elements (#689)
* Remove process and discard upload buttons; change upload process to only have one upload status window that is displayed immediately when an upload is triggered.
* Separation of FileTransferHandler: FileTransferHandler was split into 3 parts. One common part remains in the abstract super class. The other pieces were moved to the upload-specific and the streaming-specific subclasses.
* Fix upload process: Fix status visualization in progress window. Move repository transfer to the file upload handler so it can report if the complete upload process succeeded or failed.
* Prevent file upload if no software module or more than one is selected.
* Added Unit Tests and fixed Sonar findings.
* Move upload button from the buttom to the right side of the drag and drop area.
* Remove minimize and resize buttons in progress dialog. Remove unused code.
* Code cleanup and layout adaptions: Remove unnecessary code and fix layout problems when showing the upload button on the right side of the drag and drop area.
* Removed abort functionality for user because of Vaadin bug https://github.com/vaadin/framework/issues/10545
* Fixed Vaadin upload bug by subclassing Upload and overriding necessary methods.
* Disable drag-and-drop area in case no OR more than one software module selected.
* Enhance /adapt unit tests
* Enhance /adapt UI tests

Signed-off-by: Markus Block <markus.block@bosch-si.com>

* First draw, insert delete button in entity tables
* Add shortcuts to cancel/confirm buttons in confirmation dialog
* First draw, target/distribution assignment
* Entity assignments for tables
* Fix table row mark correctly when assigning entities
* Mark the right entity in table when deleting an entity
* Refactor code for distribution tags on deployment view
* Target Tags can be managed with Menu Bar
* Refactor classes for managing tags and types for all entities
* Disable fields correctly when updating/deleting tags and types
* Remove delete and action buttons in the bottom
* Delete Metadata column in tables
* Redesign tables for tags and types. Show action icon for update/delete
* Correct CSS for menubar for tag/type actions
* Add confirmation window when deleting tag or type
* Remove unused code. Fix style for target tag config menu bar
* New abstract classes for target/ds tags
* Reorganize package structure tags, set ids for tags
* Add total targets count in target table, add close icon for menubar
* Add total target label and remove footer styles
* MenuBar is displayed when update/delete action is cancelled, finished, or update/delete modus is left
* Insert EventHandling for show menuBar/CancelButton
* Delete drag & drop criteria where not needed anymore
* Fix mandatory field check in DistributionTypeLayout
* Fix notification message
* Move upload button into drop area
* Enhance /adapt unit tests
* Enhance /adapt UI tests

Signed-off-by: Melanie Retter <melanie.retter@bosch-si.com>
2018-07-02 09:09:13 +02:00
2018-06-22 14:29:35 +02:00
2018-06-11 15:57:15 +02:00
2018-06-11 15:57:15 +02:00
2018-06-11 15:57:15 +02:00
2018-06-11 15:57:15 +02:00
2018-06-11 15:57:15 +02:00
2018-06-11 15:57:15 +02:00
2017-02-07 09:57:57 +01:00
2018-06-11 15:57:15 +02:00
2016-07-20 16:51:01 +02:00
2015-11-09 14:19:06 -05:00
2016-05-18 15:24:28 +02:00
2018-06-11 15:56:15 +02:00

Eclipse hawkBit™ - Update Server

Eclipse hawkBit is an domain independent back end solution for rolling out software updates to constrained edge devices as well as more powerful controllers and gateways connected to IP based networking infrastructure.

Build: Circle CI SonarQuality Maven Central

Docker images: Docker Docker MYSQL

Documentation

see hawkBit Documentation

Contact us

  • Want to chat with the team behind hawkBit? Join the chat at https://gitter.im/eclipse/hawkbit
  • Having issues with hawkBit? Open a GitHub issue.
  • You can also check out our Project Homepage for further contact options.

Examples and Extensions

Next to the hawkBit core hosted here the project maintains as well examples and extension repositories.

hawkBit sandbox

We offer a sandbox installation that is free for everyone to try out hawkBit. However, keep in mind that the sandbox database will be reset from time to time. It is also not possible to upload any artifacts into the sandbox. But you can use it to try out the Management UI, Management API and DDI API. Keep in mind as well that you are not permitted to store any kind of personal data in the sandbox.

https://hawkbit-demo-sandbox.eu-gb.mybluemix.net/UI/

In addition the following vendors offer free trial accounts for their hawkBit compatible products:

Device Integration

hawkBit does not provide off the shelf clients for devices as part of the project. The long term goal is to provide an Eclipse hono integration which will provide connectivity through various IoT protocols and as a result allows a wide range of clients to connect to hawkBit. However, the hawkBit Direct Device Integration (API) API is HTTP/JSon based which should allow any update client to integrate quite easily.

There are clients outside of the Eclipse IoT eco system as well, e.g.:

  • SWupdate which is a Linux Update agent with focus on a efficient and safe way to update embedded systems.
  • rauc-hawkbit which is a python-based hawkBit client application and library for the RAUC update framework.

Runtime dependencies and support

Java Runtime Environment: 1.8

SQL database

Database H2 MySQL/MariaDB MS SQL Server IBM DB2
DDLs maintained by project
Test dependencies defined
Versions tested 1.4 MySQL 5.6/5.7, AWS Aurora MS SQL Server 2017 DB2 Server v11.1
Docker image with driver provided (Tag: "-mysql")
JDBC driver H2 1.4 MariaDB Connector/J 2.0 MSSQL-JDBC 6.4
Status Test, Dev, Trial Production grade Production grade Test, Dev

(Optional) RabbitMQ: 3.6,3.7

Getting Started

We are providing a Spring Boot based reference Update Server including embedded H2 DB for test and evaluation purposes. Run with docker:

docker run -d -p 8080:8080 hawkbit/hawkbit-update-server

Open the update server in your browser:

localhost:8080

See below for how to build and run the update server on your own. In addition we have a guide for setting up a complete landscape.

hawkBit (Spring boot) starters

Next to the Update Server we are also providing a set of Spring Boot Starters to quick start your own Spring Boot based application.

Clone, build and run hawkBit

Build and start hawkBit Update Server

git clone https://github.com/eclipse/hawkbit.git
cd hawkbit
mvn clean install
java -jar ./hawkbit-runtime/hawkbit-update-server/target/hawkbit-update-server-#version#.jar

Start hawkBit Device Simulator (optional)

git clone https://github.com/eclipse/hawkbit-examples.git
cd hawkbit-examples
mvn clean install
java -jar ./hawkbit-device-simulator/target/hawkbit-device-simulator-#version#.jar

Generate getting started data with the Management API example (optional)

java -jar ./hawkbit-example-mgmt-simulator/target/hawkbit-example-mgmt-simulator-#version#-exec.jar

Status and API stability

hawkBit is currently in '0.X' semantic version. That is due to the need that there is still content in hawkBit that is in need for refactoring. That includes the maven module structure, Spring Boot Properties, Spring Boot auto configuration as well as internal Java APIs (e.g. the repository API ).

However, the device facing DDI API is on major version 'v1' and will be kept stable.

Server facing and DMF API are Management API are on v1 as well. However, we cannot fully guarantee the same stability during hawkBit's 0.X development but we will try as best we can.

Description
No description provided
Readme EPL-2.0 47 MiB
Languages
Java 98.4%
Python 1.2%
Shell 0.3%