| name: Update protobuf-php Repo |
| |
| on: |
| push: |
| tags: |
| - v[0-9]+.[0-9]+ |
| - v[0-9]+.[0-9]+-rc[0-9]+ |
| |
| permissions: |
| contents: read # to fetch code in 'Clone protobuf' (actions/checkout) |
| |
| jobs: |
| update-repo: |
| name: Update PHP Repo |
| runs-on: ubuntu-latest |
| steps: |
| - name: Checkout protobuf-php |
| uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0 |
| with: |
| repository: protocolbuffers/protobuf-php |
| token: ${{ secrets.BOT_ACCESS_TOKEN }} |
| - name: Clone protobuf |
| uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0 |
| with: |
| path: protobuf |
| - name: Configure Git Bot |
| run: | |
| git config user.name "Protobuf Team Bot" |
| git config user.email "protobuf-team-bot@google.com" |
| - name: Get PHP Version |
| run: | |
| unformatted_version=$( cat protobuf/version.json | jq -r '.[].languages.php' ) |
| version=${unformatted_version/-rc/RC} |
| version_tag=v$version |
| echo "VERSION=$version" >> $GITHUB_ENV |
| echo "VERSION_TAG=$version_tag" >> $GITHUB_ENV |
| - name: Copy files |
| run: | |
| rm -rf src |
| cp -r protobuf/php/src . |
| cp protobuf/php/composer.json.dist composer.json |
| rm -rf protobuf |
| - name: Push Changes |
| run: | |
| git add --all |
| git commit --allow-empty -m "${{ env.VERSION }} sync" |
| git push --force origin master |
| git tag -a ${{ env.VERSION_TAG }} -m "Tag release ${{ env.VERSION_TAG }}" |
| git push origin ${{ env.VERSION_TAG }} |