adoptium / aqa-tests

Home of test infrastructure for Adoptium builds
https://adoptium.net/aqavit
Apache License 2.0
125 stars 304 forks source link

Link to "Rerun in Grinder" doesn't work as expected #5299

Open keithc-ca opened 1 month ago

keithc-ca commented 1 month ago

For example, in https://openj9-jenkins.osuosl.org/job/Test_openjdk8_j9_sanity.functional_s390x_linux_Personal_testList_1/302/console you'll see:

17:31:16  Rerun in Grinder: https://openj9-jenkins.osuosl.org/job/Grinder/parambuild/?SDK_RESOURCE=customized&TARGET=-f+parallelList.mk+testList_1&BASE_DOCKER_REGISTRY_CREDENTIAL_ID=&TEST_FLAG=&UPSTREAM_TEST_JOB_NAME=Test_openjdk8_j9_sanity.functional_s390x_linux_Personal&DOCKER_REQUIRED=false&ACTIVE_NODE_TIMEOUT=&VENDOR_TEST_DIRS=&EXTRA_DOCKER_ARGS=&TKG_OWNER_BRANCH=adoptium%3Amaster&OPENJ9_SYSTEMTEST_OWNER_BRANCH=eclipse%3Amaster&PLATFORM=s390x_linux&GENERATE_JOBS=true&KEEP_REPORTDIR=false&PERSONAL_BUILD=false&DOCKER_REGISTRY_DIR=&ADOPTOPENJDK_REPO=https%3A%2F%2Fgithub.com%2Fadoptium%2Faqa-tests.git&RERUN_ITERATIONS=0&SETUP_JCK_RUN=false&DOCKER_REGISTRY_URL_CREDENTIAL_ID=&LABEL=&EXTRA_OPTIONS=&BUILD_IDENTIFIER=ibmruntimes%2Fopenj9-openjdk-jdk8%23752&CUSTOMIZED_SDK_URL=https%3A%2F%2Fopenj9-artifactory.osuosl.org%2Fartifactory%2Fci-openj9%2FBuild_JDK8_s390x_linux_Personal%2F738%2FOpenJ9-JDK8-s390x_linux-20240508-165446.tar.gz+https%3A%2F%2Fopenj9-artifactory.osuosl.org%2Fartifactory%2Fci-openj9%2FBuild_JDK8_s390x_linux_Personal%2F738%2Ftest-images.tar.gz&JENKINS_KEY=&ADOPTOPENJDK_BRANCH=master&LIGHT_WEIGHT_CHECKOUT=false&USE_JRE=false&ARTIFACTORY_SERVER=ci-eclipse-openj9&KEEP_WORKSPACE=false&USER_CREDENTIALS_ID=&JDK_VERSION=8&DOCKER_REGISTRY_URL=&ITERATIONS=1&VENDOR_TEST_REPOS=&JDK_REPO=https%3A%2F%2Fgithub.com%2Fibmruntimes%2Fopenj9-openjdk-jdk8.git&JCK_GIT_BRANCH=master&OPENJ9_BRANCH=master&OPENJ9_SHA=9eb718e0bc98098858f1181d7591255ab9385096&JCK_GIT_REPO=&VENDOR_TEST_BRANCHES=&OPENJ9_REPO=https%3A%2F%2Fgithub.com%2Feclipse-openj9%2Fopenj9.git&UPSTREAM_JOB_NAME=&CLOUD_PROVIDER=&CUSTOM_TARGET=&VENDOR_TEST_SHAS=&JDK_BRANCH=openj9&LABEL_ADDITION=&ARTIFACTORY_REPO=ci-openj9&ARTIFACTORY_ROOT_DIR=Test&UPSTREAM_TEST_JOB_NUMBER=312&DOCKERIMAGE_TAG=&JDK_IMPL=openj9&TEST_TIME=&SSH_AGENT_CREDENTIAL=&AUTO_DETECT=true&SLACK_CHANNEL=&DYNAMIC_COMPILE=true&RELATED_NODES=&ADOPTOPENJDK_SYSTEMTEST_OWNER_BRANCH=adoptium%3Amaster&APPLICATION_OPTIONS=&CUSTOMIZED_SDK_URL_CREDENTIAL_ID=e047f50a-26c4-4b82-8525-6da17ec68450&ARCHIVE_TEST_RESULTS=false&NUM_MACHINES=&OPENJDK_SHA=&TRSS_URL=&USE_TESTENV_PROPERTIES=false&BUILD_LIST=functional&ADDITIONAL_ARTIFACTS_REQUIRED=&UPSTREAM_JOB_NUMBER=&STF_OWNER_BRANCH=adoptium%3Amaster&TIME_LIMIT=10&JVM_OPTIONS=&PARALLEL=None

Following that link leads to the page to launch a grinder, but (at least) some of the parameters are ignored. The URL above says PLATFORM=s390x_linux, but the PLATFORM field contains x86-64_linux. I couldn't find any parameters that appeared to be taken from the "rerun in grinder" link.

Do I misunderstand the intent of specifying all those parameters in the URL?

keithc-ca commented 1 month ago

https://github.com/adoptium/aqa-tests/wiki/How-to-Run-a-Grinder-Build-on-Jenkins says

link opens a Grinder with pre-populated parameters, but it sets the TARGET as the entire target used by the job (example, TARGET=sanity.openjdk)

However, it's not working like that.

llxia commented 1 month ago

Please use the Rerun in Grinder link in the job description (not in the console):

https://openj9-jenkins.osuosl.org/job/Test_openjdk8_j9_sanity.functional_s390x_linux_Personal_testList_1/302/

image

Rerun in Grinder link in the job console may have URL-encoded issues. We will remove it in the future to avoid confusion.

llxia commented 1 month ago

Ideally, we can remove the following 4 lines: https://github.com/adoptium/aqa-tests/blob/83bec274a10eb52ac812af2acc50bb3ec4bc4673/buildenv/jenkins/JenkinsfileBase#L1201 https://github.com/adoptium/aqa-tests/blob/83bec274a10eb52ac812af2acc50bb3ec4bc4673/buildenv/jenkins/JenkinsfileBase#L1204 https://github.com/adoptium/aqa-tests/blob/83bec274a10eb52ac812af2acc50bb3ec4bc4673/buildenv/jenkins/JenkinsfileBase#L1257 https://github.com/adoptium/aqa-tests/blob/83bec274a10eb52ac812af2acc50bb3ec4bc4673/buildenv/jenkins/JenkinsfileBase#L1280

However, TRSS uses this info to generate Rerun in Grinder link: https://github.com/adoptium/aqa-test-tools/blob/798b7eda49165dd5cb2bc590a889f4b5721af1b6/TestResultSummaryService/parsers/Parser.js#L78

For now, we can remove the last 3 lines.

keithc-ca commented 1 month ago

Thank you, @llxia.

keithc-ca commented 1 month ago

At least in this case, if we instead echoed url.replaceAll("&", "&") we would have a usable URL.

tpbui commented 3 weeks ago

I would like to work on this one. Sorry for the delay. Thank you!