Skip to content

Avoid use of /tmp #834

@aamarques

Description

@aamarques

Which flavour of the Mend Renovate Server are you running?

Community Server (Community Edition / CE)

Which platform are you running Renovate on?

GitLab.com Self-Managed

Which version of Renovate Community / Enterprise Server are you using?

14.0.0

Please tell us more about your question or problem

Even I use all variables to tell renovate use /mnt/local/data for container base, cache, renovate-ee,etc. Always my docker starts, renovate create /tmp/container base and other directories unde /tmp.
I have a limit for /tmp and I use a volume mount point to backup, increase it,etc.

I create links from /mnt to /tmp and now I have another issue with GIT transversal file system.
Is /tmp hardcoded in renovate code ?
How can I solve this ?

Thanks

Logs (if relevant)

Logs
 WARN: artifactErrors (repository=dev/feature-1, branch=renovate/lock-file-maintenance)
       "artifactErrors": [
         {
           "lockFile": "yarn.lock",
           "stderr": "[08:10:25.502] INFO (1627): Installing tool node@24.14.0...\n[08:10:25.546] ERROR (1627): EACCES: permission denied, mkdir '/tmp/containerbase/cache/.cache'\n[08:10:25.547] FATAL (1627): Install tool node failed in 49ms.\n"
         }
       ]
DEBUG: rawExec err (repository=dev/feature-1, branch=renovate/lock-file-maintenance)
       "err": {
         "cmd": "install-tool node 24.14.0",
         "stderr": "",
         "stdout": "[08:05:40.393] INFO (635): Installing tool node@24.14.0...\n[08:05:40.445] ERROR (635): EACCES: permission denied, mkdir '/tmp/containerbase/tool.init.d'\n[08:05:40.446] FATAL (635): Install tool node failed in 58ms.\n",
         "options": {
           "cwd": "/mnt/local/data/work/repos/gitlab/dev/feature-1",
           "env": [
             "NPM_CONFIG_CACHE",
             "npm_config_store",
             "CI",
             "YARN_ENABLE_IMMUTABLE_INSTALLS",
             "YARN_HTTP_TIMEOUT",
             "YARN_GLOBAL_FOLDER",
             "YARN_ENABLE_GLOBAL_CACHE",
             "HOME",
             "PATH",
             "LC_ALL",
             "LANG",
             "COREPACK_DEFAULT_TO_LATEST",
             "CONTAINERBASE_CACHE_DIR"
           ],
           "maxBuffer": 10485760,
           "timeout": 900000,
           "stdin": "pipe",
           "stdout": "pipe",
           "stderr": "pipe"
         },
         "exitCode": 1,
         "name": "ExecError",
         "message": "Command failed: install-tool node 24.14.0\n",
         "stack": "ExecError: Command failed: install-tool node 24.14.0\n\n    at ChildProcess.<anonymous> (/usr/src/mend/node_modules/renovate/lib/util/exec/common.ts:168:13)\n    at ChildProcess.emit (node:events:520:35)\n    at ChildProcess.emit (node:domain:489:12)\n    at Process.ChildProcess._handle.onexit (node:internal/child_process:294:12)"
       },
       "durationMs": 558
DEBUG: exec completed (repository=dev/feature-1, branch=renovate/lock-file-maintenance)
       "durationMs": 274,
       "stdout": "[08:14:05.370] INFO (2426): Installing tool node@24.14.0...\n[08:14:05.420] ERROR (2426): ipc server error\n    err: {\n      \"type\": \"Error\",\n      \"message\": \"listen EACCES: permission denied /tmp/containerbase/ipc.sock\",\n      \"stack\":\n          Error: listen EACCES: permission denied /tmp/containerbase/ipc.sock\n              at Server.setupListenHandle [as _listen2] (node:net:1918:21)\n              at listenInCluster (node:net:1997:12)\n              at Server.listen (node:net:2119:5)\n              at Server.startServer (/snapshot/dist/containerbase-cli.js:40461:17)\n
     at FSReqCallback.oncomplete (node:fs:186:23)\n      \"code\": \"EACCES\",\n      \"errno\": -13,\n      \"syscall\": \"listen\",\n      \"address\": \"/tmp/containerbase/ipc.sock\",\n      \"port\": -1\n    }\n",
       "stderr": ""

After I remove and replace /tmp/containerbase with a symlink to /mnt/local/data/containerbase, it seems that works, unless the GPG signature. This works well previously.

DEBUG: Git function thrown (repository=dev/feature-1, branch=renovate/lock-file-maintenance)
       "err": {
         "task": {
           "commands": [
             "push",
             "origin",
             "renovate/lock-file-maintenance:renovate/lock-file-maintenance",
             "--force-with-lease",
             "-u",
             "--no-verify",
             "--verbose",
             "--porcelain"
           ],
           "format": "utf-8",
           "parser": "[function]"
         },
         "message": "To https://git.mycompany.org/dev/feature-1.git\n!\trefs/heads/renovate/lock-file-maintenance:refs/heads/renovate/lock-file-maintenance\t[remote rejected] (pre-receive hook declined)\nDone\nPushing to https://git.mycompany.org/dev/feature-1.git\nPOST git-receive-pack (2071 bytes)\nremote: GitLab: Commit must be signed with a GPG key\nerror: failed to push some refs to 'https://git.mycompany.org/dev/feature-1.git'\n",
         "stack": "Error: To https://git.mycompany.org/dev/feature-1.git\n!\trefs/heads/renovate/lock-file-maintenance:refs/heads/renovate/lock-file-maintenance\t[remote rejected] (pre-receive hook declined)\nDone\nPushing to https://git.mycompany.org/dev/feature-1.git\nPOST git-receive-pack (2071 bytes)\nremote: GitLab: Commit must be signed with a GPG key\nerror: failed to push some refs to ['https://git.mycompany.org/dev/feature-1.git'](https://git.mycompany.org/dev/feature-1.git)\n\n    at Object.action (/usr/src/mend/node_modules/simple-git/src/lib/plugins/error-detection.plugin.ts:42:29)\n    at PluginStore.exec (/usr/src/mend/node_modules/simple-git/src/lib/plugins/plugin-store.ts:54:29)\n    at /usr/src/mend/node_modules/simple-git/src/lib/runners/git-executor-chain.ts:124:42\n    at new Promise (<anonymous>)\n    at GitExecutorChain.handleTaskData (/usr/src/mend/node_modules/simple-git/src/lib/runners/git-executor-chain.ts:121:14)\n    at GitExecutorChain.attemptRemoteTask (/usr/src/mend/node_modules/simple-git/src/lib/runners/git-executor-chain.ts:97:40)\n    at processTicksAndRejections (node:internal/process/task_queues:103:5)\n    at GitExecutorChain.attemptTask (/usr/src/mend/node_modules/simple-git/src/lib/runners/git-executor-chain.ts:61:18)"
       }

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions