appsembler / configuration

a simple, but flexible, way for anyone to stand up an instance of the edX platform that is fully configured and ready-to-go
GNU Affero General Public License v3.0
15 stars 13 forks source link

Tahoe: use nginx_lms_extra_locations for custom domains #249

Closed OmarIthawi closed 5 years ago

OmarIthawi commented 5 years ago

Why

RedisLabs wants to show only the RedisLabs favicon, and not edX's.

Technical Details

Same as https://github.com/appsembler/configuration/pull/95 but for Tahoe custom domains.

This needed to make https://university.redislabs.com/favicon.ico returns 404 just like http://cybereason.tahoe.appsembler.com/favicon.ico is doing.

This is a continuation to https://github.com/appsembler/edx-configs/pull/640

Trello Card

(2) Fix specific cases where browser displays Open edX logo as favicon

thraxil commented 5 years ago

Travis fails on:

"  Running setup.py bdist_wheel for pysqlite: finished with status 'error'", 
"  Complete output from command /edx/app/ecommerce/venvs/ecommerce/bin/python2.7 -u -c \"import setuptools, tokenize;__file__='/tmp/pip-build-FwAYSs/pysqlite/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\\r\\n', '\\n');f.close();exec(compile(code, __file__, 'exec'))\" bdist_wheel -d /tmp/tmpVkEcs3pip-wheel- --python-tag cp27:", 
"  running bdist_wheel", 
"  running build", 
"  running build_py", 
"  creating build", 
"  creating build/lib.linux-x86_64-2.7", 
"  creating build/lib.linux-x86_64-2.7/pysqlite2", 
"  copying lib/__init__.py -> build/lib.linux-x86_64-2.7/pysqlite2", 
"  copying lib/dump.py -> build/lib.linux-x86_64-2.7/pysqlite2", 
"  copying lib/dbapi2.py -> build/lib.linux-x86_64-2.7/pysqlite2", 
"  creating build/lib.linux-x86_64-2.7/pysqlite2/test", 
"  copying lib/test/factory.py -> build/lib.linux-x86_64-2.7/pysqlite2/test", 
"  copying lib/test/__init__.py -> build/lib.linux-x86_64-2.7/pysqlite2/test", 
"  copying lib/test/dbapi.py -> build/lib.linux-x86_64-2.7/pysqlite2/test", 
"  copying lib/test/dump.py -> build/lib.linux-x86_64-2.7/pysqlite2/test", 
"  copying lib/test/userfunctions.py -> build/lib.linux-x86_64-2.7/pysqlite2/test", 
"  copying lib/test/regression.py -> build/lib.linux-x86_64-2.7/pysqlite2/test", 
"  copying lib/test/hooks.py -> build/lib.linux-x86_64-2.7/pysqlite2/test", 
"  copying lib/test/transactions.py -> build/lib.linux-x86_64-2.7/pysqlite2/test", 
"  copying lib/test/types.py -> build/lib.linux-x86_64-2.7/pysqlite2/test", 
"  running build_ext", 
"  building 'pysqlite2._sqlite' extension", 
"  creating build/temp.linux-x86_64-2.7", 
"  creating build/temp.linux-x86_64-2.7/src", 
"  x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DMODULE_NAME=\"pysqlite2.dbapi2\" -Ish: -I1: -Ipkg-config: -Inot -Ifound -I/usr/include/python2.7 -c src/module.c -o build/temp.linux-x86_64-2.7/src/module.o", 
"  In file included from src/module.c:24:0:", 
"  src/connection.h:33:21: fatal error: sqlite3.h: No such file or directory", 
"  compilation terminated.", 
"  error: command 'x86_64-linux-gnu-gcc' failed with exit status 1"

Ie, the usual "something utterly unrelated to this or any other recent change" and we're once again left wondering how the tests ever passed....

thraxil commented 5 years ago

Adding to the research on why it's failing, it appears to be building the build/ecommerce/Dockerfile.test that's hitting the error. I made a no-op PR that didn't change anything and it passed, but everything passed in like 2 minutes or less. Looking at the Makefile setup, it appears that they are sneaky and only build docker images when something potentially related to that image has changed. So I think the problem here is that the ecommerce docker image (which we don't really use) has a problem with sqlite. But it also uses nginx, so a change to the nginx role forces it to actually run and fail.

thraxil commented 5 years ago

OK. The fix in https://github.com/appsembler/configuration/pull/252 should get the TravisCI tests passing again.