10c97e5c61
Vendored go.rice manually as a submodule. This is so that Godep picks up its dependencies as well, so that the entirety of Drone's dependencies are vendored in, and Drone can be built without an internet connection.
87 lines
2.1 KiB
Makefile
87 lines
2.1 KiB
Makefile
SHA := $(shell git rev-parse --short HEAD)
|
|
BRANCH := $(shell git rev-parse --abbrev-ref HEAD)
|
|
PKGS := \
|
|
build \
|
|
build/buildfile \
|
|
build/docker \
|
|
build/dockerfile \
|
|
build/proxy \
|
|
build/repo \
|
|
build/script \
|
|
channel \
|
|
database \
|
|
database/encrypt \
|
|
database/migrate \
|
|
database/testing \
|
|
mail \
|
|
model \
|
|
plugin/deploy \
|
|
queue
|
|
PKGS := $(addprefix github.com/drone/drone/pkg/,$(PKGS))
|
|
.PHONY := test $(PKGS)
|
|
|
|
all: embed build
|
|
|
|
vendor: godep
|
|
git submodule update --init --recursive
|
|
godep save ./...
|
|
|
|
embed: js rice
|
|
cd cmd/droned && rice embed
|
|
cd pkg/template && rice embed
|
|
|
|
js:
|
|
cd cmd/droned/assets && find js -name "*.js" ! -name '.*' ! -name "main.js" -exec cat {} \; > js/main.js
|
|
|
|
build:
|
|
cd cmd/drone && go build -ldflags "-X main.version $(SHA)" -o ../../bin/drone
|
|
cd cmd/droned && go build -ldflags "-X main.version $(SHA)" -o ../../bin/droned
|
|
|
|
test: $(PKGS)
|
|
|
|
$(PKGS):
|
|
go test -v $@
|
|
|
|
install:
|
|
cp deb/drone/etc/init/drone.conf /etc/init/drone.conf
|
|
test -f /etc/default/drone || cp deb/drone/etc/default/drone /etc/default/drone
|
|
cd bin && install -t /usr/local/bin drone
|
|
cd bin && install -t /usr/local/bin droned
|
|
mkdir -p /var/lib/drone
|
|
|
|
clean: rice
|
|
cd cmd/droned && rice clean
|
|
cd pkg/template && rice clean
|
|
rm -rf cmd/drone/drone
|
|
rm -rf cmd/droned/droned
|
|
rm -rf cmd/droned/drone.sqlite
|
|
rm -rf bin/drone
|
|
rm -rf bin/droned
|
|
rm -rf deb/drone.deb
|
|
rm -rf usr/local/bin/drone
|
|
rm -rf usr/local/bin/droned
|
|
rm -rf drone.sqlite
|
|
rm -rf /tmp/drone.sqlite
|
|
|
|
# creates a debian package for drone
|
|
# to install `sudo dpkg -i drone.deb`
|
|
dpkg:
|
|
mkdir -p deb/drone/usr/local/bin
|
|
mkdir -p deb/drone/var/lib/drone
|
|
mkdir -p deb/drone/var/cache/drone
|
|
cp bin/drone deb/drone/usr/local/bin
|
|
cp bin/droned deb/drone/usr/local/bin
|
|
-dpkg-deb --build deb/drone
|
|
|
|
run:
|
|
bin/droned --port=":8080" --datasource="drone.sqlite"
|
|
|
|
go-gitlab-client:
|
|
rm -rf $$GOPATH/src/github.com/plouc/go-gitlab-client
|
|
git clone -b raw-request https://github.com/fudanchii/go-gitlab-client $$GOPATH/src/github.com/plouc/go-gitlab-client
|
|
|
|
godep:
|
|
go get github.com/tools/godep
|
|
|
|
rice:
|
|
go install github.com/GeertJohan/go.rice/rice
|