Switch from eclipse/hawkbit to eclipse-hawkbit/hawkbit github (#1852)

Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
This commit is contained in:
Avgustin Marinov
2024-10-04 10:21:03 +03:00
committed by GitHub
parent 2b1f8ea71c
commit 7ca5cbe1aa
23 changed files with 147 additions and 151 deletions

View File

@@ -59,8 +59,8 @@ Microsoft's SQL Server which is also available in production grade, as well as,
### Open Sourced REST docs
A huge benefit for the community is the recently open sourced REST docs of hawkBit. This has been an [open request](https://github.com/eclipse/hawkbit/issues/480)
for some time, which we were happy to meet. The documentation is generated using [Spring REST docs](https://spring.io/projects/spring-restdocs), based on unit-tests. These tests, with the respective documentation, are now available in the [code base](https://github.com/eclipse/hawkbit/pull/688).
A huge benefit for the community is the recently open sourced REST docs of hawkBit. This has been an [open request](https://github.com/eclipse-hawkbit/hawkbit/issues/480)
for some time, which we were happy to meet. The documentation is generated using [Spring REST docs](https://spring.io/projects/spring-restdocs), based on unit-tests. These tests, with the respective documentation, are now available in the [code base](https://github.com/eclipse-hawkbit/hawkbit/pull/688).
Furthermore, the API documentation will be hosted on our new [website](https://www.eclipse.org/hawkbit/) (coming soon).
@@ -70,7 +70,7 @@ In order to enable interested parties to get started with hawkBit conveniently,
[Update Server as a Docker image](https://hub.docker.com/r/hawkbit/hawkbit-update-server/) on Docker Hub. The image comes
in two flavors: The default image uses the internal H2 database, while the images with a `-mysql` suffix contain the MySQL
driver to allow connecting a MySQL database. In addition to the Docker image, the hawkBit repository contains a
[docker-compose.yml](https://github.com/eclipse/hawkbit/blob/master/hawkbit-runtime/hawkbit-update-server/docker/docker-compose.yml)
[docker-compose.yml](https://github.com/eclipse-hawkbit/hawkbit/blob/master/hawkbit-runtime/hawkbit-update-server/docker/docker-compose.yml)
that not only starts the Update Server, but further includes a MySQL database and a RabbitMQ message broker so you're
able to use Device Management Federation (DMF) as well.

View File

@@ -13,8 +13,8 @@ In this article, we want to give an overview of the latest highlights of hawkBit
## hawkBit license upgraded to Eclipse Public License - v 2.0
Based on the issues
[Switch to EPL 2.0 License](https://github.com/eclipse/hawkbit/issues/1393) and
[Update hawkBit's license to EPL 2.0](https://github.com/eclipse/hawkbit/issues/1008)
[Switch to EPL 2.0 License](https://github.com/eclipse-hawkbit/hawkbit/issues/1393) and
[Update hawkBit's license to EPL 2.0](https://github.com/eclipse-hawkbit/hawkbit/issues/1008)
the hawkBit license is upgraded from [Eclipse Public License - Version 1.0](http://www.eclipse.org/org/documents/epl-v10.php) to
[Eclipse Public License - v 2.0](https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt).

View File

@@ -15,7 +15,7 @@ We believe it is not a good practice to keep an out of free support library in a
There is another critical obstacle with keeping Vaadin 8 UI. At the moment hawkBit uses Spring Boot 2.7. According to [Spring Boot EOL](https://endoflife.date/spring-boot) Spring Boot 2.7 stream will reach end of support 24th Nov 2023. So, hawkBit shall be migrated to Spring Boot 3.0+. Since Vaadin 8 seem to be incompatible with Spring Boot 3 (they added support for Spring Boot 3 in Vaadin 24 ([Vaadin 24 pre release](https://vaadin.com/blog/vaadin-24-pre-release-available-for-spring-boot-3.0)) we shall drop Vaadin UI 8 anyway.
Many months ago we asked for community help to migrate hawkBit UI to newer Vaadin versions - [Urgent migration needed to a newer Vaadin version
](https://github.com/eclipse/hawkbit/issues/1376) and gitter channel. However, there was no volunteer found to do the migration.
](https://github.com/eclipse-hawkbit/hawkbit/issues/1376) and gitter channel. However, there was no volunteer found to do the migration.
All this being said, unfortunately, we've come to the decision to drop the Vaadin 8 UI from the Eclipse hawkBit and the latest hawkBit release 0.3.0 is the last version of hawkBit that includes it. For the next 0.4.0 release we plan to remove this Vaadin 8 UI. Thus the hawkBit may become an UI-less project.

View File

@@ -6,16 +6,16 @@ weight: 98
In this article, we want to give an overview of the 0.4.1 hawkBit release (Friday, January 12, 2024)
## hawkBit [0.4.1](https://github.com/eclipse/hawkbit/releases/tag/0.4.1) release
## hawkBit [0.4.1](https://github.com/eclipse-hawkbit/hawkbit/releases/tag/0.4.1) release
### Steps towards removal of the legacy Vaadin8-based UI
As announced at [Vaadin 8 UI discontinuation](2023-11-22-vaadin8_ui_discontinuation.md) the current Vaadin 8 based UI will be removed. This release will likely be the last one including it. Some steps are taken to mitigate this.
* First of all, this release introduces [Simple UI](https://github.com/eclipse/hawkbit/tree/0.4.1/hawkbit-runtime/hawkbit-simple-ui) - a demo/PoC level UI. It includes the most essential functionality allowing you to play around with hawkBit. It could not be compared to legacy UI in features and maturity in any case. Some notes for it:
* First of all, this release introduces [Simple UI](https://github.com/eclipse-hawkbit/hawkbit/tree/0.4.1/hawkbit-runtime/hawkbit-simple-ui) - a demo/PoC level UI. It includes the most essential functionality allowing you to play around with hawkBit. It could not be compared to legacy UI in features and maturity in any case. Some notes for it:
* *Status* - as already said - low maturity and very feature-limited, *EXPERIMENTAL*
* Intended for demo/play-around purposes. It could become an initial version of a new hawkBit UI but currently, there are no resources for further development. Any contribution to this UI in the direction of making it a full-fledged mature UI is welcome!
* It provides features like - create software modules & distribution sets, targets, and rollouts
* In contrast with legacy UI the new UI is a standalone application and uses only REST API to provide functionality to the user.
* To the legacy monolith update server application there is added a new microservice-based application. As part of this effort, there was introduced an example of [legacy Vaadin 8 UI standalone application](https://github.com/eclipse/hawkbit/tree/0.4.1/hawkbit-runtime/hawkbit-vv8-ui). This legacy UI standalone application could be used together with future hawkBit update server versions as long as it is compatible and on the user's responsibility. Some notes for it:
* To the legacy monolith update server application there is added a new microservice-based application. As part of this effort, there was introduced an example of [legacy Vaadin 8 UI standalone application](https://github.com/eclipse-hawkbit/hawkbit/tree/0.4.1/hawkbit-runtime/hawkbit-vv8-ui). This legacy UI standalone application could be used together with future hawkBit update server versions as long as it is compatible and on the user's responsibility. Some notes for it:
* *NOT RECOMMENDED* - it might contain security vulnerabilities and bugs. It could be hard to verify its compatibility with the new hawkBit versions.
* *ON USER's RESPONSIBILITY* - no guarantees of any kind are provided for that application. It is entirely the user's responsibility to test, scan for vulnerabilities, and use it.
* Provides an option to use the legacy Vaadin 8 UI with the new hawkBit versions under the conditions above
@@ -24,4 +24,4 @@ As announced at [Vaadin 8 UI discontinuation](2023-11-22-vaadin8_ui_discontinuat
* It will not be developed any further and new features won't be available
* No bugfixes would be provided for it
### Extended access control management - entity-based
There is a new feature implemented in access control management. Up until now, permissions (e.g. CREATE_TARGET) were assigned to the users, and based on that users were able to execute some action or not. Now there is added a pluggable mechanism via [AccessController](https://github.com/eclipse/hawkbit/blob/0.4.1/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/acm/AccessController.java) that allows to further restrict the access based on the entity. For instance, a developer could implement its custom access controller for targets that, depending on the user, could grant or reject permissions for accessing targets of certain target types.
There is a new feature implemented in access control management. Up until now, permissions (e.g. CREATE_TARGET) were assigned to the users, and based on that users were able to execute some action or not. Now there is added a pluggable mechanism via [AccessController](https://github.com/eclipse-hawkbit/hawkbit/blob/0.4.1/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/acm/AccessController.java) that allows to further restrict the access based on the entity. For instance, a developer could implement its custom access controller for targets that, depending on the user, could grant or reject permissions for accessing targets of certain target types.