feat(treafik): add RealIP and addPrefix middleware (#3884)
* fix typo * feat(treafik): add RealIP middleware * move middlewares to includes * bump minor * remove pilot reference * lint * lint * fix typo in workflow * add script to update traefikMiddlewares * add empty space * realIP empty array * add addprefix middleware
This commit is contained in:
+49
@@ -0,0 +1,49 @@
|
||||
#! /bin/bash
|
||||
|
||||
trainsPath="./charts"
|
||||
traefikTrain="stable"
|
||||
|
||||
get_latest_release() {
|
||||
# Get latest release from GitHub api
|
||||
curl --silent \
|
||||
--header 'authorization: Bearer ${{ secrets.GITHUB_TOKEN }}' \
|
||||
--url "https://api.github.com/repos/$1/releases/latest" |
|
||||
# Get tag line
|
||||
grep '"tag_name":' |
|
||||
# Pluck JSON value
|
||||
sed -E 's/.*"([^"]+)".*/\1/'
|
||||
}
|
||||
|
||||
set_key_to_version() {
|
||||
key="$1"
|
||||
version="$2"
|
||||
traefikValuesFile="$trainsPath/$traefikTrain/traefik/values.yaml"
|
||||
echo "Setting $key to $version..."
|
||||
sed -i "s/${key}: .*/${key}: ${version}/" $traefikValuesFile
|
||||
|
||||
content=$(grep "$key:" "$traefikValuesFile" | sed "s/\s*${key}:\s*//" )
|
||||
echo "New content of $key in values.yaml: $content"
|
||||
echo ""
|
||||
}
|
||||
|
||||
update_plugin() {
|
||||
repo="$1"
|
||||
key="$2"
|
||||
pluginName="$3"
|
||||
|
||||
version=$(get_latest_release "$repo")
|
||||
if [ -z "$version" ]
|
||||
then
|
||||
echo "Got empty version, skipping..."
|
||||
else
|
||||
echo "Fetched $pluginName plugin version: $version"
|
||||
set_key_to_version "$key" "$version"
|
||||
fi;
|
||||
}
|
||||
# Example
|
||||
# update_plugin "repo" "key_holding_version_in_values.yaml" "plugin_name_used_for_verbose_printing_only"
|
||||
# Real IP
|
||||
update_plugin "soulbalz/traefik-real-ip" "realIPVersion" "RealIP"
|
||||
|
||||
# Theme Park
|
||||
update_plugin "packruler/traefik-themepark" "themeParkVersion" "ThemePark"
|
||||
Reference in New Issue
Block a user