-
Bug
-
Resolution: Unresolved
-
Blocker
-
None
-
Jenkins Version 2.462.3
Browser Chrome version 131.0.6778.69
HTML Publisher plugin Version 1.37
-
Powered by SuggestiMate
It looks like a Jenkins update with the HTML plugin update broke the plugin.
Report names are correctly visible but they are empty
Report names were previously listed as shown in
[JENKINS-74902] HTML Reports empty: Only report names visible but the html is empty v1.37.0
Thanks for the quick response, Jenkins update was 2.452.2 -> 2.462.3. Here is a snippet of ours which always worked before the update:
def html_files = [device_type + '-report.html', device_type + '-testautomation-link.html']
publishHTML target: [
allowMissing: false,
alwaysLinkToLastBuild: false,
keepAll: true,
reportDir: '.',
reportFiles: html_files.join(', '),
reportName: device_type + '-TestReport' + test_verdict
]
test_verdict and device_type comes from a definition above which is not visible in the snippet so please ignore this
Also a very plain implementation( See below ) shows the same:
publishHTML target: [
allowMissing: false,
alwaysLinkToLastBuild: false,
keepAll: true,
reportDir: '.',
reportFiles: report.html
reportName: TestReport
]
Tried also with useWrapperFileDirectly: true and no luck..
Cant downgrade it as its not an option as its greyed out in the Jenkins plugin overview
From the "Advanced settings" tab of the plugin manager, paste this hyperlink into the "URL' field to try 1.36 : https://updates.jenkins.io/download/plugins/htmlpublisher/1.36/htmlpublisher.hpi
I installed 2.452.4 and ran my sample Pipeline job and don't see any extra items on the dropdown menu for the individual builds. I see "A+B HTML Report" (my title) but none of the HTML files.
Is this recommended? I mean why would it be greyed out if a downgrade was an option? the release 1.37 Requires Jenkins 2.440.3 so thought this should be offered.
Yes, it is safe. Recommended is too strong, since it assumes that you know the plugin you're adding will work. I know it will work.
The "downgrade" button is only offered from the plugin manager if it detects a local copy of the previous plugin. In this case, I know that 1.36 works with your version of Jenkins, since I've been testing with that version.
Downgrading works. Thanks a lot. Hopefully will be fixed upstream soon.
Thanks for checking. I think that means you've confirmed that:
- Jenkins 2.462.3 with htmlpublisher 1.37 does not show links to the individual HTML results pages on the dropdown menu from the build history
- Jenkins 2.462.3 with htmlpublisher 1.36 shows links to the individual HTML results pages on the dropdown menu from the build history
- Jenkins 2.452.2 with htmlpublisher 1.36 shows links to the individual HTML results pages on the dropdown menu from the build history
Are those three items correct?
Assuming they are correct, then it seems that the change happened in htmlpublisher 1.37. Unfortunately, I still can't show links to the individual HTML results pages on the dropdown menu from the build history with htmlpublisher 1.36 using either Jenkins 2.452.4 or Jenkins 2.462.3. A fix is unlikely unless a plugin maintainer can duplicate the issue.
Can you provide the detailed list of plugins that are installed using the plugin version reporting script in the Jenkins script console ("Manage Jenkins" -> "Script Console"). If that is not enough, then you may need to include the config.xml from the JENKINS_HOME directory and the full Pipeline script that is used to generate that list.
I can confirm your assumptions.
Here is the plugin list
Jenkins: 2.462.3
OS: Linux - 4.18.0-553.22.1.el8_10.x86_64
Java: 17.0.12 - Eclipse Adoptium (OpenJDK 64-Bit Server VM)
—
NegotiateSSO:105.vf0d0de2a_b_8a_5
Parameterized-Remote-Trigger:3.2.0
PrioritySorter:5.2.0
active-directory:2.38
analysis-model-api:12.9.1
ansicolor:1.0.5
ant:511.v0a_a_1a_334f41b_
antisamy-markup-formatter:162.v0e6ec0fcfcf6
apache-httpcomponents-client-4-api:4.5.14-208.v438351942757
apache-httpcomponents-client-5-api:5.4-124.v31e2987e48f4
artifactory:4.0.8
asm-api:9.7.1-97.v4cc844130d97
authentication-tokens:1.119.v50285141b_7e1
blueocean:1.27.16
blueocean-autofavorite:1.2.5
blueocean-bitbucket-pipeline:1.27.16
blueocean-commons:1.27.16
blueocean-config:1.27.16
blueocean-core-js:1.27.16
blueocean-dashboard:1.27.16
blueocean-display-url:2.4.3
blueocean-events:1.27.16
blueocean-git-pipeline:1.27.16
blueocean-github-pipeline:1.27.16
blueocean-i18n:1.27.16
blueocean-jira:1.27.16
blueocean-jwt:1.27.16
blueocean-personalization:1.27.16
blueocean-pipeline-api-impl:1.27.16
blueocean-pipeline-editor:1.27.16
blueocean-pipeline-scm-api:1.27.16
blueocean-rest:1.27.16
blueocean-rest-impl:1.27.16
blueocean-web:1.27.16
bootstrap5-api:5.3.3-1
bouncycastle-api:2.30.1.78.1-248.ve27176eb_46cb_
branch-api:2.1200.v4b_a_3da_2eb_db_4
build-history-metrics-plugin:116.v1d3fee4e91d9
build-name-setter:2.4.3
build-pipeline-plugin:2.0.2
build-timeout:1.33
build-user-vars-plugin:176.vb_9c7907fd524
caffeine-api:3.1.8-133.v17b_1ff2e0599
checks-api:2.2.1
clearcase:1.6.8
cloudbees-bitbucket-branch-source:912.v3b_f74026941c
cloudbees-folder:6.955.v81e2a_35c08d3
code-coverage-api:4.99.0
command-launcher:116.vd85919c54a_d6
commons-compress-api:1.26.1-2
commons-lang3-api:3.17.0-84.vb_b_938040b_078
commons-math3-api:3.6.1-18.v9d7081dffa_f5
commons-text-api:1.12.0-129.v99a_50df237f7
conditional-buildstep:1.4.3
config-file-provider:980.v88956a_a_5d6a_d
copyartifact:757.v05365583a_455
coverage:1.16.1
credentials:1384.vf0a_2ed06f9c6
credentials-binding:681.vf91669a_32e45
cvs:469.v57a_96d4f6886
data-tables-api:2.1.8-1
delivery-pipeline-plugin:1.4.2
display-url-api:2.204.vf6fddd8a_8b_e9
docker-build-publish:1.4.0
docker-commons:445.v6b_646c962a_94
docker-workflow:580.vc0c340686b_54
dos-trigger:1.23
durable-task:577.v2a_8a_4b_7c0247
echarts-api:5.5.1-4
eddsa-api:0.3.0-4.v84c6f0f4969e
email-ext:1849.v6dd03b_f6e423
extended-choice-parameter:382.v5697b_32134e8
extended-read-permission:53.v6499940139e5
external-monitor-job:215.v2e88e894db_f8
favorite:2.221.v19ca_666b_62f5
font-awesome-api:6.6.0-2
forensics-api:2.6.0
git:5.5.2
git-client:5.0.0
git-parameter:0.10.0
git-server:126.v0d945d8d2b_39
github:1.40.0
github-api:1.321-468.v6a_9f5f2d5a_7e
github-branch-source:1807.v50351eb_7dd13
gitlab-api:5.6.0-97.v6603a_83f8690
gitlab-branch-source:714.v45a_1ef5eb_247
gitlab-plugin:1.8.2
gradle:2.13.1
groovy:457.v99900cb_85593
gson-api:2.11.0-85.v1f4e87273c33
handy-uri-templates-2-api:2.1.8-30.v7e777411b_148
htmlpublisher:1.36
http_request:1.19
instance-identity:201.vd2a_b_5a_468a_a_6
ionicons-api:74.v93d5eb_813d5f
jackson2-api:2.17.0-379.v02de8ec9f64c
jakarta-activation-api:2.1.3-1
jakarta-mail-api:2.1.3-1
javadoc:280.v050b_5c849f69
javax-activation-api:1.2.0-7
javax-mail-api:1.6.2-10
jaxb:2.3.9-1
jdk-tool:80.v8a_dee33ed6f0
jenkins-design-language:1.27.16
jersey2-api:2.44-151.v6df377fff741
jira:3.13
jjwt-api:0.11.5-112.ve82dfb_224b_a_d
jobConfigHistory:1283.veb_dfb_00b_5ec0
joda-time-api:2.13.0-93.v9934da_29b_a_e9
jquery:1.12.4-3
jquery3-api:3.7.1-2
jsch:0.2.16-86.v42e010d9484b_
json-api:20240303-101.v7a_8666713110
json-path-api:2.9.0-118.v7f23ed82a_8b_8
junit:1309.v0078b_fecd6ed
last-changes:2.7.11
ldap:725.v3cb_b_711b_1a_ef
locale:546.v1609030511ca_
lockable-resources:1327.ved786b_a_197e0
log-parser:2.3.5
mailer:488.v0c9639c1a_eb_3
mapdb-api:1.0.9-40.v58107308b_7a_7
mask-passwords:173.v6a_077a_291eb_5
matrix-auth:3.2.3
matrix-project:839.vff91cd7e3a_b_2
maven-plugin:3.24
mercurial:1260.vdfb_723cdcc81
metrics:4.2.21-458.vcf496cb_839e4
mina-sshd-api-common:2.14.0-133.vcc091215a_358
mina-sshd-api-core:2.14.0-133.vcc091215a_358
next-executions:392.v1d10c1b_5926f
nodelabelparameter:1.13.0
okhttp-api:4.11.0-172.vda_da_1feeb_c6e
pam-auth:1.11
parameterized-trigger:806.vf6fff3e28c3e
pipeline-build-step:540.vb_e8849e1a_b_d8
pipeline-github-lib:61.v629f2cc41d83
pipeline-graph-analysis:216.vfd8b_ece330ca_
pipeline-graph-view:340.v28cecee8b_25f
pipeline-groovy-lib:744.v5b_556ee7c253
pipeline-input-step:495.ve9c153f6067b_
pipeline-milestone-step:119.vdfdc43fc3b_9a_
pipeline-model-api:2.2218.v56d0cda_37c72
pipeline-model-definition:2.2218.v56d0cda_37c72
pipeline-model-extensions:2.2218.v56d0cda_37c72
pipeline-rest-api:2.34
pipeline-stage-step:312.v8cd10304c27a_
pipeline-stage-tags-metadata:2.2218.v56d0cda_37c72
pipeline-stage-view:2.34
pipeline-utility-steps:2.18.0
plain-credentials:183.va_de8f1dd5a_2b_
plot:2.1.12
plugin-util-api:5.1.0
prism-api:1.29.0-18
prometheus:795.v995762102f28
pubsub-light:1.18
pyenv-pipeline:2.1.2
rebuild:332.va_1ee476d8f6d
resource-disposer:0.24
role-strategy:743.v142ea_b_d5f1d3
run-condition:1.7
saml:4.464.vea_cb_75d7f5e0
scm-api:696.v778d637b_a_762
script-security:1369.v9b_98a_4e95b_2d
scriptler:376.v152edd95b_ca_f
simple-theme-plugin:196.v96d9592f4efa_
slave-setup:1.16
snakeyaml-api:2.3-123.v13484c65210a_
sse-gateway:1.27
ssh-credentials:343.v884f71d78167
ssh-slaves:2.973.v0fa_8c0dea_f9f
sshd:3.330.vc866a_8389b_58
startup-trigger-plugin:2.9.4
structs:338.v848422169819
subversion:1281.vc8837f91a_07a_
swarm:3.47
teamconcert:2.4.4
test-results-analyzer:0.4.1
timestamper:1.27
token-macro:400.v35420b_922dcb_
trilead-api:2.147.vb_73cc728a_32e
uno-choice:2.8.4
variant:60.v7290fc0eb_b_cd
warnings-ng:11.11.0
workflow-aggregator:600.vb_57cdd26fdd7
workflow-api:1336.vee415d95c521
workflow-basic-steps:1058.vcb_fc1e3a_21a_9
workflow-cps:3993.v3e20a_37282f8
workflow-durable-task-step:1378.v6a_3e903058a_3
workflow-job:1436.vfa_244484591f
workflow-multibranch:795.ve0cb_1f45ca_9a_
workflow-scm-step:427.v4ca_6512e7df1
workflow-step-api:678.v3ee58b_469476
workflow-support:932.vb_555de1b_a_b_94
ws-cleanup:0.47
The report isn't clear to me. I see Mark mentions lack of links to HTML reports in dropdown menu in build history. But the screenshot in the description of the issue is from a regular side panel, no dropdowns involved. And then there's a screenshot of an empty HTML report. I'm not sure how to start and what exactly to look at given these bits.
ravishan Can you please provide steps to reproduce the problem from scratch on a clean Jenkins installation?
If it can help I seem to have the same issue.
There Is a JS error when loading the repport:
htmlpublisher.js:2 Uncaught TypeError: Cannot read properties of null (reading 'setAttribute') at updateBody (htmlpublisher.js:2:39) at init (htmlpublisher.js:10:3) at htmlpublisher.js:16:3
Thanks enys. Has this been reproduced from scratch on your instance or did it just happen randomly? I'd gladly look into this and fix if I have steps that I can follow.
yafenkin this happened post upgrade of Jenkins, with the update of the plugin from 1.36 to 1.37. I'm going to ask my team to reproduce.
We use docker images with plugins.txt file so should be pretty straight forward.
yafenkin I believe I have pinned down the functional use case.
Given a html report folder, with an index.html at the top level no issue.
With a report with no index.html at the top level, but data in sub-folders, triggers the bug.
Reproducible with a sh step:
rm -rf toto mkdir -p toto/titi mkdir -p toto/tita curl -v https://google.com > toto/titi/index.html curl -v https://google.com > toto/tita/index.html
and then having html report point to `toto`
Be it 1.36 or 1.37 this use case provides the js error.
Since 1.37, the "zip" button no longer works any more.
Thanks enys, I've followed the steps and managed to get the same error.
If data is in subfolders then in the "Index page[s]" field you can provide a list of paths that point to the index.html pages that you'd like to see in the report. I.e. for the example you provided I've set the field value to
titi\index.html, tita\index.html
and reports are rendered properly.
yafenkin I thought that was the role of the glob pattern '*/' ?
In my case, the subfolders are hashes provided by running e2e tests via codecept, not know in advance.
Is there any fix for the same, as its a blocker for us and the reports are not getting generated. Also, for me “Zip” is getting blank.
abhi_jain1911 can you confirm that 1.36.0 does not have an issue for you?
Please provide enough details so that others can duplicate the issue from a fresh Jenkins installation. How to report an issue provides helpful scripts and a list of items to include.
Please report the last version of Jenkins core that behaved the way that you expect.
I'm unable to find any configuration option that places individual reports in the same list that includes the link to the reports. I've created a Pipeline job like this:
That creates an "A+B HTML Report" link and that link includes the expected two pages at the top level.
I've created a freestyle project that includes the following shell script :
That freestyle project is configured to publish two pages, a1 and b1. I've confirmed that the navigation works as expected within those pages and I can click the C1 link and the D1 link to navigate to the nested pages.