blob: 0672843c8d83444c1aebf6d33c391ccc05da0c27 [file] [log] [blame]
#!/bin/bash
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
ME="$(readlink -f "$0")"
ROOT="$(readlink -f "$(dirname "$ME")/../..")"
find "$ROOT" -name pom.xml -not -path '*/target/*' | while read pom; do
rel="$(xpath -q -e '/project/parent/relativePath/text()' "$pom")"
[ -z "$rel" ] && continue;
abs="$(readlink -f "$(dirname "$pom")/${rel%/pom.xml}")"
# check if we can find the parent pom
[ -d "$abs" ] && [ -r "$abs/pom.xml" ] \
|| { echo "Could not resolve relativePath to parent-pom in $pom: $rel resolves to $abs"; continue; }
# check if it's the right parent
p_aid="$(xpath -q -e '/project/parent/artifactId/text()' "$pom")"
r_aid="$(xpath -q -e '/project/artifactId/text()' "$abs/pom.xml")"
[ "$p_aid" = "$r_aid" ] \
|| { echo "Wrong parent-pom referenced in $pom: expected $p_aid but found $r_aid"; continue; }
#echo "$pom: OK"
done