name: Buf CI on: push: tags: - v* permissions: contents: read pull-requests: write packages: write jobs: buf: runs-on: ubuntu-latest steps: - uses: actions/setup-go@v5 with: go-version: ">=1.23.0" - uses: bufbuild/buf-setup-action@v1.47.2 - uses: actions/checkout@v4 with: token: ${{ gitea.token }} path: ./ - name: install tea cli and init run: | mkdir tmp && cd tmp curl -SsOL https://dl.gitea.com/tea/main/tea-main-linux-amd64.xz apt install xz-utils -y xz -d tea-main-linux-amd64.xz ls -ahl mv tea-main-linux-amd64 /usr/bin/tea chmod +x /usr/bin/tea cd .. tea --version tea login \ --name ${{ gitea.server_url }} \ --token ${{ secrets.PROD_REG_TOKEN }} \ --url ${{ gitea.server_url }} - run: go install google.golang.org/protobuf/cmd/protoc-gen-go@latest - run: go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest - run: go install github.com/pseudomuto/protoc-gen-doc/cmd/protoc-gen-doc@latest - run: npm install --save @bufbuild/protobuf @bufbuild/protoc-gen-es @bufbuild/buf - run: buf --version - run: "export PATH=$PATH:./node_modules/.bin\nbuf generate \n" - name: tar files run: | for out in go ts doc; do tar czf .res/${out}.tar.gz ./stub/${out}/ done tar czf ./.res/src.tar.gz $(find -type f -name "*.proto") tea r c \ --title "${{ gitea.ref_name }}" \ --tag "${{ gitea.ref_name }}" \ -a ./.res/src.tar.gz \ -a ./.res/go.tar.gz \ -a ./.res/doc.tar.gz \ -a ./.res/ts.tar.gz \ # - run: | # if [ -n ${{ gitea.ref_name }} ]; then # mkdir .res # for out in go ts doc; do # echo releasing ${out} ... # tar czf .res/${out}.tar.gz ./stub/${out}/ # curl -Ss --user nfel:${{ secrets.PROD_REG_TOKEN }}\ # --upload-file .res/${out}.tar.gz \ # ${{ gitea.server_url }}/api/packages/Kahroba/generic/proto/${{ gitea.ref_name }}/${out}.tar.gz # done # echo releasing proto ... # tar czf ./.res/src.tar.gz $(find -type f -name "*.proto") # curl -Ss --user nfel:${{ secrets.PROD_REG_TOKEN }}\ # --upload-file ./.res/src.tar.gz \ # ${{ gitea.server_url }}/api/packages/Kahroba/generic/proto/${{ gitea.ref_name }}/src.tar.gz # fi # - run: |