1- name : Release
1+ name : Release-plz
22
33permissions :
4+ pull-requests : write
45 contents : write
56
67on :
910 - main
1011
1112jobs :
12- release :
13- name : Release PHP Package
13+ release-plz-release :
14+ name : Release-plz release
1415 runs-on : ubuntu-latest
1516 permissions :
1617 contents : write
@@ -19,38 +20,25 @@ jobs:
1920 uses : actions/checkout@v4
2021 with :
2122 fetch-depth : 0
22-
23- - name : Setup PHP
24- uses : shivammathur/setup-php@v2
23+ - name : Install Rust toolchain
24+ uses : dtolnay/rust-toolchain@stable
25+ - name : Sync Cargo.lock
26+ run : cargo check
27+ - name : Commit Cargo.lock if changed
28+ run : |
29+ if git diff --quiet Cargo.lock; then
30+ echo "Cargo.lock is already up to date"
31+ else
32+ git config user.name "github-actions[bot]"
33+ git config user.email "github-actions[bot]@users.noreply.github.com"
34+ git add Cargo.lock
35+ git commit -m "chore: update Cargo.lock"
36+ git push
37+ fi
38+ - name : Run release-plz
39+ uses : release-plz/action@v0.5
2540 with :
26- php-version : ' 8.1'
27- extensions : mbstring, xml, curl, zip, json
28- tools : composer
29-
30- - name : Install dependencies
31- run : composer install --no-dev --optimize-autoloader
32-
33- - name : Run tests
34- run : composer test
35-
36- - name : Run static analysis
37- run : composer phpstan
38-
39- - name : Check code style
40- run : composer cs
41-
42- - name : Create release
43- id : create_release
44- uses : actions/create-release@v1
41+ command : release
4542 env :
4643 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
47- with :
48- tag_name : v${{ github.run_number }}
49- release_name : Release v${{ github.run_number }}
50- draft : false
51- prerelease : false
52-
53- - name : Publish to Packagist
54- # This would require Packagist webhook or manual submission
55- # For now, we'll just create the GitHub release
56- run : echo "Package published to GitHub. Submit to Packagist manually or configure webhook."
44+ CARGO_REGISTRY_TOKEN : ${{ secrets.CARGO_REGISTRY_TOKEN }}
0 commit comments