#!/bin/bash # Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. # SPDX-License-Identifier: MIT-0 USAGE="Usage: $(basename $0) [-?aj] fld ...\n\ List ARNs of all undeleted CAs\n\ \tfld ... List ARNs of all undeleted CAs with specified fields (comma-delimited), ignored if -j is used\n\ \t-a List all CAs including deleted ones\n\ \t-j List CAs in JSON (fld list ignored)\n\ \t-? Show this help text" usage() { echo -e "$USAGE" >&2; exit 2; } allCAs= outputType= while getopts "?aj" arg; do case "$arg" in \?) usage;; a) allCAs=true;; j) outputType=json;; esac done shift $((OPTIND-1)) flds=.Arn while [ -n "$1" ]; do flds="${flds} + \",\" + .$1" shift done jqFlags= jqFilters= if [ "$allCAs" != "true" ]; then jqFilters="$jqFilters | select(.Status != \"DELETED\")" fi jqFLds= if [ "$outputType" != "json" ]; then jqFilters="$jqFilters | $flds" jqFlags=-r fi aws acm-pca list-certificate-authorities | jq $jqFlags ".CertificateAuthorities[]$jqFilters"