Compare commits

...

6 Commits

Author SHA1 Message Date
luzhiping cf58c674fd update info 2022-08-22 16:54:29 +08:00
openKylinBot cfb5258f5e update test/parallel/parallel.status 2022-07-21 15:49:14 +08:00
Lu zhiping 8453471b77 changed debian/source/format to native 2022-07-18 11:57:22 +08:00
Olivier Tilloy 270a456fb5 reduce linker memory in an attempt to make the builds pass on Launchpad
Gbp-Pq: Name reduce-linker-memory.patch
2022-07-18 11:57:22 +08:00
Jérémy Lal f94ced06d2 do not build cctest, build broken on debian
Last-Update: 2017-12-18
Forwarded: not yet !

Gbp-Pq: Name fix_disable_cctest.patch
2022-07-18 11:57:22 +08:00
Jérémy Lal f04c123978 adapt test-ci build target for buildd
* run tests with ./node
* remove addons from test-ci suite, because it creates a dependency loop
  nodejs -> node-gyp -> nodejs which is painful to manage.
* disabled because it requires stdin:
  + test-stdout-close-unref
  + test-regress-GH-746
* test-tick-processor fails on ppc64 and s390x, currently investigated
  https://github.com/nodejs/node/issues/2471
* test-cluster-disconnect sometimes fails on busy buildd, forwarded upstream
  https://github.com/nodejs/node/issues/3383
* test-fs-watch is flaky, might be related to https://github.com/nodejs/node/issues/4082
* huge timeout value for all platforms, buildd could be busy
* ability to override CI_NATIVE_SUITES, CI_JS_SUITES
* disable tests failing because DNS is disabled
* sequential/test-http2-session-timeout is flaky https://github.com/nodejs/node/issues/20628
Forwarded: not-needed
Reviewed-By: Xavier Guimard <yadd@debian.org>
Last-Update: 2020-02-09

Gbp-Pq: Name test_ci_buildd.patch
2022-07-18 11:57:22 +08:00
13 changed files with 75 additions and 258 deletions

View File

@ -156,8 +156,12 @@ config.gypi: configure configure.py src/node_version.h
exit 1; \
fi
build:
$(MAKE) $(PARALLEL_ARGS) -C out $(NODE_EXE) BUILDTYPE=$(BUILDTYPE) V=$(V)
ln -sf out/$(BUILDTYPE)/node .
.PHONY: install
install: all ## Installs node into $PREFIX (default=/usr/local).
install: ## Installs node into $PREFIX (default=/usr/local).
$(PYTHON) tools/install.py $@ '$(DESTDIR)' '$(PREFIX)'
.PHONY: uninstall
@ -511,7 +515,7 @@ test-ci-native: | test/addons/.buildstamp test/js-native-api/.buildstamp test/no
# This target should not use a native compiler at all
# Related CI job: node-test-commit-arm-fanned
test-ci-js: | clear-stalled
$(PYTHON) tools/test.py $(PARALLEL_ARGS) -p tap --logfile test.tap \
$(PYTHON) tools/test.py $(PARALLEL_ARGS) -p tap \
--mode=$(BUILDTYPE_LOWER) --flaky-tests=$(FLAKY_TESTS) \
$(TEST_CI_ARGS) $(CI_JS_SUITES)
@echo "Clean up any leftover processes, error if found."

12
debian/changelog vendored
View File

@ -1,3 +1,15 @@
nodejs-mozilla (12.18.1-ok3) yangtze; urgency=medium
* update version info
-- luzhiping <luzhiping@kylinos.cn> Mon, 22 Aug 2022 14:11:12 +0800
nodejs-mozilla (12.18.1-ok2) yangtze; urgency=medium
* update test/parallel/parallel.status.
-- Luo Yaoming <luoyaoming@kylinos.cn> Thu, 21 Jul 2022 15:47:24 +0800
nodejs-mozilla (12.18.1-ok1) yangtze; urgency=medium
* Build for openKylin.

2
debian/control vendored
View File

@ -1,7 +1,7 @@
Source: nodejs-mozilla
Section: javascript
Priority: optional
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Maintainer: Openkylin Developers <packaging@lists.openkylin.top>
Build-Depends: debhelper, python
Standards-Version: 4.1.2
Homepage: http://nodejs.org/

View File

@ -1,20 +0,0 @@
Description: do not build cctest, build broken on debian
Last-Update: 2017-12-18
Author: Jérémy Lal <kapouer@melix.org>
Forwarded: not yet !
--- a/Makefile
+++ b/Makefile
@@ -156,8 +156,12 @@
exit 1; \
fi
+build:
+ $(MAKE) $(PARALLEL_ARGS) -C out $(NODE_EXE) BUILDTYPE=$(BUILDTYPE) V=$(V)
+ ln -sf out/$(BUILDTYPE)/node .
+
.PHONY: install
-install: all ## Installs node into $PREFIX (default=/usr/local).
+install: ## Installs node into $PREFIX (default=/usr/local).
$(PYTHON) tools/install.py $@ '$(DESTDIR)' '$(PREFIX)'
.PHONY: uninstall

View File

@ -1,15 +0,0 @@
Description: reduce linker memory in an attempt to make the builds pass on Launchpad
Author: Olivier Tilloy <olivier.tilloy@canonical.com>
--- a/node.gyp
+++ b/node.gyp
@@ -1308,6 +1308,9 @@
'Ws2_32.lib',
],
}],
+ ['(target_arch=="ppc64" or target_arch=="arm" or target_arch=="arm64")', {
+ 'ldflags': [ '-Wl,--no-keep-memory' ],
+ }],
],
}, # node_mksnapshot
], # end targets

View File

@ -1,3 +0,0 @@
test_ci_buildd.patch
fix_disable_cctest.patch
reduce-linker-memory.patch

View File

@ -1,172 +0,0 @@
Description: adapt test-ci build target for buildd
* run tests with ./node
* remove addons from test-ci suite, because it creates a dependency loop
nodejs -> node-gyp -> nodejs which is painful to manage.
* disabled because it requires stdin:
+ test-stdout-close-unref
+ test-regress-GH-746
* test-tick-processor fails on ppc64 and s390x, currently investigated
https://github.com/nodejs/node/issues/2471
* test-cluster-disconnect sometimes fails on busy buildd, forwarded upstream
https://github.com/nodejs/node/issues/3383
* test-fs-watch is flaky, might be related to https://github.com/nodejs/node/issues/4082
* huge timeout value for all platforms, buildd could be busy
* ability to override CI_NATIVE_SUITES, CI_JS_SUITES
* disable tests failing because DNS is disabled
* sequential/test-http2-session-timeout is flaky https://github.com/nodejs/node/issues/20628
Author: Jérémy Lal <kapouer@melix.org>
Forwarded: not-needed
Reviewed-By: Xavier Guimard <yadd@debian.org>
Last-Update: 2020-02-09
--- a/Makefile
+++ b/Makefile
@@ -511,7 +511,7 @@ test-ci-native: | test/addons/.buildstam
# This target should not use a native compiler at all
# Related CI job: node-test-commit-arm-fanned
test-ci-js: | clear-stalled
- $(PYTHON) tools/test.py $(PARALLEL_ARGS) -p tap --logfile test.tap \
+ $(PYTHON) tools/test.py $(PARALLEL_ARGS) -p tap \
--mode=$(BUILDTYPE_LOWER) --flaky-tests=$(FLAKY_TESTS) \
$(TEST_CI_ARGS) $(CI_JS_SUITES)
@echo "Clean up any leftover processes, error if found."
--- a/test/parallel/parallel.status
+++ b/test/parallel/parallel.status
@@ -8,6 +8,39 @@ prefix parallel
# https://github.com/nodejs/node/issues/29802
test-http2-reset-flood: PASS,FLAKY
+test-process-config : PASS,FLAKY
+test-regress-GH-746 : PASS,FLAKY
+test-stdout-close-unref : PASS,FLAKY
+# skip tests accessing network
+test-dns : SKIP
+test-dns-lookupService-promises : SKIP
+test-net-connect-immediate-finish : SKIP
+test-net-better-error-messages-port-hostname : SKIP
+
+# in debian build env, skip because it somehow tries to access network
+test-https-connect-address-family : SKIP
+test-tls-connect-address-family : SKIP
+test-dns-cancel-reverse-lookup: SKIP
+
+# https://bugs.debian.org/919588
+## flaky on some user environments
+test-net-listen-after-destroying-stdin: PASS,FLAKY
+## fails when running with eatmydata
+test-fs-error-messages: PASS,FLAKY
+
+# should have been disabled 'cause openssl 1.1.0
+test-tls-ecdh-disable : SKIP
+
+# only works with zlib >= 1.2.11
+test-zlib-failed-init: SKIP
+
+# might fail, see https://github.com/nodejs/node/issues/17909
+test-fs-utimes: PASS,FLAKY
+
+# This test consistently fails on i386 and armhf
+[$arch==ia32 || $arch==arm]
+test-worker-stdio: FAIL
+
[$system==win32]
# https://github.com/nodejs/node/issues/32863
test-child-process-fork-args: PASS,FLAKY
@@ -41,6 +74,10 @@ test-async-hooks-http-parser-destroy: PA
test-crypto-dh-stateless: SKIP
test-crypto-keygen: SKIP
+[$arch==mips64el]
+# the debug flag is for hacking v8 internals
+test-debug-args: PASS,FLAKY
+
[$system==solaris] # Also applies to SmartOS
[$system==freebsd]
--- a/test/sequential/sequential.status
+++ b/test/sequential/sequential.status
@@ -8,6 +8,16 @@ prefix sequential
# https://github.com/nodejs/node/issues/27611#issuecomment-613100468
test-cpu-prof-dir-worker: PASS, FLAKY
+# flaky or failing at least on debian build servers
+test-fs-watch : PASS,FLAKY
+test-force-repl : SKIP
+test-performance : SKIP
+test-http2-session-timeout : PASS,FLAKY
+test-worker-prof : PASS, FLAKY
+
+# https://github.com/nodejs/node/issues/24403
+test-cli-syntax: PASS,FLAKY
+
[$system==win32]
# https://github.com/nodejs/node/issues/22327
test-http2-large-file: PASS, FLAKY
@@ -31,7 +41,3 @@ test-buffer-creation-regression: SKIP
test-buffer-creation-regression: SKIP
# https://github.com/nodejs/node/pull/30819
test-perf-hooks: SKIP
-
-[$arch==arm]
-# https://github.com/nodejs/node/issues/26401#issuecomment-613095719
-test-worker-prof: PASS, FLAKY
--- a/tools/test.py
+++ b/tools/test.py
@@ -890,25 +890,7 @@ class Context(object):
self.node_has_crypto = True
def GetVm(self, arch, mode):
- if self.vm is not None:
- return self.vm
- if arch == 'none':
- name = 'out/Debug/node' if mode == 'debug' else 'out/Release/node'
- else:
- name = 'out/%s.%s/node' % (arch, mode)
-
- # Currently GYP does not support output_dir for MSVS.
- # http://code.google.com/p/gyp/issues/detail?id=40
- # It will put the builds into Release/node.exe or Debug/node.exe
- if utils.IsWindows():
- if not exists(name + '.exe'):
- name = name.replace('out/', '')
- name = os.path.abspath(name + '.exe')
-
- if not exists(name):
- raise ValueError('Could not find executable. Should be ' + name)
-
- return name
+ return './node'
def GetTimeout(self, mode):
return self.timeout * TIMEOUT_SCALEFACTOR[ARCH_GUESS or 'ia32'][mode]
--- a/test/common/index.js
+++ b/test/common/index.js
@@ -232,27 +232,7 @@ const pwdCommand = isWindows ?
function platformTimeout(ms) {
- const multipliers = typeof ms === 'bigint' ?
- { two: 2n, four: 4n, seven: 7n } : { two: 2, four: 4, seven: 7 };
-
- if (process.features.debug)
- ms = multipliers.two * ms;
-
- if (isAIX)
- return multipliers.two * ms; // Default localhost speed is slower on AIX
-
- if (process.arch !== 'arm')
- return ms;
-
- const armv = process.config.variables.arm_version;
-
- if (armv === '6')
- return multipliers.seven * ms; // ARMv6
-
- if (armv === '7')
- return multipliers.two * ms; // ARMv7
-
- return ms; // ARMv8+
+ return 20 * ms; // for debian build servers
}
let knownGlobals = [

View File

@ -1 +1 @@
3.0 (quilt)
3.0 (native)

View File

@ -1308,6 +1308,9 @@
'Ws2_32.lib',
],
}],
['(target_arch=="ppc64" or target_arch=="arm" or target_arch=="arm64")', {
'ldflags': [ '-Wl,--no-keep-memory' ],
}],
],
}, # node_mksnapshot
], # end targets

View File

@ -232,27 +232,7 @@ const pwdCommand = isWindows ?
function platformTimeout(ms) {
const multipliers = typeof ms === 'bigint' ?
{ two: 2n, four: 4n, seven: 7n } : { two: 2, four: 4, seven: 7 };
if (process.features.debug)
ms = multipliers.two * ms;
if (isAIX)
return multipliers.two * ms; // Default localhost speed is slower on AIX
if (process.arch !== 'arm')
return ms;
const armv = process.config.variables.arm_version;
if (armv === '6')
return multipliers.seven * ms; // ARMv6
if (armv === '7')
return multipliers.two * ms; // ARMv7
return ms; // ARMv8+
return 20 * ms; // for debian build servers
}
let knownGlobals = [

View File

@ -8,6 +8,42 @@ prefix parallel
# https://github.com/nodejs/node/issues/29802
test-http2-reset-flood: PASS,FLAKY
test-process-config : PASS,FLAKY
test-regress-GH-746 : PASS,FLAKY
test-stdout-close-unref : PASS,FLAKY
# skip tests accessing network
test-dns : SKIP
test-dns-lookupService-promises : SKIP
test-net-connect-immediate-finish : SKIP
test-net-better-error-messages-port-hostname : SKIP
test-cluster-bind-privileged-port : SKIP
test-cluster-shared-handle-bind-privileged-port : SKIP
# in debian build env, skip because it somehow tries to access network
test-https-connect-address-family : SKIP
test-tls-connect-address-family : SKIP
test-dns-cancel-reverse-lookup: SKIP
# https://bugs.debian.org/919588
## flaky on some user environments
test-net-listen-after-destroying-stdin: PASS,FLAKY
## fails when running with eatmydata
test-fs-error-messages: PASS,FLAKY
# should have been disabled 'cause openssl 1.1.0
test-tls-ecdh-disable : SKIP
# only works with zlib >= 1.2.11
test-zlib-failed-init: SKIP
# might fail, see https://github.com/nodejs/node/issues/17909
test-fs-utimes: PASS,FLAKY
# This test consistently fails on i386 and armhf
[$arch==ia32 || $arch==arm]
test-worker-stdio: FAIL
[$system==win32]
# https://github.com/nodejs/node/issues/32863
test-child-process-fork-args: PASS,FLAKY
@ -41,6 +77,10 @@ test-async-hooks-http-parser-destroy: PASS,FLAKY
test-crypto-dh-stateless: SKIP
test-crypto-keygen: SKIP
[$arch==mips64el]
# the debug flag is for hacking v8 internals
test-debug-args: PASS,FLAKY
[$system==solaris] # Also applies to SmartOS
[$system==freebsd]

View File

@ -8,6 +8,16 @@ prefix sequential
# https://github.com/nodejs/node/issues/27611#issuecomment-613100468
test-cpu-prof-dir-worker: PASS, FLAKY
# flaky or failing at least on debian build servers
test-fs-watch : PASS,FLAKY
test-force-repl : SKIP
test-performance : SKIP
test-http2-session-timeout : PASS,FLAKY
test-worker-prof : PASS, FLAKY
# https://github.com/nodejs/node/issues/24403
test-cli-syntax: PASS,FLAKY
[$system==win32]
# https://github.com/nodejs/node/issues/22327
test-http2-large-file: PASS, FLAKY
@ -31,7 +41,3 @@ test-buffer-creation-regression: SKIP
test-buffer-creation-regression: SKIP
# https://github.com/nodejs/node/pull/30819
test-perf-hooks: SKIP
[$arch==arm]
# https://github.com/nodejs/node/issues/26401#issuecomment-613095719
test-worker-prof: PASS, FLAKY

View File

@ -890,25 +890,7 @@ class Context(object):
self.node_has_crypto = True
def GetVm(self, arch, mode):
if self.vm is not None:
return self.vm
if arch == 'none':
name = 'out/Debug/node' if mode == 'debug' else 'out/Release/node'
else:
name = 'out/%s.%s/node' % (arch, mode)
# Currently GYP does not support output_dir for MSVS.
# http://code.google.com/p/gyp/issues/detail?id=40
# It will put the builds into Release/node.exe or Debug/node.exe
if utils.IsWindows():
if not exists(name + '.exe'):
name = name.replace('out/', '')
name = os.path.abspath(name + '.exe')
if not exists(name):
raise ValueError('Could not find executable. Should be ' + name)
return name
return './node'
def GetTimeout(self, mode):
return self.timeout * TIMEOUT_SCALEFACTOR[ARCH_GUESS or 'ia32'][mode]