github.com/unclejack/drone@v0.2.1-0.20140918182345-831b034aa33b/Makefile (about)

     1  SELFPKG := github.com/drone/drone
     2  VERSION := 0.2
     3  SHA := $(shell git rev-parse --short HEAD)
     4  BRANCH := $(shell git rev-parse --abbrev-ref HEAD)
     5  PKGS := \
     6  build \
     7  build/buildfile \
     8  build/docker \
     9  build/dockerfile \
    10  build/proxy \
    11  build/repo \
    12  build/script \
    13  channel \
    14  database \
    15  database/encrypt \
    16  database/migrate/testing \
    17  database/testing \
    18  mail \
    19  model \
    20  plugin/deploy \
    21  plugin/publish \
    22  queue
    23  PKGS := $(addprefix github.com/drone/drone/pkg/,$(PKGS))
    24  .PHONY := test $(PKGS)
    25  
    26  all: embed build
    27  
    28  build:
    29  	go build -o bin/drone -ldflags "-X main.version $(VERSION)dev-$(SHA)" $(SELFPKG)/cmd/drone
    30  	go build -o bin/droned -ldflags "-X main.version $(VERSION)dev-$(SHA)" $(SELFPKG)/cmd/droned
    31  
    32  build-dist: godep
    33  	godep go build -o bin/drone -ldflags "-X main.version $(VERSION)-$(SHA)" $(SELFPKG)/cmd/drone
    34  	godep go build -o bin/droned -ldflags "-X main.version $(VERSION)-$(SHA)" $(SELFPKG)/cmd/droned
    35  
    36  bump-deps: deps vendor
    37  
    38  deps:
    39  	go get -u -t -v ./...
    40  
    41  vendor: godep
    42  	git submodule update --init --recursive
    43  	godep save ./...
    44  
    45  
    46  # Embed static assets
    47  embed: js rice
    48  	cd cmd/droned   && rice embed
    49  	cd pkg/template && rice embed
    50  
    51  js:
    52  	cd cmd/droned/assets && find js -name "*.js" ! -name '.*' ! -name "main.js" -exec cat {} \; > js/main.js
    53  
    54  test: $(PKGS)
    55  
    56  $(PKGS): godep
    57  	godep go test -v $@
    58  
    59  install:
    60  	cp deb/drone/etc/init/drone.conf /etc/init/drone.conf
    61  	test -f /etc/default/drone || cp deb/drone/etc/default/drone /etc/default/drone
    62  	cd bin && install -t /usr/local/bin drone
    63  	cd bin && install -t /usr/local/bin droned
    64  	mkdir -p /var/lib/drone
    65  
    66  clean: rice
    67  	cd cmd/droned   && rice clean
    68  	cd pkg/template && rice clean
    69  	rm -rf cmd/drone/drone
    70  	rm -rf cmd/droned/droned
    71  	rm -rf cmd/droned/drone.sqlite
    72  	rm -rf bin/drone
    73  	rm -rf bin/droned
    74  	rm -rf deb/drone.deb
    75  	rm -rf usr/local/bin/drone
    76  	rm -rf usr/local/bin/droned
    77  	rm -rf drone.sqlite
    78  	rm -rf /tmp/drone.sqlite
    79  
    80  # creates a debian package for drone
    81  # to install `sudo dpkg -i drone.deb`
    82  dpkg:
    83  	mkdir -p deb/drone/usr/local/bin
    84  	mkdir -p deb/drone/var/lib/drone
    85  	mkdir -p deb/drone/var/cache/drone
    86  	cp bin/drone  deb/drone/usr/local/bin
    87  	cp bin/droned deb/drone/usr/local/bin
    88  	-dpkg-deb --build deb/drone
    89  
    90  run:
    91  	bin/droned --port=":8080" --datasource="drone.sqlite"
    92  
    93  godep:
    94  	go get github.com/tools/godep
    95  
    96  rice:
    97  	go get github.com/GeertJohan/go.rice/rice
    98  	go build github.com/GeertJohan/go.rice/rice