|
50 | 50 | package-server-ai-optimization-released: ${{ steps.release.outputs['packages/optimization--release_created'] }} |
51 | 51 | package-server-ai-optimization-tag-name: ${{ steps.release.outputs['packages/optimization--tag_name'] }} |
52 | 52 | steps: |
53 | | - - uses: googleapis/release-please-action@16a9c90856f42705d54a6fda1823352bdc62cf38 # v4 |
| 53 | + # Create any releases first, then create tags, and then optionally create any new PRs. |
| 54 | + - uses: googleapis/release-please-action@16a9c90856f42705d54a6fda1823352bdc62cf38 # v4.4.0 |
54 | 55 | id: release |
| 56 | + with: |
| 57 | + skip-github-pull-request: true |
| 58 | + |
| 59 | + # Need the repository content to be able to create and push tags. |
| 60 | + - uses: actions/checkout@v4 |
| 61 | + if: >- |
| 62 | + steps.release.outputs['packages/sdk/server-ai--release_created'] == 'true' || |
| 63 | + steps.release.outputs['packages/ai-providers/server-ai-langchain--release_created'] == 'true' || |
| 64 | + steps.release.outputs['packages/ai-providers/server-ai-openai--release_created'] == 'true' || |
| 65 | + steps.release.outputs['packages/optimization--release_created'] == 'true' |
| 66 | +
|
| 67 | + - name: Create release tags |
| 68 | + if: >- |
| 69 | + steps.release.outputs['packages/sdk/server-ai--release_created'] == 'true' || |
| 70 | + steps.release.outputs['packages/ai-providers/server-ai-langchain--release_created'] == 'true' || |
| 71 | + steps.release.outputs['packages/ai-providers/server-ai-openai--release_created'] == 'true' || |
| 72 | + steps.release.outputs['packages/optimization--release_created'] == 'true' |
| 73 | + env: |
| 74 | + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
| 75 | + SERVER_AI_TAG: ${{ steps.release.outputs['packages/sdk/server-ai--tag_name'] }} |
| 76 | + LANGCHAIN_TAG: ${{ steps.release.outputs['packages/ai-providers/server-ai-langchain--tag_name'] }} |
| 77 | + OPENAI_TAG: ${{ steps.release.outputs['packages/ai-providers/server-ai-openai--tag_name'] }} |
| 78 | + OPTIMIZATION_TAG: ${{ steps.release.outputs['packages/optimization--tag_name'] }} |
| 79 | + SERVER_AI_RELEASED: ${{ steps.release.outputs['packages/sdk/server-ai--release_created'] }} |
| 80 | + LANGCHAIN_RELEASED: ${{ steps.release.outputs['packages/ai-providers/server-ai-langchain--release_created'] }} |
| 81 | + OPENAI_RELEASED: ${{ steps.release.outputs['packages/ai-providers/server-ai-openai--release_created'] }} |
| 82 | + OPTIMIZATION_RELEASED: ${{ steps.release.outputs['packages/optimization--release_created'] }} |
| 83 | + run: | |
| 84 | + git config user.name "github-actions[bot]" |
| 85 | + git config user.email "github-actions[bot]@users.noreply.github.com" |
| 86 | +
|
| 87 | + for pair in \ |
| 88 | + "${SERVER_AI_RELEASED}:${SERVER_AI_TAG}" \ |
| 89 | + "${LANGCHAIN_RELEASED}:${LANGCHAIN_TAG}" \ |
| 90 | + "${OPENAI_RELEASED}:${OPENAI_TAG}" \ |
| 91 | + "${OPTIMIZATION_RELEASED}:${OPTIMIZATION_TAG}"; do |
| 92 | +
|
| 93 | + RELEASED="${pair%%:*}" |
| 94 | + TAG="${pair#*:}" |
| 95 | +
|
| 96 | + if [ "${RELEASED}" != "true" ] || [ -z "${TAG}" ]; then |
| 97 | + continue |
| 98 | + fi |
| 99 | +
|
| 100 | + if gh api "repos/${{ github.repository }}/git/ref/tags/${TAG}" >/dev/null 2>&1; then |
| 101 | + echo "Tag ${TAG} already exists, skipping creation." |
| 102 | + else |
| 103 | + echo "Creating tag ${TAG}." |
| 104 | + git tag "${TAG}" |
| 105 | + git push origin "${TAG}" |
| 106 | + fi |
| 107 | + done |
| 108 | +
|
| 109 | + - uses: googleapis/release-please-action@16a9c90856f42705d54a6fda1823352bdc62cf38 # v4.4.0 |
| 110 | + if: >- |
| 111 | + steps.release.outputs['packages/sdk/server-ai--release_created'] != 'true' && |
| 112 | + steps.release.outputs['packages/ai-providers/server-ai-langchain--release_created'] != 'true' && |
| 113 | + steps.release.outputs['packages/ai-providers/server-ai-openai--release_created'] != 'true' && |
| 114 | + steps.release.outputs['packages/optimization--release_created'] != 'true' |
| 115 | + id: release-prs |
| 116 | + with: |
| 117 | + skip-github-release: true |
55 | 118 |
|
56 | 119 | release-server-ai: |
57 | 120 | runs-on: ubuntu-latest |
|
0 commit comments