From 9addf3bca119e6171eeb6e2413f7d56d90463ecf Mon Sep 17 00:00:00 2001 From: Kenneth Bingham <kenneth.bingham@netfoundry.io> Date: Wed, 29 Jan 2025 11:22:57 -0500 Subject: [PATCH] wrap b64 encoder for darwin --- generate-ziti-agent-manifest.bash | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/generate-ziti-agent-manifest.bash b/generate-ziti-agent-manifest.bash index a06e35f..45d6a46 100755 --- a/generate-ziti-agent-manifest.bash +++ b/generate-ziti-agent-manifest.bash @@ -19,10 +19,21 @@ for BIN in sed awk jq base64; do checkCommand "$BIN" done +# Function to handle base64 encoding consistently across platforms +base64_encode() { + if [[ "$(uname)" == "Darwin" ]]; then + base64 -b 0 + else + base64 -w 0 + fi +} + ZITI_MGMT_API=$(jq -r '.ztAPI' "$IDENTITY_FILE" | sed -E 's|/edge/client/v1|/edge/management/v1|') -IDENTITY_CERT=$(jq -r '.id.cert' "$IDENTITY_FILE" | sed -E 's/^pem://' | base64 ) -IDENTITY_KEY=$(jq -r '.id.key' "$IDENTITY_FILE" | sed -E 's/^pem://' | base64 ) -IDENTITY_CA=$(jq -r '.id.ca' "$IDENTITY_FILE" | sed -E 's/^pem://' | base64 ) + +# Base64 encode the certificates and keys +IDENTITY_CERT=$(jq -r '.id.cert' "$IDENTITY_FILE" | sed -E 's/^pem://' | base64_encode) +IDENTITY_KEY=$(jq -r '.id.key' "$IDENTITY_FILE" | sed -E 's/^pem://' | base64_encode) +IDENTITY_CA=$(jq -r '.id.ca' "$IDENTITY_FILE" | sed -E 's/^pem://' | base64_encode) cat <<YAML