summaryrefslogtreecommitdiff
path: root/buildscripts/validate_file_size.py
blob: 9b9a0e3b5c3956d7c11f99a661e8c5cb3ce34462 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/usr/bin/env python3

import os
import sys

FILE_SIZE_THRESHOLD_IN_BYTES = 16 * 1024 * 1024  # 16MB


def main():
    args = sys.argv[1:]
    file_name = args[0]
    file_path = os.path.join(os.path.dirname(os.getcwd()), file_name)
    if os.path.exists(file_path):
        file_size_in_bytes = os.path.getsize(file_path)
        if file_size_in_bytes > FILE_SIZE_THRESHOLD_IN_BYTES:
            print(
                f"WARNING! {file_name} is {file_size_in_bytes} bytes, exceeding threshold"
                f" {FILE_SIZE_THRESHOLD_IN_BYTES} bytes, file upload may fail due to network issues, or Evergreen"
                f" may reject very large yaml sizes")
        else:
            print(
                f"{file_name} is {file_size_in_bytes} bytes, below threshold {FILE_SIZE_THRESHOLD_IN_BYTES} bytes"
            )
    else:
        print(f"{file_path} does not exist")


if __name__ == '__main__':
    main()