From 9b53df9b0d03cb68e367c2c3a9509074213b91b1 Mon Sep 17 00:00:00 2001 From: Patrick Stewart Date: Sun, 7 Jul 2024 23:27:26 -0700 Subject: [PATCH] add: adding script to change package version in pubspec.yaml --- scripts/update_version.sh | 45 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100755 scripts/update_version.sh diff --git a/scripts/update_version.sh b/scripts/update_version.sh new file mode 100755 index 0000000..3ef9eca --- /dev/null +++ b/scripts/update_version.sh @@ -0,0 +1,45 @@ +#!/bin/bash + +# Function to update version in pubspec.yaml +update_version() { + local directory=$1 + local new_version=$2 + + pubspec_file="$directory/pubspec.yaml" + + if [[ -f $pubspec_file ]]; then + echo "Updating version in $pubspec_file to $new_version" + sed -i.bak -E "s/^version: .*/version: $new_version/" $pubspec_file + if [[ $? -eq 0 ]]; then + echo "Version updated successfully in $directory" + else + echo "Failed to update version in $directory" + fi + else + echo "pubspec.yaml not found in $directory" + fi +} + +# Main script logic +main() { + local target_dir=$1 + local new_version=$2 + + if [[ -z $target_dir || -z $new_version ]]; then + echo "Usage: $0 " + exit 1 + fi + + packages_dir="packages" + + if [[ $target_dir == "all" ]]; then + for dir in $packages_dir/*/; do + update_version "$dir" "$new_version" + done + else + update_version "$packages_dir/$target_dir" "$new_version" + fi +} + +# Call the main function with provided arguments +main "$@"