passenger 5.3.5 → 5.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (211) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +13 -0
  3. data/README.md +2 -1
  4. data/Rakefile +0 -5
  5. data/build/agent.rb +2 -1
  6. data/build/cxx_tests.rb +18 -20
  7. data/build/integration_tests.rb +6 -2
  8. data/build/support/cxx_dependency_map.rb +2019 -1966
  9. data/dev/colorize-logs +272 -0
  10. data/src/agent/Core/AdminPanelConnector.h +3 -3
  11. data/src/agent/Core/ApiServer.h +4 -4
  12. data/src/agent/Core/ApplicationPool/BasicProcessInfo.h +2 -2
  13. data/src/agent/Core/ApplicationPool/Group/OutOfBandWork.cpp +2 -2
  14. data/src/agent/Core/ApplicationPool/Implementation.cpp +5 -5
  15. data/src/agent/Core/ApplicationPool/Pool.h +4 -4
  16. data/src/agent/Core/ApplicationPool/Process.h +10 -15
  17. data/src/agent/Core/ApplicationPool/Socket.h +2 -2
  18. data/src/agent/Core/ApplicationPool/TestSession.h +3 -3
  19. data/src/agent/Core/Config.h +4 -2
  20. data/src/agent/Core/Controller.h +4 -4
  21. data/src/agent/Core/Controller/Config.h +1 -1
  22. data/src/agent/Core/Controller/SendRequest.cpp +2 -2
  23. data/src/agent/Core/Controller/TurboCaching.h +2 -2
  24. data/src/agent/Core/CoreMain.cpp +2 -2
  25. data/src/agent/Core/OptionParser.h +2 -2
  26. data/src/agent/Core/ResponseCache.h +3 -3
  27. data/src/agent/Core/SecurityUpdateChecker.h +2 -2
  28. data/src/agent/Core/SpawningKit/Config.h +2 -1
  29. data/src/agent/Core/SpawningKit/Config/AutoGeneratedCode.h +1 -1
  30. data/src/agent/Core/SpawningKit/Context.h +1 -1
  31. data/src/agent/Core/SpawningKit/DirectSpawner.h +3 -3
  32. data/src/agent/Core/SpawningKit/DummySpawner.h +3 -3
  33. data/src/agent/Core/SpawningKit/ErrorRenderer.h +1 -1
  34. data/src/agent/Core/SpawningKit/Exceptions.h +2 -2
  35. data/src/agent/Core/SpawningKit/Factory.h +1 -1
  36. data/src/agent/Core/SpawningKit/Handshake/BackgroundIOCapturer.h +1 -1
  37. data/src/agent/Core/SpawningKit/Handshake/Perform.h +13 -2
  38. data/src/agent/Core/SpawningKit/Handshake/Prepare.h +3 -3
  39. data/src/agent/Core/SpawningKit/Handshake/WorkDir.h +1 -1
  40. data/src/agent/Core/SpawningKit/Journey.h +4 -5
  41. data/src/agent/Core/SpawningKit/PipeWatcher.h +1 -1
  42. data/src/agent/Core/SpawningKit/Result.h +20 -8
  43. data/src/agent/Core/SpawningKit/Result/AutoGeneratedCode.h +1 -1
  44. data/src/agent/Core/SpawningKit/SmartSpawner.h +6 -6
  45. data/src/agent/Core/SpawningKit/Spawner.h +2 -2
  46. data/src/agent/Core/TelemetryCollector.h +13 -7
  47. data/src/agent/ExecHelper/ExecHelperMain.cpp +1 -1
  48. data/src/agent/README.md +1 -1
  49. data/src/agent/Shared/ApiAccountUtils.h +1 -1
  50. data/src/agent/Shared/ApiServerUtils.h +3 -3
  51. data/src/agent/Shared/ApplicationPoolApiKey.h +2 -2
  52. data/src/agent/Shared/Fundamentals/Initialization.cpp +4 -4
  53. data/src/agent/SpawnEnvSetupper/SpawnEnvSetupperMain.cpp +1 -1
  54. data/src/agent/SystemMetrics/SystemMetricsMain.cpp +4 -3
  55. data/src/agent/Watchdog/ApiServer.h +3 -3
  56. data/src/agent/Watchdog/Config.h +3 -2
  57. data/src/agent/Watchdog/CoreWatcher.cpp +2 -2
  58. data/src/agent/Watchdog/WatchdogMain.cpp +93 -27
  59. data/src/apache2_module/Config.cpp +14 -14
  60. data/src/apache2_module/Config.h +8 -16
  61. data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp +505 -491
  62. data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp.cxxcodebuilder +39 -17
  63. data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp +24 -1
  64. data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp.cxxcodebuilder +31 -1
  65. data/src/{cxx_supportlib/Utils/MemoryBarrier.h → apache2_module/ConfigGeneral/Common.h} +17 -25
  66. data/src/apache2_module/DirConfig/AutoGeneratedCreateFunction.cpp +12 -1
  67. data/src/apache2_module/DirConfig/AutoGeneratedCreateFunction.cpp.cxxcodebuilder +16 -1
  68. data/src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp +19 -5
  69. data/src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp.cxxcodebuilder +26 -9
  70. data/src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp +6 -1
  71. data/src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp.cxxcodebuilder +10 -1
  72. data/src/apache2_module/DirConfig/AutoGeneratedMergeFunction.cpp +7 -1
  73. data/src/apache2_module/DirConfig/AutoGeneratedMergeFunction.cpp.cxxcodebuilder +11 -1
  74. data/src/apache2_module/DirConfig/AutoGeneratedStruct.h +23 -1
  75. data/src/apache2_module/DirConfig/AutoGeneratedStruct.h.cxxcodebuilder +34 -1
  76. data/src/apache2_module/Hooks.cpp +3 -3
  77. data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h +24 -1
  78. data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h.cxxcodebuilder +36 -1
  79. data/src/cxx_supportlib/{Utils → Algorithms}/Hasher.cpp +2 -2
  80. data/src/cxx_supportlib/{Utils → Algorithms}/Hasher.h +4 -4
  81. data/src/cxx_supportlib/AppTypeDetector/Detector.h +1 -1
  82. data/src/cxx_supportlib/ConfigKit/Schema.h +2 -2
  83. data/src/cxx_supportlib/ConfigKit/Store.h +1 -1
  84. data/src/cxx_supportlib/Constants.h +1 -1
  85. data/src/cxx_supportlib/{Utils → DataStructures}/HashMap.h +4 -4
  86. data/src/cxx_supportlib/DataStructures/HashedStaticString.h +5 -5
  87. data/src/cxx_supportlib/DataStructures/LString.h +3 -3
  88. data/src/cxx_supportlib/{Utils → DataStructures}/StringMap.h +36 -36
  89. data/src/cxx_supportlib/FileTools/FileManip.cpp +1 -1
  90. data/src/cxx_supportlib/FileTools/PathManip.cpp +2 -2
  91. data/src/cxx_supportlib/FileTools/PathSecurityCheck.cpp +1 -1
  92. data/src/cxx_supportlib/Hooks.h +2 -2
  93. data/src/cxx_supportlib/{Utils → IOTools}/BufferedIO.h +5 -5
  94. data/src/cxx_supportlib/{Utils → IOTools}/IOUtils.cpp +2 -2
  95. data/src/cxx_supportlib/{Utils → IOTools}/IOUtils.h +3 -3
  96. data/src/cxx_supportlib/{Utils → IOTools}/MessageIO.h +7 -7
  97. data/src/cxx_supportlib/{MessageReadersWriters.h → IOTools/MessageSerialization.h} +5 -5
  98. data/src/cxx_supportlib/InstanceDirectory.h +4 -4
  99. data/src/cxx_supportlib/Integrations/LibevJsonUtils.h +3 -3
  100. data/src/cxx_supportlib/{Utils → JsonTools}/JsonUtils.h +5 -5
  101. data/src/cxx_supportlib/LoggingKit/Context.h +2 -2
  102. data/src/cxx_supportlib/LoggingKit/Implementation.cpp +3 -3
  103. data/src/cxx_supportlib/MemoryKit/mbuf.cpp +2 -2
  104. data/src/cxx_supportlib/ProcessManagement/Spawn.cpp +5 -5
  105. data/src/cxx_supportlib/ProcessManagement/Utils.h +10 -0
  106. data/src/cxx_supportlib/RandomGenerator.h +2 -2
  107. data/src/cxx_supportlib/{Crypto.cpp → SecurityKit/Crypto.cpp} +4 -4
  108. data/src/cxx_supportlib/{Crypto.h → SecurityKit/Crypto.h} +4 -4
  109. data/src/cxx_supportlib/{Utils → SecurityKit}/MemZeroGuard.h +0 -0
  110. data/src/cxx_supportlib/ServerKit/AcceptLoadBalancer.h +2 -2
  111. data/src/cxx_supportlib/ServerKit/Channel.h +1 -1
  112. data/src/cxx_supportlib/ServerKit/Context.h +2 -2
  113. data/src/cxx_supportlib/ServerKit/FileBufferedChannel.h +1 -1
  114. data/src/cxx_supportlib/ServerKit/HttpHeaderParser.h +3 -3
  115. data/src/cxx_supportlib/ServerKit/HttpHeaderParserState.h +2 -2
  116. data/src/cxx_supportlib/ServerKit/HttpServer.h +16 -10
  117. data/src/cxx_supportlib/ServerKit/Server.h +3 -3
  118. data/src/cxx_supportlib/{Utils → StrIntTools}/DateParsing.h +5 -5
  119. data/src/cxx_supportlib/{Utils → StrIntTools}/StrIntUtils.cpp +3 -3
  120. data/src/cxx_supportlib/{Utils → StrIntTools}/StrIntUtils.h +0 -0
  121. data/src/cxx_supportlib/{Utils → StrIntTools}/StrIntUtilsNoStrictAliasing.cpp +2 -2
  122. data/src/cxx_supportlib/{Utils → StrIntTools}/StringScanning.h +5 -5
  123. data/src/cxx_supportlib/{Utils → StrIntTools}/Template.h +30 -5
  124. data/src/cxx_supportlib/SystemTools/ContainerHelpers.h +34 -0
  125. data/src/cxx_supportlib/{Utils → SystemTools}/ProcessMetricsCollector.h +6 -6
  126. data/src/cxx_supportlib/{Utils → SystemTools}/SystemMetricsCollector.h +3 -3
  127. data/src/cxx_supportlib/{Utils → SystemTools}/SystemTime.cpp +1 -1
  128. data/src/cxx_supportlib/{Utils → SystemTools}/SystemTime.h +0 -0
  129. data/src/cxx_supportlib/SystemTools/UserDatabase.h +1 -1
  130. data/src/cxx_supportlib/Utils.cpp +2 -2
  131. data/src/cxx_supportlib/Utils/CachedFileStat.hpp +3 -3
  132. data/src/cxx_supportlib/Utils/Curl.h +2 -2
  133. data/src/cxx_supportlib/Utils/FileChangeChecker.h +2 -2
  134. data/src/cxx_supportlib/Utils/MessagePassing.h +1 -1
  135. data/src/cxx_supportlib/Utils/SpeedMeter.h +2 -2
  136. data/src/cxx_supportlib/Utils/Timer.h +2 -2
  137. data/src/cxx_supportlib/Utils/VariantMap.h +3 -3
  138. data/src/cxx_supportlib/WatchdogLauncher.h +3 -3
  139. data/src/cxx_supportlib/WebSocketCommandReverseServer.h +1 -1
  140. data/src/cxx_supportlib/WrapperRegistry/Registry.h +1 -1
  141. data/src/cxx_supportlib/vendor-modified/psg_sysqueue.h +3 -0
  142. data/src/ruby_supportlib/phusion_passenger.rb +1 -1
  143. data/src/ruby_supportlib/phusion_passenger/common_library.rb +11 -11
  144. data/src/ruby_supportlib/phusion_passenger/config/agent_compiler.rb +4 -4
  145. data/src/ruby_supportlib/phusion_passenger/config/nginx_engine_compiler.rb +1 -1
  146. data/src/ruby_supportlib/phusion_passenger/message_channel.rb +2 -2
  147. data/src/ruby_supportlib/phusion_passenger/packaging.rb +20 -19
  148. data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +22 -4
  149. data/src/ruby_supportlib/phusion_passenger/platform_info/ruby.rb +33 -13
  150. data/src/schema_printer/SchemaPrinterMain.cpp +2 -0
  151. metadata +28 -86
  152. data/.editorconfig +0 -134
  153. data/CODE_OF_CONDUCT.md +0 -52
  154. data/dev/boost-patches/0001-Patch-boost-thread-so-that-oxt-thread-can-use-it.patch +0 -48
  155. data/dev/boost-patches/0002-Make-boost-thread_interrupted-derive-from-oxt-tracab.patch +0 -33
  156. data/dev/boost-patches/0003-Disable-a-Clang-pragma-to-prevent-warnings-on-OS-X.patch +0 -25
  157. data/dev/ci/README.md +0 -134
  158. data/dev/ci/lib/functions.sh +0 -129
  159. data/dev/ci/lib/set-container-envvars.sh +0 -53
  160. data/dev/ci/lib/setup-container.sh +0 -46
  161. data/dev/ci/run-tests-natively +0 -24
  162. data/dev/ci/run-tests-with-docker +0 -42
  163. data/dev/ci/scripts/debug-console-wrapper.sh +0 -29
  164. data/dev/ci/scripts/docker-entrypoint-stage2.sh +0 -17
  165. data/dev/ci/scripts/docker-entrypoint.sh +0 -17
  166. data/dev/ci/scripts/inituidgid +0 -17
  167. data/dev/ci/scripts/run-tests-natively-stage2.sh +0 -17
  168. data/dev/ci/scripts/setup-host-natively.sh +0 -11
  169. data/dev/ci/setup-host +0 -56
  170. data/dev/ci/tests/apache2/run +0 -6
  171. data/dev/ci/tests/apache2/setup +0 -4
  172. data/dev/ci/tests/binaries/Jenkinsfile +0 -105
  173. data/dev/ci/tests/binaries/build-linux +0 -38
  174. data/dev/ci/tests/binaries/build-macos +0 -40
  175. data/dev/ci/tests/binaries/prepare-macos +0 -38
  176. data/dev/ci/tests/binaries/test-linux +0 -45
  177. data/dev/ci/tests/binaries/test-macos +0 -38
  178. data/dev/ci/tests/cxx/run +0 -9
  179. data/dev/ci/tests/cxx/setup +0 -4
  180. data/dev/ci/tests/debian/Jenkinsfile +0 -89
  181. data/dev/ci/tests/debian/run +0 -60
  182. data/dev/ci/tests/nginx-dynamic/run +0 -20
  183. data/dev/ci/tests/nginx-dynamic/setup +0 -4
  184. data/dev/ci/tests/nginx/run +0 -5
  185. data/dev/ci/tests/nginx/setup +0 -4
  186. data/dev/ci/tests/nodejs/run +0 -4
  187. data/dev/ci/tests/nodejs/setup +0 -4
  188. data/dev/ci/tests/rpm/Jenkinsfile +0 -68
  189. data/dev/ci/tests/rpm/run +0 -63
  190. data/dev/ci/tests/ruby/run +0 -4
  191. data/dev/ci/tests/ruby/setup +0 -4
  192. data/dev/ci/tests/source-packaging/run +0 -4
  193. data/dev/ci/tests/source-packaging/setup +0 -4
  194. data/dev/ci/tests/standalone/run +0 -4
  195. data/dev/ci/tests/standalone/setup +0 -4
  196. data/dev/configkit-schemas/index.json +0 -1850
  197. data/dev/configkit-schemas/update_schema_inline_comments.rb +0 -118
  198. data/dev/rack.test/config.ru +0 -5
  199. data/dev/rack.test/public/asset.txt +0 -1
  200. data/dev/vagrant/apache_default_site.conf +0 -35
  201. data/dev/vagrant/apache_passenger.conf +0 -5
  202. data/dev/vagrant/apache_passenger.load +0 -1
  203. data/dev/vagrant/apache_ports.conf +0 -24
  204. data/dev/vagrant/apache_rack_test.conf +0 -9
  205. data/dev/vagrant/bashrc +0 -23
  206. data/dev/vagrant/nginx.conf +0 -39
  207. data/dev/vagrant/nginx_rakefile +0 -33
  208. data/dev/vagrant/nginx_start +0 -32
  209. data/dev/vagrant/provision.sh +0 -117
  210. data/dev/vagrant/sudoers.conf +0 -5
  211. data/resources/templates/error_renderer/.editorconfig +0 -19
@@ -1,45 +0,0 @@
1
- #!/usr/bin/env bash
2
- # This script is from the "Passenger binaries test" Jenkins job. It runs
3
- # runs tests on the binaries generated by the "build-linux" script.
4
- #
5
- # Required environment variables:
6
- #
7
- # WORKSPACE
8
- # ARCHITECTURE
9
- #
10
- # Optional environment variables:
11
- #
12
- # PASSENGER_ROOT (defaults to $WORKSPACE)
13
- # OUTPUT_DIR (defaults to $WORKSPACE/output)
14
- # ENTERPRISE
15
-
16
- set -e
17
- SELFDIR=$(dirname "$0")
18
- cd "$SELFDIR/../../../../packaging/binaries"
19
- # shellcheck source=../../../../packaging/binaries/shared/lib/library.sh
20
- source "./shared/lib/library.sh"
21
-
22
- require_envvar WORKSPACE "$WORKSPACE"
23
- require_envvar ARCHITECTURE "$ARCHITECTURE"
24
-
25
- PASSENGER_ROOT="${PASSENGER_ROOT:-$WORKSPACE}"
26
- OUTPUT_DIR="${OUTPUT_DIR:-$WORKSPACE/output}"
27
-
28
- EXTRA_TEST_PARAMS=()
29
- if [[ "$ENTERPRISE" = 1 ]]; then
30
- EXTRA_TEST_PARAMS=(-L /etc/passenger-enterprise-license)
31
- fi
32
-
33
- run mkdir -p "$OUTPUT_DIR"
34
- run mkdir -p "$CACHE_DIR"
35
-
36
- run ./linux/package \
37
- -i "$OUTPUT_DIR" \
38
- -o "$OUTPUT_DIR" \
39
- -a "$ARCHITECTURE"
40
- run ./linux/test \
41
- -p "$PASSENGER_ROOT" \
42
- -i "$OUTPUT_DIR" \
43
- -I "$OUTPUT_DIR" \
44
- -a "$ARCHITECTURE" \
45
- "${EXTRA_TEST_PARAMS[@]}"
@@ -1,38 +0,0 @@
1
- #!/usr/bin/env bash
2
- # This script is from the "Passenger binaries test" Jenkins job. It runs
3
- # runs tests on the binaries generated by the "build-macos" script.
4
- #
5
- # Required environment variables:
6
- #
7
- # WORKSPACE
8
- #
9
- # Optional environment variables:
10
- #
11
- # PASSENGER_ROOT (defaults to $WORKSPACE)
12
- # OUTPUT_DIR (defaults to $WORKSPACE/output)
13
- # RUNTIME_DIR (defaults to $WORKSPACE/cache/runtime)
14
-
15
- set -e
16
- SELFDIR=$(dirname "$0")
17
- cd "$SELFDIR/../../../../packaging/binaries"
18
- # shellcheck source=../../../../packaging/binaries/shared/lib/library.sh
19
- source "./shared/lib/library.sh"
20
-
21
- require_envvar WORKSPACE "$WORKSPACE"
22
-
23
- PASSENGER_ROOT="${PASSENGER_ROOT:-$WORKSPACE}"
24
- OUTPUT_DIR="${OUTPUT_DIR:-$WORKSPACE/output}"
25
- RUNTIME_DIR="${RUNTIME_DIR:-$WORKSPACE/cache/runtime}"
26
-
27
- RUNTIME_VERSION=$(cat shared/definitions/macos_runtime_version)
28
-
29
- run mkdir -p "$OUTPUT_DIR"
30
-
31
- run ./macos/package \
32
- -i "$OUTPUT_DIR" \
33
- -o "$OUTPUT_DIR"
34
- run ./macos/test \
35
- -p "$PASSENGER_ROOT" \
36
- -r "$RUNTIME_DIR/$RUNTIME_VERSION" \
37
- -i "$OUTPUT_DIR" \
38
- -I "$OUTPUT_DIR"
@@ -1,9 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -e
3
-
4
- header2 "Running C++ tests"
5
- run bundle exec drake "-j$COMPILE_CONCURRENCY" test:cxx
6
- echo
7
-
8
- header2 "Running OXT tests"
9
- run bundle exec drake "-j$COMPILE_CONCURRENCY" test:oxt
@@ -1,4 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -e
3
-
4
- retry_run 3 rake test:install_deps BASE_DEPS=yes
@@ -1,89 +0,0 @@
1
- def getDefaultDistros() {
2
- def distroInfo = readFile("packaging/debian/internal/lib/distro_info.sh")
3
- def matcher = distroInfo =~ /DEFAULT_DISTROS="(.+?)"/
4
- if (matcher.find()) {
5
- matcher.group(1).split().sort()
6
- } else {
7
- error("Unable to parse packaging/debian/internal/lib/distro_info.sh")
8
- }
9
- }
10
-
11
- def testDebianPackages(distro, params) {
12
- if ((!distro in params) || params[distro]) {
13
- node('linux') {
14
- def env = [
15
- "CACHE_DIR=${env.JENKINS_HOME}/cache/${env.JOB_NAME}/${distro}",
16
- "DISTRIBUTION=${distro}",
17
- "ARCHITECTURE=amd64"
18
- ]
19
- withEnv(env) {
20
- checkout scm
21
- sh './dev/ci/tests/debian/run'
22
- }
23
- }
24
- } else {
25
- echo 'Test skipped.'
26
- }
27
- }
28
-
29
- pipeline {
30
- agent { node { label 'master-pipeline' } }
31
-
32
- options {
33
- buildDiscarder(logRotator(numToKeepStr: '10'))
34
- timeout(time: 45, unit: 'MINUTES')
35
- disableConcurrentBuilds()
36
- timestamps()
37
- ansiColor('xterm')
38
- }
39
-
40
- parameters {
41
- booleanParam(name: 'trusty', defaultValue: true, description: 'Test Ubuntu 14.04 packages')
42
- booleanParam(name: 'xenial', defaultValue: true, description: 'Test Ubuntu 16.04 packages')
43
- booleanParam(name: 'artful', defaultValue: true, description: 'Test Ubuntu 17.10 packages')
44
- booleanParam(name: 'bionic', defaultValue: true, description: 'Test Ubuntu 18.04 packages')
45
-
46
- booleanParam(name: 'jessie', defaultValue: true, description: 'Test Debian 8 packages')
47
- booleanParam(name: 'stretch', defaultValue: true, description: 'Test Debian 9 packages')
48
- }
49
-
50
- stages {
51
- stage('Initialize') {
52
- steps {
53
- script {
54
- if (env.JOB_NAME.indexOf('Enterprise') != -1) {
55
- env.ENTERPRISE = '1'
56
- } else {
57
- env.ENTERPRISE = '0'
58
- }
59
-
60
- // For debugging purposes
61
- sh 'env | sort'
62
- }
63
- }
64
- }
65
-
66
-
67
-
68
- stage('Test') {
69
- steps {
70
- script {
71
- def defaultDistros = getDefaultDistros()
72
- def i
73
- def parallelSteps = [:]
74
-
75
- // We use a plain loop over .each because of this bug:
76
- // https://issues.jenkins-ci.org/browse/JENKINS-27421
77
- for (i = 0; i < defaultDistros.length; i++) {
78
- def distro = defaultDistros[i]
79
- parallelSteps[distro] = {
80
- testDebianPackages(distro, params)
81
- }
82
- }
83
-
84
- parallel(parallelSteps)
85
- }
86
- }
87
- }
88
- }
89
- }
@@ -1,60 +0,0 @@
1
- #!/usr/bin/env bash
2
- # This script is from the "Passenger Debian packaging test" Jenkins job. It builds
3
- # packages for a specific distribution and architecture and runs tests on the resulting packages.
4
- #
5
- # Required environment variables:
6
- #
7
- # WORKSPACE
8
- # DISTRIBUTION
9
- # ARCHITECTURE
10
- #
11
- # Optional environment variables:
12
- #
13
- # PASSENGER_ROOT (defaults to $WORKSPACE)
14
- # CACHE_DIR (defaults to $WORKSPACE/cache)
15
- # ENTERPRISE
16
- # DEBUG_CONSOLE
17
- #
18
- # Sample invocation in Vagrant dev environment:
19
- #
20
- # env WORKSPACE=$HOME DISTRIBUTION=el7 ARCHITECTURE=x86_64 PASSENGER_ROOT=/passenger ./dev/ci/debian/run
21
-
22
- set -e
23
- SELFDIR=$(dirname "$0")
24
- cd "$SELFDIR/../../../../packaging/debian"
25
- # shellcheck source=../../../../packaging/debian/internal/lib/library.sh
26
- source "./internal/lib/library.sh"
27
-
28
- require_envvar WORKSPACE "$WORKSPACE"
29
- require_envvar DISTRIBUTION "$DISTRIBUTION"
30
- require_envvar ARCHITECTURE "$ARCHITECTURE"
31
-
32
- PASSENGER_ROOT="${PASSENGER_ROOT:-$WORKSPACE}"
33
- CACHE_DIR="${CACHE_DIR:-$WORKSPACE/cache}"
34
-
35
- if [[ "$DEBUG_CONSOLE" = true ]]; then
36
- EXTRA_TEST_PARAMS=-D
37
- else
38
- EXTRA_TEST_PARAMS=
39
- fi
40
- if [[ "$ENTERPRISE" = 1 ]]; then
41
- EXTRA_TEST_PARAMS="$EXTRA_TEST_PARAMS -e /etc/passenger-enterprise-license"
42
- fi
43
-
44
- run mkdir -p "$CACHE_DIR"
45
- run ./build \
46
- -w "$WORKSPACE/work" \
47
- -c "$CACHE_DIR" \
48
- -o "$WORKSPACE/output" \
49
- -p "$PASSENGER_ROOT" \
50
- -d "$DISTRIBUTION" \
51
- -a "$ARCHITECTURE" \
52
- -R \
53
- pkg:all
54
- run ./test \
55
- -p "$PASSENGER_ROOT" \
56
- -d "$WORKSPACE/output/$DISTRIBUTION" \
57
- -c "$CACHE_DIR" \
58
- -x "$DISTRIBUTION" \
59
- -j \
60
- $EXTRA_TEST_PARAMS
@@ -1,20 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -e
3
-
4
- TEST_DYNAMIC_WITH_NGINX_VERSION=1.12.1
5
- NGINX_ADDON_DIR=$(./bin/passenger-config --nginx-addon-dir)
6
- echo "+ Nginx addon dir: $NGINX_ADDON_DIR"
7
- echo
8
-
9
- header2 "Compliing Passenger"
10
- run drake "-j$COMPILE_CONCURRENCY" nginx:as_dynamic_module
11
- echo
12
-
13
- header2 "Downloading and compiling Nginx"
14
- cd buildout
15
- run curl -sSLO https://www.nginx.org/download/nginx-$TEST_DYNAMIC_WITH_NGINX_VERSION.tar.gz
16
- run tar -xzf nginx-$TEST_DYNAMIC_WITH_NGINX_VERSION.tar.gz
17
- echo "+ Entering nginx-$TEST_DYNAMIC_WITH_NGINX_VERSION"
18
- cd "nginx-$TEST_DYNAMIC_WITH_NGINX_VERSION"
19
- run ./configure --with-cc='ccache cc' --add-dynamic-module="$NGINX_ADDON_DIR"
20
- run make "-j$COMPILE_CONCURRENCY"
@@ -1,4 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -e
3
-
4
- retry_run 3 rake test:install_deps BASE_DEPS=yes
@@ -1,5 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -e
3
-
4
- run ./bin/passenger-install-nginx-module --auto --prefix=/tmp/nginx --auto-download
5
- run bundle exec drake "-j$COMPILE_CONCURRENCY" test:integration:nginx
@@ -1,4 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -e
3
-
4
- retry_run 3 rake test:install_deps BASE_DEPS=yes NODE_MODULES=yes
@@ -1,4 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -e
3
-
4
- run bundle exec drake "-j$COMPILE_CONCURRENCY" test:node
@@ -1,4 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -e
3
-
4
- retry_run 3 rake test:install_deps BASE_DEPS=yes NODE_MODULES=yes
@@ -1,68 +0,0 @@
1
- def setupTest(enablerFlag, distribution, architecture, block) {
2
- if (enablerFlag) {
3
- node('linux') {
4
- withEnv([
5
- "CACHE_DIR=${env.JENKINS_HOME}/cache/${env.JOB_NAME}/${distribution}-${architecture}",
6
- "DISTRIBUTION=${distribution}",
7
- "ARCHITECTURE=${architecture}"
8
- ], block)
9
- }
10
- } else {
11
- echo 'Test skipped.'
12
- }
13
- }
14
-
15
- pipeline {
16
- agent { node { label 'master-pipeline' } }
17
-
18
- options {
19
- buildDiscarder(logRotator(numToKeepStr: '10'))
20
- timeout(time: 45, unit: 'MINUTES')
21
- disableConcurrentBuilds()
22
- timestamps()
23
- ansiColor('xterm')
24
- }
25
-
26
- parameters {
27
- booleanParam(name: 'EL6', defaultValue: true, description: 'RHEL 6 tests')
28
- booleanParam(name: 'EL7', defaultValue: true, description: 'RHEL 7 tests')
29
- }
30
-
31
- stages {
32
- stage('Initialize') {
33
- steps {
34
- script {
35
- if (env.JOB_NAME.indexOf('Enterprise') != -1) {
36
- env.ENTERPRISE = '1'
37
- } else {
38
- env.ENTERPRISE = '0'
39
- }
40
-
41
- // For debugging purposes
42
- sh 'env | sort'
43
- }
44
- }
45
- }
46
-
47
- stage('Test') {
48
- steps {
49
- script {
50
- parallel(
51
- 'el6 x86_64': {
52
- setupTest(params.EL6, 'el6', 'x86_64') {
53
- checkout scm
54
- sh './dev/ci/tests/rpm/run'
55
- }
56
- },
57
- 'el7 x86_64': {
58
- setupTest(params.EL7, 'el7', 'x86_64') {
59
- checkout scm
60
- sh './dev/ci/tests/rpm/run'
61
- }
62
- }
63
- )
64
- }
65
- }
66
- }
67
- }
68
- }
@@ -1,63 +0,0 @@
1
- #!/usr/bin/env bash
2
- # This script is from the "Passenger RPM packaging test" Jenkins job. It builds
3
- # packages for a specific distribution and architecture and runs tests on the resulting packages.
4
- #
5
- # Required environment variables:
6
- #
7
- # WORKSPACE
8
- # DISTRIBUTION
9
- # ARCHITECTURE
10
- #
11
- # Optional environment variables:
12
- #
13
- # PASSENGER_ROOT (defaults to $WORKSPACE)
14
- # CACHE_DIR (defaults to $WORKSPACE/cache)
15
- # ENTERPRISE
16
- # DEBUG_CONSOLE
17
- #
18
- # Sample invocation in Vagrant dev environment:
19
- #
20
- # env WORKSPACE=$HOME DISTRIBUTION=el7 ARCHITECTURE=x86_64 PASSENGER_ROOT=/passenger ./dev/ci/rpm/run
21
-
22
- set -e
23
- SELFDIR=$(dirname "$0")
24
- cd "$SELFDIR/../../../../packaging/rpm"
25
- # shellcheck source=../../../../packaging/rpm/internal/lib/library.sh
26
- source "./internal/lib/library.sh"
27
- # shellcheck source=../../../../packaging/rpm/internal/lib/distro_info.sh
28
- source "./internal/lib/distro_info.sh"
29
-
30
- require_envvar WORKSPACE "$WORKSPACE"
31
- require_envvar DISTRIBUTION "$DISTRIBUTION"
32
- require_envvar ARCHITECTURE "$ARCHITECTURE"
33
-
34
- PASSENGER_ROOT="${PASSENGER_ROOT:-$WORKSPACE}"
35
- CACHE_DIR="${CACHE_DIR:-$WORKSPACE/cache}"
36
-
37
- TEST_DISTRO_NAME=$(el_name_to_distro_name "$DISTRIBUTION")
38
- if [[ "$DEBUG_CONSOLE" = true ]]; then
39
- EXTRA_TEST_PARAMS=-D
40
- else
41
- EXTRA_TEST_PARAMS=
42
- fi
43
- if [[ "$ENTERPRISE" = 1 ]]; then
44
- EXTRA_TEST_PARAMS="$EXTRA_TEST_PARAMS -e /etc/passenger-enterprise-license"
45
- fi
46
-
47
- run mkdir -p "$CACHE_DIR"
48
- run ./build \
49
- -w "$WORKSPACE/work" \
50
- -c "$CACHE_DIR" \
51
- -o "$WORKSPACE/output" \
52
- -p "$PASSENGER_ROOT" \
53
- -d "$DISTRIBUTION" \
54
- -a "$ARCHITECTURE" \
55
- -R \
56
- rpm:all
57
- run ./test \
58
- -p "$PASSENGER_ROOT" \
59
- -d "$WORKSPACE/output/$DISTRIBUTION" \
60
- -c "$CACHE_DIR" \
61
- -x "$TEST_DISTRO_NAME" \
62
- -j \
63
- $EXTRA_TEST_PARAMS
@@ -1,4 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -e
3
-
4
- run bundle exec drake "-j$COMPILE_CONCURRENCY" test:ruby
@@ -1,4 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -e
3
-
4
- retry_run 3 rake test:install_deps BASE_DEPS=yes