Commit 2b54c3ef authored by jan.koester's avatar jan.koester
Browse files

test

parent a76a5f78
Loading
Loading
Loading
Loading
+8 −3
Changes for modules/containers/containers.cpp: 8 added lines, 3 removed lines.
Original line number Diff line number Diff line
@@ -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));
@@ -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;
}