---
kind: pipeline
type: docker
name: linux-release

steps:
  - name: build
    image: feather:linux
    volumes:
    - name: ccache_linux_release
      path: /root/.ccache
    - name: monero
      path: /drone/src/monero
    - name: files_linux_release
      path: /files
    commands:
    - TOR_BIN="/usr/local/tor/bin/tor" make -j11 release-static
    - contrib/build-appimage.sh
    environment:
      OPENSSL_ROOT_DIR: /usr/local/openssl/
      CMAKEFLAGS_EXTRA: -DFETCH_DEPS=Off
  - name: deploy
    image: feather:linux
    volumes:
    - name: ccache_linux_release
      path: /root/.ccache
    - name: files_linux_release
      path: /linux-release
    - name: files_linux_appimage
      path: /linux-release-appimage
    commands:
    - export FN="feather-`echo $DRONE_COMMIT_AFTER | cut -c 1-7`.zip"
    - export TARGET_DIR="/linux-release/$DRONE_SOURCE_BRANCH"
    - mkdir -p "$TARGET_DIR"
    - echo "writing to $TARGET_DIR/$FN"
    - strip -s build/bin/feather
    - zip -j "$TARGET_DIR/$FN" build/feather.log build/bin/feather
    - echo "[*] written to https://build.featherwallet.org/files/linux-release/$DRONE_SOURCE_BRANCH/$FN"
    - # AppImage
    - export FN="feather-`git rev-parse --short HEAD`.AppImage"
    - export TARGET_DIR="/linux-release-appimage/$DRONE_SOURCE_BRANCH"
    - mkdir -p "$TARGET_DIR"
    - echo "writing to $TARGET_DIR/$FN"
    - mv "feather.AppImage" "$TARGET_DIR/$FN"
    - echo "[*] written to https://build.featherwallet.org/files/linux-release-appimage/$DRONE_SOURCE_BRANCH/$FN"

volumes:
- name: ccache_linux_release
  host:
    path: /var/drone/ccache_linux_release/
- name: monero
  host:
    path: /var/drone/monero
- name: files_linux_release
  host:
    path: /build/feather_files/files/linux-release/
- name: files_linux_appimage
  host:
    path: /build/feather_files/files/linux-release-appimage/

---
kind: pipeline
type: docker
name: windows-release
steps:
  - name: build
    image: feather:win
    volumes:
    - name: ccache_win_release
      path: /root/.ccache
    - name: files_win_release
      path: /files
    - name: monero
      path: /drone/src/monero
    commands:
    - TOR_BIN="/usr/local/tor/bin/tor.exe" make depends root=/depends target=x86_64-w64-mingw32 tag=win-x64 -j11
    environment:
      CMAKEFLAGS_EXTRA: -DFETCH_DEPS=Off
  - name: deploy
    image: feather:win
    volumes:
    - name: files_win_release
      path: /files
    commands:
    - export FN="feather-`echo $DRONE_COMMIT_AFTER | cut -c 1-7`.zip"
    - export TARGET_DIR="/files/$DRONE_SOURCE_BRANCH"
    - mkdir -p "$TARGET_DIR"
    - echo "writing to $TARGET_DIR/$FN"
    - zip -j "$TARGET_DIR/$FN" build/x86_64-w64-mingw32/release/bin/feather.exe
    - echo "[*] written to https://build.featherwallet.org/files/windows-release/$DRONE_SOURCE_BRANCH/$FN"
volumes:
- name: ccache_win_release
  host:
    path: /var/drone/ccache_win_release/
- name: files_win_release
  host:
    path: /build/feather_files/files/windows-release/
- name: monero
  host:
    path: /var/drone/monero

---
kind: pipeline
type: docker
name: mac-release

steps:
  - name: build
    image: feather:mac
    volumes:
    - name: files_mac_release
      path: /files
    commands:
    - mkdir -p build
    - ssh administrator@steve.jobs.xmr.pm "chmod +x build_macos.sh && PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin ~/build_macos.sh $DRONE_COMMIT_SHA"
    - scp -P22 administrator@steve.jobs.xmr.pm:feather.zip build/feather.zip
  - name: deploy
    image: feather:mac
    volumes:
    - name: files_mac_release
      path: /files
    commands:
    - export FN="feather-`echo $DRONE_COMMIT_AFTER | cut -c 1-7`.zip"
    - export TARGET_DIR="/files/$DRONE_SOURCE_BRANCH"
    - mkdir -p "$TARGET_DIR"
    - echo "writing to $TARGET_DIR/$FN"
    - mv build/feather.zip "$TARGET_DIR/$FN"
    - echo "[*] written to https://build.featherwallet.org/files/mac-release/$DRONE_SOURCE_BRANCH/$FN"

volumes:
- name: files_mac_release
  host:
    path: /build/feather_files/files/mac-release/
---
kind: signature
hmac: f16a0379280e2e89987930d635ec6fb938d67732fdaf4ddc488f2a9db64bda2c

...