1
0
Fork 0
mirror of https://github.com/ton-blockchain/ton synced 2025-02-15 04:32:21 +00:00
ton/.github/workflows/ubuntu-18.04-compile.yml
neodiX42 d3e177b49e
Add Github action to create TON release (#514)
* add: TON Overflow

* Create release and tag.

* add permission to read GITHUB_TOKEN

* register token

* register token

* register token

* register token

* correct tag name

* call sub workflow and upload its artifact to the release

* call sub workflow and upload its artifact to the release

* define jobs dependency

* add 2nd dependency; upload ubuntu and windows artifacts; show all artifacts

* add 2nd dependency; upload ubuntu and windows artifacts; show all artifacts

* create folder for all artifacts; download artifacts from previous workflows

* add macos-compile

* fix download artifacts

* fix download artifacts

* test all upload to release

* fix bug in finding windows artifact

* fix execution order

* fix execution order

* fix download artifact

* fix download artifact

* fix download artifact

* fix download artifact

* fix versioning

* fix versioning

* zip artifacts; copy macos artifacts one by one;

* zip artifacts; copy macos artifacts one by one;

* zip artifacts; copy macos artifacts one by one;

* fix lib name in macos

* Update create-release.yml

* Update create-release.yml

* better packing

* better packing

* Update win-2019-compile.yml

* minor improvements

* minor improvements

* add ninja to macos

* add ninja to windows

* add ninja to windows

* remove ninja grom windows

* fix macos copy

* reuse exising jobs

* reuse existing jobs

* use other ubuntu action

* use other ubuntu action

* add smartcont and fift libs to artifacts

* GH action for release creation

* update actions/checkout to v3

* sync abseil with testnet
2022-11-03 12:41:49 +03:00

42 lines
1.7 KiB
YAML

name: Ubuntu 18.04 Compile
on: [push,workflow_dispatch,workflow_call]
jobs:
build:
runs-on: ubuntu-18.04
steps:
- name: Check out repository
uses: actions/checkout@v3
with:
submodules: 'recursive'
- name: Install libraries
run: |
sudo apt update
sudo apt install -y build-essential git make cmake clang libgflags-dev zlib1g-dev libssl-dev libreadline-dev libmicrohttpd-dev pkg-config libgsl-dev python3 python3-dev ninja-build
- name: Configure & Build
run: |
export CC=$(which clang)
export CXX=$(which clang++)
export CCACHE_DISABLE=1
mkdir build
cd build
cmake -GNinja -DCMAKE_BUILD_TYPE=Release ..
ninja fift func tonlib tonlibjson tonlib-cli validator-engine lite-client pow-miner validator-engine-console generate-random-id json2tlo dht-server http-proxy rldp-http-proxy adnl-proxy create-state create-hardfork
- name: find & copy binaries
run: |
mkdir artifacts
cp build/crypto/fift build/crypto/tlbc build/crypto/func build/crypto/create-state build/validator-engine-console/validator-engine-console build/tonlib/tonlib-cli build/tonlib/libtonlibjson.so.0.5 build/http/http-proxy build/rldp-http-proxy/rldp-http-proxy build/dht-server/dht-server build/lite-client/lite-client build/validator-engine/validator-engine build/utils/generate-random-id build/utils/json2tlo build/adnl/adnl-proxy artifacts
cp -R crypto/smartcont artifacts/
cp -R crypto/fift/lib artifacts/
- name: Upload artifacts
uses: actions/upload-artifact@master
with:
name: ton-ubuntu-binaries
path: artifacts