mirror of
				https://github.com/ton-blockchain/ton
				synced 2025-03-09 15:40:10 +00:00 
			
		
		
		
	* add github action for macOS 14 (arm64, M1) * add github action (portable) for macOS 14 (arm64, M1) * rename macOS arm64 output artifact * Update libsodium on windows * Compile libsodium * Update build-windows.bat * use upgraded libsodium 1.0.20; use compiled static libsodium for Windows instead of precompiled; * revert libsodium 1.0.20; use compiled static libsodium for Windows instead of precompiled; * use upgraded libsodium 1.0.20; use compiled static libsodium for Windows instead of precompiled; * fix libsodium version 1.0.19; use compiled static libsodium for Windows instead of precompiled; * try 1.0.20 libsodium precompiled on github * try 1.0.18 libsodium precompiled on github * try windows build on win server 2019 * and use PlatformToolset=v142 * use cmake -G "Visual Studio 16 2019" * fix path to msvc 2019 on github * separate github windows build on win server 2019 and build on win server 2022 * Update assembly/native/build-windows-2019.bat add retry mechanism Co-authored-by: Dr. Awesome Doge <doge@ton.org> * add test-emulator; disable test groovy pipeline * trigger all gh actions * fix win build * call test-emulator * remove usage of rocksdb in fift-lib * put back some code for test-db * fix test-emulator * remove usage of db-path parameter in fift * some func adjustments * fix checkout of openssl in fift-func-wasm-build-ubuntu.sh * typo * improve wasm build script for quicker turn around * remove sENVIRONMENT=web,worker for funcfiftlib. will be added later. * remove sENVIRONMENT=web,worker for funcfiftlib. will be added later. * remove sENVIRONMENT=web,worker for funcfiftlib. will be added later. * minor adjustments * remove -d option in fift; optimize fift-lib usage * reduce tondb usage --------- Co-authored-by: neodiX <neodix42@ton.org> Co-authored-by: Dr. Awesome Doge <doge@ton.org> Co-authored-by: ms <dungeon666master@protonmail.com>
		
			
				
	
	
		
			237 lines
		
	
	
	
		
			10 KiB
		
	
	
	
		
			Groovy
		
	
	
	
	
	
			
		
		
	
	
			237 lines
		
	
	
	
		
			10 KiB
		
	
	
	
		
			Groovy
		
	
	
	
	
	
| pipeline {
 | |
| 
 | |
|     agent none
 | |
|     stages {
 | |
|         stage('Run Builds') {
 | |
|             parallel {
 | |
|                 stage('Ubuntu 20.04 x86-64 (shared)') {
 | |
|                     agent {
 | |
|                         label 'Ubuntu_x86-64'
 | |
|                     }
 | |
|                     steps {
 | |
|                         timeout(time: 180, unit: 'MINUTES') {
 | |
|                             sh '''
 | |
|                                 cp assembly/native/build-ubuntu-shared.sh .
 | |
|                                 chmod +x build-ubuntu-shared.sh
 | |
|                                 ./build-ubuntu-shared.sh -a
 | |
|                             '''
 | |
|                             sh '''
 | |
|                                 cd artifacts
 | |
|                                 zip -9r ton-x86_64-linux-shared ./*
 | |
|                             '''
 | |
|                             archiveArtifacts artifacts: 'artifacts/ton-x86_64-linux-shared.zip'
 | |
|                         }
 | |
|                     }
 | |
|                 }
 | |
|                 stage('Ubuntu 20.04 x86-64 (portable)') {
 | |
|                     agent {
 | |
|                         label 'Ubuntu_x86-64'
 | |
|                     }
 | |
|                     steps {
 | |
|                         timeout(time: 180, unit: 'MINUTES') {
 | |
|                             sh '''
 | |
|                                 cp assembly/nix/build-linux-x86-64-nix.sh .
 | |
|                                 chmod +x build-linux-x86-64-nix.sh
 | |
|                                 ./build-linux-x86-64-nix.sh
 | |
|                             '''
 | |
|                             sh '''
 | |
|                                 cd artifacts
 | |
|                                 zip -9r ton-x86-64-linux-portable ./*
 | |
|                             '''
 | |
|                             archiveArtifacts artifacts: 'artifacts/ton-x86-64-linux-portable.zip'
 | |
|                         }
 | |
|                     }
 | |
|                 }
 | |
|                 stage('Ubuntu 20.04 aarch64 (shared)') {
 | |
|                     agent {
 | |
|                         label 'Ubuntu_arm64'
 | |
|                     }
 | |
|                     steps {
 | |
|                         timeout(time: 180, unit: 'MINUTES') {
 | |
|                             sh '''
 | |
|                                 cp assembly/native/build-ubuntu-shared.sh .
 | |
|                                 chmod +x build-ubuntu-shared.sh
 | |
|                                 ./build-ubuntu-shared.sh -a
 | |
|                             '''
 | |
|                             sh '''
 | |
|                                 cd artifacts
 | |
|                                 zip -9r ton-arm64-linux-shared ./*
 | |
|                             '''
 | |
|                             archiveArtifacts artifacts: 'artifacts/ton-arm64-linux-shared.zip'
 | |
|                         }
 | |
|                     }
 | |
|                 }
 | |
|                 stage('Ubuntu 20.04 aarch64 (portable)') {
 | |
|                     agent {
 | |
|                         label 'Ubuntu_arm64'
 | |
|                     }
 | |
|                     steps {
 | |
|                         timeout(time: 180, unit: 'MINUTES') {
 | |
|                             sh '''
 | |
|                                 cp assembly/nix/build-linux-arm64-nix.sh .
 | |
|                                 chmod +x build-linux-arm64-nix.sh
 | |
|                                 ./build-linux-arm64-nix.sh
 | |
|                             '''
 | |
|                             sh '''
 | |
|                                 cd artifacts
 | |
|                                 zip -9r ton-arm64-linux-portable ./*
 | |
|                             '''
 | |
|                             archiveArtifacts artifacts: 'artifacts/ton-arm64-linux-portable.zip'
 | |
|                         }
 | |
|                     }
 | |
|                 }
 | |
|                 stage('macOS 12.7 x86-64 (shared)') {
 | |
|                     agent {
 | |
|                         label 'macOS_12.7_x86-64'
 | |
|                     }
 | |
|                     steps {
 | |
|                         timeout(time: 180, unit: 'MINUTES') {
 | |
|                             sh '''
 | |
|                                 cp assembly/native/build-macos-shared.sh .
 | |
|                                 chmod +x build-macos-shared.sh
 | |
|                                 ./build-macos-shared.sh -a
 | |
|                             '''
 | |
|                             sh '''
 | |
|                                 cd artifacts
 | |
|                                 zip -9r ton-x86-64-macos-shared ./*
 | |
|                             '''
 | |
|                             archiveArtifacts artifacts: 'artifacts/ton-x86-64-macos-shared.zip'
 | |
|                         }
 | |
|                     }
 | |
|                 }
 | |
|                 stage('macOS 12.7 x86-64 (portable)') {
 | |
|                     agent {
 | |
|                         label 'macOS_12.7_x86-64'
 | |
|                     }
 | |
|                     steps {
 | |
|                         timeout(time: 180, unit: 'MINUTES') {
 | |
|                             sh '''
 | |
|                                 cp assembly/nix/build-macos-nix.sh .
 | |
|                                 chmod +x build-macos-nix.sh
 | |
|                                 ./build-macos-nix.sh
 | |
|                             '''
 | |
|                             sh '''
 | |
|                                 cd artifacts
 | |
|                                 zip -9r ton-x86-64-macos-portable ./*
 | |
|                             '''
 | |
|                             archiveArtifacts artifacts: 'artifacts/ton-x86-64-macos-portable.zip'
 | |
|                         }
 | |
|                     }
 | |
|                 }
 | |
|                 stage('macOS 12.6 aarch64 (shared)') {
 | |
|                     agent {
 | |
|                         label 'macOS_12.6-arm64-m1'
 | |
|                     }
 | |
|                     steps {
 | |
|                         timeout(time: 180, unit: 'MINUTES') {
 | |
|                             sh '''
 | |
|                                 cp assembly/native/build-macos-shared.sh .
 | |
|                                 chmod +x build-macos-shared.sh
 | |
|                                 ./build-macos-shared.sh -a
 | |
|                             '''
 | |
|                             sh '''
 | |
|                                 cd artifacts
 | |
|                                 zip -9r ton-arm64-macos-m1-shared ./*
 | |
|                             '''
 | |
|                             archiveArtifacts artifacts: 'artifacts/ton-arm64-macos-m1-shared.zip'
 | |
|                         }
 | |
|                     }
 | |
|                 }
 | |
|                 stage('macOS 12.6 aarch64 (portable)') {
 | |
|                     agent {
 | |
|                         label 'macOS_12.6-arm64-m1'
 | |
|                     }
 | |
|                     steps {
 | |
|                         timeout(time: 180, unit: 'MINUTES') {
 | |
|                             sh '''
 | |
|                                 cp assembly/nix/build-macos-nix.sh .
 | |
|                                 chmod +x build-macos-nix.sh
 | |
|                                 ./build-macos-nix.sh
 | |
|                             '''
 | |
|                             sh '''
 | |
|                                 cd artifacts
 | |
|                                 zip -9r ton-arm64-macos-portable ./*
 | |
|                             '''
 | |
|                             archiveArtifacts artifacts: 'artifacts/ton-arm64-macos-portable.zip'
 | |
|                         }
 | |
|                     }
 | |
|                 }
 | |
|                 stage('macOS 13.2 aarch64 (shared)') {
 | |
|                     agent {
 | |
|                         label 'macOS_13.2-arm64-m2'
 | |
|                     }
 | |
|                     steps {
 | |
|                         timeout(time: 180, unit: 'MINUTES') {
 | |
|                             sh '''
 | |
|                                 cp assembly/native/build-macos-shared.sh .
 | |
|                                 chmod +x build-macos-shared.sh
 | |
|                                 ./build-macos-shared.sh -a
 | |
|                             '''
 | |
|                             sh '''
 | |
|                                 cd artifacts
 | |
|                                 zip -9r ton-arm64-macos-m2-shared ./*
 | |
|                             '''
 | |
|                             archiveArtifacts artifacts: 'artifacts/ton-arm64-macos-m2-shared.zip'
 | |
|                         }
 | |
|                     }
 | |
|                 }
 | |
|                 stage('Windows Server 2022 x86-64') {
 | |
|                     agent {
 | |
|                         label 'Windows_x86-64'
 | |
|                     }
 | |
|                     steps {
 | |
|                         timeout(time: 180, unit: 'MINUTES') {
 | |
|                             bat '''
 | |
|                                 copy assembly\\native\\build-windows.bat .
 | |
|                                 build-windows.bat
 | |
|                             '''
 | |
|                             bat '''
 | |
|                                 cd artifacts
 | |
|                                 zip -9r ton-x86-64-windows ./*
 | |
|                             '''
 | |
|                             archiveArtifacts artifacts: 'artifacts/ton-x86-64-windows.zip'
 | |
|                         }
 | |
|                     }
 | |
|                 }
 | |
|                 stage('Android Tonlib') {
 | |
|                     agent {
 | |
|                         label 'Ubuntu_x86-64'
 | |
|                     }
 | |
|                     steps {
 | |
|                         timeout(time: 180, unit: 'MINUTES') {
 | |
|                             sh '''
 | |
|                                 cp assembly/android/build-android-tonlib.sh .
 | |
|                                 chmod +x build-android-tonlib.sh
 | |
|                                 ./build-android-tonlib.sh -a
 | |
|                             '''
 | |
|                             sh '''
 | |
|                                 cd artifacts/tonlib-android-jni
 | |
|                                 zip -9r ton-android-tonlib ./*
 | |
|                             '''
 | |
|                             archiveArtifacts artifacts: 'artifacts/tonlib-android-jni/ton-android-tonlib.zip'
 | |
|                         }
 | |
|                     }
 | |
|                 }
 | |
|                 stage('WASM fift func emulator') {
 | |
|                     agent {
 | |
|                         label 'Ubuntu_x86-64'
 | |
|                     }
 | |
|                     steps {
 | |
|                         timeout(time: 180, unit: 'MINUTES') {
 | |
|                             sh '''
 | |
|                                 cp assembly/wasm/fift-func-wasm-build-ubuntu.sh .
 | |
|                                 chmod +x fift-func-wasm-build-ubuntu.sh
 | |
|                                 ./fift-func-wasm-build-ubuntu.sh -a
 | |
|                             '''
 | |
|                             sh '''
 | |
|                                 cd artifacts
 | |
|                                 zip -9r ton-wasm-binaries ./*
 | |
|                             '''
 | |
|                             archiveArtifacts artifacts: 'artifacts/ton-wasm-binaries.zip'
 | |
|                         }
 | |
|                     }
 | |
|                 }
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| }
 |