|
|
@@ -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
|