# vpython VirtualEnv protobuf for "gsutil".
#
# See:
# https://chromium.googlesource.com/infra/luci/luci-go/+/HEAD/vpython/api/vpython/spec.proto
#
# This is a "vpython" VirtualEnv specification applied to invocations of "gsutil"
# by the bootstrap wrapper, "gsutil.py". It ensures that any Python distribution
# has the expected Python packages installed.
#
# This is specifically relevant on Google Compute Engine invocations of
# "gsutil", where a stock system-deployed file in "/etc/" explicitly specifies
# that the "google_compute_engine" and "boto" Python packages are available.

python_version: "2.7"

wheel <
  name: "infra/python/wheels/google_compute_engine-py2_py3"
  version: "version:2.6.2"
>
wheel <
  name: "infra/python/wheels/boto-py2_py3"
  version: "version:2.48.0"
>

# "gsutil" on non-GCE can require PyOpenSSL, which, in turn, requires
# "cryptography".

wheel: <
  name: "infra/python/wheels/pyopenssl-py2_py3"
  version: "version:17.2.0"
>

##
# BEGIN "cryptography" dependencies.
##

wheel: <
  name: "infra/python/wheels/cryptography/${vpython_platform}"
  version: "version:2.9.2"
>

wheel: <
  name: "infra/python/wheels/appdirs-py2_py3"
  version: "version:1.4.3"
>

wheel: <
  name: "infra/python/wheels/enum34-py2"
  version: "version:1.1.6"
>

wheel: <
  name: "infra/python/wheels/cffi/${vpython_platform}"
  version: "version:1.10.0"
>

wheel: <
  name: "infra/python/wheels/idna-py2_py3"
  version: "version:2.5"
>

wheel: <
  name: "infra/python/wheels/ipaddress-py2"
  version: "version:1.0.18"
>

wheel: <
  name: "infra/python/wheels/packaging-py2_py3"
  version: "version:16.8"
>

wheel: <
  name: "infra/python/wheels/pyasn1-py2_py3"
  version: "version:0.2.3"
>

wheel: <
  name: "infra/python/wheels/pycparser-py2_py3"
  version: "version:2.17"
>

wheel: <
  name: "infra/python/wheels/pyparsing-py2_py3"
  version: "version:2.2.0"
>

wheel: <
  name: "infra/python/wheels/setuptools-py2_py3"
  version: "version:34.3.2"
>

wheel: <
  name: "infra/python/wheels/six-py2_py3"
  version: "version:1.10.0"
>

##
# END "cryptography" dependencies.
##

wheel: <
  name: "infra/python/wheels/crcmod/${vpython_platform}"
  version: "version:1.7"
  match_tag: <
    abi: "cp27mu"
    platform: "manylinux1_i686"
  >
  match_tag: <
    abi: "cp27mu"
    platform: "manylinux1_x86_64"
  >
  match_tag: <
    platform: "macosx_10_6_intel"
  >
>
