Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion charts/provisioner-config-local/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ apiVersion: v2
name: provisioner-config-local
description: Platform Provisioner local config
type: application
version: "1.13.13"
version: "1.14.0"
appVersion: "2.0.1"
home: https://github.com/TIBCOSoftware/tp-helm-charts
maintainers:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,12 +31,12 @@ meta:
GUI_CP_PROXY_NO_PROXY: ""

# CP version see: https://docs.tibco.com/pub/platform-cp/latest/doc/html/Default.htm#Installation/helm-chart-version-matrix.htm
GUI_CP_PLATFORM_TIBCO_CP_BASE_VERSION: 1.13.0
GUI_CP_PLATFORM_INTEGRATION_BW_VERSION: 1.13.0
GUI_CP_PLATFORM_INTEGRATION_FLOGO_VERSION: 1.13.0
GUI_CP_PLATFORM_TIBCOHUB_VERSION: 1.13.0
GUI_CP_PLATFORM_TIBCO_CP_BASE_VERSION: 1.14.0
GUI_CP_PLATFORM_INTEGRATION_BW_VERSION: 1.14.0
GUI_CP_PLATFORM_INTEGRATION_FLOGO_VERSION: 1.14.0
GUI_CP_PLATFORM_TIBCOHUB_VERSION: 1.14.0
GUI_CP_PLATFORM_MESSAGING_VERSION: 1.13.15
GUI_CP_PLATFORM_HAWK_VERSION: 1.13.15
GUI_CP_PLATFORM_HAWK_VERSION: 1.14.4
GUI_CP_PLATFORM_EVENTPROCESSING_VERSION: 1.12.0
GUI_CP_PLATFORM_AI_AGENT_VERSION: "~1.14.0-0"

Expand Down Expand Up @@ -247,12 +247,12 @@ meta:
TP_TLS_KEY_HYBRID_PROXY: ${GUI_TP_TLS_KEY_HYBRID_PROXY:-""} # the tls.key for hybrid-proxy ingress

# CP version see: https://docs.tibco.com/pub/platform-cp/latest/doc/html/Default.htm#Installation/helm-chart-version-matrix.htm
CP_PLATFORM_TIBCO_CP_BASE_VERSION: ${GUI_CP_PLATFORM_TIBCO_CP_BASE_VERSION:-1.13.0} # use ^1.0.0 for latest
CP_PLATFORM_INTEGRATION_BW_VERSION: ${GUI_CP_PLATFORM_INTEGRATION_BW_VERSION:-1.13.0} # use ^1.0.0 for latest
CP_PLATFORM_INTEGRATION_FLOGO_VERSION: ${GUI_CP_PLATFORM_INTEGRATION_FLOGO_VERSION:-1.13.0} # use ^1.0.0 for latest
CP_PLATFORM_TIBCOHUB_VERSION: ${GUI_CP_PLATFORM_TIBCOHUB_VERSION:-1.13.0} # use ^1.0.0 for latest
CP_PLATFORM_TIBCO_CP_BASE_VERSION: ${GUI_CP_PLATFORM_TIBCO_CP_BASE_VERSION:-1.14.0} # use ^1.0.0 for latest
CP_PLATFORM_INTEGRATION_BW_VERSION: ${GUI_CP_PLATFORM_INTEGRATION_BW_VERSION:-1.14.0} # use ^1.0.0 for latest
CP_PLATFORM_INTEGRATION_FLOGO_VERSION: ${GUI_CP_PLATFORM_INTEGRATION_FLOGO_VERSION:-1.14.0} # use ^1.0.0 for latest
CP_PLATFORM_TIBCOHUB_VERSION: ${GUI_CP_PLATFORM_TIBCOHUB_VERSION:-1.14.0} # use ^1.0.0 for latest
CP_PLATFORM_MESSAGING_VERSION: ${GUI_CP_PLATFORM_MESSAGING_VERSION:-1.13.15} # use ^1.0.0 for latest
CP_PLATFORM_HAWK_VERSION: ${GUI_CP_PLATFORM_HAWK_VERSION:-1.13.15} # use ^1.0.0 for latest
CP_PLATFORM_HAWK_VERSION: ${GUI_CP_PLATFORM_HAWK_VERSION:-1.14.4} # use ^1.0.0 for latest
CP_PLATFORM_EVENTPROCESSING_VERSION: ${GUI_CP_PLATFORM_EVENTPROCESSING_VERSION:-1.12.0} # use ^1.0.0 for latest
CP_PLATFORM_AI_AGENT_VERSION: ${GUI_CP_PLATFORM_AI_AGENT_VERSION:-"~1.14.0-0"} # use ~1.14.0-0 for latest alpha/stable

Expand Down Expand Up @@ -1024,7 +1024,7 @@ helmCharts:
enabled: true
mcpserver:
enabled: ${TP_AI_ENABLE_FLOGO_MCP_SERVER}
flogoce-utilities:
flogo-utilities:
enabled: true
cluster:
names:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ meta:

# CP automation
GUI_TP_AUTOMATION_DOCKER_IMAGE_REPO: "ghcr.io/tibcosoftware/platform-provisioner/platform-provisioner"
GUI_TP_AUTOMATION_DOCKER_IMAGE_TAG: 1.6.12-auto-on-prem-jammy
GUI_TP_AUTOMATION_DOCKER_IMAGE_TAG: 1.6.13-auto-on-prem-jammy

# flow control
GUI_TP_INSTALL_PROVISIONER_UI: false
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ meta:

# CP automation
GUI_TP_AUTOMATION_DOCKER_IMAGE_REPO: "ghcr.io/tibcosoftware/platform-provisioner/platform-provisioner"
GUI_TP_AUTOMATION_DOCKER_IMAGE_TAG: 1.6.12-auto-on-prem-jammy
GUI_TP_AUTOMATION_DOCKER_IMAGE_TAG: 1.6.13-auto-on-prem-jammy

# flow control
GUI_TP_INSTALL_PROVISIONER_UI: false
Expand Down
54 changes: 54 additions & 0 deletions docs/recipes/automation/on-prem/adjust-ingress.sh
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ function adjust_ingress() {
echo "Please select an option:"
echo "1. Adjust for nginx"
echo "2. Adjust for traefik"
echo "3. Adjust for nginx gateway fabric"
echo "0. Exit"
read -rp "Enter your choice (0-2): " choice
fi
Expand All @@ -24,6 +25,7 @@ function adjust_ingress() {
if [[ -f "${_recipe_file_name}" ]]; then
yq eval -i '(.meta.guiEnv.GUI_TP_INSTALL_NGINX_INGRESS = true)' "$_recipe_file_name"
yq eval -i '(.meta.guiEnv.GUI_TP_INSTALL_TRAEFIK_INGRESS = false)' "$_recipe_file_name"
yq eval -i '(.meta.guiEnv.GUI_TP_INSTALL_NGINX_GATEWAY = false)' "$_recipe_file_name"
yq eval -i '(.meta.guiEnv.GUI_TP_PROVISIONER_UI_INGRESS_CLASSNAME = env(TP_INGRESS_CLASS_NAME))' "$_recipe_file_name"
fi

Expand Down Expand Up @@ -69,6 +71,7 @@ function adjust_ingress() {
if [[ -f "${_recipe_file_name}" ]]; then
yq eval -i '(.meta.guiEnv.GUI_TP_INSTALL_NGINX_INGRESS = false)' "$_recipe_file_name"
yq eval -i '(.meta.guiEnv.GUI_TP_INSTALL_TRAEFIK_INGRESS = true)' "$_recipe_file_name"
yq eval -i '(.meta.guiEnv.GUI_TP_INSTALL_NGINX_GATEWAY = false)' "$_recipe_file_name"
yq eval -i '(.meta.guiEnv.GUI_TP_PROVISIONER_UI_INGRESS_CLASSNAME = env(TP_INGRESS_CLASS_NAME))' "$_recipe_file_name"
fi

Expand Down Expand Up @@ -107,6 +110,57 @@ function adjust_ingress() {

break
;;
3)
echo "Adjusting ingress for nginx gateway fabric..."
_recipe_file_name="01-tp-on-prem.yaml"
export TP_INGRESS_CLASS_NAME="nginx-gateway"
export TP_O11Y_INGRESS_GATEWAY_SELECTION="gateway"
if [[ -f "${_recipe_file_name}" ]]; then
yq eval -i '(.meta.guiEnv.GUI_TP_INSTALL_NGINX_INGRESS = false)' "$_recipe_file_name"
yq eval -i '(.meta.guiEnv.GUI_TP_INSTALL_TRAEFIK_INGRESS = false)' "$_recipe_file_name"
yq eval -i '(.meta.guiEnv.GUI_TP_INSTALL_NGINX_GATEWAY = true)' "$_recipe_file_name"
yq eval -i '(.meta.guiEnv.GUI_TP_PROVISIONER_UI_INGRESS_CLASSNAME = env(TP_INGRESS_CLASS_NAME))' "$_recipe_file_name"
yq eval -i '(.meta.guiEnv.GUI_CP_BOOTSTRAP_INGRESS_OBJECT = "gateway")' "$_recipe_file_name"
fi

_recipe_file_name="02-tp-cp-on-prem.yaml"
if [[ -f "${_recipe_file_name}" ]]; then
yq eval -i '(.meta.guiEnv.GUI_CP_INGRESS_CLASSNAME = env(TP_INGRESS_CLASS_NAME))' "$_recipe_file_name"
yq eval -i '(.meta.guiEnv.GUI_CP_BOOTSTRAP_INGRESS_OBJECT = "gateway")' "$_recipe_file_name"
fi

_recipe_file_name="03-tp-adjust-dns.yaml"
export TP_INGRESS_SERVICE_NAME="nginx-gateway-nginx.ingress-system.svc.cluster.local"
if [[ -f "${_recipe_file_name}" ]]; then
yq eval -i '(.meta.guiEnv.GUI_TARGET_SERVICE = env(TP_INGRESS_SERVICE_NAME))' "$_recipe_file_name"
fi

_recipe_file_name="05-tp-auto-deploy-dp.yaml"
export TP_INGRESS_CONTROLLER_SERVICE_NAME="nginx-gateway-nginx"
export TP_INGRESS_CONTROLLER_SERVICE_NAMESPACE="ingress-system"
export TP_INGRESS_CONTROLLER_SERVICE_PORT="443:https"
if [[ -f "${_recipe_file_name}" ]]; then
yq eval -i '(.meta.guiEnv.GUI_TP_AUTO_INGRESS_CONTROLLER = env(TP_INGRESS_CLASS_NAME))' "$_recipe_file_name"
yq eval -i '(.meta.guiEnv.GUI_TP_AUTO_INGRESS_CONTROLLER_CLASS_NAME = env(TP_INGRESS_CLASS_NAME))' "$_recipe_file_name"
yq eval -i '(.meta.guiEnv.GUI_TP_INGRESS_CONTROLLER_SERVICE_NAME = env(TP_INGRESS_CONTROLLER_SERVICE_NAME))' "$_recipe_file_name"
yq eval -i '(.meta.guiEnv.GUI_TP_INGRESS_CONTROLLER_SERVICE_NAMESPACE = env(TP_INGRESS_CONTROLLER_SERVICE_NAMESPACE))' "$_recipe_file_name"
yq eval -i '(.meta.guiEnv.GUI_TP_INGRESS_CONTROLLER_SERVICE_PORT = env(TP_INGRESS_CONTROLLER_SERVICE_PORT))' "$_recipe_file_name"
fi

_recipe_file_name="06-tp-o11y-stack.yaml"
if [[ -f "${_recipe_file_name}" ]]; then
yq eval -i '(.meta.guiEnv.GUI_TP_INGRESS_CLASS = env(TP_INGRESS_CLASS_NAME))' "$_recipe_file_name"
yq eval -i '(.meta.guiEnv.GUI_TP_GATEWAY_CLASS = env(TP_INGRESS_CLASS_NAME))' "$_recipe_file_name"
yq eval -i '(.meta.guiEnv.GUI_TP_O11Y_INGRESS_GATEWAY_SELECTION = env(TP_O11Y_INGRESS_GATEWAY_SELECTION))' "$_recipe_file_name"
fi

_recipe_file_name="07-tp-bw5-stack.yaml"
if [[ -f "${_recipe_file_name}" ]]; then
yq eval -i '(.meta.guiEnv.GUI_TP_INGRESS_CLASS = env(TP_INGRESS_CLASS_NAME))' "$_recipe_file_name"
fi

break
;;
0)
echo "Exiting..."
break
Expand Down
8 changes: 8 additions & 0 deletions docs/recipes/automation/tp-setup/bootstrap/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
## [1.6.13-auto-on-prem-jammy]
### Changed
- Change version from update time to semantic versioning format.
- Update toolkit script `bump_version.sh` to support semantic versioning format update.
* change `version` in `charts/provisioner-config-local/Chart.yaml` file
* change `1.x.x-auto-on-prem-jammy` in `docs/recipes/automation/tp-setup/bootstrap/version.txt` file
* search `-auto-on-prem-jammy` in the specified file, then update it.

## [12/08/2025 22:30]
### Added
- Support for config MCP Server in settings page before creating OAuth Token
Expand Down
19 changes: 13 additions & 6 deletions docs/recipes/automation/tp-setup/bootstrap/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -200,17 +200,24 @@ export GITHUB_TOKEN=""
python page_dp.py
```

## Build and push docker image to GHCR Public repo
## Build and push docker image to GHCR Public repo (Publish a new version)
1. Go to [github Actions page](https://github.com/tibco/platform-provisioner/actions/workflows/docker-image-ghcr-build-push-public.yml)
2. Run the workflow manually
1. update image tag: 1.x.x-auto-on-prem-jammy
2. git branch name: your_branch_name
3. click "Run workflow" button
3. After the workflow is done, search `-auto-on-prem-jammy` in all files, then update it, currently in the following files:
* in `charts/provisioner-config-local/recipes/tp-base-on-prem-https.yaml` file
* in `charts/provisioner-config-local/recipes/tp-base-on-prem.yaml` file
* in `docs/recipes/tp-base/tp-base-on-prem-https.yaml` file
* in `docs/recipes/tp-base/tp-base-on-prem.yaml` file
3. After the workflow is done
Run change version script to update all related files
```shell
./docs/recipes/automation/tp-setup/bootstrap/bump_version.sh
```
* change `version` in `charts/provisioner-config-local/Chart.yaml` file
* change `1.x.x-auto-on-prem-jammy` in `docs/recipes/automation/tp-setup/bootstrap/version.txt` file
* search `-auto-on-prem-jammy` in the specified file, then update it, currently in the following files:
* in `charts/provisioner-config-local/recipes/tp-base-on-prem-https.yaml` file
* in `charts/provisioner-config-local/recipes/tp-base-on-prem.yaml` file
* in `docs/recipes/tp-base/tp-base-on-prem-https.yaml` file
* in `docs/recipes/tp-base/tp-base-on-prem.yaml` file

## FAQ
1. If pod `dp-config-es-es-default-0` is pending.
Expand Down
128 changes: 80 additions & 48 deletions docs/recipes/automation/tp-setup/bootstrap/bump_version.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,51 +10,83 @@ cd "$PROJECT_ROOT" || { echo "❌ Failed to change to project root directory.";

echo "📂 Now in project root: $PROJECT_ROOT"

# Define file paths
CHART_FILE="charts/provisioner-config-local/Chart.yaml"
VERSION_FILE="docs/recipes/automation/tp-setup/bootstrap/version.txt"

# Ensure Chart.yaml exists
if [ ! -f "$CHART_FILE" ]; then
echo "❌ Error: Chart file not found at $CHART_FILE"
exit 1
fi

# Read the current version from Chart.yaml
current_version=$(grep '^version:' "$CHART_FILE" | awk '{print $2}' | tr -d '"')

# Validate version format (must be X.Y.Z)
if ! [[ "$current_version" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo "❌ Error: Current version ($current_version) is not in valid format (X.Y.Z)"
exit 1
fi

# Split prefix and patch
prefix=$(echo "$current_version" | awk -F. '{print $1"."$2}')
patch=$(echo "$current_version" | awk -F. '{print $3}')

# Increment patch version
new_patch=$((patch + 1))
new_version="${prefix}.${new_patch}"
# use current time for new_ui_version
new_ui_version="$(date '+%m/%d/%Y %H:%M')"
#new_ui_version="$(git log -1 --pretty=format:"%h" .)"

echo "Current version: $current_version"
echo "New version: $new_version"

# Update Chart.yaml safely
# Use a temp file for compatibility across Linux, macOS, Git Bash
tmp_file=$(mktemp)
awk -v new_version="$new_version" '
/^version:/ {$0 = "version: \"" new_version "\""}
{print}
' "$CHART_FILE" > "$tmp_file" && mv "$tmp_file" "$CHART_FILE"

# Update version.txt
mkdir -p "$(dirname "$VERSION_FILE")"
echo "$new_ui_version" > "$VERSION_FILE"

echo "✅ Successfully updated:"
echo "- $CHART_FILE with version: $new_version"
echo "- $VERSION_FILE with version: $new_ui_version"
get_current_version() {
local yaml_file="$1"
local yq_path="$2"

# Read raw value from YAML
local raw_value
raw_value=$(yq "$yq_path" "$yaml_file")

if [[ -z "$raw_value" ]]; then
echo "ERROR: Cannot read path: $yq_path" >&2
return 1
fi

# Extract full version string starting with X.Y.Z
# Example matches:
# 1.6.13
# 1.6.13-auto-on-prem-jammy
# 1.6.13_rc1
# 1.6.13+build45
local version
version=$(echo "$raw_value" | grep -oE '^[0-9]+\.[0-9]+\.[0-9]+.*')

if [[ -z "$version" ]]; then
echo "ERROR: Value does not contain valid version prefix (X.Y.Z): $raw_value" >&2
return 1
fi

echo "$version"
}

set_version() {
local yaml_file="$1"
local current_value="$2"

# 1) Extract X.Y.Z
local base_version
base_version=$(echo "$current_value" | grep -oE '^[0-9]+\.[0-9]+\.[0-9]+')

if [[ -z "$base_version" ]]; then
echo "ERROR: failed to detect version in: $current_value" >&2
return 1
fi

# 2) bump patch version
local major minor patch
IFS='.' read -r major minor patch <<< "$base_version"
local new_version="${major}.${minor}.$((patch + 1))"

# 3) keep suffix
local suffix="${current_value#"$base_version"}"
local new_full="${new_version}${suffix}"

# 4) escape special chars for sed
local old_escaped new_escaped
old_escaped=$(printf '%s' "$current_value" | sed 's/[\/&]/\\&/g')
new_escaped=$(printf '%s' "$new_full" | sed 's/[\/&]/\\&/g')

# 5) replace ONLY this exact string (preserves all formatting)
sed -i.bak "s/$old_escaped/$new_escaped/" "$yaml_file"
rm -f "$yaml_file.bak"

echo "File: $yaml_file"
echo "✅ Change version: $current_value ➡️ $new_full"
echo ""
}

chart_version=$(get_current_version "charts/provisioner-config-local/Chart.yaml" ".version")
set_version "charts/provisioner-config-local/Chart.yaml" "${chart_version}"

BUILD_VERSION_FILE="docs/recipes/automation/tp-setup/bootstrap/version.txt"
automation_version=$(head -n 1 "$BUILD_VERSION_FILE")

set_version "$BUILD_VERSION_FILE" "${automation_version}"
set_version "charts/provisioner-config-local/recipes/tp-base-on-prem.yaml" "${automation_version}"
set_version "charts/provisioner-config-local/recipes/tp-base-on-prem-https.yaml" "${automation_version}"
set_version "docs/recipes/tp-base/tp-base-on-prem.yaml" "${automation_version}"
set_version "docs/recipes/tp-base/tp-base-on-prem-https.yaml" "${automation_version}"

# add tips to add what you changed in CHANGELOG.md file
echo "📝 Please remember to update CHANGELOG.md with the new version details."
Loading