Files
system-config/playbooks/roles/create-venv
Ian Wienand 4fa8d2dd39 create-venv: make upgrade venv once per day
This was inspired by a similar change
I78a914f71cef687f09fcfee0f3f498b79d810f5d.  In the bootstrap-bridge
production, we are calling create-venv every time we fire off a set of
production jobs.  While it's good to keep the venv updated, it doesn't
need to happen hourly.

This writes the requirements to a file, and only installs it if the
template updates (i.e. if the venv is fresh, the dependencies updated
or we updated the daily timestamp).

Change-Id: I7a70b73fb907b923f47a2a0de72e21649c15e05f
2022-12-06 17:28:09 +11:00
..

Create a venv

You would think this role is unnecessary and roles could just install a venv directly ... except sometimes pip/setuptools get out of date on a platform and can't understand how to install compatible things. For example the pip shipped on Bionic will upgrade itself to a version that doesn't support Python 3.6 because it doesn't understand the metadata tags the new version marks itself with. We've seen similar problems with wheels. History has shown that whenever this problem appears solved, another issue will appear. So for reasons like this, we have this as a synchronization point for setting up venvs.

Role Variables