mirror of
https://github.com/zulip/zulip.git
synced 2025-11-01 20:44:04 +00:00
http_headers: Substitute Nginx version based on OS.
success-http-headers-bionic.txt and success-http-headers-focal.txt differ only in the nginx version so this substitution will allow us to have single file for both of them. Also this change helps to avoid CI failure if Nginx version is updated in the OS.
This commit is contained in:
@@ -299,8 +299,7 @@ jobs:
|
||||
# Must be relative path from root
|
||||
paths:
|
||||
- zulip-server-test.tar.gz
|
||||
- success-http-headers-bionic.txt
|
||||
- success-http-headers-focal.txt
|
||||
- success-http-headers.template.txt
|
||||
- production-install
|
||||
- production-verify
|
||||
- production-upgrade-pg
|
||||
|
||||
@@ -32,8 +32,7 @@ fi
|
||||
# .circleci/config.yml
|
||||
mv /tmp/tmp.*/zulip-server-test.tar.gz /tmp/
|
||||
cp -a \
|
||||
tools/ci/success-http-headers-bionic.txt \
|
||||
tools/ci/success-http-headers-focal.txt \
|
||||
tools/ci/success-http-headers.template.txt \
|
||||
tools/ci/production-install \
|
||||
tools/ci/production-verify \
|
||||
tools/ci/production-upgrade-pg \
|
||||
|
||||
@@ -5,11 +5,6 @@
|
||||
set -e
|
||||
set -x
|
||||
|
||||
if [ -f /etc/os-release ]; then
|
||||
os_info="$(. /etc/os-release; printf '%s\n' "$VERSION_CODENAME")"
|
||||
{ read -r os_version_codename || true; } <<< "$os_info"
|
||||
fi
|
||||
|
||||
cat >>/etc/zulip/settings.py <<EOF
|
||||
# CircleCI override settings above
|
||||
AUTHENTICATION_BACKENDS = ( 'zproject.backends.EmailAuthBackend', )
|
||||
@@ -43,13 +38,15 @@ echo; echo "Now testing that the newly installed server's homepage loads"; echo
|
||||
wget https://localhost -O /tmp/index.html --no-check-certificate -S 2> /tmp/wget-output || true # || true so we see errors.log if this 500s
|
||||
grep -vi '\(Vary\|Content-Language\|expires\|issued by\|modified\|saved\|[.][.][.]\|Date\|[-][-]\)' /tmp/wget-output > /tmp/http-headers-processed
|
||||
|
||||
nginx_version="$(nginx -v 2>&1 | awk '{print $3, $4}')"
|
||||
|
||||
# Simplify the diff by getting replacing 4-5 digit length numbers with <Length>.
|
||||
sed -i 's|Length: [0-9]\+\( [(][0-9]\+[.][0-9]K[)]\)\?|Length: <Length>|' /tmp/http-headers-processed
|
||||
sed -i 's|Length: [0-9]\+\( [(][0-9]\+[.][0-9]K[)]\)\?|Length: <Length>|' /tmp/success-http-headers-"$os_version_codename".txt
|
||||
if ! diff -ur /tmp/http-headers-processed /tmp/success-http-headers-"$os_version_codename".txt; then
|
||||
sed -i -e 's|Length: [0-9]\+\( [(][0-9]\+[.][0-9]K[)]\)\?|Length: <Length>|' -e "s|{nginx_version_string}|$nginx_version|g" /tmp/success-http-headers.template.txt
|
||||
if ! diff -ur /tmp/http-headers-processed /tmp/success-http-headers.template.txt; then
|
||||
set +x
|
||||
echo
|
||||
echo "FAILURE: The HTTP Headers returned from loading the homepage on the server do not match the contents of tools/ci/success-http-headers.txt. Typically, this means that the server threw a 500 when trying to load the homepage."
|
||||
echo "FAILURE: The HTTP Headers returned from loading the homepage on the server do not match the contents of tools/ci/success-http-headers.template.txt. Typically, this means that the server threw a 500 when trying to load the homepage."
|
||||
echo "Displaying the contents of the server's error log:"
|
||||
echo
|
||||
cat /var/log/zulip/errors.log
|
||||
|
||||
@@ -1,28 +0,0 @@
|
||||
Self-signed certificate encountered.
|
||||
WARNING: certificate common name ‘127.0.0.1’ doesn't match requested host name ‘localhost’.
|
||||
HTTP/1.1 302 Found
|
||||
Server: nginx/1.18.0 (Ubuntu)
|
||||
Content-Type: text/html; charset=utf-8
|
||||
Content-Length: 0
|
||||
Connection: keep-alive
|
||||
Location: /login/
|
||||
Strict-Transport-Security: max-age=15768000
|
||||
X-Frame-Options: DENY
|
||||
X-Content-Type-Options: nosniff
|
||||
X-XSS-Protection: 1; mode=block
|
||||
Location: /login/ [following]
|
||||
Reusing existing connection to localhost:443.
|
||||
HTTP/1.1 200 OK
|
||||
Server: nginx/1.18.0 (Ubuntu)
|
||||
Content-Type: text/html; charset=utf-8
|
||||
Content-Length: 6361
|
||||
Connection: keep-alive
|
||||
Strict-Transport-Security: max-age=15768000
|
||||
X-Frame-Options: DENY
|
||||
X-Content-Type-Options: nosniff
|
||||
X-XSS-Protection: 1; mode=block
|
||||
Length: 6361 (6.2K) [text/html]
|
||||
Saving to: ‘/tmp/index.html’
|
||||
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
Self-signed certificate encountered.
|
||||
WARNING: certificate common name ‘127.0.0.1’ doesn't match requested host name ‘localhost’.
|
||||
HTTP/1.1 302 Found
|
||||
Server: nginx/1.14.0 (Ubuntu)
|
||||
Server: {nginx_version_string}
|
||||
Content-Type: text/html; charset=utf-8
|
||||
Content-Length: 0
|
||||
Connection: keep-alive
|
||||
@@ -13,7 +13,7 @@
|
||||
Location: /login/ [following]
|
||||
Reusing existing connection to localhost:443.
|
||||
HTTP/1.1 200 OK
|
||||
Server: nginx/1.14.0 (Ubuntu)
|
||||
Server: {nginx_version_string}
|
||||
Content-Type: text/html; charset=utf-8
|
||||
Content-Length: 6361
|
||||
Connection: keep-alive
|
||||
@@ -65,7 +65,7 @@ whitespace_rules: List["Rule"] = [
|
||||
},
|
||||
{'pattern': '\t',
|
||||
'strip': '\n',
|
||||
'exclude': {'tools/ci/success-http-headers-bionic.txt', 'tools/ci/success-http-headers-focal.txt'},
|
||||
'exclude': {'tools/ci/success-http-headers.template.txt'},
|
||||
'description': 'Fix tab-based whitespace'},
|
||||
]
|
||||
comma_whitespace_rule: List["Rule"] = [
|
||||
|
||||
Reference in New Issue
Block a user