mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-24 20:24:09 +00:00
Merge pull request #65024 from jingax10/calico_custom_branch
Automatic merge from submit-queue (batch tested with PRs 65024, 65287, 65345, 64693, 64941). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Add a helper function to customize K8s addon yamls and use it to customize Calico addons on GKE **What this PR does / why we need it**: Allow customizing Calico addon in GCP. With #65022, this allows us to do a couple of things:, e.g., run Calico 3.0+ on GCP, use a non-default MTU etc. **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*: Fixes #65045, #65067 **Special notes for your reviewer**: **Release note**: ```release-note NONE ```
This commit is contained in:
commit
b48339704f
@ -2286,6 +2286,23 @@ EOF
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# A helper function to set up a custom yaml for a k8s addon.
|
||||||
|
#
|
||||||
|
# $1: addon category under /etc/kubernetes
|
||||||
|
# $2: manifest source dir
|
||||||
|
# $3: manifest file
|
||||||
|
# $4: custom yaml
|
||||||
|
function setup-addon-custom-yaml {
|
||||||
|
local -r manifest_path="/etc/kubernetes/$1/$2/$3"
|
||||||
|
local -r custom_yaml="$4"
|
||||||
|
if [ -n "${custom_yaml:-}" ]; then
|
||||||
|
# Replace with custom manifest.
|
||||||
|
cat > "${manifest_path}" <<EOF
|
||||||
|
$custom_yaml
|
||||||
|
EOF
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
# Prepares the manifests of k8s addons, and starts the addon manager.
|
# Prepares the manifests of k8s addons, and starts the addon manager.
|
||||||
# Vars assumed:
|
# Vars assumed:
|
||||||
# CLUSTER_NAME
|
# CLUSTER_NAME
|
||||||
@ -2437,6 +2454,9 @@ EOF
|
|||||||
if [[ "${NETWORK_POLICY_PROVIDER:-}" == "calico" ]]; then
|
if [[ "${NETWORK_POLICY_PROVIDER:-}" == "calico" ]]; then
|
||||||
setup-addon-manifests "addons" "calico-policy-controller"
|
setup-addon-manifests "addons" "calico-policy-controller"
|
||||||
|
|
||||||
|
setup-addon-custom-yaml "addons" "calico-policy-controller" "calico-node-daemonset.yaml" "${CUSTOM_CALICO_NODE_DAEMONSET_YAML:-}"
|
||||||
|
setup-addon-custom-yaml "addons" "calico-policy-controller" "typha-deployment.yaml" "${CUSTOM_TYPHA_DEPLOYMENT_YAML:-}"
|
||||||
|
|
||||||
# Configure Calico CNI directory.
|
# Configure Calico CNI directory.
|
||||||
local -r ds_file="${dst_dir}/calico-policy-controller/calico-node-daemonset.yaml"
|
local -r ds_file="${dst_dir}/calico-policy-controller/calico-node-daemonset.yaml"
|
||||||
sed -i -e "s@__CALICO_CNI_DIR__@/home/kubernetes/bin@g" "${ds_file}"
|
sed -i -e "s@__CALICO_CNI_DIR__@/home/kubernetes/bin@g" "${ds_file}"
|
||||||
|
Loading…
Reference in New Issue
Block a user