Running renovate in CI/CD fails with HTTP 500 (OD-2331)
daniel-developer opened 10 months ago

Good morning,

I set up renovate which is run from a pipeline. This fails for the last couple of runs.

Build log

The last runs failed with the following error found in the build logs:

09:08:28 Pending resource allocation...
09:08:28 Executing job (executor: remote-docker-arm64, agent: 6023706436ba)...
09:08:28 Creating docker network 'remote-docker-arm64-3-119-2'...
09:08:28 Downloading job dependencies...
09:08:29 Running step "set up renovate cache"...
09:08:35 Hit cache (key: website-renovate, paths: [/tmp/renovate/cache])
09:08:35 Step "set up renovate cache" is successful (5 seconds)
09:08:35 Running step "update dependencies"...
09:08:36 ddbf222f88ab: Already exists
09:08:36 aca3945b5c46: Already exists
09:08:36 def2227d11b1: Already exists
09:08:36 7b6df4fa1e12: Already exists
09:08:36 e2704c8942c3: Already exists
09:08:36 02b0fd275065: Already exists
09:08:36 2d8a97f8164d: Already exists
09:08:36 300dfc386ef0: Already exists
09:08:36 3eef43b96521: Already exists
09:08:36 afa404cadde6: Already exists
09:08:36 4f4fb700ef54: Already exists
09:08:36 e3366dd68755: Already exists
09:08:36 bcef47214822: Pulling fs layer
09:08:36 bcef47214822: Download complete
09:08:36 bcef47214822: Download complete
09:08:47  INFO: Autodiscovered repositories
09:08:47        "length": 1,
09:08:47        "repositories": [
09:08:47          "XXXXXXX/website"
09:08:47        ]
09:08:47  INFO: Repository started (repository=XXXXXXXX/website)
09:08:47        "renovateVersion": "39.19.1"
09:08:51  WARN: Host error (repository=XXXXXXXX/website)
09:08:51        "hostType": "github",
09:08:51        "packageName": undefined,
09:08:51        "err": {
09:08:51          "hostType": "github",
09:08:51          "err": {
09:08:51            "name": "HTTPError",
09:08:51            "code": "ERR_NON_2XX_3XX_RESPONSE",
09:08:51            "timings": {
09:08:51              "start": 1742634531088,
09:08:51              "socket": 1742634531089,
09:08:51              "lookup": 1742634531089,
09:08:51              "connect": 1742634531089,
09:08:51              "secureConnect": 1742634531089,
09:08:51              "upload": 1742634531090,
09:08:51              "response": 1742634531129,
09:08:51              "end": 1742634531130,
09:08:51              "phases": {
09:08:51                "wait": 1,
09:08:51                "dns": 0,
09:08:51                "tcp": 0,
09:08:51                "tls": 0,
09:08:51                "request": 1,
09:08:51                "firstByte": 39,
09:08:51                "download": 1,
09:08:51                "total": 42
09:08:51              }
09:08:51            },
09:08:51            "message": "Response code 500 (Internal Server Error)",
09:08:51            "stack": "HTTPError: Response code 500 (Internal Server Error)\n    at Request.<anonymous> (/usr/local/renovate/node_modules/.pnpm/[email protected]/node_modules/got/dist/source/as-promise/index.js:118:42)\n    at processTicksAndRejections (node:internal/process/task_queues:105:5)",
09:08:51            "options": {
09:08:51              "headers": {
09:08:51                "user-agent": "RenovateBot/39.19.1 (https://github.com/renovatebot/renovate)",
09:08:51                "x-onedevstepsetting": "ewogICJwcm9qZWN0cyIgOiBbICJmZWR1eG9yZy93ZWJzaXRlIiBdLAogICJpbmNsdWRlQ2hpbGRQcm9qZWN0cyIgOiBmYWxzZSwKICAibWVyZ2VTdHJhdGVneSIgOiBudWxsLAogICJpc3N1ZUNsb3NlU3RhdGVzIiA6IFsgIkNsb3NlZCIgXSwKICAiaXNzdWVDb25maWRlbnRpYWwiIDogZmFsc2UsCiAgImlzc3VlRmllbGRzIiA6IFsgewogICAgIm5hbWUiIDogIlR5cGUiLAogICAgInNlY3JldCIgOiBmYWxzZSwKICAgICJ2YWx1ZVByb3ZpZGVyIiA6IHsKICAgICAgIkB0eXBlIiA6ICJTcGVjaWZpZWRWYWx1ZSIsCiAgICAgICJ2YWx1ZSIgOiBbICJJbXByb3ZlbWVudCIgXQogICAgfQogIH0sIHsKICAgICJuYW1lIiA6ICJQcmlvcml0eSIsCiAgICAic2VjcmV0IiA6IGZhbHNlLAogICAgInZhbHVlUHJvdmlkZXIiIDogewogICAgICAiQHR5cGUiIDogIlNwZWNpZmllZFZhbHVlIiwKICAgICAgInZhbHVlIiA6IFsgIk1ham9yIiBdCiAgICB9CiAgfSwgewogICAgIm5hbWUiIDogIkFzc2lnbmVlIiwKICAgICJzZWNyZXQiIDogZmFsc2UsCiAgICAidmFsdWVQcm92aWRlciIgOiB7CiAgICAgICJAdHlwZSIgOiAiU3BlY2lmaWVkVmFsdWUiLAogICAgICAidmFsdWUiIDogWyAiZCIgXQogICAgfQogIH0gXQp9",
09:08:51                "accept": "application/json, application/vnd.github.v3+json",
09:08:51                "authorization": "***********",
09:08:51                "accept-encoding": "gzip, deflate, br"
09:08:51              },
09:08:51              "url": "https://git.in.XXXXXXXX.org/~api/renovate/repos/XXXXXXXX/website/pulls?per_page=100&state=all&sort=updated&direction=desc&page=1",
09:08:51              "hostType": "github",
09:08:51              "username": "",
09:08:51              "password": "",
09:08:51              "method": "GET",
09:08:51              "http2": false
09:08:51            },
09:08:51            "response": {
09:08:51              "statusCode": 500,
09:08:51              "statusMessage": "Internal Server Error",
09:08:51              "body": "Server Error",
09:08:51              "headers": {
09:08:51                "content-security-policy": "frame-ancestors 'self'",
09:08:51                "content-type": "text/plain",
09:08:51                "date": "Sat, 22 Mar 2025 09:08:51 GMT",
09:08:51                "permissions-policy": "fullscreen=(self), geolocation=(), midi=(), camera=(), usb=(), magnetometer=(), accelerometer=(), ambient-light-sensor=(), gyroscope=(), microphone=()",
09:08:51                "strict-transport-security": "max-age=15552000; includeSubDomains; preload",
09:08:51                "x-content-type-options": "nosniff",
09:08:51                "x-frame-options": "SAMEORIGIN",
09:08:51                "x-xss-protection": "1; mode=block",
09:08:51                "transfer-encoding": "chunked"
09:08:51              },
09:08:51              "httpVersion": "1.1",
09:08:51              "retryCount": 2
09:08:51            }
09:08:51          },
09:08:51          "message": "external-host-error",
09:08:51          "stack": "Error: external-host-error\n    at handleGotError (/usr/local/renovate/lib/util/http/github.ts:84:12)\n    at GithubHttp.request (/usr/local/renovate/lib/util/http/github.ts:380:13)\n    at processTicksAndRejections (node:internal/process/task_queues:105:5)\n    at GithubHttp.requestJson (/usr/local/renovate/lib/util/http/index.ts:291:17)\n    at getPrCache (/usr/local/renovate/lib/modules/platform/github/pr.ts:78:19)\n    at getPrList (/usr/local/renovate/lib/modules/platform/github/index.ts:837:21)\n    at Proxy.findPr (/usr/local/renovate/lib/modules/platform/github/index.ts:870:18)\n    at closedPrExists (/usr/local/renovate/lib/workers/repository/onboarding/branch/check.ts:48:6)\n    at isOnboarded (/usr/local/renovate/lib/workers/repository/onboarding/branch/check.ts:88:30)\n    at checkOnboardingBranch (/usr/local/renovate/lib/workers/repository/onboarding/branch/index.ts:36:27)\n    at getRepoConfig (/usr/local/renovate/lib/workers/repository/init/config.ts:13:12)\n    at initRepo (/usr/local/renovate/lib/workers/repository/init/index.ts:56:12)\n    at Object.renovateRepository (/usr/local/renovate/lib/workers/repository/index.ts:64:14)\n    at attributes.repository (/usr/local/renovate/lib/workers/global/index.ts:202:11)\n    at start (/usr/local/renovate/lib/workers/global/index.ts:187:7)\n    at /usr/local/renovate/lib/renovate.ts:19:22"
09:08:51        }
09:08:51  INFO: External host error causing abort - skipping (repository=XXXXXXXX/website)
09:08:51  INFO: Repository finished (repository=XXXXXXXX/website)
09:08:51        "cloned": false,
09:08:51        "durationMs": 4199
09:08:52  INFO: Renovate was run at log level "info". Set LOG_LEVEL=debug in environment variables to see extended debug logs.
09:08:52 Step "update dependencies" is successful (17 seconds)
09:08:54 Job finished

Server Logs

These are the corresponding server logs:

09:08:51 ERROR i.o.s.rest.JerseyExceptionMapper - Error processing api request
java.lang.NullPointerException: null
        at io.onedev.server.ee.renovate.RenovateResource.getPullRequestData(RenovateResource.java:520)
        at io.onedev.server.ee.renovate.RenovateResource.getPullRequests(RenovateResource.java:574)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:566)
        at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory.lambda$static$0(ResourceMethodInvocationHandlerFactory.java:52)
        at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:134)
        at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:177)
        at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:176)
        at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:81)
        at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:478)
        at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:400)
        at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:81)
        at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:256)
        at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)
        at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)
        at org.glassfish.jersey.internal.Errors.process(Errors.java:292)
        at org.glassfish.jersey.internal.Errors.process(Errors.java:274)
        at org.glassfish.jersey.internal.Errors.process(Errors.java:244)
        at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:265)
        at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:235)
        at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:684)
        at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:394)
        at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:346)
        at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:358)
        at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:311)
        at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:205)
        at io.onedev.server.rest.DefaultServletContainer.service(DefaultServletContainer.java:27)
        at io.onedev.server.rest.DefaultServletContainer$$EnhancerByGuice$$200389663.GUICE$TRAMPOLINE(<generated>)
        at com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation.proceed(InterceptorStackCallback.java:74)
        at io.onedev.server.persistence.SessionInterceptor$1.call(SessionInterceptor.java:23)
        at io.onedev.server.persistence.DefaultSessionManager.call(DefaultSessionManager.java:90)
        at io.onedev.server.persistence.SessionInterceptor.invoke(SessionInterceptor.java:18)
        at com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation.proceed(InterceptorStackCallback.java:75)
        at com.google.inject.internal.InterceptorStackCallback.invoke(InterceptorStackCallback.java:55)
        at io.onedev.server.rest.DefaultServletContainer$$EnhancerByGuice$$200389663.service(<generated>)
        at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:799)
        at org.eclipse.jetty.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1656)
        at com.google.inject.servlet.DefaultFilterPipeline.dispatch(DefaultFilterPipeline.java:47)
        at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:133)
        at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)
        at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1626)
        at io.onedev.server.git.GoGetFilter.doFilter(GoGetFilter.java:87)
        at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)
        at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1626)
        at io.onedev.server.git.GitLfsFilter.doFilter(GitLfsFilter.java:479)
        at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)
        at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1626)
        at io.onedev.server.git.GitFilter.doFilter(GitFilter.java:371)
        at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)
        at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1626)
        at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:61)
        at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
        at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
        at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:154)
        at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
        at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
        at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
        at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:154)
        at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)

Build Configuration

This is the pipeline configuration:

- name: update dependencies
  jobExecutor: remote-docker-arm64
  steps:
  - !RenovateCacheStep
    name: set up renovate cache
    key: website-renovate
    uploadStrategy: UPLOAD_IF_CHANGED
    uploadAccessTokenSecret: owner-token
    condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
  - !RenovateStep
    name: update dependencies
    includeChildProjects: false
    accessTokenSecret: owner-token
    issueCloseStates:
    - Closed
    issueFields:
    - name: Type
      secret: false
      valueProvider: !SpecifiedValue
        value:
        - Improvement
    - name: Priority
      secret: false
      valueProvider: !SpecifiedValue
        value:
        - Major
    - name: Assignee
      secret: false
      valueProvider: !SpecifiedValue
        value:
        - d
    globalConfig: "module.exports = {\n    \"onboardingConfigFileName\": \"renovate.json\",\n    \"onboardingConfig\": { \n        \"extends\": [\"config:recommended\"] \n    },\n    \"optimizeForDisabled\": true,\n\t\"lockFileMaintenance\": {\n\t\t\"enabled\": true,\n\t\t\"automerge\": true\n\t},\n\t\"packageRules\": [\n\t\t{\n\t\t\t\"matchDepTypes\": [\"devDependencies\"],\n\t\t\t\"matchPackageNames\": [\"lint\", \"prettier\"],\n\t\t\t\"automerge\": true\n\t\t},\n\t\t{\n\t\t\t\"matchUpdateTypes\": [\"minor\", \"patch\"],\n\t\t\t\"matchCurrentVersion\": \"!/^0/\",\n\t\t\t\"automerge\": true\n\t\t}\n\t]\n};\n"
    githubAccessTokenSecret: github-renovate-accesscode
    condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
  triggers:
  - !ScheduleTrigger
    cronExpression: 0 15 10 ? * *
    branches: main
  retryCondition: never
  maxRetries: 3
  retryDelay: 30
  timeout: 14400

Renovate configuration

This is my current renovate configuration:

module.exports = {
    "onboardingConfigFileName": "renovate.json",
    "onboardingConfig": {
        "extends": ["config:recommended"]
    },
    "optimizeForDisabled": true,
	"lockFileMaintenance": {
		"enabled": true,
		"automerge": true
	},
	"packageRules": [
		{
			"matchDepTypes": ["devDependencies"],
			"matchPackageNames": ["lint", "prettier"],
			"automerge": true
		},
		{
			"matchUpdateTypes": ["minor", "patch"],
			"matchCurrentVersion": "!/^0/",
			"automerge": true
		}
	]
};

Server Information

image.png]

  • Server platform: x86-64 (docker.io/1dev/server:latest)
  • Build runner: arm64 (docker.io/1dev/agent:latest)
  • Application Runner: Container + Podman Quadlets on both platforms

License

image_2.png

  • OneDev commented 10 months ago

    State changed as code fixing the issue is committed (3f40a25c)

  • OneDev changed state to 'Closed' 10 months ago
    Previous Value Current Value
    Open
    Closed
  • OneDev commented 10 months ago

    State changed as build OD-6030 is successful

  • OneDev changed state to 'Released' 10 months ago
    Previous Value Current Value
    Closed
    Released
issue 1/1
Type
Bug
Priority
Normal
Assignee
Affected Versions
11.7.5
Labels
No labels
Issue Votes (0)
Watchers (3)
Reference
OD-2331
Please wait...
Connection lost or session expired, reload to recover
Page is in error, reload to recover