Add scripts for building a bootstrap installer.

Review Request #13468 — Created Dec. 27, 2023 and submitted

Information

rbinstall
master

Reviewers

In order to simplify installation, we'll be distributing the Review
Board installer as a single file, able to be run using curl | python.

To do this, we'll be distributing the primary installer as a
booststrapping Python script that contains an embedded copy of the
installer's wheel. The bootstrapping installer sets up a temporary
virtualenv (using python -m venv), installs the package within that,
and then runs it. This ensures we can run in a stable environment.

scripts/pack.sh is responsible for building the bootstrap installer
and the wheel, and then embedding the wheel within the bootstrap
installer.

Successfully built the installer and ran it in all supported Linux
distributions.

Summary ID
Add scripts for building a bootstrap installer.
In order to simplify installation, we'll be distributing the Review Board installer as a single file, able to be run using `curl | python`. To do this, we'll be distributing the primary installer as a booststrapping Python script that contains an embedded copy of the installer's wheel. The bootstrapping installer sets up a temporary virtualenv (using `python -m venv`), installs the package within that, and then runs it. This ensures we can run in a stable environment. `scripts/pack.sh` is responsible for building the bootstrap installer and the wheel, and then embedding the wheel within the bootstrap installer.
c358317b5872c9d6fb51812c1bd1f7d5654c466f
Description From Last Updated

undefined name 'rbinstall_whl_filename' Column: 45 Error code: F821

reviewbotreviewbot

undefined name 'get_installer_data' Column: 35 Error code: F821

reviewbotreviewbot

undefined name 'rbinstall_whl_filename' Column: 45 Error code: F821

reviewbotreviewbot

undefined name 'get_installer_data' Column: 35 Error code: F821

reviewbotreviewbot
Checks run (1 failed, 1 succeeded)
flake8 failed.
JSHint passed.

flake8

chipx86
Review request changed
Change Summary:
  • Improved output when preparing the installer.
  • Added graceful handling of non-0 exit codes.
  • Passed along the system Python to the installer.
Commits:
Summary ID
Add scripts for building a bootstrap installer.
In order to simplify installation, we'll be distributing the Review Board installer as a single file, able to be run using `curl | python`. To do this, we'll be distributing the primary installer as a booststrapping Python script that contains an embedded copy of the installer's wheel. The bootstrapping installer sets up a temporary virtualenv (using `python -m venv`), installs the package within that, and then runs it. This ensures we can run in a stable environment. `scripts/pack.sh` is responsible for building the bootstrap installer and the wheel, and then embedding the wheel within the bootstrap installer.
65e20a2697367fe31ab31c5315721656936458d9
Add scripts for building a bootstrap installer.
In order to simplify installation, we'll be distributing the Review Board installer as a single file, able to be run using `curl | python`. To do this, we'll be distributing the primary installer as a booststrapping Python script that contains an embedded copy of the installer's wheel. The bootstrapping installer sets up a temporary virtualenv (using `python -m venv`), installs the package within that, and then runs it. This ensures we can run in a stable environment. `scripts/pack.sh` is responsible for building the bootstrap installer and the wheel, and then embedding the wheel within the bootstrap installer.
c358317b5872c9d6fb51812c1bd1f7d5654c466f

Checks run (1 failed, 1 succeeded)

flake8 failed.
JSHint passed.

flake8

david
  1. Ship It!
  2. 
      
chipx86
Review request changed
Status:
Completed
Change Summary:
Pushed to master (6820d1c)