Skip to content
This repository has been archived by the owner on Dec 18, 2024. It is now read-only.

Commit

Permalink
Deprecate KUKSA Server
Browse files Browse the repository at this point in the history
  • Loading branch information
erikbosch authored and SebastianSchildt committed Feb 20, 2024
1 parent f4d1fa2 commit fba0429
Show file tree
Hide file tree
Showing 4 changed files with 27 additions and 12 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ KUKSA.val contains several components
| Component | Description |
| -------------- | ----------- |
| [KUKSA Databroker](./kuksa_databroker) | Efficient in-vehicle signal broker written in RUST providing authorized access to VSS data using gRPC
| [KUKSA Server](kuksa-val-server) | Feature rich in-vehicle data server written in C++ providing authorized access to VSS data using W3C VISS websocket protocol
| [KUKSA Server](kuksa-val-server) | Feature rich in-vehicle data server written in C++ providing authorized access to VSS data using W3C VISS websocket protocol **Note: KUKSA Server is deprecated and will reach End-of-Life 2024-12-31!**
| [KUKSA Python SDK](https://github.com/eclipse-kuksa/kuksa-python-sdk) | Command line tool to interactively explore and modify the VSS data points and data structure. Python library for easy interaction with KUKSA Databroker and Server. *Note: Moved to a separate repository!*
| [KUKSA GO Client](./kuksa_go_client) | Example client written in the [GO](https://go.dev/) programming language for easy interaction with KUKSA Databroker and Server
| [Example Applications](./kuksa_apps) | Some example apps for different programming languages and frameworks
Expand Down
11 changes: 5 additions & 6 deletions doc/server-vs-broker.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
## Why is there a need for the KUKSA.val databroker?
The KUKSA.val KUKSA.val server started as a C++ VISS implementation, that later evolved and gained gRPC support. KUKSA.val databroker was a similar project trying to build a modern rust server for VSS data using a binary efficient gRPC protocol. Currently both projects are being joined, and will support the same GRPC API and Python library so you can exchange feeders and apps.
Check below for the difference in feature set.
Check below for the difference in feature set.

## What is the difference between the KUKSA.val server and KUKSA.val databroker?

Expand All @@ -15,8 +15,7 @@ Main differences:

For a detailed overview what the KUKSA.val server and KUKSA.val databroker support look [here](protocol/support.md)

## What is the plan for the future? (should be updated freuquently to let the community now what's planned)
Last updated: October 2022 <br>
The KUKSA.val server will still be available for those who want to use the VISS.
The KUKSA.val databroker and the KUKSA.val server will support one unified gRPC API.
The KUKSA.val databroker will be extended to support the KUKSA.val server security model over JWT Tokens or similar.
## What is the plan for the future? (should be updated frequently to let the community now what's planned)
Last updated: February 2024 <br>

**KUKSA Server is deprecated and will reach End-of-Life 2024-12-31!**
14 changes: 14 additions & 0 deletions kuksa-val-server/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,20 @@
# KUKSA.VAL
![kuksa.val Logo](../doc/pictures/logo.png)


## Notice of Deprecation

**NOTE: KUKSA Server is deprecated and will reach End-of-Life 2024-12-31!**

Due to limited interest the KUKSA Project intends to declare that KUKSA Server has reached End-of-Life 2024-12-31!
This means KUKSA Server will not be updated after 2024-12-31 and Pull Requests will not
be accepted. Users are encouraged to migrate to KUKSA Server.

If you have a strong interest in KUKSA Server and are willing be responsible for maintaining it please reach out to KUKSA project by commenting in
[Issue 737](https://github.com/eclipse/kuksa.val/issues/737).

## Overview

kuksa-val-server is a feature rich in-vehicle data server written in C++ providing authorized access to vehicle data.


Expand Down
12 changes: 7 additions & 5 deletions kuksa-val-server/src/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@
#include <boost/filesystem.hpp>
#include <jsoncons/json.hpp>
#include <jsonpath/json_query.hpp>
#include <thread>
#include <thread>

#include "AccessChecker.hpp"
#include "Authenticator.hpp"
Expand Down Expand Up @@ -64,7 +64,7 @@ void ctrlC_Handler(sig_atomic_t signal)
try
{
std::cout << "STOP ..." << std::endl;
boost::log::core::get()->remove_all_sinks();
boost::log::core::get()->remove_all_sinks();
std::signal(signal, former_handler);
std::raise(signal);
}
Expand Down Expand Up @@ -101,6 +101,8 @@ int main(int argc, const char *argv[]) {
std::cout << "-dirty";
std::cout << " from " << GIT_COMMIT_DATE_ISO8601 << std::endl;

std::cout << "WARNING: KUKSA Server is deprecated and will reach End-of-Life 2024-12-31 " << std::endl;

former_handler = signal(SIGINT,ctrlC_Handler);
(void) signal(SIGTERM,ctrlC_Handler);

Expand All @@ -124,7 +126,7 @@ int main(int argc, const char *argv[]) {
"If provided, `kuksa-val-server` shall use different server address than default _'localhost'_")
("port", program_options::value<int>()->default_value(8090),
"If provided, `kuksa-val-server` shall use different server port than default '8090' value")
("record", program_options::value<string>() -> default_value("noRecord"),
("record", program_options::value<string>() -> default_value("noRecord"),
"Enables recording into log file, for later being replayed into the server \nnoRecord: no data will be recorded\nrecordSet: record setting values only\nrecordSetAndGet: record getting value and setting value")
("record-path",program_options::value<string>() -> default_value("."),
"Specifies record file path.")
Expand Down Expand Up @@ -235,7 +237,7 @@ int main(int argc, const char *argv[]) {
std::cout << "Recording inputs\n";
else if(variables["record"].as<string>() == "recordSetAndGet")
std::cout << "Recording in- and outputs\n";

database.reset(new VssDatabase_Record(logger,subHandler,variables["record-path"].as<string>(),variables["record"].as<string>()));
}
else if(variables["record"].as<string>() !="noRecord")
Expand Down Expand Up @@ -276,7 +278,7 @@ int main(int argc, const char *argv[]) {
std::thread grpc(grpcHandler::RunServer, cmdProcessor, database, subHandler, logger, variables["cert-path"].as<boost::filesystem::path>().string(),insecureConn);
http.join();
grpc.join();


}
} catch (const program_options::error &ex) {
Expand Down

0 comments on commit fba0429

Please sign in to comment.