Skip to content

Conversation

@white-gecko
Copy link
Contributor

Description

By introducing the UWSGI_MOUNT environment variable in the default uwsgi.ini it is not possible to configure the uWSGI mount with an environment variable on the OCI/docker image.

Motivation and Context

Previously it required to mount a uwsgi.ini file for this configuration which is not handy in all setups.
Just setting the argument --mount on the command did not work as it collides with the wsgi setting in the default uwsgi.ini.

Screenshots (if appropriate):

Types of changes

  • Replay fix (fixes a replay specific issue)
  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have added or updated tests to cover my changes.
  • All new and existing tests passed.

@tw4l tw4l self-assigned this Feb 12, 2025
@ikreymer ikreymer merged commit 0de883e into webrecorder:main Mar 27, 2025
@white-gecko white-gecko deleted the feature/uwsgiMount branch March 27, 2025 19:06
annesiri added a commit to statisticsnorway/ssbno-pywb that referenced this pull request May 9, 2025
* Allow to configure uWSGI mount via environment variable (webrecorder#926)

* Introduce UWSGI_MOUNT env var

* Add a note to the documentation.

* Refuse to serve static files that are outside of static_dir (webrecorder#932)

Prevents the path traversal attack reported in webrecorder#931

* version: bump to 2.8.4

* Fix tests, support py3.9, 3.10, 3.11 (webrecorder#933)

- tests: fix or disable tests that no longer work reliably, eg. depend on external sites
- support python 3.9, 3.10, 3.11 in tests for now
- bump version to 2.9.0-beta.0

* Add optional client-side playback to pywb (webrecorder#928)

This PR adds optional client-side replay in pywb's framed replay mode, using wabac.js. This is implemented using wabac.js's live proxy mode, similar to the implementation by Alex Osborne's proof of concept and enabled via the config.yaml file. Documentation has also been added.

The service worker proxies to the original pywb URLs and allows for 'graceful fallback' if service workers are not supported.

Client side replay can be enabled by setting `client_side_replay: true` in config.yaml

The wabac.js service worker is added to the pywb static directory at installation time via setup.py. The wabac.js version can be bumped via a constant in that file (current version is 2.22.12)

In addition, a few small housekeeping changes are also included:
- The Python version in the pywb Dockerfile is updated to 3.11 to avoid using an unsupported version of Python
- Similarly, CI now runs on Python 3.9-3.11 to drop older versions that are no longer supported in GH Actions runners
- wombat updated to latest 2.8.10

bump version to 2.9.0-beta.0
---------

Co-authored-by: Ilya Kreymer <ikreymer@gmail.com>

* Update README.rst

* Fix py3.9 CI (webrecorder#934)

* ci: attempt to fix tests for 3.9 by skipping test that intermittently hang.

* simplify: use existing prefix as archivePrefix, fixes webrecorder#937 (webrecorder#938)

update to wabac.js 2.22.15
bump to 2.9.0b1

---------

Co-authored-by: Natanael Arndt <arndtn@gmail.com>
Co-authored-by: Alex Osborne <aosborne@nla.gov.au>
Co-authored-by: Ilya Kreymer <ikreymer@gmail.com>
Co-authored-by: Ilya Kreymer <ikreymer@users.noreply.github.com>
Co-authored-by: Tessa Walsh <tessa@bitarchivist.net>
annesiri added a commit to statisticsnorway/ssbno-pywb that referenced this pull request May 26, 2025
* added the pvc file

* MIIM-2185-probes (#13)

* probes

* Fetching changes from upstream repo (#14)

* Allow to configure uWSGI mount via environment variable (webrecorder#926)

* Introduce UWSGI_MOUNT env var

* Add a note to the documentation.

* Refuse to serve static files that are outside of static_dir (webrecorder#932)

Prevents the path traversal attack reported in webrecorder#931

* version: bump to 2.8.4

* Fix tests, support py3.9, 3.10, 3.11 (webrecorder#933)

- tests: fix or disable tests that no longer work reliably, eg. depend on external sites
- support python 3.9, 3.10, 3.11 in tests for now
- bump version to 2.9.0-beta.0

* Add optional client-side playback to pywb (webrecorder#928)

This PR adds optional client-side replay in pywb's framed replay mode, using wabac.js. This is implemented using wabac.js's live proxy mode, similar to the implementation by Alex Osborne's proof of concept and enabled via the config.yaml file. Documentation has also been added.

The service worker proxies to the original pywb URLs and allows for 'graceful fallback' if service workers are not supported.

Client side replay can be enabled by setting `client_side_replay: true` in config.yaml

The wabac.js service worker is added to the pywb static directory at installation time via setup.py. The wabac.js version can be bumped via a constant in that file (current version is 2.22.12)

In addition, a few small housekeeping changes are also included:
- The Python version in the pywb Dockerfile is updated to 3.11 to avoid using an unsupported version of Python
- Similarly, CI now runs on Python 3.9-3.11 to drop older versions that are no longer supported in GH Actions runners
- wombat updated to latest 2.8.10

bump version to 2.9.0-beta.0
---------

Co-authored-by: Ilya Kreymer <ikreymer@gmail.com>

* Update README.rst

* Fix py3.9 CI (webrecorder#934)

* ci: attempt to fix tests for 3.9 by skipping test that intermittently hang.

* simplify: use existing prefix as archivePrefix, fixes webrecorder#937 (webrecorder#938)

update to wabac.js 2.22.15
bump to 2.9.0b1

---------

Co-authored-by: Natanael Arndt <arndtn@gmail.com>
Co-authored-by: Alex Osborne <aosborne@nla.gov.au>
Co-authored-by: Ilya Kreymer <ikreymer@gmail.com>
Co-authored-by: Ilya Kreymer <ikreymer@users.noreply.github.com>
Co-authored-by: Tessa Walsh <tessa@bitarchivist.net>

* fix live and ready (#15)

* added updating docker image in Dockerfile (#16)

* Misc updates to reduce vulnerabilities (#17)

* Experimental cleanup

* a few more upgrades

* removed comment

---------

Co-authored-by: Rune Johansen <runejo@gmail.com>

---------

Co-authored-by: Carl-OW <142233642+Carl-OW@users.noreply.github.com>
Co-authored-by: Natanael Arndt <arndtn@gmail.com>
Co-authored-by: Alex Osborne <aosborne@nla.gov.au>
Co-authored-by: Ilya Kreymer <ikreymer@gmail.com>
Co-authored-by: Ilya Kreymer <ikreymer@users.noreply.github.com>
Co-authored-by: Tessa Walsh <tessa@bitarchivist.net>
Co-authored-by: Rune Johansen <runejo@gmail.com>
annesiri added a commit to statisticsnorway/ssbno-pywb that referenced this pull request May 30, 2025
* Allow to configure uWSGI mount via environment variable (webrecorder#926)

* Introduce UWSGI_MOUNT env var

* Add a note to the documentation.

* Refuse to serve static files that are outside of static_dir (webrecorder#932)

Prevents the path traversal attack reported in webrecorder#931

* version: bump to 2.8.4

* Fix tests, support py3.9, 3.10, 3.11 (webrecorder#933)

- tests: fix or disable tests that no longer work reliably, eg. depend on external sites
- support python 3.9, 3.10, 3.11 in tests for now
- bump version to 2.9.0-beta.0

* Add optional client-side playback to pywb (webrecorder#928)

This PR adds optional client-side replay in pywb's framed replay mode, using wabac.js. This is implemented using wabac.js's live proxy mode, similar to the implementation by Alex Osborne's proof of concept and enabled via the config.yaml file. Documentation has also been added.

The service worker proxies to the original pywb URLs and allows for 'graceful fallback' if service workers are not supported.

Client side replay can be enabled by setting `client_side_replay: true` in config.yaml

The wabac.js service worker is added to the pywb static directory at installation time via setup.py. The wabac.js version can be bumped via a constant in that file (current version is 2.22.12)

In addition, a few small housekeeping changes are also included:
- The Python version in the pywb Dockerfile is updated to 3.11 to avoid using an unsupported version of Python
- Similarly, CI now runs on Python 3.9-3.11 to drop older versions that are no longer supported in GH Actions runners
- wombat updated to latest 2.8.10

bump version to 2.9.0-beta.0
---------

Co-authored-by: Ilya Kreymer <ikreymer@gmail.com>

* Update README.rst

* Fix py3.9 CI (webrecorder#934)

* ci: attempt to fix tests for 3.9 by skipping test that intermittently hang.

* simplify: use existing prefix as archivePrefix, fixes webrecorder#937 (webrecorder#938)

update to wabac.js 2.22.15
bump to 2.9.0b1

---------

Co-authored-by: Natanael Arndt <arndtn@gmail.com>
Co-authored-by: Alex Osborne <aosborne@nla.gov.au>
Co-authored-by: Ilya Kreymer <ikreymer@gmail.com>
Co-authored-by: Ilya Kreymer <ikreymer@users.noreply.github.com>
Co-authored-by: Tessa Walsh <tessa@bitarchivist.net>
johnnadeluy added a commit to statisticsnorway/ssbno-pywb that referenced this pull request Jun 20, 2025
* Allow to configure uWSGI mount via environment variable (webrecorder#926)

* Introduce UWSGI_MOUNT env var

* Add a note to the documentation.

* Refuse to serve static files that are outside of static_dir (webrecorder#932)

Prevents the path traversal attack reported in webrecorder#931

* version: bump to 2.8.4

* Fix tests, support py3.9, 3.10, 3.11 (webrecorder#933)

- tests: fix or disable tests that no longer work reliably, eg. depend on external sites
- support python 3.9, 3.10, 3.11 in tests for now
- bump version to 2.9.0-beta.0

* Add optional client-side playback to pywb (webrecorder#928)

This PR adds optional client-side replay in pywb's framed replay mode, using wabac.js. This is implemented using wabac.js's live proxy mode, similar to the implementation by Alex Osborne's proof of concept and enabled via the config.yaml file. Documentation has also been added.

The service worker proxies to the original pywb URLs and allows for 'graceful fallback' if service workers are not supported.

Client side replay can be enabled by setting `client_side_replay: true` in config.yaml

The wabac.js service worker is added to the pywb static directory at installation time via setup.py. The wabac.js version can be bumped via a constant in that file (current version is 2.22.12)

In addition, a few small housekeeping changes are also included:
- The Python version in the pywb Dockerfile is updated to 3.11 to avoid using an unsupported version of Python
- Similarly, CI now runs on Python 3.9-3.11 to drop older versions that are no longer supported in GH Actions runners
- wombat updated to latest 2.8.10

bump version to 2.9.0-beta.0
---------

Co-authored-by: Ilya Kreymer <ikreymer@gmail.com>

* Update README.rst

* Fix py3.9 CI (webrecorder#934)

* ci: attempt to fix tests for 3.9 by skipping test that intermittently hang.

* simplify: use existing prefix as archivePrefix, fixes webrecorder#937 (webrecorder#938)

update to wabac.js 2.22.15
bump to 2.9.0b1

---------

Co-authored-by: Natanael Arndt <arndtn@gmail.com>
Co-authored-by: Alex Osborne <aosborne@nla.gov.au>
Co-authored-by: Ilya Kreymer <ikreymer@gmail.com>
Co-authored-by: Ilya Kreymer <ikreymer@users.noreply.github.com>
Co-authored-by: Tessa Walsh <tessa@bitarchivist.net>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants