mirror of
https://github.com/emqx/neuron.git
synced 2026-10-17 04:40:42 +08:00
script: sdk install
This commit is contained in:
@@ -40,6 +40,23 @@ jobs:
|
||||
-DCMAKE_BUILD_TYPE=Release -DDISABLE_UT=ON
|
||||
make -j4
|
||||
|
||||
- name: get ui version
|
||||
id: get_ui_version
|
||||
run: echo "::set-output name=version::$(cat ui_version)"
|
||||
|
||||
- name: fetch dashboard
|
||||
uses: dsaltares/fetch-gh-release-asset@master
|
||||
with:
|
||||
repo: "emqx/neuron-dashboard-src"
|
||||
version: "tags/${{ steps.get_ui_version.outputs.version }}"
|
||||
file: "neuron-dashboard.zip"
|
||||
target: "neuron-dashboard.zip"
|
||||
token: ${{ secrets.ci_git_token }}
|
||||
|
||||
- name: unpack dashboard
|
||||
run: |
|
||||
unzip neuron-dashboard.zip -d ./build
|
||||
|
||||
- name: Create neuron sdk package
|
||||
run: |
|
||||
./package-sdk.sh -p ${{ matrix.arch[5] }} -n neuron-sdk-${{ steps.get_version.outputs.version }}
|
||||
|
||||
+1
-148
@@ -26,8 +26,6 @@ extern "C" {
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#include <nng/nng.h>
|
||||
|
||||
#include "define.h"
|
||||
#include "tag.h"
|
||||
#include "type.h"
|
||||
@@ -386,152 +384,7 @@ typedef struct {
|
||||
neu_resp_tag_value_t tags[];
|
||||
} neu_reqresp_trans_data_t;
|
||||
|
||||
inline static nng_msg *neu_msg_gen(neu_reqresp_head_t *header, void *data)
|
||||
{
|
||||
nng_msg *msg = NULL;
|
||||
void * body = NULL;
|
||||
size_t data_size = 0;
|
||||
|
||||
switch (header->type) {
|
||||
case NEU_REQ_NODE_INIT:
|
||||
case NEU_REQ_NODE_UNINIT:
|
||||
case NEU_RESP_NODE_UNINIT:
|
||||
data_size = sizeof(neu_req_node_init_t);
|
||||
break;
|
||||
case NEU_RESP_ERROR:
|
||||
data_size = sizeof(neu_resp_error_t);
|
||||
break;
|
||||
case NEU_REQ_ADD_PLUGIN:
|
||||
data_size = sizeof(neu_req_add_plugin_t);
|
||||
break;
|
||||
case NEU_REQ_DEL_PLUGIN:
|
||||
data_size = sizeof(neu_req_del_plugin_t);
|
||||
break;
|
||||
case NEU_REQ_GET_PLUGIN:
|
||||
data_size = sizeof(neu_req_get_plugin_t);
|
||||
break;
|
||||
case NEU_RESP_GET_PLUGIN:
|
||||
data_size = sizeof(neu_resp_get_plugin_t);
|
||||
break;
|
||||
case NEU_REQ_ADD_NODE:
|
||||
data_size = sizeof(neu_req_add_node_t);
|
||||
break;
|
||||
case NEU_REQ_DEL_NODE:
|
||||
data_size = sizeof(neu_req_del_node_t);
|
||||
break;
|
||||
case NEU_REQ_GET_NODE:
|
||||
data_size = sizeof(neu_req_get_node_t);
|
||||
break;
|
||||
case NEU_RESP_GET_NODE:
|
||||
data_size = sizeof(neu_resp_get_node_t);
|
||||
break;
|
||||
case NEU_REQ_ADD_GROUP:
|
||||
case NEU_REQ_UPDATE_GROUP:
|
||||
data_size = sizeof(neu_req_add_group_t);
|
||||
break;
|
||||
case NEU_REQ_DEL_GROUP:
|
||||
data_size = sizeof(neu_req_del_group_t);
|
||||
break;
|
||||
case NEU_REQ_GET_GROUP:
|
||||
data_size = sizeof(neu_req_get_group_t);
|
||||
break;
|
||||
case NEU_RESP_GET_GROUP:
|
||||
data_size = sizeof(neu_resp_get_group_t);
|
||||
break;
|
||||
case NEU_REQ_ADD_TAG:
|
||||
data_size = sizeof(neu_req_add_tag_t);
|
||||
break;
|
||||
case NEU_RESP_ADD_TAG:
|
||||
data_size = sizeof(neu_resp_add_tag_t);
|
||||
break;
|
||||
case NEU_RESP_UPDATE_TAG:
|
||||
data_size = sizeof(neu_resp_update_tag_t);
|
||||
break;
|
||||
case NEU_REQ_UPDATE_TAG:
|
||||
data_size = sizeof(neu_req_update_tag_t);
|
||||
break;
|
||||
case NEU_REQ_DEL_TAG:
|
||||
data_size = sizeof(neu_req_del_tag_t);
|
||||
break;
|
||||
case NEU_REQ_GET_TAG:
|
||||
data_size = sizeof(neu_req_get_tag_t);
|
||||
break;
|
||||
case NEU_RESP_GET_TAG:
|
||||
data_size = sizeof(neu_resp_get_tag_t);
|
||||
break;
|
||||
case NEU_REQ_SUBSCRIBE_GROUP:
|
||||
data_size = sizeof(neu_req_subscribe_t);
|
||||
break;
|
||||
case NEU_REQ_UNSUBSCRIBE_GROUP:
|
||||
data_size = sizeof(neu_req_unsubscribe_t);
|
||||
break;
|
||||
case NEU_REQ_GET_SUBSCRIBE_GROUP:
|
||||
data_size = sizeof(neu_req_get_subscribe_group_t);
|
||||
break;
|
||||
case NEU_RESP_GET_SUBSCRIBE_GROUP:
|
||||
data_size = sizeof(neu_resp_get_subscribe_group_t);
|
||||
break;
|
||||
case NEU_REQ_NODE_SETTING:
|
||||
data_size = sizeof(neu_req_node_setting_t);
|
||||
break;
|
||||
case NEU_REQ_GET_NODE_SETTING:
|
||||
data_size = sizeof(neu_req_get_node_setting_t);
|
||||
break;
|
||||
case NEU_RESP_GET_NODE_SETTING:
|
||||
data_size = sizeof(neu_resp_get_node_setting_t);
|
||||
break;
|
||||
case NEU_REQ_NODE_CTL:
|
||||
data_size = sizeof(neu_req_node_ctl_t);
|
||||
break;
|
||||
case NEU_REQ_GET_NODE_STATE:
|
||||
data_size = sizeof(neu_req_get_node_state_t);
|
||||
break;
|
||||
case NEU_RESP_GET_NODE_STATE:
|
||||
data_size = sizeof(neu_resp_get_node_state_t);
|
||||
break;
|
||||
case NEU_REQ_GET_NODES_STATE:
|
||||
data_size = sizeof(neu_req_get_nodes_state_t);
|
||||
break;
|
||||
case NEU_REQRESP_NODES_STATE:
|
||||
case NEU_RESP_GET_NODES_STATE:
|
||||
data_size = sizeof(neu_resp_get_nodes_state_t);
|
||||
break;
|
||||
case NEU_REQ_READ_GROUP:
|
||||
data_size = sizeof(neu_req_read_group_t);
|
||||
break;
|
||||
case NEU_REQ_WRITE_TAG:
|
||||
data_size = sizeof(neu_req_write_tag_t);
|
||||
break;
|
||||
case NEU_RESP_READ_GROUP:
|
||||
data_size = sizeof(neu_resp_read_group_t);
|
||||
break;
|
||||
case NEU_REQRESP_TRANS_DATA: {
|
||||
neu_reqresp_trans_data_t *trans = (neu_reqresp_trans_data_t *) data;
|
||||
data_size = sizeof(neu_reqresp_trans_data_t) +
|
||||
trans->n_tag * sizeof(neu_resp_tag_value_t);
|
||||
break;
|
||||
}
|
||||
case NEU_REQ_UPDATE_LICENSE:
|
||||
data_size = sizeof(neu_req_update_license_t);
|
||||
break;
|
||||
case NEU_RESP_APP_SUBSCRIBE_GROUP:
|
||||
data_size = sizeof(neu_resp_app_subscribe_group_t);
|
||||
break;
|
||||
case NEU_REQ_APP_SUBSCRIBE_GROUP:
|
||||
case NEU_REQ_APP_UNSUBSCRIBE_GROUP:
|
||||
data_size = sizeof(neu_req_app_unsubscribe_group_t);
|
||||
break;
|
||||
default:
|
||||
assert(false);
|
||||
break;
|
||||
}
|
||||
|
||||
nng_msg_alloc(&msg, sizeof(neu_reqresp_head_t) + data_size);
|
||||
body = nng_msg_body(msg);
|
||||
memcpy(body, header, sizeof(neu_reqresp_head_t));
|
||||
memcpy((uint8_t *) body + sizeof(neu_reqresp_head_t), data, data_size);
|
||||
return msg;
|
||||
}
|
||||
void *neu_msg_gen(neu_reqresp_head_t *header, void *data);
|
||||
|
||||
inline static void neu_msg_exchange(neu_reqresp_head_t *header)
|
||||
{
|
||||
|
||||
@@ -35,10 +35,13 @@ mkdir -p $package_name/lib
|
||||
mkdir -p $package_name/config
|
||||
mkdir -p $package_name/plugins/schema
|
||||
|
||||
cp sdk-install.sh ${package_name}/
|
||||
cp neuron.conf ${package_name}/
|
||||
cp cmake/neuron-config.cmake ${package_name}/
|
||||
cp -r include/* ${package_name}/include/
|
||||
|
||||
cp -r build/dist ${package_name}/
|
||||
|
||||
cp build/neuron ${package_name}
|
||||
cp build/libneuron-base.so ${package_name}/lib
|
||||
cp zlog/src/libzlog.so.1.2 ${package_name}/lib
|
||||
@@ -46,10 +49,12 @@ cp zlog/src/libzlog.so.1.2 ${package_name}/lib
|
||||
cp -r persistence ${package_name}/
|
||||
cp migrate.py ${package_name}/
|
||||
|
||||
cp sdk-zlog.conf ${package_name}/config/
|
||||
cp zlog.conf ${package_name}/config/
|
||||
cp dev.conf ${package_name}/config/
|
||||
cp neuron.key ${package_name}/config/
|
||||
cp neuron.pem ${package_name}/config/
|
||||
cp default_plugins.json ${package_name}/config/
|
||||
|
||||
cp build/plugins/schema/ekuiper.json \
|
||||
build/plugins/schema/mqtt.json \
|
||||
|
||||
Executable
+37
@@ -0,0 +1,37 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
neuron_bin="/usr/local/bin/neuron"
|
||||
neuron_include="/usr/local/include/neuron"
|
||||
neuron_lib="/usr/local/lib/neuron"
|
||||
|
||||
cp neuron.conf /etc/ld.so.conf.d/
|
||||
|
||||
mkdir -p /usr/local/lib/cmake/neuron/
|
||||
cp neuron-config.cmake /usr/local/lib/cmake/neuron/
|
||||
|
||||
mkdir -p ${neuron_include}
|
||||
cp -r include/neuron/* ${neuron_include}/
|
||||
|
||||
mkdir -p ${neuron_lib}
|
||||
cp lib/* ${neuron_lib}/
|
||||
|
||||
mkdir -p ${neuron_bin}
|
||||
mkdir -p ${neuron_bin}/config
|
||||
mkdir -p ${neuron_bin}/persistence
|
||||
mkdir -p ${neuron_bin}/plugins
|
||||
|
||||
cp ./neuron ${neuron_bin}/
|
||||
cp config/sdk-zlog.conf ${neuron_bin}/config/zlog.conf
|
||||
cp config/dev.conf ${neuron_bin}/config/
|
||||
cp config/neuron.key ${neuron_bin}/config/
|
||||
cp config/neuron.pem ${neuron_bin}/config/
|
||||
|
||||
cp config/default_plugins.json ${neuron_bin}/persistence/plugins.json
|
||||
cp persistence/* ${neuron_bin}/persistence/
|
||||
cp -r plugins/* ${neuron_bin}/plugins/
|
||||
|
||||
cp -r dist ${neuron_bin}/
|
||||
|
||||
ldconfig
|
||||
@@ -0,0 +1,12 @@
|
||||
[global]
|
||||
|
||||
reload conf period = 60
|
||||
file perms = 666
|
||||
|
||||
[formats]
|
||||
|
||||
simple = "%d [%V] %f:%L %m%n"
|
||||
|
||||
[rules]
|
||||
|
||||
*.INFO "/var/log/neuron/%c.log", 10MB * 3 ~ "/var/log/neuron/%c-%d(%Y%m%d).#2s.log"; simple
|
||||
@@ -776,4 +776,151 @@ static int update_timestamp(void *usr_data)
|
||||
|
||||
neu_plugin_to_plugin_common(adapter->plugin)->timestamp = timestamp;
|
||||
return 0;
|
||||
}
|
||||
|
||||
void *neu_msg_gen(neu_reqresp_head_t *header, void *data)
|
||||
{
|
||||
nng_msg *msg = NULL;
|
||||
void * body = NULL;
|
||||
size_t data_size = 0;
|
||||
|
||||
switch (header->type) {
|
||||
case NEU_REQ_NODE_INIT:
|
||||
case NEU_REQ_NODE_UNINIT:
|
||||
case NEU_RESP_NODE_UNINIT:
|
||||
data_size = sizeof(neu_req_node_init_t);
|
||||
break;
|
||||
case NEU_RESP_ERROR:
|
||||
data_size = sizeof(neu_resp_error_t);
|
||||
break;
|
||||
case NEU_REQ_ADD_PLUGIN:
|
||||
data_size = sizeof(neu_req_add_plugin_t);
|
||||
break;
|
||||
case NEU_REQ_DEL_PLUGIN:
|
||||
data_size = sizeof(neu_req_del_plugin_t);
|
||||
break;
|
||||
case NEU_REQ_GET_PLUGIN:
|
||||
data_size = sizeof(neu_req_get_plugin_t);
|
||||
break;
|
||||
case NEU_RESP_GET_PLUGIN:
|
||||
data_size = sizeof(neu_resp_get_plugin_t);
|
||||
break;
|
||||
case NEU_REQ_ADD_NODE:
|
||||
data_size = sizeof(neu_req_add_node_t);
|
||||
break;
|
||||
case NEU_REQ_DEL_NODE:
|
||||
data_size = sizeof(neu_req_del_node_t);
|
||||
break;
|
||||
case NEU_REQ_GET_NODE:
|
||||
data_size = sizeof(neu_req_get_node_t);
|
||||
break;
|
||||
case NEU_RESP_GET_NODE:
|
||||
data_size = sizeof(neu_resp_get_node_t);
|
||||
break;
|
||||
case NEU_REQ_ADD_GROUP:
|
||||
case NEU_REQ_UPDATE_GROUP:
|
||||
data_size = sizeof(neu_req_add_group_t);
|
||||
break;
|
||||
case NEU_REQ_DEL_GROUP:
|
||||
data_size = sizeof(neu_req_del_group_t);
|
||||
break;
|
||||
case NEU_REQ_GET_GROUP:
|
||||
data_size = sizeof(neu_req_get_group_t);
|
||||
break;
|
||||
case NEU_RESP_GET_GROUP:
|
||||
data_size = sizeof(neu_resp_get_group_t);
|
||||
break;
|
||||
case NEU_REQ_ADD_TAG:
|
||||
data_size = sizeof(neu_req_add_tag_t);
|
||||
break;
|
||||
case NEU_RESP_ADD_TAG:
|
||||
data_size = sizeof(neu_resp_add_tag_t);
|
||||
break;
|
||||
case NEU_RESP_UPDATE_TAG:
|
||||
data_size = sizeof(neu_resp_update_tag_t);
|
||||
break;
|
||||
case NEU_REQ_UPDATE_TAG:
|
||||
data_size = sizeof(neu_req_update_tag_t);
|
||||
break;
|
||||
case NEU_REQ_DEL_TAG:
|
||||
data_size = sizeof(neu_req_del_tag_t);
|
||||
break;
|
||||
case NEU_REQ_GET_TAG:
|
||||
data_size = sizeof(neu_req_get_tag_t);
|
||||
break;
|
||||
case NEU_RESP_GET_TAG:
|
||||
data_size = sizeof(neu_resp_get_tag_t);
|
||||
break;
|
||||
case NEU_REQ_SUBSCRIBE_GROUP:
|
||||
data_size = sizeof(neu_req_subscribe_t);
|
||||
break;
|
||||
case NEU_REQ_UNSUBSCRIBE_GROUP:
|
||||
data_size = sizeof(neu_req_unsubscribe_t);
|
||||
break;
|
||||
case NEU_REQ_GET_SUBSCRIBE_GROUP:
|
||||
data_size = sizeof(neu_req_get_subscribe_group_t);
|
||||
break;
|
||||
case NEU_RESP_GET_SUBSCRIBE_GROUP:
|
||||
data_size = sizeof(neu_resp_get_subscribe_group_t);
|
||||
break;
|
||||
case NEU_REQ_NODE_SETTING:
|
||||
data_size = sizeof(neu_req_node_setting_t);
|
||||
break;
|
||||
case NEU_REQ_GET_NODE_SETTING:
|
||||
data_size = sizeof(neu_req_get_node_setting_t);
|
||||
break;
|
||||
case NEU_RESP_GET_NODE_SETTING:
|
||||
data_size = sizeof(neu_resp_get_node_setting_t);
|
||||
break;
|
||||
case NEU_REQ_NODE_CTL:
|
||||
data_size = sizeof(neu_req_node_ctl_t);
|
||||
break;
|
||||
case NEU_REQ_GET_NODE_STATE:
|
||||
data_size = sizeof(neu_req_get_node_state_t);
|
||||
break;
|
||||
case NEU_RESP_GET_NODE_STATE:
|
||||
data_size = sizeof(neu_resp_get_node_state_t);
|
||||
break;
|
||||
case NEU_REQ_GET_NODES_STATE:
|
||||
data_size = sizeof(neu_req_get_nodes_state_t);
|
||||
break;
|
||||
case NEU_REQRESP_NODES_STATE:
|
||||
case NEU_RESP_GET_NODES_STATE:
|
||||
data_size = sizeof(neu_resp_get_nodes_state_t);
|
||||
break;
|
||||
case NEU_REQ_READ_GROUP:
|
||||
data_size = sizeof(neu_req_read_group_t);
|
||||
break;
|
||||
case NEU_REQ_WRITE_TAG:
|
||||
data_size = sizeof(neu_req_write_tag_t);
|
||||
break;
|
||||
case NEU_RESP_READ_GROUP:
|
||||
data_size = sizeof(neu_resp_read_group_t);
|
||||
break;
|
||||
case NEU_REQRESP_TRANS_DATA: {
|
||||
neu_reqresp_trans_data_t *trans = (neu_reqresp_trans_data_t *) data;
|
||||
data_size = sizeof(neu_reqresp_trans_data_t) +
|
||||
trans->n_tag * sizeof(neu_resp_tag_value_t);
|
||||
break;
|
||||
}
|
||||
case NEU_REQ_UPDATE_LICENSE:
|
||||
data_size = sizeof(neu_req_update_license_t);
|
||||
break;
|
||||
case NEU_RESP_APP_SUBSCRIBE_GROUP:
|
||||
data_size = sizeof(neu_resp_app_subscribe_group_t);
|
||||
break;
|
||||
case NEU_REQ_APP_SUBSCRIBE_GROUP:
|
||||
case NEU_REQ_APP_UNSUBSCRIBE_GROUP:
|
||||
data_size = sizeof(neu_req_app_unsubscribe_group_t);
|
||||
break;
|
||||
default:
|
||||
assert(false);
|
||||
break;
|
||||
}
|
||||
|
||||
nng_msg_alloc(&msg, sizeof(neu_reqresp_head_t) + data_size);
|
||||
body = nng_msg_body(msg);
|
||||
memcpy(body, header, sizeof(neu_reqresp_head_t));
|
||||
memcpy((uint8_t *) body + sizeof(neu_reqresp_head_t), data, data_size);
|
||||
return msg;
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
2.1.2
|
||||
Reference in New Issue
Block a user