Skip to content

pypa/bootstrap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

94 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

bootstrap.pypa.io

bootstrap.pypa.io is a service hosted by the Python Software Foundation for the Python Packaging Authority to provide bootstrapping scripts for common packaging tools to environments that may not already have them.

This repository hosts the assets used to build and serve the service.

Locally testing

You can construct and test the image locally after cloning the repository

docker build -t bootstrap_pypa_io .
docker run --rm -p 8080:8000 bootstrap_pypa_io

The service is then available at http://localhost:8080

You can build from a different version of a given source using Docker build-args:

docker build -t bootstrap_pypa_io --build-arg get_pip_branch=24.1 .

Current args are:

ARG get_pip_branch=main
ARG get_virtualenv_branch=main
ARG setuptools_branch=bootstrap
ARG buildout_branch=bootstrap-release

Dockerfile

The Dockerfile

  1. Retrieves upstream sources from get-pip, get-virtualenv, setuptools, and buildout.
  2. Constructs the directory that will be served at bootstrap.pypa.io
  3. Builds a container for serving the directory via nginx and executing CDN purges

CDN purging

purge.sh is run after successful deployments to purge all files served by bootstrap.pypa.io.

Updating

Changes to upstream sources are tracked via the monitor GitHub Action.

When changes are detected, a commit will automatically be created.

Once our "tests" have passed, a deployment will automatically be started. Once complete the purge.sh script will be run to purge the CDN cache.