This commit is contained in:
26
.github/workflows/publish.yml
vendored
26
.github/workflows/publish.yml
vendored
@@ -22,29 +22,27 @@ jobs:
|
|||||||
registry-url: "https://git.lendry.ru/api/packages/lendry-erp/npm/"
|
registry-url: "https://git.lendry.ru/api/packages/lendry-erp/npm/"
|
||||||
scope: "@lendry-erp"
|
scope: "@lendry-erp"
|
||||||
|
|
||||||
# 1. Устанавливаем Go (нужен для скачивания плагинов генерации)
|
|
||||||
- name: Setup Go
|
- name: Setup Go
|
||||||
uses: actions/setup-go@v5
|
uses: actions/setup-go@v5
|
||||||
with:
|
with:
|
||||||
go-version: "1.22" # Можно указать нужную тебе версию
|
go-version: "1.22"
|
||||||
|
|
||||||
# 2. Устанавливаем плагины генерации для Go и добавляем их в PATH
|
|
||||||
- name: Install Go Protoc Plugins
|
- name: Install Go Protoc Plugins
|
||||||
run: |
|
run: |
|
||||||
go install google.golang.org/protobuf/cmd/protoc-gen-go@latest
|
go install google.golang.org/protobuf/cmd/protoc-gen-go@latest
|
||||||
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest
|
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest
|
||||||
echo "$(go env GOPATH)/bin" >> $GITHUB_PATH
|
echo "$(go env GOPATH)/bin" >> $GITHUB_PATH
|
||||||
|
|
||||||
|
# Используем Action для точного контроля версии protoc (например, 25.x)
|
||||||
- name: Install protoc
|
- name: Install protoc
|
||||||
run: sudo apt-get update && sudo apt-get install -y protobuf-compiler
|
uses: arduino/setup-protoc@v3
|
||||||
|
with:
|
||||||
|
version: "25.x"
|
||||||
|
|
||||||
- name: Install deps
|
- name: Install deps
|
||||||
run: npm ci
|
run: npm ci
|
||||||
|
|
||||||
- name: Build
|
# 1. СНАЧАЛА генерируем код (до сборки)
|
||||||
run: npm run build
|
|
||||||
|
|
||||||
# 3. Исправленный шаг генерации (команды разделены, добавлено создание папки)
|
|
||||||
- name: Generate Protobuf
|
- name: Generate Protobuf
|
||||||
run: |
|
run: |
|
||||||
npm install -g ts-proto
|
npm install -g ts-proto
|
||||||
@@ -55,16 +53,18 @@ jobs:
|
|||||||
--go-grpc_out=paths=source_relative:./gen/go \
|
--go-grpc_out=paths=source_relative:./gen/go \
|
||||||
$(find ./proto -name "*.proto")
|
$(find ./proto -name "*.proto")
|
||||||
|
|
||||||
|
# 2. ПОТОМ собираем проект (tsc скомпилирует только что сгенерированные файлы)
|
||||||
|
- name: Build
|
||||||
|
run: npm run build
|
||||||
|
|
||||||
|
# 3. Коммитим изменения в репозиторий
|
||||||
- name: Commit and push changes
|
- name: Commit and push changes
|
||||||
run: |
|
run: |
|
||||||
# Представляемся Git-ботом
|
|
||||||
git config --global user.name "github-actions[bot]"
|
git config --global user.name "github-actions[bot]"
|
||||||
git config --global user.email "github-actions[bot]@users.noreply.github.com"
|
git config --global user.email "github-actions[bot]@users.noreply.github.com"
|
||||||
|
|
||||||
# Добавляем папку gen в индекс
|
|
||||||
git add ./gen
|
git add ./gen
|
||||||
|
|
||||||
# Проверяем, есть ли изменения. Если есть — коммитим и пушим.
|
|
||||||
git diff --quiet && git diff --staged --quiet || (git commit -m "chore: auto-generate protobuf files [skip ci]" && git push)
|
git diff --quiet && git diff --staged --quiet || (git commit -m "chore: auto-generate protobuf files [skip ci]" && git push)
|
||||||
|
|
||||||
|
# 4. Публикуем пакет (npm возьмет папку dist/ с уже скомпилированными контрактами)
|
||||||
- name: Publish package
|
- name: Publish package
|
||||||
run: npm publish
|
run: npm publish
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@lendry-erp/contracts",
|
"name": "@lendry-erp/contracts",
|
||||||
"version": "1.1.10",
|
"version": "1.1.11",
|
||||||
"description": "Protobuf definitions and generated TypeScript types",
|
"description": "Protobuf definitions and generated TypeScript types",
|
||||||
"type": "commonjs",
|
"type": "commonjs",
|
||||||
"main": "./dist/index.js",
|
"main": "./dist/index.js",
|
||||||
|
|||||||
Reference in New Issue
Block a user