|
95 | 95 | - name: Update versions to stable |
96 | 96 | if: steps.check-versions.outputs.has_beta == 'true' |
97 | 97 | run: | |
98 | | - # Update main package |
99 | | - npm version ${{ steps.check-versions.outputs.base_version }} --no-git-tag-version |
| 98 | + # Update main package only if it has beta |
| 99 | + MAIN_VERSION=$(node -p "require('./package.json').version") |
| 100 | + if [[ $MAIN_VERSION == *"-beta"* ]]; then |
| 101 | + npm version ${{ steps.check-versions.outputs.base_version }} --no-git-tag-version |
| 102 | + fi |
100 | 103 | |
101 | 104 | # Update sub-packages |
102 | 105 | for pkg in packages/*/; do |
@@ -144,22 +147,46 @@ jobs: |
144 | 147 | NPM_TOKEN: ${{ secrets.NPM_TOKEN }} |
145 | 148 | NPM_TOKEN_SUMIN: ${{ secrets.NPM_TOKEN_SUMIN }} |
146 | 149 |
|
147 | | - - name: Create GitHub Release |
| 150 | + - name: Create GitHub Releases |
148 | 151 | if: steps.check-versions.outputs.has_beta == 'true' |
149 | | - uses: actions/create-release@v1 |
150 | | - env: |
151 | | - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
152 | | - with: |
153 | | - tag_name: v${{ steps.create-release.outputs.version }} |
154 | | - release_name: Release v${{ steps.create-release.outputs.version }} |
155 | | - draft: false |
156 | | - prerelease: false |
157 | | - body: | |
158 | | - ## 🚀 Stable Release |
| 152 | + run: | |
| 153 | + # Create release for each package with stable version |
| 154 | + create_release() { |
| 155 | + local PKG_NAME=$1 |
| 156 | + local PKG_VERSION=$2 |
| 157 | + local NPM_NAME=$3 |
159 | 158 | |
160 | | - This release promotes the beta version to stable. |
| 159 | + echo "Creating release for $PKG_NAME@$PKG_VERSION" |
161 | 160 | |
162 | | - Install with: `npm install vue-pivottable@latest` |
| 161 | + gh release create "${PKG_NAME}@${PKG_VERSION}" \ |
| 162 | + --title "${PKG_NAME}@${PKG_VERSION}" \ |
| 163 | + --notes "## 🚀 Stable Release |
| 164 | + |
| 165 | + This release promotes the beta version to stable. |
| 166 | + |
| 167 | + Install with: \`npm install ${NPM_NAME}@latest\` |
| 168 | + |
| 169 | + ### Version: ${PKG_VERSION}" \ |
| 170 | + --target ${{ github.sha }} |
| 171 | + } |
| 172 | + |
| 173 | + # Check main package |
| 174 | + MAIN_VERSION=$(node -p "require('./package.json').version") |
| 175 | + create_release "vue-pivottable" "$MAIN_VERSION" "vue-pivottable" |
| 176 | + |
| 177 | + # Check sub-packages |
| 178 | + for pkg in packages/*/; do |
| 179 | + if [ -d "$pkg" ] && [ -f "$pkg/package.json" ]; then |
| 180 | + PKG_NAME=$(cd "$pkg" && node -p "require('./package.json').name") |
| 181 | + PKG_VERSION=$(cd "$pkg" && node -p "require('./package.json').version") |
| 182 | + # Create release for all packages that were released |
| 183 | + if [ "$PKG_NAME" != "" ] && [ "$PKG_VERSION" != "" ]; then |
| 184 | + create_release "$PKG_NAME" "$PKG_VERSION" "$PKG_NAME" |
| 185 | + fi |
| 186 | + fi |
| 187 | + done |
| 188 | + env: |
| 189 | + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
163 | 190 |
|
164 | 191 | - name: Create PR to update main |
165 | 192 | if: steps.check-versions.outputs.has_beta == 'true' |
|
0 commit comments