Эх сурвалжийг харах

Refactor config appending in action.yml

Refactor configuration appending to use an array and loop.
jimsterino98 2 сар өмнө
parent
commit
063f89cff2

+ 15 - 15
.github/actions/droidspaces/action.yml

@@ -20,31 +20,31 @@ runs:
      fi
 
      cd "$GITHUB_WORKSPACE"
-     cat >> "$GKI_DEFCONFIG" << 'EOF'
-     # IPC
+     configs=(
      CONFIG_SYSVIPC=y
      CONFIG_POSIX_MQUEUE=y
-
-     # Namespaces
      CONFIG_IPC_NS=y
      CONFIG_PID_NS=y
-
-     # HW Access Support
      CONFIG_DEVTMPFS=y
-
-     # Below configs are optional
-
-     # Docker NAT
      CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=y
-
-     # UFW
      CONFIG_NETFILTER_XT_TARGET_REJECT=y
      CONFIG_NETFILTER_XT_TARGET_LOG=y
      CONFIG_NETFILTER_XT_MATCH_RECENT=y
-
-     # Fail2Ban
      CONFIG_IP_SET=y
      CONFIG_IP_SET_HASH_IP=y
      CONFIG_IP_SET_HASH_NET=y
      CONFIG_NETFILTER_XT_SET=y
-     EOF
+     )
+     
+     for config in "${configs[@]}"; do
+         key="${config%%=*}"
+
+         if grep -qE "^(${key}=|# ${key} is not set$)" "$GKI_DEFCONFIG"; then
+             sed -i -E \
+                 -e "s/^${key}=.*/${config}/" \
+                 -e "s/^# ${key} is not set\$/${config}/" \
+                 "$GKI_DEFCONFIG"
+         else
+             echo "$config" >> "$GKI_DEFCONFIG"
+         fi
+     done