gonets/.woodpecker/release.yml
2025-06-27 10:00:52 +05:00

91 lines
2.6 KiB
YAML

environment:
GIT_AUTHOR_NAME: s.galanskiy
GIT_AUTHOR_EMAIL: s.galanskiy@gossys.dev
GIT_COMMITTER_NAME: s.galanskiy
GIT_COMMITTER_EMAIL: s.galanskiy@gossys.dev
pipeline:
checkout:
image: woodpeckerci/plugin-git-checkout:latest
settings:
depth: 0
ref: main
install_deps:
image: debian:latest
commands:
- apt update
- apt install -y python3 python3-pip python3-poetry nodejs npm debhelper devscripts build-essential fakeroot dh-make dpkg-dev
prepare_python_deps:
image: debian:latest
commands:
- cd SRV
- rm -f requirements.txt
- poetry export -f requirements.txt --output requirements.txt --without-hashes
build_backend:
image: debian:latest
commands:
- cd SRV
- poetry install
build_frontend:
image: debian:latest
commands:
- cd FRONT/DEV
- npm install
- npm run package
- cd dist/gonets-linux-x64/resources/app
- npm run build
- sed -i 's/href="\/assets\//href=".\/assets\//g' dist/index.html
- sed -i 's/src="\/assets\//src=".\/assets\//g' dist/index.html
- cd ../../../..
- rm -rf FRONT/BUILD/*
- cp -r dist/gonets-linux-x64/* ../../BUILD/
- cd ../..
- rm -rf DEV
prepare_debian:
image: debian:latest
commands:
- DEBEMAIL="devteam@gossys.dev" DEBFULLNAME="GOSSYS LLC" dh_make --createorig
- cd debian/
- rm -f *.ex
- rm -f README.*
clone_debian_config:
image: debian:latest
secrets: [ GONETS ]
commands:
- git clone https://s.galanskiy:${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/
build_package:
image: debian:latest
commands:
- dpkg-buildpackage -us -uc -b
get_version:
image: debian:latest
commands:
- VERSION=$(dpkg-parsechangelog -l./debian/changelog --show-field VERSION)
- echo "VERSION=$VERSION" > version.env
commit_changes:
image: debian:latest
commands:
- source version.env
- git config user.name "$GIT_AUTHOR_NAME"
- git config user.email "$GIT_AUTHOR_EMAIL"
- git checkout develop
- git commit -am "Релиз $VERSION"
- git tag "v$VERSION"
- git push origin develop
- git push origin "v$VERSION"