Started by upstream project "Trigger" build number 211 originally caused by: Started by timer Running as SYSTEM Building remotely on testintegration (swarm rocky9 ice36 java11) in workspace /home/omero/workspace/OMERO-push The recommended git tool is: NONE No credentials specified > git rev-parse --resolve-git-dir /home/omero/workspace/OMERO-push/src/.git # timeout=10 Fetching changes from the remote Git repository > git config remote.origin.url https://github.com/ome/openmicroscopy.git # timeout=10 Fetching upstream changes from https://github.com/ome/openmicroscopy.git > git --version # timeout=10 > git --version # 'git version 2.39.3' > git fetch --tags --force --progress -- https://github.com/ome/openmicroscopy.git +refs/heads/*:refs/remotes/origin/* # timeout=30 > git rev-parse origin/develop^{commit} # timeout=10 Checking out Revision e9fe27633007773042c840e356c5ff37ec03f550 (origin/develop) > git config core.sparsecheckout # timeout=10 > git checkout -f e9fe27633007773042c840e356c5ff37ec03f550 # timeout=30 Commit message: "Merge pull request #6407 from will-moore/history_5.6.13" > git rev-list --no-walk e9fe27633007773042c840e356c5ff37ec03f550 # timeout=10 Cleaning workspace > git rev-parse --verify HEAD # timeout=10 Resetting working tree > git reset --hard # timeout=10 > git clean -fdx # timeout=10 Copied 1 artifact from "OMERO-python-superbuild-build" build number 174 [OMERO-push] $ /bin/bash -xe /tmp/jenkins5584225558607867035.sh + python3 -mvenv venv + source /home/omero/workspace/OMERO-push/venv/bin/activate ++ deactivate nondestructive ++ '[' -n '' ']' ++ '[' -n '' ']' ++ '[' -n /bin/bash -o -n '' ']' ++ hash -r ++ '[' -n '' ']' ++ unset VIRTUAL_ENV ++ '[' '!' nondestructive = nondestructive ']' ++ VIRTUAL_ENV=/home/omero/workspace/OMERO-push/venv ++ export VIRTUAL_ENV ++ _OLD_VIRTUAL_PATH=/opt/ice-3.6.5/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin ++ PATH=/home/omero/workspace/OMERO-push/venv/bin:/opt/ice-3.6.5/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin ++ export PATH ++ '[' -n '' ']' ++ '[' -z '' ']' ++ _OLD_VIRTUAL_PS1= ++ PS1='(venv) ' ++ export PS1 ++ '[' -n /bin/bash -o -n '' ']' ++ hash -r + pip install -U pip Requirement already satisfied: pip in ./venv/lib/python3.9/site-packages (24.2) + pip install -U scc Requirement already satisfied: scc in ./venv/lib/python3.9/site-packages (0.20.0) Requirement already satisfied: PyGithub>=1.54 in ./venv/lib/python3.9/site-packages (from scc) (2.2.0) Requirement already satisfied: PyYAML>=5.1 in ./venv/lib/python3.9/site-packages (from scc) (6.0.1) Requirement already satisfied: future in ./venv/lib/python3.9/site-packages (from scc) (1.0.0) Requirement already satisfied: ruamel.yaml in ./venv/lib/python3.9/site-packages (from scc) (0.18.6) Requirement already satisfied: ruamel.yaml.jinja2 in ./venv/lib/python3.9/site-packages (from scc) (0.2.7) Requirement already satisfied: six in ./venv/lib/python3.9/site-packages (from scc) (1.16.0) Requirement already satisfied: urllib3<2 in ./venv/lib/python3.9/site-packages (from scc) (1.26.18) Requirement already satisfied: yaclifw<0.3,>=0.2.0 in ./venv/lib/python3.9/site-packages (from scc) (0.2.0) Requirement already satisfied: pynacl>=1.4.0 in ./venv/lib/python3.9/site-packages (from PyGithub>=1.54->scc) (1.5.0) Requirement already satisfied: requests>=2.14.0 in ./venv/lib/python3.9/site-packages (from PyGithub>=1.54->scc) (2.31.0) Requirement already satisfied: pyjwt>=2.4.0 in ./venv/lib/python3.9/site-packages (from pyjwt[crypto]>=2.4.0->PyGithub>=1.54->scc) (2.8.0) Requirement already satisfied: typing-extensions>=4.0.0 in ./venv/lib/python3.9/site-packages (from PyGithub>=1.54->scc) (4.10.0) Requirement already satisfied: Deprecated in ./venv/lib/python3.9/site-packages (from PyGithub>=1.54->scc) (1.2.14) Requirement already satisfied: ruamel.yaml.clib>=0.2.7 in ./venv/lib/python3.9/site-packages (from ruamel.yaml->scc) (0.2.8) Requirement already satisfied: cryptography>=3.4.0 in ./venv/lib/python3.9/site-packages (from pyjwt[crypto]>=2.4.0->PyGithub>=1.54->scc) (42.0.5) Requirement already satisfied: cffi>=1.4.1 in ./venv/lib/python3.9/site-packages (from pynacl>=1.4.0->PyGithub>=1.54->scc) (1.16.0) Requirement already satisfied: charset-normalizer<4,>=2 in ./venv/lib/python3.9/site-packages (from requests>=2.14.0->PyGithub>=1.54->scc) (3.3.2) Requirement already satisfied: idna<4,>=2.5 in ./venv/lib/python3.9/site-packages (from requests>=2.14.0->PyGithub>=1.54->scc) (3.6) Requirement already satisfied: certifi>=2017.4.17 in ./venv/lib/python3.9/site-packages (from requests>=2.14.0->PyGithub>=1.54->scc) (2024.2.2) Requirement already satisfied: wrapt<2,>=1.10 in ./venv/lib/python3.9/site-packages (from Deprecated->PyGithub>=1.54->scc) (1.16.0) Requirement already satisfied: pycparser in ./venv/lib/python3.9/site-packages (from cffi>=1.4.1->pynacl>=1.4.0->PyGithub>=1.54->scc) (2.21) + test -e src + cd src ++ git config github.user + user=snoopycrimecop + scc merge develop --no-ask --reset --shallow -S success-only 2024-09-15 00:51:07,712 [ scc.merge] INFO Merging Pull Request(s) based on develop 2024-09-15 00:51:07,713 [ scc.merge] INFO Including Pull Request(s) opened by any public member of the organization 2024-09-15 00:51:07,713 [ scc.merge] INFO Including Pull Request(s) labelled as include or dependencies 2024-09-15 00:51:07,713 [ scc.merge] INFO Excluding Pull Request(s) staged as draft 2024-09-15 00:51:07,713 [ scc.merge] INFO Excluding Pull Request(s) labelled as exclude or breaking 2024-09-15 00:51:07,713 [ scc.merge] INFO Excluding Pull Request(s) without successful status 2024-09-15 00:51:34,842 [ scc.merge] INFO Repository: ome/openmicroscopy 2024-09-15 00:51:34,843 [ scc.merge] INFO Excluded PRs: 2024-09-15 00:51:34,843 [ scc.merge] INFO - PR 6398 Tom-TBT 'Perceptibly uniform luts' (user: Tom-TBT) 2024-09-15 00:51:34,843 [ scc.merge] INFO - PR 6319 dominikl 'Add integration test for joining session' (exclude comment) 2024-09-15 00:51:34,843 [ scc.merge] INFO - PR 6212 jburel 'add test to import images' (exclude comment) 2024-09-15 00:51:34,843 [ scc.merge] INFO - PR 6086 manics 'Alternative JSON configuration system for OMERO.web' (label: exclude) 2024-09-15 00:51:34,843 [ scc.merge] INFO Already up to date. 2024-09-15 00:51:34,843 [ scc.merge] INFO 2024-09-15 00:51:34,843 [ scc.merge] INFO Merged PRs: 2024-09-15 00:51:34,843 [ scc.merge] INFO - PR 6309 jburel 'add try block' 2024-09-15 00:51:34,843 [ scc.merge] INFO - PR 6353 jburel 'remove dependencies' 2024-09-15 00:51:34,843 [ scc.merge] INFO - PR 6385 jburel 'remove test using deprecated method' 2024-09-15 00:51:34,843 [ scc.merge] INFO - PR 6409 sbesson 'Bump jul-to-slf4j and jcl-over-slf4j to version 2.0.16' 2024-09-15 00:51:34,843 [ scc.merge] INFO - PR 6410 snoopycrimecop 'update dependencies' 2024-09-15 00:51:34,843 [ scc.merge] INFO - PR 6411 knabar 'Check query without matches' 2024-09-15 00:51:34,843 [ scc.merge] INFO + cp etc/omero.properties etc/omero.properties.bak + rm etc/omero.properties + touch etc/omero.properties ++ sed -n '/Internal dependencies/=' etc/omero.properties.bak + ne=249 ++ sed -n 1,249p etc/omero.properties.bak + line='## ## omero.properties ## ---------------- ## ## DO NOT EDIT! ## ## ## Any of these properties can be altered by using `omero config`. MODIFYING ## THIS FILE DOES NOT ALTER SERVER BEHAVIOR. It solely defines the defaults ## at compile time! ## ## For an overview of these properties, see ## https://docs.openmicroscopy.org/latest/omero/sysadmins/config.html ## ## Properties marked with "DEVELOPMENT" should not be used in production. # Comma separated list of Ice transports available to clients. The default # value ("ssl,tcp") instructs Ice to open the ports specified by the # omero.ports.ssl and omero.ports.tcp properties. Restricting to "ssl" # will prevent all non-encrypted connections to the OMERO server. # # Additionally, there are two experimental values for using websockets: # "ws" and "wss" for unencrypted and encrypted, respectively. The ports # that are opened are controlled by the omero.ports.ws and omero.ports.wss # properties. To enable all possible protocols use: "ssl,tcp,wss,ws". # # Note: When using websockets behind a web server like nginx, additional # configuration may be needed. omero.client.icetransports=ssl,tcp # The prefix to apply to all port numbers (SSL, TCP, registry) used by the # server omero.ports.prefix= # The Glacier2 SSL port number to use omero.ports.ssl=4064 # The Glacier2 TCP port number to use (unencrypted) omero.ports.tcp=4063 # The Glacier2 WSS port number to use omero.ports.wss=4066 # The Glacier2 WS port number to use (unencrypted) omero.ports.ws=4065 # The IceGrid registry port number to use omero.ports.registry=4061 ############################################# ## JVM configuration ## ## Note: changes to the omero.jvmcfg properties ## will *not* be reflected in OMERO.server ## since they are defined in OMERO.py. ############################################# ## (For documentation only) # Memory strategy which will be used by default. # Options include: percent, manual omero.jvmcfg.strategy=percent ## (For documentation only) # Explicit value for the `-Xmx` argument, e.g. # "1g" omero.jvmcfg.heap_size= ## (For documentation only) # Explicit value for the MaxPermSize argument # to the JVM, e.g. "500M". Ignored for Java8+ omero.jvmcfg.perm_gen= ## (For documentation only) # Toggles on or off heap dumps on OOMs. Default is "off". # The special value "tmp" will create the heap dumps in # your temp directory. omero.jvmcfg.heap_dump= ## (For documentation only) # Used only by the percent strategy. An integer between 0 # and 100 which is the percent of active memory that will # be used by the service. omero.jvmcfg.percent= ## (For documentation only) # Contains other parameters which should be passed to the # JVM. The value of "append" is treated as if it were on # the command line so will be separated on whitespace. # For example, '\''-XX:-PrintGC -XX:+UseCompressedOops'\'' would # results in two new arguments. # Note that when using `config set` from the command line # one may need to give a prior `--` option to prevent a value # starting with `-` from already being parsed as an option, # and values may need quoting to prevent whitespace or other # significant characters from being interpreted prematurely. omero.jvmcfg.append= ## (For documentation only) # Manual override of the total system memory that # OMERO will *think* is present on the local OS (MB). # If unset, an attempt will be made to detect the actual # amount: first by using the Python library `psutil` and # if that is not installed, by running a Java tool. If # neither works, 4.0GB is assumed. omero.jvmcfg.system_memory= ## (For documentation only) # Suggestion for strategies as to the minimum memory # that they will use for calculating JVM settings (MB). omero.jvmcfg.min_system_memory=3414 ## (For documentation only) # Suggestion for strategies as to the maximum memory # that they will use for calculating JVM settings (MB). omero.jvmcfg.max_system_memory=48000 ############################################# ## Logging properties ## ## Note: changes to the default omero.logging values in ## this file will *not* be reflected in OMERO.server ## since they are defined in OMERO.py ############################################# ## (For documentation only) # Relative server directory where the log files should be stored. omero.logging.directory=var/log/ ## (For documentation only) # Whether the server log files should be rotated at a certain time # interval. If true, log files will be rolled over at midnight. # Otherwise, log files will be rolled over at a predetermined size, # see omero.logging.logsize for more information. omero.logging.timedlog=false ## (For documentation only) # If omero.logging.timedlog is false or unset, specifies the # maximum size of the server log files in bytes above which a # new log file should be created. omero.logging.logsize=5000000 ## (For documentation only) # If omero.logging.timedlog is false or unset, specifies the # number of old server log files that should be kept. Old log # files will be saved by appending the extensions '\''.1'\'', '\''.2'\'' etc. omero.logging.lognum=9 ## (For documentation only) # Specifies the threshold for the Python servers log files. Logging messages # which are less severe than this value will be ignored. For a list of # available values, see https://docs.python.org/3/library/logging.html#levels. omero.logging.level=20 ############################################# ## Ice overrides ## ## Though not used directly by OMERO, a number ## of properties prefixed with "Ice.*" will ## alter the behavior of the OMERO runtime ## by configuring the Ice communicators. For a ## full listing see: ## ## http://doc.zeroc.com/display/Ice/Property+Reference ## For more information see ## https://docs.openmicroscopy.org/latest/omero/sysadmins/troubleshooting.html#server-fails-to-start ############################################# # Disable IPv6 by setting to 0. Only needed in # certain situations. Ice.IPv6=1 # Glacier2Template IceSSL defaults and overrides, # see https://doc.zeroc.com/ice/3.6/property-reference/icessl. # Any property beginning ``omero.glacier2.IceSSL.`` will be used to # update the corresponding IceSSL. property. omero.glacier2.IceSSL= # Glacier2Template SSL maximum allowed protocol (mac bug) omero.glacier2.IceSSL.ProtocolVersionMax=tls1_1 # Glacier2Template SSL allowed cipher suites omero.glacier2.IceSSL.Ciphers=ADH:!LOW:!MD5:!EXP:!3DES:@STRENGTH # Glacier2Template SSL verification requirements omero.glacier2.IceSSL.VerifyPeer=0 # Glacier2Template SSL allowed protocols omero.glacier2.IceSSL.Protocols=tls1 # Override the default set of OMERO services. # For example, to run OMERO.server with Blitz and Tables only # (i.e. disable Processor, DropBox, Indexer, PixelData) # set this to ``master:Blitz-0,Tables-0``. # Also use this to distribute OMERO services across multiple nodes, # for example: # ``master:Blitz-0,Tables-0 worker1:Processor-0``. # See # https://docs.openmicroscopy.org/omero/latest/sysadmins/grid.html#deployment-examples omero.server.nodedescriptors= ############################################# ## Darwin (OS X) specific defaults for templated configuration files only. ## ``_xxx.yyy.darwin`` properties will override xxx.yyy properties in this ## file. ## Do not set these properties in ``omero config``, instead set the original ## ``xxx.yyy`` property ############################################# _omero.glacier2.IceSSL.Ciphers.darwin=(AES) ## (For documentation only) # Name of the Python module to use when starting the Tables service omero.tables.module=runTables ############################################# ## Server product name for release artifacts ############################################# product.name=OMERO.server ############################################# ### Properties below this marker are ignored by ### omero.install.config_parser.PropertyParser ### END ############################################# ## Library versions ############################################# ## versions.findbugs=1.2.1 versions.ice36=3.6.5 versions.ice36_lib=36 ## internal versions.omeroshares36=3.6.3 versions.omeromock36=3.6.3 versions.icedb36=3.6.3 versions.ipython=1.2.1 versions.janino=2.5.10 versions.reportng=1.1.1 versions.testng=7.5 versions.velocity=1.4 versions.omero-pypi=https://pypi.io/packages/source/o/PACKAGE versions.omero-scripts-url=${versions.omero-pypi} ### ### Appended Values ### ## Internal dependencies' + echo '## ## omero.properties ## ---------------- ## ## DO NOT EDIT! ## ## ## Any of these properties can be altered by using `omero config`. MODIFYING ## THIS FILE DOES NOT ALTER SERVER BEHAVIOR. It solely defines the defaults ## at compile time! ## ## For an overview of these properties, see ## https://docs.openmicroscopy.org/latest/omero/sysadmins/config.html ## ## Properties marked with "DEVELOPMENT" should not be used in production. # Comma separated list of Ice transports available to clients. The default # value ("ssl,tcp") instructs Ice to open the ports specified by the # omero.ports.ssl and omero.ports.tcp properties. Restricting to "ssl" # will prevent all non-encrypted connections to the OMERO server. # # Additionally, there are two experimental values for using websockets: # "ws" and "wss" for unencrypted and encrypted, respectively. The ports # that are opened are controlled by the omero.ports.ws and omero.ports.wss # properties. To enable all possible protocols use: "ssl,tcp,wss,ws". # # Note: When using websockets behind a web server like nginx, additional # configuration may be needed. omero.client.icetransports=ssl,tcp # The prefix to apply to all port numbers (SSL, TCP, registry) used by the # server omero.ports.prefix= # The Glacier2 SSL port number to use omero.ports.ssl=4064 # The Glacier2 TCP port number to use (unencrypted) omero.ports.tcp=4063 # The Glacier2 WSS port number to use omero.ports.wss=4066 # The Glacier2 WS port number to use (unencrypted) omero.ports.ws=4065 # The IceGrid registry port number to use omero.ports.registry=4061 ############################################# ## JVM configuration ## ## Note: changes to the omero.jvmcfg properties ## will *not* be reflected in OMERO.server ## since they are defined in OMERO.py. ############################################# ## (For documentation only) # Memory strategy which will be used by default. # Options include: percent, manual omero.jvmcfg.strategy=percent ## (For documentation only) # Explicit value for the `-Xmx` argument, e.g. # "1g" omero.jvmcfg.heap_size= ## (For documentation only) # Explicit value for the MaxPermSize argument # to the JVM, e.g. "500M". Ignored for Java8+ omero.jvmcfg.perm_gen= ## (For documentation only) # Toggles on or off heap dumps on OOMs. Default is "off". # The special value "tmp" will create the heap dumps in # your temp directory. omero.jvmcfg.heap_dump= ## (For documentation only) # Used only by the percent strategy. An integer between 0 # and 100 which is the percent of active memory that will # be used by the service. omero.jvmcfg.percent= ## (For documentation only) # Contains other parameters which should be passed to the # JVM. The value of "append" is treated as if it were on # the command line so will be separated on whitespace. # For example, '\''-XX:-PrintGC -XX:+UseCompressedOops'\'' would # results in two new arguments. # Note that when using `config set` from the command line # one may need to give a prior `--` option to prevent a value # starting with `-` from already being parsed as an option, # and values may need quoting to prevent whitespace or other # significant characters from being interpreted prematurely. omero.jvmcfg.append= ## (For documentation only) # Manual override of the total system memory that # OMERO will *think* is present on the local OS (MB). # If unset, an attempt will be made to detect the actual # amount: first by using the Python library `psutil` and # if that is not installed, by running a Java tool. If # neither works, 4.0GB is assumed. omero.jvmcfg.system_memory= ## (For documentation only) # Suggestion for strategies as to the minimum memory # that they will use for calculating JVM settings (MB). omero.jvmcfg.min_system_memory=3414 ## (For documentation only) # Suggestion for strategies as to the maximum memory # that they will use for calculating JVM settings (MB). omero.jvmcfg.max_system_memory=48000 ############################################# ## Logging properties ## ## Note: changes to the default omero.logging values in ## this file will *not* be reflected in OMERO.server ## since they are defined in OMERO.py ############################################# ## (For documentation only) # Relative server directory where the log files should be stored. omero.logging.directory=var/log/ ## (For documentation only) # Whether the server log files should be rotated at a certain time # interval. If true, log files will be rolled over at midnight. # Otherwise, log files will be rolled over at a predetermined size, # see omero.logging.logsize for more information. omero.logging.timedlog=false ## (For documentation only) # If omero.logging.timedlog is false or unset, specifies the # maximum size of the server log files in bytes above which a # new log file should be created. omero.logging.logsize=5000000 ## (For documentation only) # If omero.logging.timedlog is false or unset, specifies the # number of old server log files that should be kept. Old log # files will be saved by appending the extensions '\''.1'\'', '\''.2'\'' etc. omero.logging.lognum=9 ## (For documentation only) # Specifies the threshold for the Python servers log files. Logging messages # which are less severe than this value will be ignored. For a list of # available values, see https://docs.python.org/3/library/logging.html#levels. omero.logging.level=20 ############################################# ## Ice overrides ## ## Though not used directly by OMERO, a number ## of properties prefixed with "Ice.*" will ## alter the behavior of the OMERO runtime ## by configuring the Ice communicators. For a ## full listing see: ## ## http://doc.zeroc.com/display/Ice/Property+Reference ## For more information see ## https://docs.openmicroscopy.org/latest/omero/sysadmins/troubleshooting.html#server-fails-to-start ############################################# # Disable IPv6 by setting to 0. Only needed in # certain situations. Ice.IPv6=1 # Glacier2Template IceSSL defaults and overrides, # see https://doc.zeroc.com/ice/3.6/property-reference/icessl. # Any property beginning ``omero.glacier2.IceSSL.`` will be used to # update the corresponding IceSSL. property. omero.glacier2.IceSSL= # Glacier2Template SSL maximum allowed protocol (mac bug) omero.glacier2.IceSSL.ProtocolVersionMax=tls1_1 # Glacier2Template SSL allowed cipher suites omero.glacier2.IceSSL.Ciphers=ADH:!LOW:!MD5:!EXP:!3DES:@STRENGTH # Glacier2Template SSL verification requirements omero.glacier2.IceSSL.VerifyPeer=0 # Glacier2Template SSL allowed protocols omero.glacier2.IceSSL.Protocols=tls1 # Override the default set of OMERO services. # For example, to run OMERO.server with Blitz and Tables only # (i.e. disable Processor, DropBox, Indexer, PixelData) # set this to ``master:Blitz-0,Tables-0``. # Also use this to distribute OMERO services across multiple nodes, # for example: # ``master:Blitz-0,Tables-0 worker1:Processor-0``. # See # https://docs.openmicroscopy.org/omero/latest/sysadmins/grid.html#deployment-examples omero.server.nodedescriptors= ############################################# ## Darwin (OS X) specific defaults for templated configuration files only. ## ``_xxx.yyy.darwin`` properties will override xxx.yyy properties in this ## file. ## Do not set these properties in ``omero config``, instead set the original ## ``xxx.yyy`` property ############################################# _omero.glacier2.IceSSL.Ciphers.darwin=(AES) ## (For documentation only) # Name of the Python module to use when starting the Tables service omero.tables.module=runTables ############################################# ## Server product name for release artifacts ############################################# product.name=OMERO.server ############################################# ### Properties below this marker are ignored by ### omero.install.config_parser.PropertyParser ### END ############################################# ## Library versions ############################################# ## versions.findbugs=1.2.1 versions.ice36=3.6.5 versions.ice36_lib=36 ## internal versions.omeroshares36=3.6.3 versions.omeromock36=3.6.3 versions.icedb36=3.6.3 versions.ipython=1.2.1 versions.janino=2.5.10 versions.reportng=1.1.1 versions.testng=7.5 versions.velocity=1.4 versions.omero-pypi=https://pypi.io/packages/source/o/PACKAGE versions.omero-scripts-url=${versions.omero-pypi} ### ### Appended Values ### ## Internal dependencies' + echo versions.omero-pypi=https://merge-ci.openmicroscopy.org/jenkins//job/OMERO-python-superbuild-build/lastSuccessfulBuild/artifact/PACKAGE/dist/ + echo versions.omero-github=https://github.com/snoopycrimecop/PACKAGE/archive + echo versions.scripts-prefix= + echo versions.scripts=merge_ci + cat /home/omero/workspace/OMERO-push/version.properties + git commit -a -m 'Add version.properties to etc/omero.properties' [detached HEAD 910aa6dca9] Add version.properties to etc/omero.properties 1 file changed, 47 insertions(+), 7 deletions(-) + git push -f git@github.com:snoopycrimecop/openmicroscopy.git HEAD:refs/heads/merge_ci To github.com:snoopycrimecop/openmicroscopy.git + b6b34afaff...910aa6dca9 HEAD -> merge_ci (forced update) Finished: SUCCESS