Skip to content

Commit b77f296

Browse files
Merge pull request #10 from bitops-plugins/copy_defaults
Add functionality: Merges BitOps Defaults folder with targetted Helm Chart
2 parents 1a36176 + 5292818 commit b77f296

File tree

3 files changed

+34
-54
lines changed

3 files changed

+34
-54
lines changed

deploy.sh

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,15 @@ echo "calling helm/deploy ..."
2323
# if subdirectory is not provided, iterate subdirectories
2424
if [ -z "$ENVIRONMENT_HELM_SUBDIRECTORY" ]; then
2525
echo "ENVIRONMENT_HELM_SUBDIRECTORY not provided, iterate all helm charts in $ENV_DIR/helm"
26+
2627
for helm_chart_dir in $HELM_ROOT_OPERATIONS/*/; do
2728
helm_chart_dir=${helm_chart_dir%*/} # remove the trailing "/"
2829
helm_chart_dir=${helm_chart_dir##*/} # get everything after the final "/"
30+
# The following if conditional checks whether the directory being passed over is the same as the _default folder
31+
# If it is, it skips to the next loop item
32+
if [ "$helm_chart_dir" == "$BITOPS_DEFAULT_ROOT_DIR" ] || [ "$helm_chart_dir" == "$DEFAULT_ROOT_DIR" ]; then
33+
continue
34+
fi
2935
echo "Deploy $helm_chart_dir for $ENVIRONMENT"
3036

3137
$HELM_ROOT_SCRIPTS/scripts/helm_handle_chart.sh $helm_chart_dir

scripts/copy-defaults.sh

Lines changed: 23 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -8,66 +8,40 @@ HELM_CHART="$1"
88
# DEFAULT_HELM_CHART_DIRECTORY
99
# HELM_BITOPS_CONFIG
1010

11-
# TODO: handle if we should merge vs overwrite
12-
13-
# Copy default CRDs.
14-
15-
if [ "1" == "1" ]; then
16-
# if [ "$(shyaml get-value copy_defaults.crds < "$HELM_BITOPS_CONFIG")" == 'True' ]; then
17-
echo "COPY_DEFAULT_CRDS set"
18-
if [ -d "$DEFAULT_HELM_CHART_DIRECTORY/crds" ]; then
19-
echo "default crds/ exist"
20-
cp -rf "$DEFAULT_HELM_CHART_DIRECTORY/crds/." "$HELM_CHART_DIRECTORY/crds/"
21-
else
22-
printf "${ERROR} crds/ does not exist...${NC}"
23-
fi
11+
echo "COPY_DEFAULT_CRDS set..."
12+
if [ -d "$DEFAULT_HELM_CHART_DIRECTORY/crds" ]; then
13+
echo "default crds/ exists."
14+
cp -rf "$DEFAULT_HELM_CHART_DIRECTORY/crds/." "$HELM_CHART_DIRECTORY/crds/"
15+
ls $HELM_CHART_DIRECTORY/crds/
2416
else
2517
echo "COPY_DEFAULT_CRDS not set"
2618
fi
2719

28-
# Copy default Charts.
29-
30-
if [ "1" == "1" ]; then
31-
# if [ "$(shyaml get-value copy_defaults.charts < "$HELM_BITOPS_CONFIG")" == 'True' ]; then
32-
echo "COPY_DEFAULT_CHARTS set"
33-
if [ -d "$DEFAULT_HELM_CHART_DIRECTORY/charts" ]; then
34-
echo "default charts/ exist"
35-
cp -rf "$DEFAULT_HELM_CHART_DIRECTORY/charts/." "$HELM_CHART_DIRECTORY/charts/"
36-
else
37-
printf "${ERROR} charts/ does not exist...${NC}"
38-
fi
20+
echo "COPY_DEFAULT_CHARTS set..."
21+
if [ -d "$DEFAULT_HELM_CHART_DIRECTORY/charts" ]; then
22+
echo "default charts/ exists.\n"
23+
cp -rf "$DEFAULT_HELM_CHART_DIRECTORY/charts/." "$HELM_CHART_DIRECTORY/charts/"
24+
ls $HELM_CHART_DIRECTORY/charts/
3925
else
40-
echo "COPY_DEFAULT_CHARTS not set"
41-
printf "${SUCCESS} Helm deployment was successful...${NC}"
26+
echo "${ERROR} charts/ does not exist.${NC}\n"
4227
fi
4328

44-
# Copy default Templates.
4529

46-
if [ "1" == "1" ]; then
47-
# if [ "$(shyaml get-value copy_defaults.templates < "$HELM_BITOPS_CONFIG")" == 'True' ]; then
48-
echo "COPY_DEFAULT_TEMPLATES set"
49-
if [ -d "$DEFAULT_HELM_CHART_DIRECTORY/templates" ]; then
50-
echo "default templates/ exist"
51-
cp -rf "$DEFAULT_HELM_CHART_DIRECTORY/templates/." "$HELM_CHART_DIRECTORY/templates/"
52-
else
53-
printf "${ERROR} templates/ does not exist...${NC}"
54-
fi
30+
echo "COPY_DEFAULT_TEMPLATES set..."
31+
if [ -d "$DEFAULT_HELM_CHART_DIRECTORY/templates" ]; then
32+
echo "default templates/ exists.\n"
33+
cp -rf "$DEFAULT_HELM_CHART_DIRECTORY/templates/." "$HELM_CHART_DIRECTORY/templates/"
34+
ls $HELM_CHART_DIRECTORY/templates/
5535
else
56-
echo "COPY_DEFAULT_TEMPLATES not set"
36+
echo "${ERROR} templates/ does not exist.${NC}\n"
5737
fi
5838

59-
# TODO: what's the schema?
60-
# Copy default Schema.
6139

62-
if [ "1" == "1" ]; then
63-
# if [ "$(shyaml get-value copy_defaults.schema < "$HELM_BITOPS_CONFIG")" == 'True' ]; then
64-
echo "COPY_DEFAULT_SCHEMA set"
65-
if [ -d "$DEFAULT_HELM_CHART_DIRECTORY/schema" ]; then
66-
echo "default schema/ exists"
67-
cp -rf "$DEFAULT_HELM_CHART_DIRECTORY/templates/." "$HELM_CHART_DIRECTORY/templates/"
68-
else
69-
printf "${ERROR} schema/ does not exist...${NC}"
70-
fi
40+
echo "COPY_DEFAULT_SCHEMA set..."
41+
if [ -d "$DEFAULT_HELM_CHART_DIRECTORY/schema" ]; then
42+
echo "default schema/ exists.\n"
43+
cp -rf "$DEFAULT_HELM_CHART_DIRECTORY/schema/." "$HELM_CHART_DIRECTORY/schema/"
44+
ls $HELM_CHART_DIRECTORY/schema/
7145
else
72-
echo "COPY_DEFAULT_SCHEMA not set"
46+
echo "${ERROR} schema/ does not exist.${NC}\n"
7347
fi

scripts/helm_handle_chart.sh

100755100644
Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ export HELM_CHART_DIRECTORY="$BITOPS_OPSREPO_ENVIRONMENT_DIR/$HELM_CHART"
1111

1212
echo "Parsing helm bitops.config.yaml..."
1313
export BITOPS_CONFIG_COMMAND="$(ENV_FILE="$BITOPS_SCHEMA_ENV_FILE" DEBUG="" bash $SCRIPTS_DIR/bitops-config/convert-schema.sh $BITOPS_CONFIG_SCHEMA $HELM_BITOPS_CONFIG)"
14+
1415
echo "BITOPS_CONFIG_COMMAND: $BITOPS_CONFIG_COMMAND"
1516
source "$BITOPS_SCHEMA_ENV_FILE"
1617

@@ -55,7 +56,7 @@ if [[ -z "$KUBECONFIG_BASE64" ]]; then
5556
export KUBECONFIG=$KUBECONFIG:$BITOPS_KUBE_CONFIG_FILE
5657
export k="kubectl --kubeconfig=$BITOPS_KUBE_CONFIG_FILE"
5758
export h="helm --kubeconfig=$BITOPS_KUBE_CONFIG_FILE"
58-
fi
59+
fi
5960
else
6061
if [[ "${FETCH_KUBECONFIG}" == "False" ]]; then
6162
>&2 echo "{\"error\":\"'kubeconfig' cannot be false when 'cluster-name' variable is defined in bitops.config.yaml.Exiting...\"}"
@@ -104,15 +105,14 @@ fi
104105
echo "Identify the default root folder for $HELM_CHART helm chart"
105106
if [[ "${DEFAULT_DIR_FLAG}" == "True" ]]; then
106107
echo "Use 'opsrepo_root_default_dir' of bitops.config.yaml build config value for default root directory..."
107-
export DEFAULT_HELM_ROOT="$BITOPS_TEMPDIR/$BITOPS_DEFAULT_ROOT_DIR"
108-
export DEFAULT_HELM_CHART_DIRECTORY="$DEFAULT_HELM_ROOT/$DEFAULT_SUB_DIR"
108+
export DEFAULT_HELM_ROOT="$BITOPS_OPSREPO_ENVIRONMENT_DIR/$BITOPS_DEFAULT_ROOT_DIR"
109109
else
110110
echo "Use 'default-root-dir' of bitops.config.yaml helm chart config value for default root directory..."
111-
export DEFAULT_HELM_ROOT="$BITOPS_TEMPDIR/$DEFAULT_ROOT_DIR"
112-
export DEFAULT_HELM_CHART_DIRECTORY="$DEFAULT_HELM_ROOT/$DEFAULT_SUB_DIR"
111+
export DEFAULT_HELM_ROOT="$BITOPS_OPSREPO_ENVIRONMENT_DIR/$DEFAULT_ROOT_DIR"
113112
fi
114113
echo "default root folder for $HELM_CHART helm chart found.."
115114

115+
export DEFAULT_HELM_CHART_DIRECTORY="$DEFAULT_HELM_ROOT/$DEFAULT_SUB_DIR"
116116

117117
### COPY DEFAULTS
118118
echo "Copying defaults...."

0 commit comments

Comments
 (0)