MCPcopy Create free account
hub / github.com/DeusData/codebase-memory-mcp / install_gitlab_durable_context

Function install_gitlab_durable_context

src/cli/cli.c:7917–7944  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

7915}
7916
7917static void install_gitlab_durable_context(const cbm_agent_registry_context_t *registry,
7918 const char *binary_path, bool dry_run) {
7919 char hooks_path[CLI_BUF_1K];
7920 if (!cbm_gitlab_hooks_path(registry, hooks_path, sizeof(hooks_path))) {
7921 record_agent_config_error(false, "GitLab Duo CLI", "hook_resolve", "hooks.json");
7922 return;
7923 }
7924 bool hook_supported = cbm_optional_hook_supported("gitlab", registry->options.is_windows);
7925 if (g_install_plan) {
7926 if (hook_supported) {
7927 plan_record("GitLab Duo CLI", "hook", hooks_path);
7928 }
7929 return;
7930 }
7931 if (!hook_supported) {
7932 printf(" hook: withheld on Windows (vendor hook shell is undocumented)\n");
7933 return;
7934 }
7935 bool installed = true;
7936 if (!dry_run && (!prepare_config_parent(hooks_path) ||
7937 cbm_upsert_gitlab_session_hook(hooks_path, binary_path) != CLI_OK)) {
7938 installed = false;
7939 record_agent_config_error(false, "GitLab Duo CLI", "session_hook_install", hooks_path);
7940 }
7941 if (installed) {
7942 printf(" hook: %s (SessionStart; experimental vendor surface)\n", hooks_path);
7943 }
7944}
7945
7946static void install_devin_durable_context(const cbm_agent_registry_context_t *registry,
7947 const char *binary_path, const char *config_path,

Callers 1

Calls 6

cbm_gitlab_hooks_pathFunction · 0.85
plan_recordFunction · 0.85
prepare_config_parentFunction · 0.85

Tested by

no test coverage detected