badguardhome/.travis.yml

138 lines
3.0 KiB
YAML
Raw Normal View History

2019-12-13 10:31:10 +00:00
if: repo = AdguardTeam/AdGuardHome
2018-08-30 15:16:37 +00:00
language: go
sudo: false
2019-01-29 12:11:11 +00:00
2018-08-30 15:16:37 +00:00
go:
- 1.14.x
os:
- linux
- osx
2020-04-13 21:04:38 +00:00
- windows
2019-01-04 18:00:06 +00:00
before_install:
2020-04-13 21:04:38 +00:00
- |-
case $TRAVIS_OS_NAME in
linux | osx)
nvm install node
npm install -g npm
curl -sfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh| sh -s -- -b $(go env GOPATH)/bin v1.23.8
;;
windows)
2020-04-13 21:26:44 +00:00
# Using NVS for managing Node.js versions on Windows
2020-04-13 21:30:20 +00:00
NVS_HOME="C:\ProgramData\nvs"
2020-04-13 21:26:44 +00:00
git clone --single-branch https://github.com/jasongin/nvs $NVS_HOME
source $NVS_HOME/nvs.sh
nvs add latest
nvs use latest
2020-04-13 21:04:38 +00:00
;;
esac
2019-01-04 18:00:06 +00:00
install:
2020-04-13 21:04:38 +00:00
- |-
case $TRAVIS_OS_NAME in
linux | osx)
2020-04-13 21:26:44 +00:00
node --version
npm --version
2020-04-13 21:04:38 +00:00
npm --prefix client ci
;;
windows)
2020-04-13 21:26:44 +00:00
node --version
npm --version
nvs --version
2020-04-13 21:04:38 +00:00
npm --prefix client ci
;;
esac
2019-01-29 12:11:11 +00:00
cache:
directories:
- $HOME/.cache/go-build
- $HOME/gopath/pkg/mod
- $HOME/Library/Caches/go-build
2018-08-30 15:16:37 +00:00
script:
2020-04-13 21:04:38 +00:00
- |-
case $TRAVIS_OS_NAME in
linux | osx)
/bin/bash ci.sh
;;
windows)
2020-04-15 12:24:12 +00:00
npm --prefix client run build-prod
2020-04-13 21:04:38 +00:00
go test -race -v -bench=. -coverprofile=coverage.txt -covermode=atomic ./...
;;
esac
2018-08-30 15:16:37 +00:00
2019-01-25 09:55:13 +00:00
after_success:
2020-04-13 21:04:38 +00:00
- |-
case $TRAVIS_OS_NAME in
linux)
bash <(curl -s https://codecov.io/bash)
;;
esac
2019-01-29 12:11:11 +00:00
2019-08-16 10:47:51 +00:00
notifications:
2019-08-16 13:08:56 +00:00
slack: performix:yXTihlSzsLFSZiqbXMNzvTSX
2019-08-16 10:47:51 +00:00
2019-01-29 12:11:11 +00:00
matrix:
include:
# Release build configuration
2019-12-13 10:31:10 +00:00
- if: repo = AdguardTeam/AdGuardHome
2019-01-29 12:11:11 +00:00
- name: release
go:
- 1.14.x
2019-01-29 12:11:11 +00:00
os:
- linux
script:
- node -v
- npm -v
# Prepare releases
- ./build_release.sh
2019-01-29 12:11:11 +00:00
- ls -l dist
deploy:
provider: releases
api_key: $GITHUB_TOKEN
file:
- dist/AdGuardHome_*
on:
repo: AdguardTeam/AdGuardHome
tags: true
draft: true
file_glob: true
skip_cleanup: true
2020-04-13 21:04:38 +00:00
# Docker build configuration
- if: repo = AdguardTeam/AdGuardHome
2019-01-29 12:11:11 +00:00
- name: docker
2019-12-13 10:31:10 +00:00
if: type != pull_request AND (branch = master OR tag IS present) AND repo = AdguardTeam/AdGuardHome
2019-01-29 12:11:11 +00:00
go:
- 1.14.x
2019-01-29 12:11:11 +00:00
os:
- linux
services:
- docker
before_script:
- nvm install node
- npm install -g npm
script:
- docker login -u="$DOCKER_USER" -p="$DOCKER_PASSWORD"
- ./build_docker.sh
after_script:
2020-04-21 13:25:29 +00:00
- docker images
# Snapcraft build configuration
- if: repo = AdguardTeam/AdGuardHome
- name: snapcraft
# if: type != pull_request AND (branch = master OR tag IS present) AND repo = AdguardTeam/AdGuardHome
if: branch = snapcraft
go:
- 1.14.x
os:
- linux
services:
- docker
script:
- ./build_snap.sh
2020-04-21 14:23:29 +00:00
after_failure:
# replace snap name
- cat adguardhometest_*.txt