Skip to content

Commit

Permalink
Unpin django-split-settings (#15379)
Browse files Browse the repository at this point in the history
* unpin django-split-settings

blocker is 2 years old. upgrading to see if the previous issue is still present. upgrading to a version with Python 3.11 support

* remove UPGRADE BLOCKER in README
  • Loading branch information
jessicamack authored Aug 16, 2024
1 parent 43a3d4a commit ca3e899
Show file tree
Hide file tree
Showing 3 changed files with 2 additions and 44 deletions.
42 changes: 0 additions & 42 deletions requirements/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,48 +49,6 @@ Make sure to delete the old tarball if it is an upgrade.
Anything pinned in `*.in` files involves additional manual work in
order to upgrade. Some information related to that work is outlined here.

### django-split-settings

When we attemed to upgrade past 1.0.0 the build process in GitHub failed on the docker build step with the following error:

```
#19 [builder 12/12] RUN AWX_SETTINGS_FILE=/dev/null SKIP_SECRET_KEY_CHECK=yes SKIP_PG_VERSION_CHECK=yes /var/lib/awx/venv/awx/bin/awx-manage collectstatic --noinput --clear
#19 sha256:cd5adb08d3aa92504348338475db9f8bb820b4f67ba5b75edf9ae7554175f1d0
#19 0.725 Traceback (most recent call last):
#19 0.725 File \"/var/lib/awx/venv/awx/bin/awx-manage\", line 8, in <module>
#19 0.726 sys.exit(manage())
#19 0.726 File \"/var/lib/awx/venv/awx/lib64/python3.9/site-packages/awx/__init__.py\", line 178, in manage
#19 0.726 prepare_env()
#19 0.726 File \"/var/lib/awx/venv/awx/lib64/python3.9/site-packages/awx/__init__.py\", line 133, in prepare_env
#19 0.726 if not settings.DEBUG: # pragma: no cover
#19 0.726 File \"/var/lib/awx/venv/awx/lib64/python3.9/site-packages/django/conf/__init__.py\", line 82, in __getattr__
#19 0.726 self._setup(name)
#19 0.726 File \"/var/lib/awx/venv/awx/lib64/python3.9/site-packages/django/conf/__init__.py\", line 69, in _setup
#19 0.726 self._wrapped = Settings(settings_module)
#19 0.726 File \"/var/lib/awx/venv/awx/lib64/python3.9/site-packages/django/conf/__init__.py\", line 170, in __init__
#19 0.726 mod = importlib.import_module(self.SETTINGS_MODULE)
#19 0.726 File \"/usr/lib64/python3.9/importlib/__init__.py\", line 127, in import_module
#19 0.726 return _bootstrap._gcd_import(name[level:], package, level)
#19 0.726 File \"<frozen importlib._bootstrap>\", line 1030, in _gcd_import
#19 0.726 File \"<frozen importlib._bootstrap>\", line 1007, in _find_and_load
#19 0.726 File \"<frozen importlib._bootstrap>\", line 986, in _find_and_load_unlocked
#19 0.726 File \"<frozen importlib._bootstrap>\", line 680, in _load_unlocked
#19 0.726 File \"<frozen importlib._bootstrap_external>\", line 850, in exec_module
#19 0.726 File \"<frozen importlib._bootstrap>\", line 228, in _call_with_frames_removed
#19 0.726 File \"/var/lib/awx/venv/awx/lib64/python3.9/site-packages/awx/settings/production.py\", line 74, in <module>
#19 0.726 include(settings_file, optional(settings_files), scope=locals())
#19 0.726 File \"/var/lib/awx/venv/awx/lib64/python3.9/site-packages/split_settings/tools.py\", line 116, in include
#19 0.726 module = module_from_spec(spec) # type: ignore
#19 0.726 File \"<frozen importlib._bootstrap>\", line 562, in module_from_spec
#19 0.726 AttributeError: 'NoneType' object has no attribute 'loader'
#19 ERROR: executor failed running [/bin/sh -c AWX_SETTINGS_FILE=/dev/null SKIP_SECRET_KEY_CHECK=yes SKIP_PG_VERSION_CHECK=yes /var/lib/awx/venv/awx/bin/awx-manage collectstatic --noinput --clear]: exit code: 1
```

The various versions past 1.0.0 talk about adding and removing support for different python versions so there may be a mismatch in what the versions of the library support vs what is being built inside the container. Ironically, we did not experience the problem on our local containers when running `collectstatic` so we think it has something to do specifically with the build process.

This issue was not picked up by any existing QE testing, only when building in GitHub.


### social-auth-app-django

django-social keeps a list of backends in memory that it gathers
Expand Down
2 changes: 1 addition & 1 deletion requirements/requirements.in
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ django-polymorphic
django-pglocks
django-radius
django-solo
django-split-settings==1.0.0 # We hit a strange issue where the release process errored when upgrading past 1.0.0 see UPGRADE BLOCKERS
django-split-settings
djangorestframework>=3.15.0
djangorestframework-yaml
filelock
Expand Down
2 changes: 1 addition & 1 deletion requirements/requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,7 @@ django-radius==1.5.1
# via -r /awx_devel/requirements/requirements.in
django-solo==2.2.0
# via -r /awx_devel/requirements/requirements.in
django-split-settings==1.0.0
django-split-settings==1.3.2
# via
# -r /awx_devel/requirements/requirements.in
# django-ansible-base
Expand Down

0 comments on commit ca3e899

Please sign in to comment.