mirror of
https://github.com/espressif/esp-protocols.git
synced 2025-07-20 22:12:27 +02:00
In case the component needs versioning for the package version, e.g. asio, the tag needs to be adjusted.
43 lines
1.3 KiB
Bash
Executable File
43 lines
1.3 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -e
|
|
|
|
if ! git show -s | grep -q '^Merge'; then
|
|
echo "Not a merge commit"
|
|
exit 0;
|
|
fi
|
|
|
|
for comp in `ls components`; do
|
|
if git log -1 -m --name-only --pretty="" | grep -q components/${comp}/idf_component.yml; then
|
|
echo "${comp}: Component version file has changed"
|
|
version=`grep version: components/${comp}/.cz.yaml`
|
|
version=${version#*version: }
|
|
version="${version//\~/_}"
|
|
|
|
tag_format=`grep tag_format: components/${comp}/.cz.yaml`
|
|
tag_format=${tag_format#*tag_format: }
|
|
|
|
eval tag=$tag_format
|
|
# check if the tag is already created
|
|
if [ $(git tag -l "$tag") ]; then
|
|
echo "${comp}: version (${tag}) already exits"
|
|
else
|
|
echo "${comp}: Component version has been updated to ${version}"
|
|
# creates release notes from the last entry (between first two "## sections")
|
|
awk '/^## \[/{a++};{if(a==1){print}}' components/${comp}/CHANGELOG.md > release_notes.md
|
|
|
|
echo "BUMP_VERSION=${version}"
|
|
echo "BUMP_COMPONENT=${comp}"
|
|
echo "BUMP_TAG=${tag}"
|
|
|
|
# export the findings to github env, so it could be used in other jobs
|
|
echo "BUMP_VERSION=${version}" >> "$GITHUB_ENV"
|
|
echo "BUMP_COMPONENT=${comp}" >> "$GITHUB_ENV"
|
|
echo "BUMP_TAG=${tag}" >> "$GITHUB_ENV"
|
|
|
|
exit 0;
|
|
fi
|
|
fi
|
|
done
|
|
echo "No changes in component version file"
|