From b5bd21c5caf0c945d54075ef0178e14bb38fe941 Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Fri, 10 Sep 2021 19:47:26 +0100 Subject: [PATCH 1/2] bazel: Shift deprecate_* tools to bazel and cleanup requirements Signed-off-by: Ryan Northey --- .github/dependabot.yml | 10 -- tools/deprecate_features/BUILD | 9 ++ .../deprecate_features/deprecate_features.py | 6 +- .../deprecate_features/deprecate_features.sh | 7 - tools/deprecate_features/requirements.txt | 3 - tools/deprecate_version/BUILD | 13 ++ tools/deprecate_version/deprecate_version.py | 4 +- tools/deprecate_version/deprecate_version.sh | 7 - tools/deprecate_version/requirements.txt | 138 ------------------ 9 files changed, 28 insertions(+), 169 deletions(-) create mode 100644 tools/deprecate_features/BUILD delete mode 100644 tools/deprecate_features/deprecate_features.sh delete mode 100644 tools/deprecate_features/requirements.txt create mode 100644 tools/deprecate_version/BUILD delete mode 100755 tools/deprecate_version/deprecate_version.sh delete mode 100644 tools/deprecate_version/requirements.txt diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 4aeb246c9db95..bf057a3add5a2 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -36,16 +36,6 @@ updates: schedule: interval: "daily" -- package-ecosystem: "pip" - directory: "/tools/deprecate_features" - schedule: - interval: "daily" - -- package-ecosystem: "pip" - directory: "/tools/deprecate_version" - schedule: - interval: "daily" - - package-ecosystem: "pip" directory: "/ci/flaky_test" schedule: diff --git a/tools/deprecate_features/BUILD b/tools/deprecate_features/BUILD new file mode 100644 index 0000000000000..c3429723995d9 --- /dev/null +++ b/tools/deprecate_features/BUILD @@ -0,0 +1,9 @@ +load("@rules_python//python:defs.bzl", "py_binary") + +licenses(["notice"]) # Apache 2 + +py_binary( + name = "deprecate_features", + srcs = ["deprecate_features.py"], + deps = ["@envoy_repo"], +) diff --git a/tools/deprecate_features/deprecate_features.py b/tools/deprecate_features/deprecate_features.py index c7468e6784585..aa1d3ff0458f2 100644 --- a/tools/deprecate_features/deprecate_features.py +++ b/tools/deprecate_features/deprecate_features.py @@ -4,13 +4,15 @@ import re import subprocess import fileinput -from six.moves import input + +import envoy_repo # Sorts out the list of deprecated proto fields which should be disallowed and returns a tuple of # email and code changes. def deprecate_proto(): - grep_output = subprocess.check_output('grep -r "deprecated = true" api/*', shell=True) + grep_output = subprocess.check_output( + 'grep -r "deprecated = true" api/*', shell=True, cwd=envoy_repo.PATH) filenames_and_fields = set() diff --git a/tools/deprecate_features/deprecate_features.sh b/tools/deprecate_features/deprecate_features.sh deleted file mode 100644 index 661b348e0f0d7..0000000000000 --- a/tools/deprecate_features/deprecate_features.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash - -. tools/shell_utils.sh - -set -e - -python_venv deprecate_features diff --git a/tools/deprecate_features/requirements.txt b/tools/deprecate_features/requirements.txt deleted file mode 100644 index 643fcd2d4a395..0000000000000 --- a/tools/deprecate_features/requirements.txt +++ /dev/null @@ -1,3 +0,0 @@ -six==1.16.0 \ - --hash=sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254 \ - --hash=sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926 diff --git a/tools/deprecate_version/BUILD b/tools/deprecate_version/BUILD new file mode 100644 index 0000000000000..abe06de4b7f8f --- /dev/null +++ b/tools/deprecate_version/BUILD @@ -0,0 +1,13 @@ +load("@rules_python//python:defs.bzl", "py_binary") +load("@base_pip3//:requirements.bzl", "requirement") + +licenses(["notice"]) # Apache 2 + +py_binary( + name = "deprecate_version", + srcs = ["deprecate_version.py"], + deps = [ + requirement("gitpython"), + requirement("pygithub"), + ], +) diff --git a/tools/deprecate_version/deprecate_version.py b/tools/deprecate_version/deprecate_version.py index 0e7ad87a82ba3..d02ea3f35f9ac 100644 --- a/tools/deprecate_version/deprecate_version.py +++ b/tools/deprecate_version/deprecate_version.py @@ -1,6 +1,6 @@ -# Script for automating cleanup PR creation for deprecated runtime features +# Bazel usage # -# sh tools/deprecate_version/deprecate_version.sh +# bazel run //tools/deprecate_version:deprecate_version # # Direct usage (not recommended): # diff --git a/tools/deprecate_version/deprecate_version.sh b/tools/deprecate_version/deprecate_version.sh deleted file mode 100755 index 5421f66565b54..0000000000000 --- a/tools/deprecate_version/deprecate_version.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash - -. tools/shell_utils.sh - -set -e - -python_venv deprecate_version diff --git a/tools/deprecate_version/requirements.txt b/tools/deprecate_version/requirements.txt deleted file mode 100644 index e3ce651eb5f15..0000000000000 --- a/tools/deprecate_version/requirements.txt +++ /dev/null @@ -1,138 +0,0 @@ -# -# This file is autogenerated by pip-compile -# To update, run: -# -# pip-compile --generate-hashes tools/deprecate_version/requirements.txt -# -certifi==2021.5.30 \ - --hash=sha256:50b1e4f8446b06f41be7dd6338db18e0990601dce795c2b1686458aa7e8fa7d8 \ - --hash=sha256:2bbf76fd432960138b3ef6dda3dde0544f27cbf8546c458e60baf371917ba9ee - # via - # -r tools/deprecate_version/requirements.txt - # requests -cffi==1.14.5 \ - --hash=sha256:005a36f41773e148deac64b08f233873a4d0c18b053d37da83f6af4d9087b813 \ - --hash=sha256:0857f0ae312d855239a55c81ef453ee8fd24136eaba8e87a2eceba644c0d4c06 \ - --hash=sha256:1071534bbbf8cbb31b498d5d9db0f274f2f7a865adca4ae429e147ba40f73dea \ - --hash=sha256:158d0d15119b4b7ff6b926536763dc0714313aa59e320ddf787502c70c4d4bee \ - --hash=sha256:1f436816fc868b098b0d63b8920de7d208c90a67212546d02f84fe78a9c26396 \ - --hash=sha256:2894f2df484ff56d717bead0a5c2abb6b9d2bf26d6960c4604d5c48bbc30ee73 \ - --hash=sha256:29314480e958fd8aab22e4a58b355b629c59bf5f2ac2492b61e3dc06d8c7a315 \ - --hash=sha256:34eff4b97f3d982fb93e2831e6750127d1355a923ebaeeb565407b3d2f8d41a1 \ - --hash=sha256:35f27e6eb43380fa080dccf676dece30bef72e4a67617ffda586641cd4508d49 \ - --hash=sha256:3d3dd4c9e559eb172ecf00a2a7517e97d1e96de2a5e610bd9b68cea3925b4892 \ - --hash=sha256:43e0b9d9e2c9e5d152946b9c5fe062c151614b262fda2e7b201204de0b99e482 \ - --hash=sha256:48e1c69bbacfc3d932221851b39d49e81567a4d4aac3b21258d9c24578280058 \ - --hash=sha256:51182f8927c5af975fece87b1b369f722c570fe169f9880764b1ee3bca8347b5 \ - --hash=sha256:58e3f59d583d413809d60779492342801d6e82fefb89c86a38e040c16883be53 \ - --hash=sha256:5de7970188bb46b7bf9858eb6890aad302577a5f6f75091fd7cdd3ef13ef3045 \ - --hash=sha256:65fa59693c62cf06e45ddbb822165394a288edce9e276647f0046e1ec26920f3 \ - --hash=sha256:69e395c24fc60aad6bb4fa7e583698ea6cc684648e1ffb7fe85e3c1ca131a7d5 \ - --hash=sha256:6c97d7350133666fbb5cf4abdc1178c812cb205dc6f41d174a7b0f18fb93337e \ - --hash=sha256:6e4714cc64f474e4d6e37cfff31a814b509a35cb17de4fb1999907575684479c \ - --hash=sha256:72d8d3ef52c208ee1c7b2e341f7d71c6fd3157138abf1a95166e6165dd5d4369 \ - --hash=sha256:8ae6299f6c68de06f136f1f9e69458eae58f1dacf10af5c17353eae03aa0d827 \ - --hash=sha256:8b198cec6c72df5289c05b05b8b0969819783f9418e0409865dac47288d2a053 \ - --hash=sha256:99cd03ae7988a93dd00bcd9d0b75e1f6c426063d6f03d2f90b89e29b25b82dfa \ - --hash=sha256:9cf8022fb8d07a97c178b02327b284521c7708d7c71a9c9c355c178ac4bbd3d4 \ - --hash=sha256:9de2e279153a443c656f2defd67769e6d1e4163952b3c622dcea5b08a6405322 \ - --hash=sha256:9e93e79c2551ff263400e1e4be085a1210e12073a31c2011dbbda14bda0c6132 \ - --hash=sha256:9ff227395193126d82e60319a673a037d5de84633f11279e336f9c0f189ecc62 \ - --hash=sha256:a465da611f6fa124963b91bf432d960a555563efe4ed1cc403ba5077b15370aa \ - --hash=sha256:ad17025d226ee5beec591b52800c11680fca3df50b8b29fe51d882576e039ee0 \ - --hash=sha256:afb29c1ba2e5a3736f1c301d9d0abe3ec8b86957d04ddfa9d7a6a42b9367e396 \ - --hash=sha256:b85eb46a81787c50650f2392b9b4ef23e1f126313b9e0e9013b35c15e4288e2e \ - --hash=sha256:bb89f306e5da99f4d922728ddcd6f7fcebb3241fc40edebcb7284d7514741991 \ - --hash=sha256:cbde590d4faaa07c72bf979734738f328d239913ba3e043b1e98fe9a39f8b2b6 \ - --hash=sha256:cd2868886d547469123fadc46eac7ea5253ea7fcb139f12e1dfc2bbd406427d1 \ - --hash=sha256:d42b11d692e11b6634f7613ad8df5d6d5f8875f5d48939520d351007b3c13406 \ - --hash=sha256:f2d45f97ab6bb54753eab54fffe75aaf3de4ff2341c9daee1987ee1837636f1d \ - --hash=sha256:fd78e5fee591709f32ef6edb9a015b4aa1a5022598e36227500c8f4e02328d9c - # via pynacl -chardet==4.0.0 \ - --hash=sha256:0d6f53a15db4120f2b08c94f11e7d93d2c911ee118b6b30a04ec3ee8310179fa \ - --hash=sha256:f864054d66fd9118f2e67044ac8981a54775ec5b67aed0441892edb553d21da5 - # via - # -r tools/deprecate_version/requirements.txt - # requests -deprecated==1.2.13 \ - --hash=sha256:64756e3e14c8c5eea9795d93c524551432a0be75629f8f29e67ab8caf076c76d \ - --hash=sha256:43ac5335da90c31c24ba028af536a91d41d53f9e6901ddb021bcc572ce44e38d - # via - # -r tools/deprecate_version/requirements.txt - # pygithub -gitdb==4.0.7 \ - --hash=sha256:6c4cc71933456991da20917998acbe6cf4fb41eeaab7d6d67fbc05ecd4c865b0 \ - --hash=sha256:96bf5c08b157a666fec41129e6d327235284cca4c81e92109260f353ba138005 - # via - # -r tools/deprecate_version/requirements.txt - # gitpython -gitpython==3.1.18 \ - --hash=sha256:fce760879cd2aebd2991b3542876dc5c4a909b30c9d69dfc488e504a8db37ee8 \ - --hash=sha256:b838a895977b45ab6f0cc926a9045c8d1c44e2b653c1fcc39fe91f42c6e8f05b - # via -r tools/deprecate_version/requirements.txt -idna==2.10 \ - --hash=sha256:b307872f855b18632ce0c21c5e45be78c0ea7ae4c15c828c20788b26921eb3f6 \ - --hash=sha256:b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0 - # via - # -r tools/deprecate_version/requirements.txt - # requests -pycparser==2.20 \ - --hash=sha256:2d475327684562c3a96cc71adf7dc8c4f0565175cf86b6d7a404ff4c771f15f0 \ - --hash=sha256:7582ad22678f0fcd81102833f60ef8d0e57288b6b5fb00323d101be910e35705 - # via cffi -pygithub==1.55 \ - --hash=sha256:1bbfff9372047ff3f21d5cd8e07720f3dbfdaf6462fcaed9d815f528f1ba7283 \ - --hash=sha256:2caf0054ea079b71e539741ae56c5a95e073b81fa472ce222e81667381b9601b - # via -r tools/deprecate_version/requirements.txt -pyjwt==2.1.0 \ - --hash=sha256:934d73fbba91b0483d3857d1aff50e96b2a892384ee2c17417ed3203f173fca1 \ - --hash=sha256:fba44e7898bbca160a2b2b501f492824fc8382485d3a6f11ba5d0c1937ce6130 - # via pygithub -pynacl==1.4.0 \ - --hash=sha256:06cbb4d9b2c4bd3c8dc0d267416aaed79906e7b33f114ddbf0911969794b1cc4 \ - --hash=sha256:11335f09060af52c97137d4ac54285bcb7df0cef29014a1a4efe64ac065434c4 \ - --hash=sha256:2fe0fc5a2480361dcaf4e6e7cea00e078fcda07ba45f811b167e3f99e8cff574 \ - --hash=sha256:30f9b96db44e09b3304f9ea95079b1b7316b2b4f3744fe3aaecccd95d547063d \ - --hash=sha256:4e10569f8cbed81cb7526ae137049759d2a8d57726d52c1a000a3ce366779634 \ - --hash=sha256:511d269ee845037b95c9781aa702f90ccc36036f95d0f31373a6a79bd8242e25 \ - --hash=sha256:537a7ccbea22905a0ab36ea58577b39d1fa9b1884869d173b5cf111f006f689f \ - --hash=sha256:54e9a2c849c742006516ad56a88f5c74bf2ce92c9f67435187c3c5953b346505 \ - --hash=sha256:757250ddb3bff1eecd7e41e65f7f833a8405fede0194319f87899690624f2122 \ - --hash=sha256:7757ae33dae81c300487591c68790dfb5145c7d03324000433d9a2c141f82af7 \ - --hash=sha256:7c6092102219f59ff29788860ccb021e80fffd953920c4a8653889c029b2d420 \ - --hash=sha256:8122ba5f2a2169ca5da936b2e5a511740ffb73979381b4229d9188f6dcb22f1f \ - --hash=sha256:9c4a7ea4fb81536c1b1f5cc44d54a296f96ae78c1ebd2311bd0b60be45a48d96 \ - --hash=sha256:c914f78da4953b33d4685e3cdc7ce63401247a21425c16a39760e282075ac4a6 \ - --hash=sha256:cd401ccbc2a249a47a3a1724c2918fcd04be1f7b54eb2a5a71ff915db0ac51c6 \ - --hash=sha256:d452a6746f0a7e11121e64625109bc4468fc3100452817001dbe018bb8b08514 \ - --hash=sha256:ea6841bc3a76fa4942ce00f3bda7d436fda21e2d91602b9e21b7ca9ecab8f3ff \ - --hash=sha256:f8851ab9041756003119368c1e6cd0b9c631f46d686b3904b18c0139f4419f80 - # via pygithub -requests==2.25.1 \ - --hash=sha256:27973dd4a904a4f13b263a19c866c13b92a39ed1c964655f025f3f8d3d75b804 \ - --hash=sha256:c210084e36a42ae6b9219e00e48287def368a26d03a048ddad7bfee44f75871e - # via - # -r tools/deprecate_version/requirements.txt - # pygithub -six==1.16.0 \ - --hash=sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254 \ - --hash=sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926 - # via pynacl -smmap==4.0.0 \ - --hash=sha256:7e65386bd122d45405ddf795637b7f7d2b532e7e401d46bbe3fb49b9986d5182 \ - --hash=sha256:a9a7479e4c572e2e775c404dcd3080c8dc49f39918c2cf74913d30c4c478e3c2 - # via - # -r tools/deprecate_version/requirements.txt - # gitdb -urllib3==1.26.6 \ - --hash=sha256:39fb8672126159acb139a7718dd10806104dec1e2f0f6c88aab05d17df10c8d4 \ - --hash=sha256:f57b4c16c62fa2760b7e3d97c35b255512fb6b59a259730f36ba32ce9f8e342f - # via - # -r tools/deprecate_version/requirements.txt - # requests -wrapt==1.12.1 \ - --hash=sha256:b62ffa81fb85f4332a4f609cab4ac40709470da05643a082ec1eb88e6d9b97d7 - # via - # -r tools/deprecate_version/requirements.txt - # deprecated From 459fa5634fd7683b4f1a0d654462b754f620366c Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Thu, 16 Sep 2021 09:33:05 +0100 Subject: [PATCH 2/2] update-deprecate-version-docs Signed-off-by: Ryan Northey --- GOVERNANCE.md | 2 +- tools/deprecate_version/deprecate_version.py | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) diff --git a/GOVERNANCE.md b/GOVERNANCE.md index 13342260c7bc1..afe7242b20cb5 100644 --- a/GOVERNANCE.md +++ b/GOVERNANCE.md @@ -140,7 +140,7 @@ New Features Deprecated ---------- ``` -* Run the deprecate_versions.py script (e.g. `sh tools/deprecate_version/deprecate_version.sh`) +* Run the deprecate_versions.py script (e.g. `bazel run //tools/deprecate_version:deprecate_version`) to file tracking issues for runtime guarded code which can be removed. * Check source/common/runtime/runtime_features.cc and see if any runtime guards in disabled_runtime_features should be reassessed, and ping on the relevant issues. diff --git a/tools/deprecate_version/deprecate_version.py b/tools/deprecate_version/deprecate_version.py index d02ea3f35f9ac..69e275666f143 100644 --- a/tools/deprecate_version/deprecate_version.py +++ b/tools/deprecate_version/deprecate_version.py @@ -2,14 +2,6 @@ # # bazel run //tools/deprecate_version:deprecate_version # -# Direct usage (not recommended): -# -# python tools/deprecate_version/deprecate_version.py -# -# e.g -# -# python tools/deprecate_version/deprecate_version.py -# # A GitHub access token must be set in GITHUB_TOKEN. To create one, go to # Settings -> Developer settings -> Personal access tokens in GitHub and create # a token with public_repo scope. Keep this safe, it's broader than it needs to