Generate constraints file to pin deps in Docker images

Dockerfiles pin versions using constraints file

Pulling out strip_hashes and add --no-deps flag
This commit is contained in:
sydneyli
2019-02-20 16:59:55 +02:00
committed by Joona Hoikkala
parent bda840b3ee
commit 7c731599a0
18 changed files with 40 additions and 20 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
# Specifies Python package versions for development.
# Specifies Python package versions for development and building Docker images.
# It includes in particular packages not specified in letsencrypt-auto's requirements file.
# Some dev package versions specified here may be overridden by higher level constraints
# files during tests (eg. letsencrypt-auto-source/pieces/dependency-requirements.txt).
+2 -4
View File
@@ -19,6 +19,7 @@ import tempfile
import merge_requirements as merge_module
import readlink
import strip_hashes
def find_tools_path():
@@ -47,10 +48,7 @@ def certbot_normal_processing(tools_path, test_constraints):
with open(certbot_requirements, 'r') as fd:
data = fd.readlines()
with open(test_constraints, 'w') as fd:
for line in data:
search = re.search(r'^(\S*==\S*).*$', line)
if search:
fd.write('{0}{1}'.format(search.group(1), os.linesep))
fd.write(strip_hashes.main(data))
def merge_requirements(tools_path, requirements, test_constraints, all_constraints):
+16
View File
@@ -0,0 +1,16 @@
#!/usr/bin/env python
import os
import re
import sys
def main(args):
out_lines = []
for line in args:
search = re.search(r'^(\S*==\S*).*$', line)
if search:
out_lines.append(search.group(1))
return os.linesep.join(out_lines)
if __name__ == '__main__':
print(main(sys.argv[1:]))