]> git.apps.os.sepia.ceph.com Git - ceph-ansible.git/commitdiff
generate sample: fix sed on OSX 590/head
authorSébastien Han <seb@redhat.com>
Wed, 2 Mar 2016 09:52:19 +0000 (10:52 +0100)
committerSébastien Han <seb@redhat.com>
Wed, 2 Mar 2016 09:52:19 +0000 (10:52 +0100)
Signed-off-by: Sébastien Han <seb@redhat.com>
generate_group_vars_sample.sh

index 54bea8edb23f04509f771ccc7da057cdc15352d9..173c85c378fff514efd093d6e5084dcc78cee63e 100755 (executable)
@@ -1,22 +1,22 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 set -euo pipefail
 
 basedir=$(dirname "$0")
 
 for role in "$basedir"/roles/ceph-*; do
-    rolename=$(basename "$role")
-    if [[ $rolename == "ceph-common" ]]; then
-        output="all.sample"
-    elif [[ $rolename == "ceph-agent" ]]; then
-        output="agent.sample"
-    elif [[ $rolename == "ceph-fetch-keys" ]]; then
-        continue
-    else
-        output="${rolename:5}s.sample"
-    fi
-
-    cat <<EOF > "$basedir"/group_vars/"$output"
+  rolename=$(basename "$role")
+  if [[ $rolename == "ceph-common" ]]; then
+      output="all.sample"
+  elif [[ $rolename == "ceph-agent" ]]; then
+      output="agent.sample"
+  elif [[ $rolename == "ceph-fetch-keys" ]]; then
+      continue
+  else
+      output="${rolename:5}s.sample"
+  fi
+
+  cat <<EOF > "$basedir"/group_vars/"$output"
 ---
 # Variables here are applicable to all host groups NOT roles
 
@@ -27,12 +27,21 @@ for role in "$basedir"/roles/ceph-*; do
 dummy:
 
 EOF
-    defaults="$role"/defaults/main.yml
-    if [[ ! -f $defaults ]]; then
-        continue
-    fi
+  defaults="$role"/defaults/main.yml
+  if [[ ! -f $defaults ]]; then
+      continue
+  fi
 
+  if [ "$(uname)" == "Darwin" ]; then
+  sed '/^---/d; s/^\([A-Za-z[:space:]]\)/#\1/' \
+        "$defaults" >> "$basedir"/group_vars/"$output"
+    echo >> "$basedir"/group_vars/"$output"
+  elif [ "$(expr substr $(uname -s) 1 5)" == "Linux" ]; then
     sed '/^---/d; s/^\([A-Za-z[:space:]].\+\)/#\1/' \
         "$defaults" >> "$basedir"/group_vars/"$output"
     echo >> "$basedir"/group_vars/"$output"
+  else
+    echo "Unsupported platform"
+    exit 1
+  fi
 done