2023-08-22 10:19:46 -04:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
|
|
|
set -e
|
|
|
|
|
|
|
|
SCRIPT_DIR=$(dirname "$(realpath "$0")")
|
|
|
|
cd "$SCRIPT_DIR"/.. || exit 1
|
|
|
|
OUTPUT_FOLDER_NAME=delta-table
|
|
|
|
OUTPUT_DIR=$SCRIPT_DIR/structured-output/$OUTPUT_FOLDER_NAME
|
|
|
|
DOWNLOAD_DIR=$SCRIPT_DIR/download/$OUTPUT_FOLDER_NAME
|
2023-09-21 14:51:08 -04:00
|
|
|
DESTINATION_TABLE=$SCRIPT_DIR/delta-table-dest
|
2023-09-28 21:48:19 -07:00
|
|
|
max_processes=${MAX_PROCESSES:=$(python3 -c "import os; print(os.cpu_count())")}
|
2023-10-02 16:47:24 -04:00
|
|
|
CI=${CI:-"false"}
|
2023-08-22 10:19:46 -04:00
|
|
|
|
|
|
|
if [ -z "$AWS_ACCESS_KEY_ID" ] && [ -z "$AWS_SECRET_ACCESS_KEY" ]; then
|
|
|
|
echo "Skipping Delta Table ingest test because either AWS_ACCESS_KEY_ID or AWS_SECRET_ACCESS_KEY env var was not set."
|
|
|
|
exit 0
|
|
|
|
fi
|
|
|
|
|
2023-09-21 14:51:08 -04:00
|
|
|
# shellcheck disable=SC1091
|
|
|
|
source "$SCRIPT_DIR"/cleanup.sh
|
|
|
|
|
2023-09-15 18:13:39 -04:00
|
|
|
function cleanup() {
|
2023-09-21 14:51:08 -04:00
|
|
|
cleanup_dir "$DESTINATION_TABLE"
|
|
|
|
cleanup_dir "$OUTPUT_DIR"
|
2023-10-02 16:47:24 -04:00
|
|
|
if [ "$CI" == "true" ]; then
|
|
|
|
cleanup_dir "$DOWNLOAD_DIR"
|
|
|
|
fi
|
2023-09-15 18:13:39 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
trap cleanup EXIT
|
|
|
|
|
2023-08-22 10:19:46 -04:00
|
|
|
PYTHONPATH=. ./unstructured/ingest/main.py \
|
|
|
|
delta-table \
|
2023-09-26 17:06:53 -04:00
|
|
|
--num-processes "$max_processes" \
|
2023-09-21 14:51:08 -04:00
|
|
|
--metadata-exclude coordinates,filename,file_directory,metadata.data_source.date_processed,metadata.last_modified,metadata.date_created,metadata.detection_class_prob,metadata.parent_id,metadata.category_depth \
|
2023-08-22 10:19:46 -04:00
|
|
|
--download-dir "$DOWNLOAD_DIR" \
|
|
|
|
--table-uri s3://utic-dev-tech-fixtures/sample-delta-lake-data/deltatable/ \
|
2023-09-11 11:40:56 -04:00
|
|
|
--output-dir "$OUTPUT_DIR" \
|
2023-08-22 10:19:46 -04:00
|
|
|
--storage_options "AWS_REGION=us-east-2,AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID,AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY" \
|
|
|
|
--preserve-downloads \
|
2023-09-15 18:13:39 -04:00
|
|
|
--verbose \
|
|
|
|
delta-table \
|
|
|
|
--write-column json_data \
|
2023-09-21 14:51:08 -04:00
|
|
|
--table-uri "$DESTINATION_TABLE"
|
2023-08-22 10:19:46 -04:00
|
|
|
|
2023-09-21 14:51:08 -04:00
|
|
|
"$SCRIPT_DIR"/check-diff-expected-output.sh $OUTPUT_FOLDER_NAME
|
2023-09-15 18:13:39 -04:00
|
|
|
|
2023-09-21 14:51:08 -04:00
|
|
|
python "$SCRIPT_DIR"/python/test-ingest-delta-table-output.py --table-uri "$DESTINATION_TABLE"
|