Files
monero_c/.woodpecker/linux.yaml
T
Czarek Nakamoto f2057a2363 fix: wownero and monero wallets in the same process
ci: cache ~/.ccache directory
2024-04-01 06:54:50 +02:00

129 lines
4.4 KiB
YAML

clone:
git:
image: woodpeckerci/plugin-git
settings:
partial: false
recursive: true
labels:
platform: linux/amd64
when:
- event: tag
matrix:
repo:
- monero
- wownero
steps:
- name: patch ${repo} and cache depends
image: git.mrcyjanek.net/mrcyjanek/debian:buster
commands:
- cd ${repo} && git submodule update --init --force && cd ..
- git config --global user.email "ci@mrcyjanek.net"
- git config --global user.name "CI mrcyjanek.net"
- ./apply_patches.sh ${repo}
- cd ${repo}/contrib/depends
- for i in sources built; do cp "/root/.cache/${repo}/$i" . -r || true; done
- make download
volumes:
- /opt/cache/monero_c/dotcache:/root/.cache
- name: x86_64-apple-darwin11
image: git.mrcyjanek.net/mrcyjanek/debian:bookworm
commands:
- apt update
- apt install -y gperf libtinfo5
- ./build_single.sh ${repo} x86_64-apple-darwin11 -j$(nproc)
volumes:
- /opt/cache/monero_c/dotccache:/root/.ccache
- name: aarch64-apple-darwin11
image: git.mrcyjanek.net/mrcyjanek/debian:bookworm
commands:
- apt update
- apt install -y gperf libtinfo5
- ./build_single.sh ${repo} aarch64-apple-darwin11 -j$(nproc)
volumes:
- /opt/cache/monero_c/dotccache:/root/.ccache
- name: x86_64-w64-mingw32
image: git.mrcyjanek.net/mrcyjanek/debian:buster
commands:
- apt update
- apt install -y ccache gcc-mingw-w64-x86-64 g++-mingw-w64-x86-64 gperf libtinfo5
- ./build_single.sh ${repo} x86_64-w64-mingw32 -j$(nproc)
volumes:
- /opt/cache/monero_c/dotccache:/root/.ccache
- name: i686-w64-mingw32
image: git.mrcyjanek.net/mrcyjanek/debian:buster
commands:
- apt update
- apt install -y ccache gcc-mingw-w64-i686 g++-mingw-w64-i686 gperf libtinfo5
- ./build_single.sh ${repo} i686-w64-mingw32 -j$(nproc)
volumes:
- /opt/cache/monero_c/dotccache:/root/.ccache
- name: x86_64-linux-gnu
image: git.mrcyjanek.net/mrcyjanek/debian:buster
commands:
- apt update
- apt install -y ccache gcc g++ gperf
- ./build_single.sh ${repo} x86_64-linux-gnu -j$(nproc)
volumes:
- /opt/cache/monero_c/dotccache:/root/.ccache
- name: i686-linux-gnu
image: git.mrcyjanek.net/mrcyjanek/debian:buster
commands:
- apt update
- apt install -y ccache gcc-i686-linux-gnu g++-i686-linux-gnu gperf
- ./build_single.sh ${repo} i686-linux-gnu -j$(nproc)
volumes:
- /opt/cache/monero_c/dotccache:/root/.ccache
- name: aarch64-linux-gnu
image: git.mrcyjanek.net/mrcyjanek/debian:buster
commands:
- apt update
- apt install -y ccache gcc-aarch64-linux-gnu g++-aarch64-linux-gnu gperf
- ./build_single.sh ${repo} aarch64-linux-gnu -j$(nproc)
volumes:
- /opt/cache/monero_c/dotccache:/root/.ccache
- name: x86_64-linux-android
image: git.mrcyjanek.net/mrcyjanek/debian:buster
commands:
- apt update
- apt install -y ccache libtinfo5 gperf
- ./build_single.sh ${repo} x86_64-linux-android -j$(nproc)
volumes:
- /opt/cache/monero_c/dotccache:/root/.ccache
- name: aarch64-linux-android
image: git.mrcyjanek.net/mrcyjanek/debian:buster
commands:
- apt update
- apt install -y ccache libtinfo5 gperf
- ./build_single.sh ${repo} aarch64-linux-android -j$(nproc)
volumes:
- /opt/cache/monero_c/dotccache:/root/.ccache
- name: arm-linux-androideabi
image: git.mrcyjanek.net/mrcyjanek/debian:buster
commands:
- apt update
- apt install -y ccache libtinfo5 gperf
- ./build_single.sh ${repo} arm-linux-androideabi -j$(nproc)
volumes:
- /opt/cache/monero_c/dotccache:/root/.ccache
- name: cache depends
image: git.mrcyjanek.net/mrcyjanek/debian:buster
commands:
- cd ${repo}/contrib/depends
- mkdir -p /root/.cache/${repo} || true
- for i in sources built; do cp "$i" "/root/.cache/${repo}" -r || true; done
volumes:
- /opt/cache/monero_c/dotcache:/root/.cache
- name: upload artifact
image: git.mrcyjanek.net/mrcyjanek/debian:bookworm
commands:
- rm -rf ~/.ssh || true
- mkdir -p ~/.ssh
- echo "$${SSH_PRIVKEY}" > ~/.ssh/id_rsa
- chmod 700 ~/.ssh
- chmod 600 ~/.ssh/id_rsa
- rsync --mkpath -e "ssh -o StrictHostKeyChecking=no" -raz release/* $${SSH_HOST}:"$${SSH_BASE_PATH}/$(git describe --tags)/"
secrets: [ ssh_privkey, ssh_host, ssh_base_path ]