Skip to content

Commit 89df134

Browse files
committed
feat: add --override flag to generator script
Bypasses the daily cache check and forces a fresh typedefs download from the Atlan instance. Updated README with usage.
1 parent eb9fba5 commit 89df134

2 files changed

Lines changed: 27 additions & 4 deletions

File tree

README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -208,8 +208,14 @@ Generate asset models from your Atlan instance:
208208
# Generate models automatically
209209
uv run ./generator
210210

211+
# Force re-download typedefs (bypass cache)
212+
uv run ./generator --override
213+
211214
# Use custom typedefs file
212215
uv run ./generator ./my-typedefs.json
216+
217+
# Both flags can be combined
218+
uv run ./generator --override ./my-typedefs.json
213219
```
214220

215221
This will:

generator

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,26 @@
44
# This script runs both create_typedefs_file.py and class_generator.py
55
# It intelligently skips creating typedefs if they already exist and are current
66

7-
# Usage: ./generator [typedefs_file_path]
7+
# Usage: ./generator [--override] [typedefs_file_path]
88
# If typedefs_file_path is not provided, defaults to /tmp/typedefs.json
9+
# --override: force re-download of typedefs even if cached file is current
910

1011
echo "🚀 Starting Atlan Python SDK code generation..."
1112

13+
# Parse flags
14+
FORCE_OVERRIDE=false
15+
TYPE_DEF_FILE_ARG=""
16+
for arg in "$@"; do
17+
case "$arg" in
18+
--override)
19+
FORCE_OVERRIDE=true
20+
;;
21+
*)
22+
TYPE_DEF_FILE_ARG="$arg"
23+
;;
24+
esac
25+
done
26+
1227
# Check if ATLAN_BASE_URL and ATLAN_API_KEY are set
1328
if [ -z "$ATLAN_BASE_URL" ] || [ -z "$ATLAN_API_KEY" ]; then
1429
echo "❌ Error: ATLAN_BASE_URL and ATLAN_API_KEY environment variables must be set."
@@ -19,8 +34,8 @@ if [ -z "$ATLAN_BASE_URL" ] || [ -z "$ATLAN_API_KEY" ]; then
1934
fi
2035

2136
# Get the typedefs file path from command line argument or use default
22-
if [ -n "$1" ]; then
23-
TYPE_DEF_FILE="$1"
37+
if [ -n "$TYPE_DEF_FILE_ARG" ]; then
38+
TYPE_DEF_FILE="$TYPE_DEF_FILE_ARG"
2439
echo "📁 Using custom typedefs file: $TYPE_DEF_FILE"
2540
else
2641
TMPDIR=${TMPDIR:-/tmp}
@@ -30,7 +45,9 @@ fi
3045

3146
# Check if typedefs file exists and is current (created today)
3247
SHOULD_CREATE_TYPEDEFS=true
33-
if [ -f "$TYPE_DEF_FILE" ]; then
48+
if [ "$FORCE_OVERRIDE" = true ]; then
49+
echo "🔄 --override flag set, forcing typedefs re-download"
50+
elif [ -f "$TYPE_DEF_FILE" ]; then
3451
# Check if file was created today
3552
if [ "$(date -r "$TYPE_DEF_FILE" +%Y-%m-%d)" = "$(date +%Y-%m-%d)" ]; then
3653
echo "✅ Typedefs file already exists and is current: $TYPE_DEF_FILE"

0 commit comments

Comments
 (0)