Skip to content

Commit 29ab479

Browse files
committed
fix: resolve script issues for package setup
- Fix sed command syntax for cross-platform compatibility - Fix mktemp command for macOS compatibility - Fix jq JSON merging for optionalDependencies - Test both GitHub Packages and public npm setup - Ensure proper package name generation Both setup scripts now work correctly: - scripts/setup-github-packages.sh macayaven - scripts/setup-public-npm.sh openshift-ai
1 parent ae3d569 commit 29ab479

File tree

2 files changed

+46
-38
lines changed

2 files changed

+46
-38
lines changed

scripts/setup-github-packages.sh

Lines changed: 23 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -11,37 +11,41 @@ echo "Repository: https://github.com/$USERNAME/openshift-mcp-server"
1111

1212
# Update main package
1313
echo "Updating npm/kubernetes-mcp-server/package.json..."
14-
sed -i "s|\"name\": \".*\"|\"name\": \"@$USERNAME/kubernetes-mcp-server\"|g" npm/kubernetes-mcp-server/package.json
15-
sed -i "s|\"repository\": \".*\"|\"repository\": {\"type\": \"git\", \"url\": \"git+https://github.com/$USERNAME/openshift-mcp-server.git\"}|g" npm/kubernetes-mcp-server/package.json
16-
sed -i "s|\"bugs\": \".*\"|\"bugs\": {\"url\": \"https://github.com/$USERNAME/openshift-mcp-server.git/issues\"}|g" npm/kubernetes-mcp-server/package.json
17-
sed -i "s|\"homepage\": \".*\"|\"homepage\": \"https://github.com/$USERNAME/openshift-mcp-server#readme\"|g" npm/kubernetes-mcp-server/package.json
14+
sed -i.bak 's|"name": ".*"|"name": "@'$USERNAME'/kubernetes-mcp-server"|g' npm/kubernetes-mcp-server/package.json
15+
sed -i.bak 's|"repository": ".*"|"repository": {"type": "git", "url": "git+https://github.com/'$USERNAME'/openshift-mcp-server.git"}|g' npm/kubernetes-mcp-server/package.json
16+
sed -i.bak 's|"bugs": ".*"|"bugs": {"url": "https://github.com/'$USERNAME'/openshift-mcp-server.git/issues"}|g' npm/kubernetes-mcp-server/package.json
17+
sed -i.bak 's|"homepage": ".*"|"homepage": "https://github.com/'$USERNAME'/openshift-mcp-server#readme"|g' npm/kubernetes-mcp-server/package.json
1818

1919
# Update platform packages
2020
for platform in darwin-amd64 darwin-arm64 linux-amd64 linux-arm64 windows-amd64 windows-arm64; do
2121
echo "Updating npm/kubernetes-mcp-server-$platform/package.json..."
22-
sed -i "s|\"name\": \".*\"|\"name\": \"@$USERNAME/kubernetes-mcp-server-$platform\"|g" "npm/kubernetes-mcp-server-$platform/package.json"
23-
sed -i "s|\"repository\": \".*\"|\"repository\": {\"type\": \"git\", \"url\": \"git+https://github.com/$USERNAME/openshift-mcp-server.git\"}|g" "npm/kubernetes-mcp-server-$platform/package.json"
24-
sed -i "s|\"bugs\": \".*\"|\"bugs\": {\"url\": \"https://github.com/$USERNAME/openshift-mcp-server.git/issues\"}|g" "npm/kubernetes-mcp-server-$platform/package.json"
25-
sed -i "s|\"homepage\": \".*\"|\"homepage\": \"https://github.com/$USERNAME/openshift-mcp-server#readme\"|g" "npm/kubernetes-mcp-server-$platform/package.json"
22+
sed -i.bak 's|"name": ".*"|"name": "@'$USERNAME'/kubernetes-mcp-server-'$platform'"|g' "npm/kubernetes-mcp-server-$platform/package.json"
23+
sed -i.bak 's|"repository": ".*"|"repository": {"type": "git", "url": "git+https://github.com/'$USERNAME'/openshift-mcp-server.git"}|g' "npm/kubernetes-mcp-server-$platform/package.json"
24+
sed -i.bak 's|"bugs": ".*"|"bugs": {"url": "https://github.com/'$USERNAME'/openshift-mcp-server.git/issues"}|g' "npm/kubernetes-mcp-server-$platform/package.json"
25+
sed -i.bak 's|"homepage": ".*"|"homepage": "https://github.com/'$USERNAME'/openshift-mcp-server#readme"|g' "npm/kubernetes-mcp-server-$platform/package.json"
2626
done
2727

2828
# Update optionalDependencies in main package
2929
echo "Updating optionalDependencies in main package..."
30-
TEMP_FILE=$(mktemp)
31-
cat > "$TEMP_FILE" << 'EOF'
30+
VERSION=$(cat npm/kubernetes-mcp-server/package.json | grep '"version"' | cut -d'"' -f4)
31+
32+
# Create optional dependencies JSON
33+
TEMP_FILE=$(mktemp -t deps.XXXXXX.json)
34+
cat > "$TEMP_FILE" << EOF
35+
{
3236
"optionalDependencies": {
37+
"@$USERNAME/kubernetes-mcp-server-darwin-amd64": "$VERSION",
38+
"@$USERNAME/kubernetes-mcp-server-darwin-arm64": "$VERSION",
39+
"@$USERNAME/kubernetes-mcp-server-linux-amd64": "$VERSION",
40+
"@$USERNAME/kubernetes-mcp-server-linux-arm64": "$VERSION",
41+
"@$USERNAME/kubernetes-mcp-server-windows-amd64": "$VERSION",
42+
"@$USERNAME/kubernetes-mcp-server-windows-arm64": "$VERSION"
43+
}
44+
}
3345
EOF
3446

35-
for platform in darwin-amd64 darwin-arm64 linux-amd64 linux-arm64 windows-amd64 windows-arm64; do
36-
echo " \"@$USERNAME/kubernetes-mcp-server-$platform\": \"$(cat npm/kubernetes-mcp-server/package.json | grep '"version"' | cut -d'"' -f4)\"," >> "$TEMP_FILE"
37-
done
38-
39-
# Remove trailing comma and close object
40-
sed -i '$ s/,$//' "$TEMP_FILE"
41-
echo " }" >> "$TEMP_FILE"
42-
4347
# Update the main package.json
44-
jq --argfile deps "$TEMP_FILE" '.optionalDependencies = $deps.optionalDependencies' npm/kubernetes-mcp-server/package.json > npm/kubernetes-mcp-server/package.json.tmp && mv npm/kubernetes-mcp-server/package.json.tmp npm/kubernetes-mcp-server/package.json
48+
jq -s '.[0] * .[1]' npm/kubernetes-mcp-server/package.json "$TEMP_FILE" > npm/kubernetes-mcp-server/package.json.tmp && mv npm/kubernetes-mcp-server/package.json.tmp npm/kubernetes-mcp-server/package.json
4549

4650
rm -f "$TEMP_FILE"
4751

scripts/setup-public-npm.sh

Lines changed: 23 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -10,37 +10,41 @@ echo "🔧 Setting up packages for public npm registry with suffix: $SUFFIX"
1010

1111
# Update main package
1212
echo "Setting up main package..."
13-
sed -i "s|\"name\": \".*\"|\"name\": \"kubernetes-mcp-server-$SUFFIX\"|g" npm/kubernetes-mcp-server/package.json
14-
sed -i "s|\"repository\": \".*\"|\"repository\": {\"type\": \"git\", \"url\": \"git+https://github.com/macayaven/openshift-mcp-server.git\"}|g" npm/kubernetes-mcp-server/package.json
15-
sed -i "s|\"bugs\": \".*\"|\"bugs\": {\"url\": \"https://github.com/macayaven/openshift-mcp-server.git/issues\"}|g" npm/kubernetes-mcp-server/package.json
16-
sed -i "s|\"homepage\": \".*\"|\"homepage\": \"https://github.com/macayaven/openshift-mcp-server#readme\"|g" npm/kubernetes-mcp-server/package.json
13+
sed -i.bak 's|"name": ".*"|"name": "kubernetes-mcp-server-'$SUFFIX'"|g' npm/kubernetes-mcp-server/package.json
14+
sed -i.bak 's|"repository": ".*"|"repository": {"type": "git", "url": "git+https://github.com/macayaven/openshift-mcp-server.git"}|g' npm/kubernetes-mcp-server/package.json
15+
sed -i.bak 's|"bugs": ".*"|"bugs": {"url": "https://github.com/macayaven/openshift-mcp-server.git/issues"}|g' npm/kubernetes-mcp-server/package.json
16+
sed -i.bak 's|"homepage": ".*"|"homepage": "https://github.com/macayaven/openshift-mcp-server#readme"|g' npm/kubernetes-mcp-server/package.json
1717

1818
# Update platform packages
1919
for platform in darwin-amd64 darwin-arm64 linux-amd64 linux-arm64 windows-amd64 windows-arm64; do
2020
echo "Updating npm/kubernetes-mcp-server-$platform/package.json..."
21-
sed -i "s|\"name\": \".*\"|\"name\": \"kubernetes-mcp-server-$SUFFIX-$platform\"|g" "npm/kubernetes-mcp-server-$platform/package.json"
22-
sed -i "s|\"repository\": \".*\"|\"repository\": {\"type\": \"git\", \"url\": \"git+https://github.com/macayaven/openshift-mcp-server.git\"}|g" "npm/kubernetes-mcp-server-$platform/package.json"
23-
sed -i "s|\"bugs\": \".*\"|\"bugs\": {\"url\": \"https://github.com/macayaven/openshift-mcp-server.git/issues\"}|g" "npm/kubernetes-mcp-server-$platform/package.json"
24-
sed -i "s|\"homepage\": \".*\"|\"homepage\": \"https://github.com/macayaven/openshift-mcp-server#readme\"|g" "npm/kubernetes-mcp-server-$platform/package.json"
21+
sed -i.bak 's|"name": ".*"|"name": "kubernetes-mcp-server-'$SUFFIX'-'$platform'"|g' "npm/kubernetes-mcp-server-$platform/package.json"
22+
sed -i.bak 's|"repository": ".*"|"repository": {"type": "git", "url": "git+https://github.com/macayaven/openshift-mcp-server.git"}|g' "npm/kubernetes-mcp-server-$platform/package.json"
23+
sed -i.bak 's|"bugs": ".*"|"bugs": {"url": "https://github.com/macayaven/openshift-mcp-server.git/issues"}|g' "npm/kubernetes-mcp-server-$platform/package.json"
24+
sed -i.bak 's|"homepage": ".*"|"homepage": "https://github.com/macayaven/openshift-mcp-server#readme"|g' "npm/kubernetes-mcp-server-$platform/package.json"
2525
done
2626

2727
# Update optionalDependencies in main package
2828
echo "Updating optionalDependencies in main package..."
29-
TEMP_FILE=$(mktemp)
30-
cat > "$TEMP_FILE" << 'EOF'
29+
VERSION=$(cat npm/kubernetes-mcp-server/package.json | grep '"version"' | cut -d'"' -f4)
30+
31+
# Create optional dependencies JSON
32+
TEMP_FILE=$(mktemp -t deps.XXXXXX.json)
33+
cat > "$TEMP_FILE" << EOF
34+
{
3135
"optionalDependencies": {
36+
"kubernetes-mcp-server-$SUFFIX-darwin-amd64": "$VERSION",
37+
"kubernetes-mcp-server-$SUFFIX-darwin-arm64": "$VERSION",
38+
"kubernetes-mcp-server-$SUFFIX-linux-amd64": "$VERSION",
39+
"kubernetes-mcp-server-$SUFFIX-linux-arm64": "$VERSION",
40+
"kubernetes-mcp-server-$SUFFIX-windows-amd64": "$VERSION",
41+
"kubernetes-mcp-server-$SUFFIX-windows-arm64": "$VERSION"
42+
}
43+
}
3244
EOF
3345

34-
for platform in darwin-amd64 darwin-arm64 linux-amd64 linux-arm64 windows-amd64 windows-arm64; do
35-
echo " \"kubernetes-mcp-server-$SUFFIX-$platform\": \"$(cat npm/kubernetes-mcp-server/package.json | grep '"version"' | cut -d'"' -f4)\"," >> "$TEMP_FILE"
36-
done
37-
38-
# Remove trailing comma and close object
39-
sed -i '$ s/,$//' "$TEMP_FILE"
40-
echo " }" >> "$TEMP_FILE"
41-
4246
# Update the main package.json
43-
jq --argfile deps "$TEMP_FILE" '.optionalDependencies = $deps.optionalDependencies' npm/kubernetes-mcp-server/package.json > npm/kubernetes-mcp-server/package.json.tmp && mv npm/kubernetes-mcp-server/package.json.tmp npm/kubernetes-mcp-server/package.json
47+
jq -s '.[0] * .[1]' npm/kubernetes-mcp-server/package.json "$TEMP_FILE" > npm/kubernetes-mcp-server/package.json.tmp && mv npm/kubernetes-mcp-server/package.json.tmp npm/kubernetes-mcp-server/package.json
4448

4549
rm -f "$TEMP_FILE"
4650

0 commit comments

Comments
 (0)