Loading modules/containers/containers.cpp +8 −3 Changes for modules/containers/containers.cpp: 8 added lines, 3 removed lines. Original line number Diff line number Diff line Loading @@ -241,14 +241,19 @@ json_object *listAll() { } json_object *apps() { sysbus::Message r; if (json_object *e = callContainerd(containerd::method::ListApps, {}, r)) return e; json_object *out = json_object_new_object(); json_object *list = json_object_new_array(); json_object_object_add(out, "apps", list); json_object *app = nullptr; std::string from = "0"; while (!from.empty()) { sysbus::Message r; if (json_object *e = callContainerd(containerd::method::ListApps, {{"from", from}}, r)) return json_object_put(out), e; from = r.get("next"); for (auto &f : r.fields) { if (f.first == "registry") json_object_object_add(out, "registry", jstr(f.second)); else if (f.first == "updated") json_object_object_add(out, "updated", json_object_new_int64(std::strtoll(f.second.c_str(), nullptr, 10))); else if (f.first == "next") continue; else if (f.first == "app") { app = json_object_new_object(); json_object_object_add(app, "name", jstr(f.second)); Loading @@ -257,7 +262,7 @@ json_object *apps() { } else if (app && f.first == "tag") json_object_array_add(json_object_object_get(app, "tags"), jstr(f.second)); else if (app) json_object_object_add(app, f.first.c_str(), jstr(f.second)); } json_object_object_add(out, "apps", list); } return out; } Loading Loading
modules/containers/containers.cpp +8 −3 Changes for modules/containers/containers.cpp: 8 added lines, 3 removed lines. Original line number Diff line number Diff line Loading @@ -241,14 +241,19 @@ json_object *listAll() { } json_object *apps() { sysbus::Message r; if (json_object *e = callContainerd(containerd::method::ListApps, {}, r)) return e; json_object *out = json_object_new_object(); json_object *list = json_object_new_array(); json_object_object_add(out, "apps", list); json_object *app = nullptr; std::string from = "0"; while (!from.empty()) { sysbus::Message r; if (json_object *e = callContainerd(containerd::method::ListApps, {{"from", from}}, r)) return json_object_put(out), e; from = r.get("next"); for (auto &f : r.fields) { if (f.first == "registry") json_object_object_add(out, "registry", jstr(f.second)); else if (f.first == "updated") json_object_object_add(out, "updated", json_object_new_int64(std::strtoll(f.second.c_str(), nullptr, 10))); else if (f.first == "next") continue; else if (f.first == "app") { app = json_object_new_object(); json_object_object_add(app, "name", jstr(f.second)); Loading @@ -257,7 +262,7 @@ json_object *apps() { } else if (app && f.first == "tag") json_object_array_add(json_object_object_get(app, "tags"), jstr(f.second)); else if (app) json_object_object_add(app, f.first.c_str(), jstr(f.second)); } json_object_object_add(out, "apps", list); } return out; } Loading