@@ -79,10 +79,22 @@ jobs:
7979 - name : Get current version
8080 id : current_version
8181 run : |
82+ # Check if version is empty or invalid
8283 VERSION=$(php -r '
8384 $composerJson = json_decode(file_get_contents("php/sdk/composer.json"), true);
84- echo $composerJson["version"];
85+ echo isset( $composerJson["version"]) ? $composerJson["version"] : "" ;
8586 ')
87+
88+ if [[ -z "$VERSION" || ! "$VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
89+ echo "Setting initial version to 0.1.0"
90+ php -r '
91+ $composerJson = json_decode(file_get_contents("php/sdk/composer.json"), true);
92+ $composerJson["version"] = "0.1.0";
93+ file_put_contents("php/sdk/composer.json", json_encode($composerJson, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES));
94+ '
95+ VERSION="0.1.0"
96+ fi
97+
8698 echo "version=$VERSION" >> $GITHUB_OUTPUT
8799
88100 - name : Bump patch version
@@ -117,6 +129,29 @@ jobs:
117129 file_put_contents("php/sdk/composer.json", json_encode($composerJson, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES));
118130 '
119131
132+ - name : Ensure SDK version is set before root install
133+ run : |
134+ # Check if version is empty or invalid in SDK composer.json
135+ VERSION=$(php -r '
136+ $composerJson = json_decode(file_get_contents("php/sdk/composer.json"), true);
137+ echo isset($composerJson["version"]) ? $composerJson["version"] : "";
138+ ')
139+
140+ echo "Current PHP SDK version before install: $VERSION"
141+
142+ if [[ -z "$VERSION" || ! "$VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
143+ echo "Setting version to ${{ steps.bump_version.outputs.new_version }} before install"
144+ php -r '
145+ $composerJson = json_decode(file_get_contents("php/sdk/composer.json"), true);
146+ $composerJson["version"] = "${{ steps.bump_version.outputs.new_version }}";
147+ file_put_contents("php/sdk/composer.json", json_encode($composerJson, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES));
148+ '
149+ fi
150+
151+ # Verify version is now set
152+ echo "PHP SDK version after fix:"
153+ php -r 'echo json_decode(file_get_contents("php/sdk/composer.json"), true)["version"];'
154+
120155 - name : Install root composer dependencies
121156 run : |
122157 # Install composer dependencies from root composer.json
0 commit comments