From bcc97b3101636c752baac062c2de94994b7728d3 Mon Sep 17 00:00:00 2001 From: Keith Cantrell Date: Thu, 4 Dec 2025 07:46:01 -0600 Subject: [PATCH 1/3] Fixed an issue when a link didn't have the cloudResourceId assoicated with it. --- .../Workload-Factory-API-Samples/link_associate | 2 +- .../Workload-Factory-API-Samples/list_links | 2 +- Management-Utilities/Workload-Factory-API-Samples/wf_utils | 6 +++++- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/Management-Utilities/Workload-Factory-API-Samples/link_associate b/Management-Utilities/Workload-Factory-API-Samples/link_associate index 55eaac3..9bc8c6f 100755 --- a/Management-Utilities/Workload-Factory-API-Samples/link_associate +++ b/Management-Utilities/Workload-Factory-API-Samples/link_associate @@ -108,4 +108,4 @@ if [ -z "$token" ]; then exit 1 fi -run_curl "POST" "$token" "https://api.workloads.netapp.com/accounts/${BLUEXP_ACCOUNT_ID}/fsx/v2/credentials/${CREDENTIALS_ID}/regions/${AWS_REGION}/file-systems/${FILESYSTEM_ID}/links" $tmpout $tmperr '{"linkId":"'$LINK_ID'"}' +run_curl "POST" "$token" "https://api.workloads.netapp.com/accounts/${BLUEXP_ACCOUNT_ID}/fsx/v2/credentials/${CREDENTIALS_ID}/regions/${AWS_REGION}/file-systems/${FILESYSTEM_ID}/links" $tmpout $tmperr '{"linkId":"'$LINK_ID'"}' application/json diff --git a/Management-Utilities/Workload-Factory-API-Samples/list_links b/Management-Utilities/Workload-Factory-API-Samples/list_links index f789c53..d81cda9 100755 --- a/Management-Utilities/Workload-Factory-API-Samples/list_links +++ b/Management-Utilities/Workload-Factory-API-Samples/list_links @@ -94,7 +94,7 @@ if [ -z "$token" ]; then exit 1 fi -jq_query='.items[] | if(.type == "connector") then "\(.name);\(.id);\(.type);\(.state.status);N/A;N/A;N/A;\(.associatedTargets.items)" else "\(.name);\(.id);\(.type);\(.state.status);\(.region);\(.vpcId);\(.cloudResourceId | split(":") | .[6]);\(.associatedTargets.items)" end' +jq_query='.items[] | if(.type == "connector") then "\(.name);\(.id);\(.type);\(.state.status);N/A;N/A;N/A;\(.associatedTargets.items)" else "\(.name);\(.id);\(.type);\(.state.status);\(.region);\(.vpcId);\(if(.cloudResourceId == null) then "N/A" else .cloudResourceId | split(":") | .[6] end);\(.associatedTargets.items)" end' run_curl GET "$token" "https://api.workloads.netapp.com/accounts/${BLUEXP_ACCOUNT_ID}/links/v1/links?include=associatedTargets,state,features" $tmpout $tmperr if jq -r "$jq_query" $tmpout > $tmpout2 2> $tmperr; then diff --git a/Management-Utilities/Workload-Factory-API-Samples/wf_utils b/Management-Utilities/Workload-Factory-API-Samples/wf_utils index 47ba081..c4de022 100755 --- a/Management-Utilities/Workload-Factory-API-Samples/wf_utils +++ b/Management-Utilities/Workload-Factory-API-Samples/wf_utils @@ -97,7 +97,11 @@ run_curl () { if [ -z "$accept" ]; then accept="application/json, text/plain, */*" - shift 6 + if [ $# -lt 6 ]; then + shift $# + else + shift 6 + fi else shift 7 fi From 3d2a8a53fe662c2e895e78cc1180533e741a8eae Mon Sep 17 00:00:00 2001 From: Keith Cantrell Date: Thu, 4 Dec 2025 07:53:43 -0600 Subject: [PATCH 2/3] Added new programs --- .github/CODEOWNERS | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 678bf74..4eb14b9 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -8,11 +8,16 @@ /Ansible/fsx_inventory_report/ @kcantrel /Ansible/snapmirror_report/ @kcantrel /EKS/FSxN-as-PVC-for-EKS/ @mickeysh +/EKS/Backup-EKS-Applications-with-Trident-Protect/ @kcantrel +/EKS/PV-Migrate-with-Trident-Protect/ @kcantrel +/Management-Utilities/FSxN-Report/ @kcantrel /Management-Utilities/auto_create_sm_relationships/ @kcantrel /Management-Utilities/auto_set_fsxn_auto_grow/ @kcantrel +/Management-Utilities/ec2-user-data-iscsi-create-and-mount/ @benams1 /Management-Utilities/fsx-ontap-aws-cli-scripts/ @kcantrel /Management-Utilities/fsxn-rotate-secret/ @kcantrel /Management-Utilities/warm_performance_tier/ @kcantrel +/Management-Utilities/Workload-Factory-API-Samples/ @kcantrel /Monitoring/CloudWatch-FSx/ @LirazRom10 /Monitoring/LUN-monitoring/ @LirazRom10 /Monitoring/auto-add-cw-alarms/ @kcantrel From ee9e3287cc73846258b5ec8abe436f902a2b7f82 Mon Sep 17 00:00:00 2001 From: Keith Cantrell Date: Sat, 13 Dec 2025 10:57:19 -0600 Subject: [PATCH 3/3] Obtained the region from 'aws configuration' in a more supportable way. --- .../fsx-ontap-aws-cli-scripts/create_fsxn_filesystem | 2 +- .../fsx-ontap-aws-cli-scripts/create_fsxn_svm | 2 +- .../fsx-ontap-aws-cli-scripts/create_fsxn_volume | 2 +- .../fsx-ontap-aws-cli-scripts/delete_fsxn_filesystem | 2 +- .../fsx-ontap-aws-cli-scripts/delete_fsxn_svm | 2 +- .../fsx-ontap-aws-cli-scripts/delete_fsxn_volume | 2 +- .../fsx-ontap-aws-cli-scripts/list_fsxn_filesystems | 2 +- .../fsx-ontap-aws-cli-scripts/list_fsxn_svms | 2 +- .../fsx-ontap-aws-cli-scripts/list_fsxn_volumes | 6 +----- 9 files changed, 9 insertions(+), 13 deletions(-) diff --git a/Management-Utilities/fsx-ontap-aws-cli-scripts/create_fsxn_filesystem b/Management-Utilities/fsx-ontap-aws-cli-scripts/create_fsxn_filesystem index df91d5f..3aca0ea 100755 --- a/Management-Utilities/fsx-ontap-aws-cli-scripts/create_fsxn_filesystem +++ b/Management-Utilities/fsx-ontap-aws-cli-scripts/create_fsxn_filesystem @@ -86,7 +86,7 @@ done # Set some defaults. size=1024 throughput=128 -region=$(aws configure list | egrep '^.*egion ' | awk '{print $2}') +region=$(aws configure get region) securityGroupOption="" endpointips="" availType=multi diff --git a/Management-Utilities/fsx-ontap-aws-cli-scripts/create_fsxn_svm b/Management-Utilities/fsx-ontap-aws-cli-scripts/create_fsxn_svm index aa16246..2ee3d27 100755 --- a/Management-Utilities/fsx-ontap-aws-cli-scripts/create_fsxn_svm +++ b/Management-Utilities/fsx-ontap-aws-cli-scripts/create_fsxn_svm @@ -46,7 +46,7 @@ else fi # # Set some defaults. -region=$(aws configure list | egrep '^.*egion ' | awk '{print $2}') +region=$(aws configure get region) waitForCompletion=false maxIterations=24 sleepTime=5 diff --git a/Management-Utilities/fsx-ontap-aws-cli-scripts/create_fsxn_volume b/Management-Utilities/fsx-ontap-aws-cli-scripts/create_fsxn_volume index d16bda6..02a555b 100755 --- a/Management-Utilities/fsx-ontap-aws-cli-scripts/create_fsxn_volume +++ b/Management-Utilities/fsx-ontap-aws-cli-scripts/create_fsxn_volume @@ -52,7 +52,7 @@ intergerRegex='^[0-9]+$' # # Set some defaults. size=20 -region=$(aws configure list | egrep '^.*egion ' | awk '{print $2}') +region=$(aws configure get region) waitForCompletion=false volumeStyle="flexvol" aggregateOption="" diff --git a/Management-Utilities/fsx-ontap-aws-cli-scripts/delete_fsxn_filesystem b/Management-Utilities/fsx-ontap-aws-cli-scripts/delete_fsxn_filesystem index 39a0750..0e415af 100755 --- a/Management-Utilities/fsx-ontap-aws-cli-scripts/delete_fsxn_filesystem +++ b/Management-Utilities/fsx-ontap-aws-cli-scripts/delete_fsxn_filesystem @@ -83,7 +83,7 @@ for cmd in jq aws delete_fsxn_svm delete_fsxn_volume; do done # # Get the default region. -region=$(aws configure list | egrep '^.*egion ' | awk '{print $2}') +region=$(aws configure get region) enableBackup=false waitForCompletion=false # diff --git a/Management-Utilities/fsx-ontap-aws-cli-scripts/delete_fsxn_svm b/Management-Utilities/fsx-ontap-aws-cli-scripts/delete_fsxn_svm index aad0270..ed00a64 100755 --- a/Management-Utilities/fsx-ontap-aws-cli-scripts/delete_fsxn_svm +++ b/Management-Utilities/fsx-ontap-aws-cli-scripts/delete_fsxn_svm @@ -51,7 +51,7 @@ for cmd in aws jq delete_fsxn_volume; do done # # Set any defaults. -region=$(aws configure list | egrep '^.*egion ' | awk '{print $2}') +region=$(aws configure get region) waitForDelete=false noQuery=false enableBackup=false diff --git a/Management-Utilities/fsx-ontap-aws-cli-scripts/delete_fsxn_volume b/Management-Utilities/fsx-ontap-aws-cli-scripts/delete_fsxn_volume index 31d2144..b8ec6d4 100755 --- a/Management-Utilities/fsx-ontap-aws-cli-scripts/delete_fsxn_volume +++ b/Management-Utilities/fsx-ontap-aws-cli-scripts/delete_fsxn_volume @@ -77,7 +77,7 @@ tmpout=/tmp/delete-volume.$$ trap 'rm -f $tmpout' exit # # Set some defaults. -region=$(aws configure list | egrep '^.*egion ' | awk '{print $2}') +region=$(aws configure get region) skipBackup=true waitForCompletion=false quiet=false diff --git a/Management-Utilities/fsx-ontap-aws-cli-scripts/list_fsxn_filesystems b/Management-Utilities/fsx-ontap-aws-cli-scripts/list_fsxn_filesystems index 9218426..520ba78 100755 --- a/Management-Utilities/fsx-ontap-aws-cli-scripts/list_fsxn_filesystems +++ b/Management-Utilities/fsx-ontap-aws-cli-scripts/list_fsxn_filesystems @@ -79,7 +79,7 @@ contents=false showStatus=false showARN=false showBackup=false -region=$(aws configure list | egrep '^.*egion ' | awk '{print $2}') +region=$(aws configure get region) # # Process command line arguments. while getopts "bhcxsanr:i:f:" option; do diff --git a/Management-Utilities/fsx-ontap-aws-cli-scripts/list_fsxn_svms b/Management-Utilities/fsx-ontap-aws-cli-scripts/list_fsxn_svms index e797c78..5ed2bbf 100755 --- a/Management-Utilities/fsx-ontap-aws-cli-scripts/list_fsxn_svms +++ b/Management-Utilities/fsx-ontap-aws-cli-scripts/list_fsxn_svms @@ -58,7 +58,7 @@ fi allRegions=false includeFsName=false includeIp=false -region=$(aws configure list | egrep '^.*egion ' | awk '{print $2}') +region=$(aws configure get region) while getopts "hanr:i:f:p" option; do case "$option" in r) region="$OPTARG" diff --git a/Management-Utilities/fsx-ontap-aws-cli-scripts/list_fsxn_volumes b/Management-Utilities/fsx-ontap-aws-cli-scripts/list_fsxn_volumes index d6f70a0..053bb41 100755 --- a/Management-Utilities/fsx-ontap-aws-cli-scripts/list_fsxn_volumes +++ b/Management-Utilities/fsx-ontap-aws-cli-scripts/list_fsxn_volumes @@ -59,7 +59,7 @@ fi # # Process command line arguments. allRegions=false -region=$(aws configure list | egrep '^.*egion ' | awk '{print $2}') +region=$(aws configure get region) includeFsName=false excludeRoot=false filter="" @@ -103,10 +103,6 @@ fi if [ ! -z "$fsid" -a -z "$fileSystemName" ]; then fileSystemName=$(aws fsx describe-file-systems --region $region --output=json 2> /dev/null | jq -r ".FileSystems[] | if(.FileSystemId == \"$fsid\") then (.Tags[] | select(.Key == \"Name\") .Value) else empty end" 2> /dev/null) - if [ -z "$fileSystemName" ]; then - echo "Error, failed to find the file system with the file system ID of '$fsid'." 1>&2 - exit 1 - fi filter='--filters [{"Name":"file-system-id","Values":["'$fsid'"]}]' fi