Commit Graph

151 Commits

Author SHA1 Message Date
Wataru Ishida
e3af1ca2d9 meta-generator: refactor TAIObject creation
remove ad-hoc object type based handlings

Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-04-27 21:49:40 +00:00
Wataru Ishida
c224a81a87 *: s/HOSTIF/HOST_INTERFACE/g, s/NETWORKIF/NETWORK_INTERFACE/g
Preparation for supporting custom object APIs in meta library.
This commit makes it possible to remove ad-hoc handlings in
meta-data generation

Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-04-27 21:32:02 +00:00
Wataru Ishida
586a7bf9ea inc: add list_object_info API to meta API
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-04-27 01:59:48 +00:00
Wataru Ishida
82b77d1c45 inc: add object API
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-04-27 01:59:48 +00:00
Wataru Ishida
17edfdef4d taish: always link to libmetatai library
The TAI library that is used to build the taish_server is using the TAI
library framework. TAI libraries that uses the TAI library framework
includes symbols of libmetatai.so. Combined with the ld's default
behavior (--as-needed), the libmetatai.so was not linked to
taish_server. However, taish_server must work with the TAI libraries
that don't use the TAI library framework and that don't include the
symbols of libmetatai.so. This commit adds --no-as-needed flag to always
link libmetatai library to taish_server.

Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-04-19 16:06:25 +09:00
Wataru Ishida
0aea95617d Revert "meta: add tai_metadata_get_attr_sorted_by_id_name()"
This reverts commit 1955bb551d.

The commit breaks existing TAI libraries

Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-04-18 19:03:14 +09:00
Wataru Ishida
1955bb551d meta: add tai_metadata_get_attr_sorted_by_id_name()
and tai_metadata_get_attr_sorted_by_id_name_count()

Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-04-18 10:11:32 +09:00
Wataru Ishida
a62b13ef64 taish: fix get_hostif() and get_netif()
the index in the objs list doesn't necessarily match with the index
of the object

Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-03-16 01:21:06 +09:00
Wataru Ishida
009635ba5f taish: fix interactive mode
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-02-28 11:02:28 +09:00
Wataru Ishida
d9e58cd11f taish: fix remove command
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-02-22 15:53:47 +09:00
Wataru Ishida
a6b842762d framework: remove unnecessary dynamic link to the meta library
meta library is statically linked

Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-02-18 10:32:24 +09:00
Wataru Ishida
077ba2727d framework: let user decide the optimization level
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-02-18 10:32:24 +09:00
Wataru Ishida
e1af71517a framework: fix list of sources and headers
include meta library sources to the library to support meta API
with custom attributes

Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-02-17 12:14:19 +09:00
Wataru Ishida
16397c4910 taish/client: fix close()
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-02-16 17:50:35 +09:00
Wataru Ishida
d474c52d9d framework: include meta library object code to support meta APIs
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-02-16 17:50:35 +09:00
Wataru Ishida
fc632a42f7 improve build
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-02-14 14:24:45 +09:00
Wataru Ishida
58cca5d17a meta-generator: use libclang package to simplify installation
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-02-14 14:24:45 +09:00
Wataru Ishida
b1707a9905 improve build
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-02-12 23:43:18 +09:00
Wataru Ishida
e3e3a0fc4c use -Wall -Werror for build
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-02-12 23:43:18 +09:00
Wataru Ishida
dd287856b8 taish: return hostif/netif in the order of index
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-02-12 12:52:24 +09:00
Wataru Ishida
9e1a9f6555 framework: don't call notification callback when attrs.size() == 0
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-02-10 19:59:16 +09:00
Wataru Ishida
352814de51 taish: use grpcio instead of grpclib
grpcio is faster and the current version supports asyncio.

Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-02-09 14:02:00 +09:00
Wataru Ishida
aff8455b6a meta: package metadata generator instead of raw script
to enable easy use for other projects

Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-02-01 14:30:13 +09:00
Wataru Ishida
7a0671ec40 framework: don't queue the next state if already exists
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-01-23 20:59:20 +09:00
Wataru Ishida
94ee226c6c taish: support setting empty list via taish cli
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-01-19 20:22:31 +09:00
Wataru Ishida
cb939abd85 taish: format code by black
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-01-19 20:22:31 +09:00
Wataru Ishida
ad7e2befee taish: handle exception in SetAttribute()
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-01-19 18:46:43 +09:00
Wataru Ishida
7246caa3d1 meta: support deserializing empty list
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-01-19 18:46:43 +09:00
Wataru Ishida
b9ae629581 taish: fix another taish list command regression
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-01-09 10:15:11 +09:00
Wataru Ishida
5dff94a715 taish: fix taish list command regression
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-01-07 18:17:22 +09:00
Wataru Ishida
42ab521d6b taish: support getting/setting multiple attributes at once
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-01-06 14:57:14 +09:00
Wataru Ishida
bc785cd223 lib: add tests
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2022-01-05 00:18:47 +09:00
Wataru Ishida
462b6971a1 framework: fix next-state overwriting
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2021-12-01 22:12:13 +09:00
Wataru Ishida
896b91e80a taish: use a separate mutex for API serialization
a bug introduced by 3448aca2a1

m_mtx for API serialization
m_notifiers_mtx to protect m_notifiers

Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2021-11-08 13:55:44 +09:00
Wataru Ishida
3448aca2a1 taish: serialize TAI API calls
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2021-11-01 07:43:57 +09:00
Wataru Ishida
07626499ea taish: handle SIGTERM
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2021-09-15 15:59:19 +09:00
Wataru Ishida
9e0effa95e meta: support adding custom enum values to TAI attributes
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2021-09-13 16:19:46 +09:00
Wataru Ishida
6442c0b29c taish: fix bug of python client library
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2021-08-12 01:44:39 +09:00
Wataru Ishida
c2656400c3 taish: fix bug when calling a method with kwargs
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2021-08-11 10:45:44 +09:00
Wataru Ishida
ed79f0ccac framework/examples/basic: show how to add capability support
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2021-08-11 00:50:40 +09:00
Wataru Ishida
b0fdd9ce8c taish: add capability support
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2021-08-11 00:50:40 +09:00
Wataru Ishida
96fe7cc006 framework: initial support of capability API
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2021-08-11 00:50:40 +09:00
Wataru Ishida
ec790253dc lib: capability
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2021-08-11 00:50:40 +09:00
Wataru Ishida
7c83724333 framework: return immediately when attr_count is 0
suppress misleading debug messages

Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2021-08-11 00:50:40 +09:00
Wataru Ishida
4d51cd3395 framework: remove unused function
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2021-08-11 00:50:40 +09:00
Wataru Ishida
13c18a9bd6 framework/example/basic: suppress complile warning
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2021-08-11 00:50:40 +09:00
Wataru Ishida
074fb47b15 taish: call tai_api_uninitialize() when exiting
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2021-07-28 12:07:54 +09:00
Wataru Ishida
06e7774ff3 framework: make the destructor of Platform virtual
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2021-07-28 12:07:54 +09:00
Wataru Ishida
15437e0eed taish: make getopt work in env where char is unsigned.
https://stackoverflow.com/questions/17070958/c-why-does-getopt-return-255-on-linux

Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2021-07-19 11:19:23 +09:00
Wataru Ishida
29de11eb36 taish: add module-oid field to hostif and netif
Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
2021-05-26 10:05:11 +09:00