209 lines
8.4 KiB
YAML
209 lines
8.4 KiB
YAML
sudo: false
|
|
|
|
language: go
|
|
|
|
os:
|
|
- linux
|
|
|
|
go:
|
|
- "1.10"
|
|
|
|
script:
|
|
- gimme --list
|
|
- echo $TRAVIS_GO_VERSION
|
|
- cd dnscrypt-proxy
|
|
|
|
- go clean
|
|
- env GOOS=windows GOARCH=386 go build -ldflags="-s -w"
|
|
- mkdir win32
|
|
- ln dnscrypt-proxy.exe win32/
|
|
- cp ../LICENSE example-dnscrypt-proxy.toml example-*.txt win32/
|
|
- for i in win32/LICENSE win32/*.toml win32/*.txt; do ex -bsc '%!awk "{sub(/$/,\"\r\")}1"' -cx "$i"; done
|
|
- ln ../windows/* win32/
|
|
- zip -9 -r dnscrypt-proxy-win32-${TRAVIS_TAG:-dev}.zip win32
|
|
|
|
- go clean
|
|
- env GOOS=windows GOARCH=amd64 go build -ldflags="-s -w"
|
|
- mkdir win64
|
|
- ln dnscrypt-proxy.exe win64/
|
|
- cp ../LICENSE example-dnscrypt-proxy.toml example-*.txt win64/
|
|
- for i in win64/LICENSE win64/*.toml win64/*.txt; do ex -bsc '%!awk "{sub(/$/,\"\r\")}1"' -cx "$i"; done
|
|
- ln ../windows/* win64/
|
|
- zip -9 -r dnscrypt-proxy-win64-${TRAVIS_TAG:-dev}.zip win64
|
|
|
|
- go clean
|
|
- env GO386=387 GOOS=openbsd GOARCH=386 go build -ldflags="-s -w"
|
|
- mkdir openbsd-i386
|
|
- ln dnscrypt-proxy openbsd-i386/
|
|
- ln ../LICENSE example-dnscrypt-proxy.toml example-*.txt openbsd-i386/
|
|
- tar czpvf dnscrypt-proxy-openbsd_i386-${TRAVIS_TAG:-dev}.tar.gz openbsd-i386
|
|
|
|
- go clean
|
|
- env GOOS=openbsd GOARCH=amd64 go build -ldflags="-s -w"
|
|
- mkdir openbsd-amd64
|
|
- ln dnscrypt-proxy openbsd-amd64/
|
|
- ln ../LICENSE example-dnscrypt-proxy.toml example-*.txt openbsd-amd64/
|
|
- tar czpvf dnscrypt-proxy-openbsd_amd64-${TRAVIS_TAG:-dev}.tar.gz openbsd-amd64
|
|
|
|
- go clean
|
|
- env GOOS=freebsd GOARCH=386 go build -ldflags="-s -w"
|
|
- mkdir freebsd-i386
|
|
- ln dnscrypt-proxy freebsd-i386/
|
|
- ln ../LICENSE example-dnscrypt-proxy.toml example-*.txt freebsd-i386/
|
|
- tar czpvf dnscrypt-proxy-freebsd_i386-${TRAVIS_TAG:-dev}.tar.gz freebsd-i386
|
|
|
|
- go clean
|
|
- env GOOS=freebsd GOARCH=amd64 go build -ldflags="-s -w"
|
|
- mkdir freebsd-amd64
|
|
- ln dnscrypt-proxy freebsd-amd64/
|
|
- ln ../LICENSE example-dnscrypt-proxy.toml example-*.txt freebsd-amd64/
|
|
- tar czpvf dnscrypt-proxy-freebsd_amd64-${TRAVIS_TAG:-dev}.tar.gz freebsd-amd64
|
|
|
|
- go clean
|
|
- env GOOS=dragonfly GOARCH=amd64 go build -ldflags="-s -w"
|
|
- mkdir dragonflybsd-amd64
|
|
- ln dnscrypt-proxy dragonflybsd-amd64/
|
|
- ln ../LICENSE example-dnscrypt-proxy.toml example-*.txt dragonflybsd-amd64/
|
|
- tar czpvf dnscrypt-proxy-dragonflybsd_amd64-${TRAVIS_TAG:-dev}.tar.gz dragonflybsd-amd64
|
|
|
|
- go clean
|
|
- env GOOS=netbsd GOARCH=386 go build -ldflags="-s -w"
|
|
- mkdir netbsd-i386
|
|
- ln dnscrypt-proxy netbsd-i386/
|
|
- ln ../LICENSE example-dnscrypt-proxy.toml example-*.txt netbsd-i386/
|
|
- tar czpvf dnscrypt-proxy-netbsd_i386-${TRAVIS_TAG:-dev}.tar.gz netbsd-i386
|
|
|
|
- go clean
|
|
- env GOOS=netbsd GOARCH=amd64 go build -ldflags="-s -w"
|
|
- mkdir netbsd-amd64
|
|
- ln dnscrypt-proxy netbsd-amd64/
|
|
- ln ../LICENSE example-dnscrypt-proxy.toml example-*.txt netbsd-amd64/
|
|
- tar czpvf dnscrypt-proxy-netbsd_amd64-${TRAVIS_TAG:-dev}.tar.gz netbsd-amd64
|
|
|
|
- go clean
|
|
- env GOOS=linux GOARCH=386 go build -ldflags="-s -w"
|
|
- mkdir linux-i386
|
|
- ln dnscrypt-proxy linux-i386/
|
|
- ln ../LICENSE ../systemd/* example-dnscrypt-proxy.toml example-*.txt linux-i386/
|
|
- tar czpvf dnscrypt-proxy-linux_i386-${TRAVIS_TAG:-dev}.tar.gz linux-i386
|
|
|
|
- go clean
|
|
- env GOOS=linux GOARCH=amd64 go build -ldflags="-s -w"
|
|
- mkdir linux-x86_64
|
|
- ln dnscrypt-proxy linux-x86_64/
|
|
- ln ../LICENSE ../systemd/* example-dnscrypt-proxy.toml example-*.txt linux-x86_64/
|
|
- tar czpvf dnscrypt-proxy-linux_x86_64-${TRAVIS_TAG:-dev}.tar.gz linux-x86_64
|
|
|
|
- go clean
|
|
- env GOOS=linux GOARCH=arm go build -ldflags="-s -w"
|
|
- mkdir linux-arm
|
|
- ln dnscrypt-proxy linux-arm/
|
|
- ln ../LICENSE example-dnscrypt-proxy.toml example-*.txt linux-arm/
|
|
- tar czpvf dnscrypt-proxy-linux_arm-${TRAVIS_TAG:-dev}.tar.gz linux-arm
|
|
|
|
- go clean
|
|
- env GOOS=linux GOARCH=arm64 go build -ldflags="-s -w"
|
|
- mkdir linux-arm64
|
|
- ln dnscrypt-proxy linux-arm64/
|
|
- ln ../LICENSE example-dnscrypt-proxy.toml example-*.txt linux-arm64/
|
|
- tar czpvf dnscrypt-proxy-linux_arm64-${TRAVIS_TAG:-dev}.tar.gz linux-arm64
|
|
|
|
- go clean
|
|
- env GOOS=linux GOARCH=mips GOMIPS=softfloat go build -ldflags="-s -w"
|
|
- mkdir linux-mips
|
|
- ln dnscrypt-proxy linux-mips/
|
|
- ln ../LICENSE example-dnscrypt-proxy.toml example-*.txt linux-mips/
|
|
- tar czpvf dnscrypt-proxy-linux_mips-${TRAVIS_TAG:-dev}.tar.gz linux-mips
|
|
|
|
- go clean
|
|
- env GOOS=linux GOARCH=mipsle GOMIPS=softfloat go build -ldflags="-s -w"
|
|
- mkdir linux-mipsle
|
|
- ln dnscrypt-proxy linux-mipsle/
|
|
- ln ../LICENSE example-dnscrypt-proxy.toml example-*.txt linux-mipsle/
|
|
- tar czpvf dnscrypt-proxy-linux_mipsle-${TRAVIS_TAG:-dev}.tar.gz linux-mipsle
|
|
|
|
- go clean
|
|
- env GOOS=linux GOARCH=mips64 go build -ldflags="-s -w"
|
|
- mkdir linux-mips64
|
|
- ln dnscrypt-proxy linux-mips64/
|
|
- ln ../LICENSE example-dnscrypt-proxy.toml example-*.txt linux-mips64/
|
|
- tar czpvf dnscrypt-proxy-linux_mips64-${TRAVIS_TAG:-dev}.tar.gz linux-mips64
|
|
|
|
- go clean
|
|
- env GOOS=linux GOARCH=mips64le go build -ldflags="-s -w"
|
|
- mkdir linux-mips64le
|
|
- ln dnscrypt-proxy linux-mips64le/
|
|
- ln ../LICENSE example-dnscrypt-proxy.toml example-*.txt linux-mips64le/
|
|
- tar czpvf dnscrypt-proxy-linux_mips64le-${TRAVIS_TAG:-dev}.tar.gz linux-mips64le
|
|
|
|
- go clean
|
|
- env GOOS=darwin GOARCH=amd64 go build -ldflags="-s -w"
|
|
- mkdir macos
|
|
- ln dnscrypt-proxy macos/
|
|
- ln ../LICENSE example-dnscrypt-proxy.toml example-*.txt macos/
|
|
- tar czpvf dnscrypt-proxy-macos-${TRAVIS_TAG:-dev}.tar.gz macos
|
|
|
|
- go clean
|
|
- env CC=arm-linux-androideabi-clang CXX=arm-linux-androideabi-clang++ CGO_ENABLED=1 GOOS=android GOARCH=arm GOARM=7 go build -ldflags="-s -w"
|
|
- mkdir android-arm
|
|
- ln dnscrypt-proxy android-arm/
|
|
- cp ../LICENSE example-dnscrypt-proxy.toml example-*.txt android-arm/
|
|
- zip -9 -r dnscrypt-proxy-android_arm-${TRAVIS_TAG:-dev}.zip android-arm
|
|
|
|
- go clean
|
|
- env CC=aarch64-linux-android-clang CXX=aarch64-linux-android-clang++ CGO_ENABLED=1 GOOS=android GOARCH=arm64 go build -ldflags="-s -w"
|
|
- mkdir android-arm64
|
|
- ln dnscrypt-proxy android-arm64/
|
|
- cp ../LICENSE example-dnscrypt-proxy.toml example-*.txt android-arm64/
|
|
- zip -9 -r dnscrypt-proxy-android_arm64-${TRAVIS_TAG:-dev}.zip android-arm64
|
|
|
|
- go clean
|
|
- env CC=i686-linux-android-clang CXX=i686-linux-android-clang++ CGO_ENABLED=1 GOOS=android GOARCH=386 go build -ldflags="-s -w"
|
|
- mkdir android-i386
|
|
- ln dnscrypt-proxy android-i386/
|
|
- cp ../LICENSE example-dnscrypt-proxy.toml example-*.txt android-i386/
|
|
- zip -9 -r dnscrypt-proxy-android_i386-${TRAVIS_TAG:-dev}.zip android-i386
|
|
|
|
- go clean
|
|
- env CC=x86_64-linux-android-clang CXX=x86_64-linux-android-clang++ CGO_ENABLED=1 GOOS=android GOARCH=amd64 go build -ldflags="-s -w"
|
|
- mkdir android-x86_64
|
|
- ln dnscrypt-proxy android-x86_64/
|
|
- cp ../LICENSE example-dnscrypt-proxy.toml example-*.txt android-x86_64/
|
|
- zip -9 -r dnscrypt-proxy-android_x86_64-${TRAVIS_TAG:-dev}.zip android-x86_64
|
|
|
|
- ls -l dnscrypt-proxy-*.tar.gz dnscrypt-proxy-*.zip
|
|
|
|
deploy:
|
|
provider: releases
|
|
api_key:
|
|
secure: J3K/wo3oW/ySl6X4Zk5PX+EVy4fa0qa4fbpKNivogch5yjYw2pgrlSvwto9TM12Gxi4tTMKiWYK4YBapNf+tm501s4OyS1G1rJR1fZ+iyaHgGBLD+QppbivZt+P7Do56agSili68Zcgm7MQfZbvOq9z42z3AJ71+UNTJmTp63voaAuyOF/VdLsmJHMd/5nmFJH6mfMrgMs720GCWxFgdq3NRM2AdVldsp1YmNb4qKqIzunmfxqG9TqVlpq35tNOhWA/Ll3rbsiDVeUpBAW5ked/qHyGRkFVk44O6cPSFGe035Txx0JviBshGxsNSP+aJL9T55hIj1dmuk6g5uhPqABU/zcdJvXOv11oqJuV/DGHO31UfVN6u744LJY6Y1lkd+UUNiOJDPGC80+6M2GbP7BFMZiO5qnYkxzktnYg9b6zIPwmj96XZSniDTAn+qemJf2S8rzShvBtWX29Q4odIaCfFUY8i0muowQ4Vep5S5FqVG+r/rQTXOUIUsNv4r/gP/y5hdtOMC2r1VSvWk068upmW6ovCtcmTghSfYcLCG5r+g5OE2mKj9kbx6RQMspewk9+pvOhNZKXsn/AIvvDC4V46MaDjFkdYN0VbsYB5NH11DGCPH7vDwJnAzzMWnofCkiTG07dJYlLUnD9iUgYoNkrxivAgQKnDP8C6Ka0RGdk=
|
|
file:
|
|
- dnscrypt-proxy-*.tar.gz
|
|
- dnscrypt-proxy-*.zip
|
|
file_glob: true
|
|
skip_cleanup: true
|
|
on:
|
|
repo: jedisct1/dnscrypt-proxy
|
|
condition: "${TRAVIS_GO_VERSION} == 1.10"
|
|
tags: true
|
|
|
|
after_deploy:
|
|
- ls -l dnscrypt-proxy-*.tar.gz
|
|
|
|
before_install:
|
|
- NDK_VER=r15c
|
|
- curl -LO http://dl.google.com/android/repository/android-ndk-${NDK_VER}-linux-x86_64.zip
|
|
- unzip -q android-ndk-${NDK_VER}-linux-x86_64.zip -d $HOME
|
|
- rm android-ndk-${NDK_VER}-linux-x86_64.zip
|
|
|
|
- NDK_TOOLS=$HOME/android-ndk-${NDK_VER}
|
|
- NDK_STANDALONE=$HOME/ndk-standalone-${NDK_VER}
|
|
- MAKE_TOOLCHAIN=$NDK_TOOLS/build/tools/make_standalone_toolchain.py
|
|
|
|
- for arch in x86 x86_64 arm arm64; do
|
|
python $MAKE_TOOLCHAIN --arch $arch --api 21 --install-dir $NDK_STANDALONE/$arch;
|
|
PATH=$PATH:$NDK_STANDALONE/$arch/bin;
|
|
done
|
|
|
|
- rm -rf $NDK_TOOLS
|