diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-15 03:35:49 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-15 03:35:49 +0000 |
commit | d8bbc7858622b6d9c278469aab701ca0b609cddf (patch) | |
tree | eff41dc61d9f714852212739e6b3738b82a2af87 /taskcluster/docker | |
parent | Releasing progress-linux version 125.0.3-1~progress7.99u1. (diff) | |
download | firefox-d8bbc7858622b6d9c278469aab701ca0b609cddf.tar.xz firefox-d8bbc7858622b6d9c278469aab701ca0b609cddf.zip |
Merging upstream version 126.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'taskcluster/docker')
12 files changed, 137 insertions, 11 deletions
diff --git a/taskcluster/docker/android-components/Dockerfile b/taskcluster/docker/android-components/Dockerfile new file mode 100644 index 0000000000..be3ba58b3c --- /dev/null +++ b/taskcluster/docker/android-components/Dockerfile @@ -0,0 +1,56 @@ +FROM $DOCKER_IMAGE_PARENT +MAINTAINER Geoff Brown <gbrown@mozilla.com> + +# This is the image used for most build and test tasks related to +# android-components, focus, and fenix. + +VOLUME /builds/worker/checkouts +VOLUME /builds/worker/workspace +VOLUME /builds/worker/tooltool-cache + +ENV CURL='curl --location --retry 5' \ + GRADLE_OPTS='-Xmx4096m -Dorg.gradle.daemon=false -Dorg.gradle.parallel=false' \ + LANG='en_US.UTF-8' \ + TERM='dumb' + +# less, screen, and vim help debugging interactive tasks in taskcluster +# yaml required by some ui-test tasks +RUN apt-get update && \ + apt-get install \ + autoconf2.13 \ + build-essential \ + base-files \ + ccache \ + cmake \ + curl \ + file \ + gnupg \ + jq \ + less \ + locales \ + openjdk-17-jdk \ + openssh-client \ + procps \ + python3-dev \ + python3-pip \ + python3-yaml \ + rsync \ + screen \ + sudo \ + tar \ + unzip \ + uuid \ + valgrind \ + vim \ + x11-utils \ + xvfb \ + wget \ + zip \ + zstd + +RUN pip3 install --break-system-packages taskcluster + +RUN locale-gen "$LANG" + +# Back to the workdir, matching desktop-build. +WORKDIR /builds/worker diff --git a/taskcluster/docker/android-ui-tests/Dockerfile b/taskcluster/docker/android-ui-tests/Dockerfile new file mode 100644 index 0000000000..0a1d9a9305 --- /dev/null +++ b/taskcluster/docker/android-ui-tests/Dockerfile @@ -0,0 +1,42 @@ +ARG DOCKER_IMAGE_PARENT +FROM $DOCKER_IMAGE_PARENT + +LABEL authors="Richard Pappalardo <rpappalax@gmail.com>, Aaron Train <atrain@mozilla.com>" +LABEL maintainer="Richard Pappalardo <rpappalax@gmail.com>" + +#---------------------------------------------------------------------------------------------------------------------- +#-- Test tools -------------------------------------------------------------------------------------------------------- +#---------------------------------------------------------------------------------------------------------------------- + +RUN chown -R worker:worker ${HOME}/.config + +USER worker:worker + +ENV GOOGLE_SDK_DOWNLOAD ./gcloud.tar.gz +ENV GOOGLE_SDK_VERSION 450 + +ENV TEST_TOOLS /builds/worker/test-tools +ENV PATH ${PATH}:${TEST_TOOLS}:${TEST_TOOLS}/google-cloud-sdk/bin + +RUN mkdir -p ${TEST_TOOLS} && \ + mkdir -p ${HOME}/.config/gcloud + +RUN curl https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-${GOOGLE_SDK_VERSION}.0.0-linux-x86_64.tar.gz --output ${GOOGLE_SDK_DOWNLOAD} \ + && tar -xvf ${GOOGLE_SDK_DOWNLOAD} -C ${TEST_TOOLS} \ + && rm -f ${GOOGLE_SDK_DOWNLOAD} \ + && ${TEST_TOOLS}/google-cloud-sdk/install.sh --quiet \ + && ${TEST_TOOLS}/google-cloud-sdk/bin/gcloud --quiet components update + +# Flank v21.08.1 (pinned release) +RUN URL_FLANK_BIN="$($CURL --silent 'https://api.github.com/repos/Flank/flank/releases/48276753' | jq -r '.assets[] | select(.browser_download_url | test("flank.jar")) .browser_download_url')" \ + && $CURL --output "${TEST_TOOLS}/flank.jar" "${URL_FLANK_BIN}" \ + && chmod +x "${TEST_TOOLS}/flank.jar" + +# Used in parse-ui-test-fromfile.py +RUN pip3 install --break-system-packages junitparser beautifultable + +# Used for env var ingest in testrail.py +RUN pip3 install --break-system-packages python-dotenv + +# run-task expects to run as root +USER root diff --git a/taskcluster/docker/lint/system-setup.sh b/taskcluster/docker/lint/system-setup.sh index 33516d890a..4ac14b8d80 100644 --- a/taskcluster/docker/lint/system-setup.sh +++ b/taskcluster/docker/lint/system-setup.sh @@ -11,6 +11,7 @@ apt_packages=() apt_packages+=('curl') apt_packages+=('iproute2') apt_packages+=('locales') +apt_packages+=('m4') apt_packages+=('graphviz') apt_packages+=('python3-pip') apt_packages+=('python-is-python3') diff --git a/taskcluster/docker/periodic-updates/scripts/getHSTSPreloadList.js b/taskcluster/docker/periodic-updates/scripts/getHSTSPreloadList.js index aeaa29bc2d..b695f0dd90 100644 --- a/taskcluster/docker/periodic-updates/scripts/getHSTSPreloadList.js +++ b/taskcluster/docker/periodic-updates/scripts/getHSTSPreloadList.js @@ -160,16 +160,16 @@ function RedirectAndAuthStopper() {} RedirectAndAuthStopper.prototype = { // nsIChannelEventSink - asyncOnChannelRedirect(oldChannel, newChannel, flags, callback) { + asyncOnChannelRedirect() { throw Components.Exception("", Cr.NS_ERROR_ENTITY_CHANGED); }, // nsIAuthPrompt2 - promptAuth(channel, level, authInfo) { + promptAuth() { return false; }, - asyncPromptAuth(channel, callback, context, level, authInfo) { + asyncPromptAuth() { throw Components.Exception("", Cr.NS_ERROR_NOT_IMPLEMENTED); }, @@ -184,7 +184,7 @@ RedirectAndAuthStopper.prototype = { }; function fetchstatus(host) { - return new Promise((resolve, reject) => { + return new Promise(resolve => { let xhr = new XMLHttpRequest(); let uri = "https://" + host.name + "/"; diff --git a/taskcluster/docker/periodic-updates/scripts/periodic_file_updates.sh b/taskcluster/docker/periodic-updates/scripts/periodic_file_updates.sh index f01f5cd9c3..4ab38dd799 100755 --- a/taskcluster/docker/periodic-updates/scripts/periodic_file_updates.sh +++ b/taskcluster/docker/periodic-updates/scripts/periodic_file_updates.sh @@ -318,7 +318,13 @@ function compare_remote_settings_files { remote_records_url="$REMOTE_SETTINGS_SERVER/buckets/${bucket}/collections/${collection}/changeset?_expected=${last_modified}" local_location_output="$REMOTE_SETTINGS_OUTPUT/${bucket}/${collection}.json" mkdir -p "$REMOTE_SETTINGS_OUTPUT/${bucket}" - ${WGET} -qO- "$remote_records_url" | ${JQ} '{"data": .changes, "timestamp": .timestamp}' > "${local_location_output}" + # We sort both the keys and the records in search-config-v2 to make it + # easier to read and to experiment with making changes via the dump file. + if [ "${collection}" = "search-config-v2" ]; then + ${WGET} -qO- "$remote_records_url" | ${JQ} --sort-keys '{"data": .changes | sort_by(.recordType, .identifier), "timestamp": .timestamp}' > "${local_location_output}" + else + ${WGET} -qO- "$remote_records_url" | ${JQ} '{"data": .changes, "timestamp": .timestamp}' > "${local_location_output}" + fi # 5. Download attachments if needed. if [ "${bucket}" = "blocklists" ] && [ "${collection}" = "addons-bloomfilters" ]; then @@ -415,10 +421,10 @@ function compare_mobile_experiments() { ( ${DIFF} fenix-experiments-old.json fenix-experiments-new.json; ${DIFF} focus-experiments-old.json focus-experiments-new.json ) > "${EXPERIMENTER_DIFF_ARTIFACT}" if [ -s "${EXPERIMENTER_DIFF_ARTIFACT}" ]; then + return 0 + else # no change return 1 - else - return 0 fi } diff --git a/taskcluster/docker/snap-coreXX-build/snap-tests/basic_tests.py b/taskcluster/docker/snap-coreXX-build/snap-tests/basic_tests.py index 87320d5638..e567c9c2e9 100644 --- a/taskcluster/docker/snap-coreXX-build/snap-tests/basic_tests.py +++ b/taskcluster/docker/snap-coreXX-build/snap-tests/basic_tests.py @@ -373,6 +373,9 @@ class SnapTests(SnapTestsBase): return rv def test_youtube_film(self, exp): + # Bug 1885473: require sign-in? + return True + self.open_tab("https://www.youtube.com/watch?v=i4FSx9LXVSE") if not self.wait_for_enable_drm(): self._logger.info("Skipped on ESR because cannot enable DRM") diff --git a/taskcluster/docker/snap-coreXX-build/snap-tests/qa_tests.py b/taskcluster/docker/snap-coreXX-build/snap-tests/qa_tests.py index 7788dabe34..4c843b31d5 100644 --- a/taskcluster/docker/snap-coreXX-build/snap-tests/qa_tests.py +++ b/taskcluster/docker/snap-coreXX-build/snap-tests/qa_tests.py @@ -466,7 +466,21 @@ class QATests(SnapTestsBase): ) action.drag_and_drop_by_offset(paragraph, 50, 10).perform() time.sleep(0.75) - self.assert_rendering(exp["select_text"], self._driver) + try: + ref_screen_source = "select_text_with_highlight" + self._wait.until( + EC.visibility_of_element_located( + (By.CSS_SELECTOR, "button.highlightButton") + ) + ) + except TimeoutException: + ref_screen_source = "select_text_without_highlight" + self._logger.info( + "Wait for pdf highlight button: timed out, maybe it is not there" + ) + finally: + time.sleep(0.75) + self.assert_rendering(exp[ref_screen_source], self._driver) # release select selection action.move_by_offset(0, 150).perform() diff --git a/taskcluster/docker/snap-coreXX-build/snap-tests/qa_tests/qa_expectations.json b/taskcluster/docker/snap-coreXX-build/snap-tests/qa_tests/qa_expectations.json index f9806ffa90..32f74a1025 100644 --- a/taskcluster/docker/snap-coreXX-build/snap-tests/qa_tests/qa_expectations.json +++ b/taskcluster/docker/snap-coreXX-build/snap-tests/qa_tests/qa_expectations.json @@ -56,8 +56,11 @@ "documentProperties": { "reference": "test_pdf_navigation_documentProperties.png" }, - "select_text": { - "reference": "test_pdf_navigation_select_text.png" + "select_text_with_highlight": { + "reference": "test_pdf_navigation_select_text_with_highlight.png" + }, + "select_text_without_highlight": { + "reference": "test_pdf_navigation_select_text_without_highlight.png" }, "hand_tool": { "reference": "test_pdf_navigation_hand_tool.png" diff --git a/taskcluster/docker/snap-coreXX-build/snap-tests/qa_tests/test_pdf_navigation_select_text_with_highlight.png b/taskcluster/docker/snap-coreXX-build/snap-tests/qa_tests/test_pdf_navigation_select_text_with_highlight.png Binary files differnew file mode 100644 index 0000000000..9e2e7458a6 --- /dev/null +++ b/taskcluster/docker/snap-coreXX-build/snap-tests/qa_tests/test_pdf_navigation_select_text_with_highlight.png diff --git a/taskcluster/docker/snap-coreXX-build/snap-tests/qa_tests/test_pdf_navigation_select_text.png b/taskcluster/docker/snap-coreXX-build/snap-tests/qa_tests/test_pdf_navigation_select_text_without_highlight.png Binary files differindex 0e24a1ac74..0e24a1ac74 100644 --- a/taskcluster/docker/snap-coreXX-build/snap-tests/qa_tests/test_pdf_navigation_select_text.png +++ b/taskcluster/docker/snap-coreXX-build/snap-tests/qa_tests/test_pdf_navigation_select_text_without_highlight.png diff --git a/taskcluster/docker/updatebot/run.py b/taskcluster/docker/updatebot/run.py index ce27de1a22..5cfb1cb3a0 100755 --- a/taskcluster/docker/updatebot/run.py +++ b/taskcluster/docker/updatebot/run.py @@ -192,6 +192,7 @@ localconfig = { "General": { "env": OPERATING_MODE, "gecko-path": GECKO_DEV_PATH, + "soft_timeout": 3600, }, "Logging": { "local": True, diff --git a/taskcluster/docker/updatebot/updatebot-version.sh b/taskcluster/docker/updatebot/updatebot-version.sh index ff210045e1..ea788dd130 100644 --- a/taskcluster/docker/updatebot/updatebot-version.sh +++ b/taskcluster/docker/updatebot/updatebot-version.sh @@ -1,2 +1,2 @@ -export UPDATEBOT_REVISION=78a8ed3b827b7527fa0a4621b138a0c81f80cc87 +export UPDATEBOT_REVISION=5cf21801808c95a3948916fd03f1001d964d796a |