gonets/.forgejo/workflows/release.yml

85 lines
2.8 KiB
YAML
Raw Normal View History

2025-06-26 17:49:21 +05:00
name: Gonets Release Debian Packaging
on:
2025-06-26 17:51:27 +05:00
push:
branches:
- develop
2025-06-26 17:49:21 +05:00
workflow_dispatch:
jobs:
build-and-release:
2025-06-26 17:51:27 +05:00
runs-on: debian-latest
2025-06-26 17:49:21 +05:00
steps:
- name: Checkout main
uses: actions/checkout@v4
with:
fetch-depth: 0
ref: main
2025-06-26 17:51:27 +05:00
- name: Install dependencies
2025-06-26 17:49:21 +05:00
run: |
sudo apt update
2025-06-26 17:51:27 +05:00
sudo apt install -y python3 python3-pip python3-poetry nodejs npm debhelper devscripts build-essential fakeroot dh-make dpkg-dev
2025-06-26 17:49:21 +05:00
2025-06-26 17:51:27 +05:00
- name: Prepare python dependencies
run: |
cd SRV
rm requirements.txt
poetry export -f requirements.txt --output requirements.txt --without-hashes
- name: Build backend
2025-06-26 17:49:21 +05:00
run: |
cd SRV
poetry install
2025-06-26 17:51:27 +05:00
- name: Build frontend
2025-06-26 17:49:21 +05:00
run: |
2025-06-26 17:51:27 +05:00
cd FRONT/DEV
2025-06-26 17:49:21 +05:00
npm install
2025-06-26 17:51:27 +05:00
npm run package
cd FRONT/DEV/dist/gonets-linux-x64/resources/app
2025-06-26 17:49:21 +05:00
npm run build
2025-06-26 17:51:27 +05:00
sed -i 's/href="\/assets\//href=".\/assets\//g' FRONT/DEV/dist/gonets-linux-x64/resources/app/dist/index.html
sed -i 's/src="\/assets\//src=".\/assets\//g' FRONT/DEV/dist/gonets-linux-x64/resources/app/dist/index.html
rm -rf FRONT/BUILD/*
cp -r FRONT/DEV/dist/gonets-linux-x64/* FRONT/BUILD/
rm -rf FRONT/DEV
- name: Preparing build debian package
run: |
DEBEMAIL="devteam@gossys.dev" DEBFULLNAME="GOSSYS LLC" dh_make --createorig
cd debian/
rm *.ex
rm README.*
2025-06-26 17:49:21 +05:00
2025-06-26 17:51:27 +05:00
- name: Clone debian configuration
run: |
git clone https://s.galanskiy:${{e5eaa40af9805f83a05ef70a0c946c03e1688633.GONETS}}@dev.gossys.dev/s.galanskiy/gonets-debian-template.git
mv gonets-debian-template/changelog gonets/debian/
mv gonets-debian-template/control gonets/debian/
mv gonets-debian-template/copyright gonets/debian/
mv gonets-debian-template/install gonets/debian/
mv gonets-debian-template/postinst gonets/debian/
mv gonets-debian-template/postrm gonets/debian/
mv gonets-debian-template/rules gonets/debian/
- name: Build package
2025-06-26 17:49:21 +05:00
run: |
dpkg-buildpackage -us -uc -b
- name: Get version from changelog
run: |
2025-06-26 17:51:27 +05:00
dpkg-parsechangelog -l./debian/changelog --show-field VERSION
echo "VERSION=$VERSION" >> $GITHUB_OUTPUT
2025-06-26 17:49:21 +05:00
2025-06-26 17:51:27 +05:00
- name: Commit changes to develop
2025-06-26 17:49:21 +05:00
run: |
2025-06-26 17:51:27 +05:00
git config user.name "s.galanskiy"
git config user.email "s.galanskiy@gossys.dev"
git checkout develop
git commit -m "Релиз $VERSION"
git tag "v$VERSION"
git push origin develop
git push origin "v$VERSION"
2025-06-26 17:49:21 +05:00
env:
2025-06-26 17:51:27 +05:00
VERSION: ${{ env.VERSION }}