You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficcontrol.apache.org by da...@apache.org on 2018/10/11 17:11:30 UTC
[trafficcontrol] 20/21: Implemented '--wait_for_parents'
This is an automated email from the ASF dual-hosted git repository.
dangogh pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/trafficcontrol.git
commit dcf3944ebf7340c953ba73f0eec287fed2b6921c
Author: ocket8888 <Br...@comcast.com>
AuthorDate: Mon Oct 8 17:30:01 2018 +0000
Implemented '--wait_for_parents'
---
infrastructure/cdn-in-a-box/ort/traffic_ops_ort/__init__.py | 5 +++--
infrastructure/cdn-in-a-box/ort/traffic_ops_ort/configuration.py | 4 ++++
infrastructure/cdn-in-a-box/ort/traffic_ops_ort/main_routines.py | 2 +-
3 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/infrastructure/cdn-in-a-box/ort/traffic_ops_ort/__init__.py b/infrastructure/cdn-in-a-box/ort/traffic_ops_ort/__init__.py
index 90b0930..1083f32 100644
--- a/infrastructure/cdn-in-a-box/ort/traffic_ops_ort/__init__.py
+++ b/infrastructure/cdn-in-a-box/ort/traffic_ops_ort/__init__.py
@@ -75,6 +75,8 @@ def doMain(args:argparse.Namespace) -> int:
logging.info("Got TO Cookie - valid until %s",
datetime.datetime.fromtimestamp(configuration.TO_COOKIE.expires))
+ configuration.WAIT_FOR_PARENTS = args.wait_for_parents
+
from . import main_routines
return main_routines.run()
@@ -114,8 +116,7 @@ def main():
default=3)
parser.add_argument("--wait_for_parents",
help="do not update if parent_pending = 1 in the update json.",
- type=int,
- default=1)
+ action="store_true")
parser.add_argument("--rev_proxy_disabled",
help="bypass the reverse proxy even if one has been configured.",
type=int,
diff --git a/infrastructure/cdn-in-a-box/ort/traffic_ops_ort/configuration.py b/infrastructure/cdn-in-a-box/ort/traffic_ops_ort/configuration.py
index 5045c97..15c3497 100644
--- a/infrastructure/cdn-in-a-box/ort/traffic_ops_ort/configuration.py
+++ b/infrastructure/cdn-in-a-box/ort/traffic_ops_ort/configuration.py
@@ -46,6 +46,10 @@ SERVER_INFO = None
#: Does not affect non-Traffic Ops servers
VERIFY = True
+#: If set to :const:`True`, this script will not apply updates until all of its parents have
+#: finished applying their updates
+WAIT_FOR_PARENTS = False
+
class Modes(enum.IntEnum):
"""
diff --git a/infrastructure/cdn-in-a-box/ort/traffic_ops_ort/main_routines.py b/infrastructure/cdn-in-a-box/ort/traffic_ops_ort/main_routines.py
index 58a349a..d95b7c4 100644
--- a/infrastructure/cdn-in-a-box/ort/traffic_ops_ort/main_routines.py
+++ b/infrastructure/cdn-in-a-box/ort/traffic_ops_ort/main_routines.py
@@ -74,7 +74,7 @@ def revalidateState() -> bool:
raise ORTException from e
logging.debug("Retrieved raw revalidation status: %r", updateStatus)
- if "parent_reval_pending" in updateStatus and updateStatus["parent_reval_pending"]:
+ if conf.WAIT_FOR_PARENTS and "parent_reval_pending" in updateStatus and updateStatus["parent_reval_pending"]:
logging.info("Parent revalidation is pending - waiting for parent")
return False