Skip to content

Commit 2d54d7d

Browse files
committed
[NRL-1311] Add prod env warn to new scripts. Fix supersede typo
1 parent a576ed4 commit 2d54d7d

File tree

2 files changed

+23
-4
lines changed

2 files changed

+23
-4
lines changed

scripts/put_pointers_from_files.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
# Put pointers from the provided files into the pointers table
33
# This will overwrite the pointer if it already exists in the table
44
import json
5+
import os
56

67
import fire
78
from aws_session_assume import get_boto_session
@@ -12,10 +13,19 @@
1213

1314
logger.setLevel("ERROR")
1415

16+
SKIP_PROD_WARNING = os.getenv("SKIP_PROD_WARNING", "false")
17+
1518

1619
def _put_pointers_from_files(
1720
*filenames, env: str = "dev", table_name: str | None = None
1821
):
22+
if env == "dev" and SKIP_PROD_WARNING != "true":
23+
confirmation = input(
24+
f"\nWARNING - This command will modify the PROD environment. Continue? [y/n] "
25+
)
26+
if confirmation != "y":
27+
return "Exiting at user request"
28+
1929
docrefs: list[DocumentReference] = []
2030
print("Reading docrefs from files...")
2131
for filename in filenames:

scripts/set_pointer_supersede.py

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
#!/usr/bin/env python
22
# Set supersede info on a pointer
33
import json
4+
import os
45

56
import aws_session_assume
67
import fire
@@ -16,14 +17,23 @@
1617

1718
logger.setLevel("ERROR")
1819

20+
SKIP_PROD_WARNING = os.getenv("SKIP_PROD_WARNING", "false")
21+
1922

2023
def _set_pointer_supersede_info(
2124
pointer_id: str,
2225
supersede_pointer_id: str,
23-
delete_superceded: bool = False,
26+
delete_superseded: bool = False,
2427
env: str = "dev",
2528
table_name: str | None = None,
2629
):
30+
if env == "prod" and SKIP_PROD_WARNING != "true":
31+
confirmation = input(
32+
f"\nWARNING - This command will modify the PROD environment. Continue? [y/n] "
33+
)
34+
if confirmation != "y":
35+
return "Exiting at user request"
36+
2737
session = aws_session_assume.get_boto_session(env)
2838
dynamodb = session.resource("dynamodb")
2939

@@ -53,12 +63,11 @@ def _set_pointer_supersede_info(
5363

5464
try:
5565
pointer = DocumentPointer.model_validate({"_from_dynamo": True, **item})
66+
doc_ref = DocumentReference.model_validate_json(pointer.document)
5667
except Exception as e:
5768
print(f"Could not validate pointer from table. Error: {e}")
5869
return
5970

60-
doc_ref = DocumentReference.model_validate_json(pointer.document)
61-
6271
if not doc_ref.relatesTo:
6372
doc_ref.relatesTo = []
6473
else:
@@ -85,7 +94,7 @@ def _set_pointer_supersede_info(
8594
Item=updated_pointer.dict(exclude_none=True, exclude={"_from_dynamo"})
8695
)
8796

88-
if delete_superceded:
97+
if delete_superseded:
8998
print(f"Deleting superseded {supersede_pointer_id}...")
9099
table.delete_item(
91100
Key={"pk": f"D#{supersede_pointer_id}", "sk": f"D#{supersede_pointer_id}"}

0 commit comments

Comments
 (0)