ebiten/.travis.yml
Hajime Hoshi e113b1e4ca Update .travis.yml and internal/jsutil for the latest GopherJS
Go 1.12 doesn't work with the latest GopherJS.

Updates #1581
Closes #1582
2021-04-18 15:09:45 +09:00

101 lines
3.6 KiB
YAML

addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- libasound2-dev
- libgl1-mesa-dev
- libalut-dev
- libxcursor-dev
- libxi-dev
- libxinerama-dev
- libxrandr-dev
- libxxf86vm-dev
chrome: stable
services:
- xvfb
install:
# Install Go 1.16.3 manualy
# See https://travis-ci.community/t/goos-js-goarch-wasm-go-run-fails-panic-newosproc-not-implemented/1651
- wget -O go.tar.gz https://dl.google.com/go/go1.16.3.linux-amd64.tar.gz
- tar -C ~ -xzf go.tar.gz
- rm go.tar.gz
- export GOROOT=~/go
- export GOPATH=/home/travis/gopath
- export PATH=$GOROOT/bin:$PATH
- go version
- go env
# Make the working directory
- mkdir /tmp/work
- cd /tmp/work
- go mod init example.com/m
- go get github.com/hajimehoshi/ebiten
- wget -O ebiten.zip https://github.com/$TRAVIS_REPO_SLUG/archive/$TRAVIS_COMMIT.zip
- unzip ebiten.zip
- mv ./ebiten-$TRAVIS_COMMIT ebiten
- echo 'package main; import ( "github.com/hajimehoshi/ebiten"; "github.com/go-gl/glfw/v3.3/glfw"; "github.com/gofrs/flock"; "github.com/golang/freetype"; "github.com/hajimehoshi/bitmapfont"; "github.com/hajimehoshi/file2byteslice"; "github.com/hajimehoshi/go-mp3"; "github.com/hajimehoshi/oto"; "github.com/jakecoffman/cp"; "github.com/jfreymuth/oggvorbis"; "github.com/niemeyer/pretty"; "golang.org/x/image/font"; "golang.org/x/mobile/app"; "golang.org/x/sys/windows"; "golang.org/x/tools/go/packages"; "gopkg.in/check.v1" )' > main.go
- go get github.com/hajimehoshi/ebiten # go get github.com/hajimehoshi/ebiten/... failed. See #1581
- go mod edit -replace=github.com/hajimehoshi/ebiten=./ebiten
- go mod tidy
# wasmbrowsertest
- mkdir /tmp/wasmbrowsertest
- cd /tmp/wasmbrowsertest
- go mod init foo
- go get github.com/agnivade/wasmbrowsertest
- go build -o wasmbrowsertest github.com/agnivade/wasmbrowsertest
- mv ./wasmbrowsertest $GOPATH/bin/go_js_wasm_exec
# GopherJS
- GO111MODULE=off go get github.com/gopherjs/gopherjs
- mkdir -p $GOPATH/src/github.com/hajimehoshi
- cd $GOPATH/src/github.com/hajimehoshi
- unzip /tmp/work/ebiten.zip
- mv ./ebiten-$TRAVIS_COMMIT ebiten
- cd ./ebiten
- GO111MODULE=off go get -d -tags=example ./...
- cd /tmp/work
# gjbt
- GO111MODULE=off go get myitcv.io/cmd/gjbt
# Chrome
- mkdir /tmp/google-chrome-bin
- ln -s /usr/bin/google-chrome-stable /tmp/google-chrome-bin/google-chrome
- export PATH=/tmp/google-chrome-bin:$PATH
- curl -s https://chromedriver.storage.googleapis.com/2.38/chromedriver_linux64.zip > /tmp/chromedriver_linux64.zip
- unzip -d /tmp/chromedriver_linux64 /tmp/chromedriver_linux64.zip
- export PATH=/tmp/chromedriver_linux64:$PATH
before_script:
- export DISPLAY=:99.0
script:
- cd /tmp/work
# go vet
- go vet -tags=example -v github.com/hajimehoshi/ebiten/...
# go build
- go build -tags=example -v github.com/hajimehoshi/ebiten/...
- GOOS=windows GOARCH=amd64 go build -tags=example -v github.com/hajimehoshi/ebiten/...
- GOOS=windows GOARCH=386 go build -tags=example -v github.com/hajimehoshi/ebiten/...
# go test
- go test -v github.com/hajimehoshi/ebiten/...
- GOOS=js GOARCH=wasm go test -v github.com/hajimehoshi/ebiten/...
# GopherJS
- GO111MODULE=off go run github.com/gopherjs/gopherjs build --tags=example -v github.com/hajimehoshi/ebiten/examples/blocks
- GO111MODULE=off go run myitcv.io/cmd/gjbt github.com/hajimehoshi/ebiten # TODO: Test the subdirectories
# - test -z $(gofmt -s -l $GOPATH/src/github.com/hajimehoshi/ebiten)
notifications:
email:
recipients:
- hajimehoshi@gmail.com