ansible_sign.checksum 包
子包
子模块
ansible_sign.checksum.base 模块
- class ansible_sign.checksum.base.ChecksumFile(root, differ=None)[source]
基类:
object
获取一个校验和文件并能够检查和比较其内容与给定的根目录。此外:能够写出校验和文件。
我们目前只允许 sha256,虽然支持 512 等会很容易。
- calculate_checksums_from_root(verifying)[source]
使用项目的根目录和传递给构造函数的 differ 类,迭代项目中的所有文件并计算它们的校验和。返回一个字典,结果以文件名作为键。
仅仅调用此方法在许多情况下是不够的 - 您希望确保校验和列表中的文件与实际存在的文件相同。上面的 diff() 正是这样做的。使用此方法结合此方法,或者使用 verify(),它会为您执行此操作。
- property differ_warnings
一个 differ 可以将一组警告(作为字符串)存储在 the_differ.warnings 中,我们可以将其传播到此处。这允许调用代码在 diffing 时显示发现的任何警告。
- generate_gnu_style()[source]
使用传递给构造函数的根目录和‘differ’ 类,生成一个 GNU 风格的校验和清单文件。这是始终从头开始生成的,方法是通过询问 differ 查找根目录中的相关文件列表,并计算每个文件的校验和。
生成的列表始终按文件名排序。
- verify(parsed_manifest_dct, diff=True)[source]
获取一个解析的清单文件(例如使用 parse(),路径作为键,校验和作为值)。
然后计算项目根目录中当前的文件列表。如果添加或删除了路径,则会引发 ChecksumMismatch。
否则,计算项目根目录(和子目录)中每个文件的校验和,并将该结果与传入的解析的校验和进行比较。
- property warnings
现在,这与 differ_warnings 相同。将来,它可能还会包含我们在本类中的方法中发现的警告。
模块内容
此包处理 Ansible 内容的校验和验证。