\r\n \u003Clink rel=\"alternate icon\" type=\"image/png\" href=\"/favicons/favicon-light-default.png\" id=\"favicon-png\" />\r\n \u003Clink rel=\"icon\" type=\"image/svg+xml\" href=\"/favicons/favicon-light-default.svg\" id=\"favicon-svg\" />\r\n \u003Cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\r\n \u003Cmeta name=\"theme-color\" content=\"#65a30d\" />\r\n \u003Ctitle>Woodpecker\u003C/title>\r\n \u003Cscript type=\"\" src=\"/web-config.js\">\u003C/script>\r\n \u003Cscript type=\"module\" crossorigin src=\"/assets/index-4b7b57db.js\">\u003C/script>\r\n \u003Clink rel=\"stylesheet\" href=\"/assets/index-f123c06a.css\">\r\n \u003C/head>\r\n \u003Cbody>\r\n \u003Cdiv id=\"app\">\u003C/div>\r\n\r\n \u003C/body>\r\n\u003C/html>\r\n```\r\n\r\nThat is basically an \"empty\" page. Let's look at the response code:\r\n```\r\n$ curl -I http://localhost:8000/foo\r\nHTTP/1.1 200 OK\r\nX-Woodpecker-Version: next-45319b24\r\n# ...etc.\r\n```\r\n\r\nThat should have returned 404.\r\n\r\nNow let's request a non-existent API endpoint:\r\n```\r\n$ curl -I http://localhost:8000/api/bar\r\nHTTP/1.1 200 OK\r\nX-Woodpecker-Version: next-45319b24\r\n# ...etc.\r\n```\r\n\r\nSame thing.\r\n\r\nNow let's request a real API endpoint, for healthchecks:\r\n```\r\n$ curl http://localhost:8000/api/healthz\r\n\u003C!DOCTYPE html>\r\n\u003Chtml lang=\"en\">\r\n # ...\r\n\u003C/html>\r\n\r\n$ curl -I http://localhost:8000/api/healthz\r\nHTTP/1.1 200 OK\r\nX-Woodpecker-Version: next-45319b24\r\n# ...etc.\r\n```\r\n\r\nSame thing. Also, it should not return a page, only a REST response.\r\n\r\nClean up:\r\n```\r\n$ apk delete curl\r\n$ exit\r\n```\r\n\r\nSummary:\r\n- both existent and non-existent endpoints and pages respond with 200\r\n- that means the `/api/healthz` endpoint is not working: it's a \"proof of life\" rather than \"proof of health\"\r\n- and the health endpoint should only return a json REST response, not a page\r\n\r\n### System Info\r\n\r\n```shell\r\nversion next-45319b24-alpine\r\ndockerised\r\n```\r\n\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Validations\r\n\r\n- [X] Read the [Contributing Guidelines](https://github.com/woodpecker-ci/woodpecker/blob/master/CONTRIBUTING.md).\r\n- [X] Read the [docs](https://woodpecker-ci.org/docs/intro).\r\n- [X] Check that there isn't [already an issue](https://github.com/woodpecker-ci/woodpecker/issues) that reports the same bug to avoid creating a duplicate.\r\n- [X] Checked that the bug isn't fixed in the `next` version already [https://woodpecker-ci.org/faq#which-version-of-woodpecker-should-i-use]\r\n- [X] Check that this is a concrete bug. For Q&A join our [Discord Chat Server](https://discord.gg/fcMQqSMXJy) or the [Matrix room](https://matrix.to/#/#woodpecker:matrix.org).",[2899,2900],{"name":2877,"color":2878},{"name":2901,"color":2902},"server","5D7A92",1947,"All pages and API endpoints (including non-existent ones) return 200","2025-03-16T13:50:31Z","https://github.com/woodpecker-ci/woodpecker/issues/1947",0.7598315,{"description":2909,"labels":2910,"number":2916,"owner":2866,"repository":2867,"state":2868,"title":2917,"updated_at":2918,"url":2919,"score":2920},"### Clear and concise description of the problem\n\nThe \"Run pipeline\" button in the UI, which is triggered for `\"event: manual\"`, currently executes all existing pipeline definitions under `.woodpecker/`.\n\n### Suggested solution\n\nThe button could allow invoking specific pipelines only instead of starting all existing ones.\n\n### Alternative\n\n_No response_\n\n### Additional context\n\n_No response_\n\n### Validations\n\n- [X] Checked that the feature isn't part of the `next` version already [https://woodpecker-ci.org/faq#which-version-of-woodpecker-should-i-use]\n- [X] Read the [Contributing Guidelines](https://github.com/woodpecker-ci/woodpecker/blob/main/CONTRIBUTING.md).\n- [X] Read the [docs](https://woodpecker-ci.org/docs/intro).\n- [X] Check that there isn't already an [issue](https://github.com/woodpecker-ci/woodpecker/issues) that request the same feature to avoid creating a duplicate.",[2911,2912,2913],{"name":2901,"color":2902},{"name":2860,"color":2861},{"name":2914,"color":2915},"ux","fef2c0",2763,"Run pipeline: allow executing a single/specific pipeline if more than one pipeline definitions exist","2023-12-20T12:51:01Z","https://github.com/woodpecker-ci/woodpecker/issues/2763",0.75985533,{"description":2922,"labels":2923,"number":2928,"owner":2866,"repository":2867,"state":2868,"title":2929,"updated_at":2930,"url":2931,"score":2932},"### Component\n\nagent\n\n### Describe the bug\n\nI’ve been encountering what appears to be a memory leak issue when running Woodpecker CI on a Kubernetes cluster. After running pipelines over time, I noticed that the memory usage of the Woodpecker agents and server steadily increases, eventually leading to performance degradation and, in some cases, the need for manual intervention to prevent the system from becoming unresponsive.\r\n\n\n### Steps to reproduce\n\nDeploy Woodpecker CI in a Kubernetes environment.\r\nRun multiple pipelines continuously over an extended period.\r\nMonitor memory usage of the Woodpecker agents and server, I will attach my grafana memory usage graph.\r\nNotice that memory consumption increases over time without being released after pipeline execution.\r\n\r\n\n\n### Expected behavior\n\nMemory usage should stabilize after pipeline executions are completed, and unused memory should be reclaimed properly.\n\n### System Info\n\n```shell\nWoodpecker Version: 2.7.0\r\nKubernetes Version: v1.29.4\r\nEnvironment: Running Woodpecker on a Kubernetes cluster\r\nNumber of agents: 10\n```\n\n\n### Additional context\n\nI am using golang profiling to find something about it, this is what I could find so far: \r\n\u003Cimg width=\"1270\" alt=\"Captura de Tela 2024-10-14 às 14 03 23\" src=\"https://github.com/user-attachments/assets/5e012749-a2a0-4bc5-ba52-5e5b5691599c\">\r\n\r\n\r\nHas anyone ever faced an issue like this?\n\n### Validations\n\n- [X] Read the [docs](https://woodpecker-ci.org/docs/intro).\n- [X] Check that there isn't [already an issue](https://github.com/woodpecker-ci/woodpecker/issues) that reports the same bug to avoid creating a duplicate.\n- [X] Checked that the bug isn't fixed in the `next` version already [https://woodpecker-ci.org/faq#which-version-of-woodpecker-should-i-use]",[2924,2925],{"name":2877,"color":2878},{"name":2926,"color":2927},"agent","ECBCDF",4228,"Memory Leak using woodpecker with kubernetes ","2024-11-21T17:56:26Z","https://github.com/woodpecker-ci/woodpecker/issues/4228",0.768104,{"description":2934,"labels":2935,"number":2938,"owner":2866,"repository":2867,"state":2939,"title":2940,"updated_at":2941,"url":2942,"score":2943},"### Component\n\nweb-ui\n\n### Describe the bug\n\nopen a pipeline with its direct link, e.g. https://ci.woodpecker-ci.org/repos/3780/pipeline/11014 (or reload existing)\r\n\r\nthe \"Warnings\" tab has different positions, but it's not between workflows/configs:\r\n\r\n\r\nIt's working if opening from the list.\r\n\r\nExpected: \r\n\r\n\n\n### System Info\n\n```shell\nci.woodpecker-ci.org\n```\n\n\n### Additional context\n\n_No response_\n\n### Validations\n\n- [X] Read the [Contributing Guidelines](https://github.com/woodpecker-ci/woodpecker/blob/main/CONTRIBUTING.md).\n- [X] Read the [docs](https://woodpecker-ci.org/docs/intro).\n- [X] Check that there isn't [already an issue](https://github.com/woodpecker-ci/woodpecker/issues) that reports the same bug to avoid creating a duplicate.\n- [X] Checked that the bug isn't fixed in the `next` version already [https://woodpecker-ci.org/faq#which-version-of-woodpecker-should-i-use]\n- [X] Check that this is a concrete bug. For Q&A join our [Discord Chat Server](https://discord.gg/fcMQqSMXJy) or the [Matrix room](https://matrix.to/#/#woodpecker:matrix.org).",[2936,2937],{"name":2877,"color":2878},{"name":2857,"color":2858},3021,"closed","Opening ui directly: tabs have wrong order","2025-01-20T14:21:07Z","https://github.com/woodpecker-ci/woodpecker/issues/3021",0.7286879,{"description":2945,"labels":2946,"number":2947,"owner":2866,"repository":2867,"state":2939,"title":2948,"updated_at":2949,"url":2950,"score":2951},"### Component\n\nserver, web-ui\n\n### Describe the bug\n\nDue to various technical limitations of my situation I want to run a woodpecker-ci server behind an apache reverse-proxy server, reachable by an url like `https://example.org/foo`.\r\nI.e. the web server does *NOT* simply forward all requests, but only requests for `https://example.com/foo/*` are forwarded to `localhost:8000/*`.\r\n\r\nThe issue is now, that even if I configure `WOODPECKER_HOST=https://example.org/foo`, the `index.html` that is served still references further assets by absolute paths like `/web-config.js`, which causes the browser to request `https://example.com/web-config.js` instead of `https://example.com/foo/web-config.js`.\r\n\r\nI can successfully run Gitea behind such a reverse-proxy, so the web server is not to blame here.\r\n\n\n### System Info\n\n```shell\n{\"source\":\"https://github.com/woodpecker-ci/woodpecker\",\"version\":\"next-6d86ec7fe7\"}\n```\n\n\n### Additional context\n\nHere is an example (running on local host)\r\n\r\n\n\n### Validations\n\n- [X] Read the [Contributing Guidelines](https://github.com/woodpecker-ci/woodpecker/blob/main/CONTRIBUTING.md).\n- [X] Read the [docs](https://woodpecker-ci.org/docs/intro).\n- [X] Check that there isn't [already an issue](https://github.com/woodpecker-ci/woodpecker/issues) that reports the same bug to avoid creating a duplicate.\n- [X] Checked that the bug isn't fixed in the `next` version already [https://woodpecker-ci.org/faq#which-version-of-woodpecker-should-i-use]\n- [X] Check that this is a concrete bug. For Q&A join our [Discord Chat Server](https://discord.gg/fcMQqSMXJy) or the [Matrix room](https://matrix.to/#/#woodpecker:matrix.org).",[],2477,"Server not honoring url path component of WOODPECKER_HOST","2023-09-19T16:30:20Z","https://github.com/woodpecker-ci/woodpecker/issues/2477",0.75311667,{"description":2953,"labels":2954,"number":2956,"owner":2866,"repository":2867,"state":2939,"title":2957,"updated_at":2958,"url":2959,"score":2960},"### Clear and concise description of the problem\r\n\r\nMain problem described in #2027.\r\n\r\nAfter roll out [Unregister stateless agents from server on termination](https://github.com/woodpecker-ci/woodpecker/pull/2606), abandoned agents still present (some agents do not unregister themselve, because network issue, for example):\r\n\r\n\r\n\r\n\r\n### Suggested solution\r\n\r\n\r\nSo, this is request for cleaning [scheduled task](https://github.com/woodpecker-ci/woodpecker/issues/2027#issuecomment-1646890963). Something like Cron jobs in Gitea for maintenance activity.\r\n\r\n### Alternative\r\n\r\n_No response_\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Validations\r\n\r\n- [X] Checked that the feature isn't part of the `next` version already [https://woodpecker-ci.org/faq#which-version-of-woodpecker-should-i-use]\r\n- [X] Read the [Contributing Guidelines](https://github.com/woodpecker-ci/woodpecker/blob/main/CONTRIBUTING.md).\r\n- [X] Read the [docs](https://woodpecker-ci.org/docs/intro).\r\n- [X] Check that there isn't already an [issue](https://github.com/woodpecker-ci/woodpecker/issues) that request the same feature to avoid creating a duplicate.",[2955],{"name":2860,"color":2861},3023,"Agents cleaning","2024-03-07T21:17:21Z","https://github.com/woodpecker-ci/woodpecker/issues/3023",0.7569566,{"description":2962,"labels":2963,"number":2969,"owner":2866,"repository":2867,"state":2939,"title":2970,"updated_at":2971,"url":2972,"score":2973},"### Component\n\nagent\n\n### Describe the bug\n\nRepository has registry secret for myregistry.tld\r\nStep in workflow references myregistry.tld/path/my-plugin:latest\r\nAgent creates build pod, but references non-existing pull-secret \"regcred\":\r\n\r\n```yaml\r\napiVersion: v1\r\nkind: Pod\r\n#...\r\nspec:\r\n containers:\r\n - #...\r\n image: myregistry.tld/path/my-plugin:latest\r\n imagePullPolicy: Always\r\n name: wp-...\r\n #...\r\n imagePullSecrets:\r\n - name: regcred\r\n```\r\n\n\n### System Info\n\n```shell\ndocker.io/woodpeckerci/woodpecker-server:next (sha256:391eb21a843bf7e38bb4bfd5a529452e31733d90a494c6d3e783f8f1ac3630b3)\r\ndocker.io/woodpeckerci/woodpecker-agent:next (sha256:60a04e5b59bbec66bf5a61fc15fcbd8f4b44693602893d10e6f74270f21d2915)\r\nkubernetes 1.28.2\n```\n\n\n### Additional context\n\n_No response_\n\n### Validations\n\n- [X] Read the [Contributing Guidelines](https://github.com/woodpecker-ci/woodpecker/blob/main/CONTRIBUTING.md).\n- [X] Read the [docs](https://woodpecker-ci.org/docs/intro).\n- [X] Check that there isn't [already an issue](https://github.com/woodpecker-ci/woodpecker/issues) that reports the same bug to avoid creating a duplicate.\n- [X] Checked that the bug isn't fixed in the `next` version already [https://woodpecker-ci.org/faq#which-version-of-woodpecker-should-i-use]\n- [X] Check that this is a concrete bug. For Q&A join our [Discord Chat Server](https://discord.gg/fcMQqSMXJy) or the [Matrix room](https://matrix.to/#/#woodpecker:matrix.org).",[2964,2967],{"name":2965,"color":2966},"enhancement","7E1FE4",{"name":2968,"color":2890},"backend/kubernetes",2987,"Kubernetes backend references non-existing pull secret: regcred","2024-09-30T00:03:07Z","https://github.com/woodpecker-ci/woodpecker/issues/2987",0.75962824,["Reactive",2975],{},["Set"],["ShallowReactive",2978],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$f0U21kIFiJEUYO0Eb94No_NBmJD-Ad1Qv2gsXIbsaaS8":-1},"/woodpecker-ci/woodpecker/3558"]