[windows] Add a check for too long path names (#33418)

We should probably cap this so that our customers have a chance of
cloning the repository.

---------

Co-authored-by: ctiller <ctiller@users.noreply.github.com>
pull/33426/head
Craig Tiller 1 year ago committed by GitHub
parent 19460ea82f
commit 7e6606f5a6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 0
      test/core/end2end/end2end_test_corpus/retry_transparent_max_concurrent_streams/5252699478097920
  2. 0
      test/core/end2end/end2end_test_corpus/retry_transparent_max_concurrent_streams/6459052896878592
  3. 33
      tools/distrib/check_path_length.py
  4. 1
      tools/run_tests/sanity/sanity_tests.yaml

@ -0,0 +1,33 @@
#!/usr/bin/env python3
# Copyright 2023 gRPC authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
import os
import subprocess
# Maximum path length for a path in the repository before we start seeing
# problems with Windows cloning the repository. (kind of arbitrary, less than
# Windows actual limit, but enough that we avoid problems).
maxlen = 150
errors = 0
for path in subprocess.check_output(["git", "ls-files"]).decode().splitlines():
if len(path) > maxlen:
print(f"Path too long: {path}")
errors += 1
if errors:
print(f"Found {errors} files with paths longer than {maxlen} characters")
exit(1)

@ -46,3 +46,4 @@
- script: tools/run_tests/sanity/build_banned_constructs.sh
- script: tools/distrib/check_redundant_namespace_qualifiers.py
- script: tools/distrib/check_namespace_qualification.py
- script: tools/distrib/check_path_length.py

Loading…
Cancel
Save