woodpecker/Makefile

55 lines
1.6 KiB
Makefile
Raw Normal View History

SHA := $(shell git rev-parse --short HEAD)
2014-02-07 10:10:01 +00:00
all: build
deps:
# npm install -g uglify-js
# npm install -g less
2014-06-12 20:01:11 +00:00
go get github.com/GeertJohan/go.rice/rice
go list github.com/drone/drone/... | xargs go get -t -v
2014-06-04 21:25:38 +00:00
test:
go vet ./...
go test -cover -short ./...
build:
go build -o debian/drone/usr/local/bin/drone -ldflags "-X main.revision $(SHA)" github.com/drone/drone/client
go build -o debian/drone/usr/local/bin/droned -ldflags "-X main.revision $(SHA)" github.com/drone/drone/server
run:
@go run server/main.go
2014-06-04 21:25:38 +00:00
clean:
find . -name "*.out" -delete
rm -f debian/drone/usr/local/bin/drone
rm -f debian/drone/usr/local/bin/droned
rm -f debian/drone.deb
rm -f server/server
rm -f client/client
lessc:
lessc --clean-css server/app/styles/drone.less server/app/styles/drone.css
dpkg: build embed deb
2014-06-12 00:42:49 +00:00
# embeds content in go source code so that it is compiled
# and packaged inside the go binary file.
embed:
rice --import-path="github.com/drone/drone/server" append --exec="debian/drone/usr/local/bin/droned"
2014-02-07 10:10:01 +00:00
# creates a debian package for drone to install
# `sudo dpkg -i drone.deb`
deb:
mkdir -p debian/drone/usr/local/bin
mkdir -p debian/drone/var/lib/drone
dpkg-deb --build debian/drone
2014-07-11 22:29:31 +00:00
# deploys drone to a staging server. this requires the following
# environment variables are set:
#
# DRONE_STAGING_HOST -- the hostname or ip
# DRONE_STAGING_USER -- the username used to login
# DRONE_STAGING_KEY -- the identity file path (~/.ssh/id_rsa)
2014-07-11 22:29:31 +00:00
deploy:
scp -i $$DRONE_STAGING_KEY debian/drone.deb $$DRONE_STAGING_USER@$$DRONE_STAGING_HOST:/tmp
ssh -i $$DRONE_STAGING_KEY $$DRONE_STAGING_USER@$$DRONE_STAGING_HOST -- dpkg -i /tmp/drone.deb