Add gitea workflows

This commit is contained in:
2026-02-04 23:08:04 -06:00
parent 45dcd9e7c5
commit 86c7d85f0e
4 changed files with 94 additions and 110 deletions

View File

@@ -1,18 +1,21 @@
version: 39
version: 43
jobs:
- name: Build for x86_64
steps:
- !CheckoutStep
- type: CheckoutStep
name: Checkout
cloneCredential: !DefaultCredential {}
cloneCredential:
type: DefaultCredential
withLfs: true
withSubmodules: false
condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- !CommandStep
condition: SUCCESSFUL
optional: false
- type: CommandStep
name: Execute build
runInContainer: true
image: onedev.site.tesses.net/tesses-framework/tesses-framework:latest
interpreter: !DefaultInterpreter
interpreter:
type: DefaultInterpreter
commands: |
mkdir build
cd build
@@ -20,111 +23,32 @@ jobs:
make -j12
make install DESTDIR=../out
useTTY: true
condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- !BuildImageStep
condition: SUCCESSFUL
optional: false
- type: BuildImageStep
name: Build Docker Image
dockerfile: Dockerfile.run
output: !RegistryOutput
output:
type: RegistryOutput
tags: onedev.site.tesses.net/crosslang/crosslang:latest onedev.site.tesses.net/crosslang/crosslang:@commit_hash@
registryLogins:
- registryUrl: '@server_url@'
userName: '@job_token@'
passwordSecret: dockersecret
platforms: linux/amd64
condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- !CommandStep
name: Build archlinux
runInContainer: true
image: git.tesseslanguage.com/tesses50/arch-builds:2025-11-11
interpreter: !DefaultInterpreter
commands: |
wget -O /root/repository.key https://git.tesseslanguage.com/api/packages/tesses50/arch/repository.key
pacman-key --add /root/repository.key
pacman-key --config /opt/cross/ppc/pacman.conf --add /root/repository.key
printf "[tesses50.git.tesseslanguage.com]\nSigLevel = Optional TrustAll\nServer = https://git.tesseslanguage.com/api/packages/tesses50/arch/core/\$arch\n" >> /etc/pacman.conf
printf "[tesses50.git.tesseslanguage.com]\nSigLevel = Optional TrustAll\nServer = https://git.tesseslanguage.com/api/packages/tesses50/arch/core/\$arch\n" >> /opt/cross/ppc/pacman.conf
pacman --noconfirm -Sy mbedtls curl tesses-framework
pacman --config /opt/cross/ppc/pacman.conf --noconfirm -Sy mbedtls tesses-framework
cp Packaging/Linux/PKGBUILD /home/build/PKGBUILD
cp Packaging/Linux/build-arch.sh /home/build/build-arch.sh
chmod 755 /home/build/build-arch.sh
chown build:build /home/build/PKGBUILD
chown build:build /home/build/build-arch.sh
su build -c /home/build/build-arch.sh
envVars:
- name: GITEA_AUTH
value: '@secret:GITEA_AUTH@'
useTTY: true
condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- !CommandStep
name: Build and Publish Deb Package (Plucky)
runInContainer: true
image: onedev.site.tesses.net/dependencies/debbuilder/plucky:latest
interpreter: !DefaultInterpreter
commands: |
mkdir artifacts
apt update -y
apt install -y pkg-config git gcc-mingw-w64-x86-64 g++-mingw-w64-x86-64 gcc-mingw-w64-i686 g++-mingw-w64-i686 nsis
cd Packaging/Linux
bash build-ubuntu-plucky.sh
bash push-ubuntu-plucky.sh
cd ../Windows
bash build.sh
envVars:
- name: GITEA_AUTH
value: '@secret:GITEA_AUTH@'
- name: BUILD_NO
value: '@build_number@'
useTTY: true
condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- !CommandStep
name: Build and Publish Deb Package
runInContainer: true
image: onedev.site.tesses.net/dependencies/debbuilder/jammy:latest
interpreter: !DefaultInterpreter
commands: |
apt update -y
apt install -y pkg-config git
cd Packaging/Linux
bash build-ubuntu-jammy.sh
bash push-ubuntu-jammy.sh
bash build-tars.sh
envVars:
- name: GITEA_AUTH
value: '@secret:GITEA_AUTH@'
- name: CPKG_KEY
value: '@secret:CPKG_KEY@'
- name: BUILD_NO
value: '@build_number@'
useTTY: true
condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- !SCPCommandStep
name: Copy Files
privateKeySecret: TRUENAS_SSH
source: artifacts
target: mike@@10.137.42.30:/mnt/storage24tb/Files/Public/CrossLang/@build_number@
options: -r
condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- !SSHCommandStep
name: Link latest
remoteMachine: 10.137.42.30
userName: mike
privateKeySecret: TRUENAS_SSH
commands: |
cd /mnt/storage24tb/Files/Public/CrossLang
rm -f latest
ln -s @build_number@ latest
condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
condition: SUCCESSFUL
optional: false
triggers:
- !DependencyFinishedTrigger
- type: DependencyFinishedTrigger
projects: tesses-framework
- !BranchUpdateTrigger
- type: BranchUpdateTrigger
branches: master
userMatch: anyone
projects: crosslang
projectDependencies:
- projectPath: tesses-framework
buildProvider: !LastFinishedBuild
buildProvider:
type: LastFinishedBuild
jobName: Build for x86_64
artifacts: '*'
retryCondition: never