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 ]