-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy path.travis.yml
47 lines (47 loc) · 1.4 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
sudo: required
language: go
os:
- linux
branches:
only:
- master
- "/^v\\d+(\\.\\d+)+$/"
go:
- 1.9
before_install:
- curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
- sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu
$(lsb_release -cs) stable"
- sudo apt-get update
- sudo apt-get -y install docker-ce zip
before_script:
- docker login -u $DOCKER_USERNAME -p $DOCKER_PASSWORD
- mkdir -p bin/x86 bin/osx bin/win bin/arm
script:
- go get github.com/GeertJohan/go.rice
- go get -v ./...
- GOOS="linux" go build -v -o bin/x86/golang-wol wolsrv.go
- GOOS="darwin" go build -v -o bin/osx/golang-wol wolsrv.go
- GOOS="windows" go build -v -o bin/win/golang-wol.exe wolsrv.go
- GOOS="linux" GOARCH=arm go build -v -o bin/arm/golang-wol wolsrv.go
- docker build -t cmaiorano/golang-wol:x86 -f Dockerfile.x86 .
- docker run --rm --privileged multiarch/qemu-user-static:register --reset
- docker build -t cmaiorano/golang-wol:arm -f Dockerfile.arm .
after_success:
- docker push cmaiorano/golang-wol:x86
- docker push cmaiorano/golang-wol:arm
before_deploy:
- zip -r bin/golang-wol-x86.zip bin/x86/
- zip -r bin/golang-wol-osx.zip bin/osx/
- zip -r bin/golang-wol-win.zip bin/win/
- zip -r bin/golang-wol-arm.zip bin/arm/
deploy:
provider: releases
api_key: "$GITHUB_TOKEN"
file_glob: true
file: bin/*.zip
skip_cleanup: true
on:
tags: true
services:
- docker