AdGuardHome/.travis.yml

122 lines
2.5 KiB
YAML
Raw Normal View History

2019-12-13 13:31:10 +03:00
if: repo = AdguardTeam/AdGuardHome
2018-08-30 18:16:37 +03:00
language: go
sudo: false
2019-01-29 15:11:11 +03:00
2018-08-30 18:16:37 +03:00
go:
- 1.14.x
os:
- linux
- osx
2020-04-14 00:04:38 +03:00
- windows
2019-01-04 21:00:06 +03:00
before_install:
2020-04-14 00:04:38 +03: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-14 00:26:44 +03:00
# Using NVS for managing Node.js versions on Windows
2020-04-14 00:30:20 +03:00
NVS_HOME="C:\ProgramData\nvs"
2020-04-14 00:26:44 +03: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-14 00:04:38 +03:00
;;
esac
2019-01-04 21:00:06 +03:00
install:
2020-04-14 00:04:38 +03:00
- |-
case $TRAVIS_OS_NAME in
linux | osx)
2020-04-14 00:26:44 +03:00
node --version
npm --version
2020-04-14 00:04:38 +03:00
npm --prefix client ci
;;
windows)
2020-04-14 00:26:44 +03:00
node --version
npm --version
nvs --version
2020-04-14 00:04:38 +03:00
npm --prefix client ci
;;
esac
2019-01-29 15:11:11 +03:00
cache:
directories:
- $HOME/.cache/go-build
- $HOME/gopath/pkg/mod
- $HOME/Library/Caches/go-build
2018-08-30 18:16:37 +03:00
script:
2020-04-14 00:04:38 +03:00
- |-
case $TRAVIS_OS_NAME in
linux | osx)
/bin/bash ci.sh
;;
windows)
2020-04-15 15:24:12 +03:00
npm --prefix client run build-prod
2020-04-14 00:04:38 +03:00
go test -race -v -bench=. -coverprofile=coverage.txt -covermode=atomic ./...
;;
esac
2018-08-30 18:16:37 +03:00
2019-01-25 12:55:13 +03:00
after_success:
2020-04-14 00:04:38 +03:00
- |-
case $TRAVIS_OS_NAME in
linux)
bash <(curl -s https://codecov.io/bash)
;;
esac
2019-01-29 15:11:11 +03:00
2019-08-16 13:47:51 +03:00
notifications:
2019-08-16 16:08:56 +03:00
slack: performix:yXTihlSzsLFSZiqbXMNzvTSX
2019-08-16 13:47:51 +03:00
2019-01-29 15:11:11 +03:00
matrix:
include:
# Release build configuration
2019-12-13 13:31:10 +03:00
- if: repo = AdguardTeam/AdGuardHome
2019-01-29 15:11:11 +03:00
- name: release
go:
- 1.14.x
2019-01-29 15:11:11 +03:00
os:
- linux
script:
- node -v
- npm -v
# Prepare releases
- ./build_release.sh
2019-01-29 15:11:11 +03: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-14 00:04:38 +03:00
# Docker build configuration
- if: repo = AdguardTeam/AdGuardHome
2019-01-29 15:11:11 +03:00
- name: docker
2019-12-13 13:31:10 +03:00
if: type != pull_request AND (branch = master OR tag IS present) AND repo = AdguardTeam/AdGuardHome
2019-01-29 15:11:11 +03:00
go:
- 1.14.x
2019-01-29 15:11:11 +03: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 16:25:29 +03:00
- docker images