Merge pull request #5 from drone-plugins/feature/unification

Unification: Drone config, Makefile, structure and badges
This commit is contained in:
Thomas Boerger 2016-01-26 13:01:47 +01:00
commit c0654081b5
5 changed files with 80 additions and 36 deletions

View file

@ -1 +1 @@
eyJhbGciOiJSU0EtT0FFUCIsImVuYyI6IkExMjhHQ00ifQ.ivt1r_hG7xhdImbwXIKSnGTkja9yPox9EjA58WhNXEvi7YHdFKsHx5LNcyH_o1W9LrUZEg0ag7QSEklpz900YdNX9HP6lpQ0yZso7Igo6i39nmvEihKypuIGWq8T3Vg7-ZH6UqwYuirxTKFU6lXcym-MLx7c8SEXdpnvUVO-Iq1X2ZGDLHjpi3h81qfsl5cvDdJadq9C2gCrqcHzXiiGLFMNVcB0zeIu8Q0osAZvmzMo9RoWZ3aAz8MH7JNNwbrUkZpO5t9wH0MqaaYbEKACWT6JP1XAUsEWv48CHQ1G2rtdNcjYMtJQbN78joTNkvDK6RkmBC5ZuCqfgeD_7Mi8OA.3hffaFSq-yxJWWaK._Ld4LgMpg4rn02CsVTTxrHbCUwmR_Z-JSkgAJgZg-U3Qz-EStA1G5G6oiOzunWMGTMgUDql4r8kigpC41GVbvv1_XGbUxKaribC_5p1_SBPZ8nZQ03zeKBp9-opW_gsImQkaqbG0L0GhHKVIaibhAsovo_92bb_gLu_W6oZgrWtATt1qgN0Q-8uRcfo-tuIzI0nU5vlQ4bmmNqfnT7QxGMIV-WhKZy5Rj004izO6bJojuAwuWq_WugWIhQbz-qpVnu0LlLwBbEVBaj6RsSULRHf_1UYVe_K3mmHxbcEpuRkiOU7yRJvwxsprQc0Hqge95QGKgwehZGF6SXfQstm4QnuV17_8PH3--cVLkIgzoZZ7yKWOYNqznn_ZX5jAFZdF5nRqyA.Ea5tn0QTKCKsjGoGP3tHlQ
eyJhbGciOiJSU0EtT0FFUCIsImVuYyI6IkExMjhHQ00ifQ.xT1t3tFZvZOhWHLDkvoABEebjQ_oyQ79Iko6UCYNIjzj8_-LOQdCJz93SyHriWHg7K3J5Q_PkPeZY5XtiJRBg62kAhpT4NxnWMQeXC3u4qfGqUJNFNRYwkz-yCHxAKLlKIPzqonPPo2acs1TWs5hO5yV14hVhNA7ahjhDPl59ciYvlUE6b1rt1Wjua52sla9mPkH4Tp73OWZRBEMr4KEi8TD4O2uWgZWzHYaYLvAlHwz-TPFYM1ZEvbukBSOjqSYIXRW4NWGbxdh9cmHcRFhmT53_rlgfuwKECdARE72SaI49HXSSp-l2rP7TK5U9bG8lVwo_9U3VDCZg90Br25K-w.YTWp3MKQoq40d1p4.YSjdjah29g9lAV42F24axBtHZZTU8Cdufn2ROCsgN0Ql-xL_Cx3YFqDHrw-s1l2YCvj5Mzhi7w49LKnKf_icMOC28cM8UcrL0_VTucqOssvNxSyRSiSNlgUkeTVpuMMpXfofgW4nHiCjVj-5c4nIELeMWoFE0LcRmVRJzDpE6MExIaybev1X-lwC9boBTDGleKJPteZYotkNKgA5CBzWucoD0wcm3igH_6-ZOLvltAnjWyk_KI4akseGLh9T112XcRhvmUtJRxvD3adU5zk2A5oYHYxFaRxy5Nr4xTIpMdMk_S9W6_4JgztkAtsVIjWRAB-_CqsLS7tHNBmrT7ciH6DQlpo6ZKJ42T4AWIWfO0LFL_dI39rn2YZSfz-dEWl9ZsNpc-42LB9CRKjxdWo8W48qnMwrdUL0ZgO6H0kyVTw.IOn4GNuz0vEgnHB8_WecDQ

View file

@ -1,18 +1,33 @@
build:
image: golang:1.5
environment:
- CGO_ENABLED=0
commands:
- make deps
- make vet
- make build
- make test
publish:
coverage:
when:
branch: master
docker:
username: drone
username: $$DOCKER_USER
password: $$DOCKER_PASS
email: $$DOCKER_EMAIL
repo: plugins/drone-email
tag: latest
when:
branch: master
docker:
username: $$DOCKER_USER
password: $$DOCKER_PASS
email: $$DOCKER_EMAIL
repo: plugins/drone-email
tag: develop
when:
branch: develop
plugin:
name: Email

View file

@ -1,13 +1,11 @@
.PHONY: clean deps test build docker
export GOOS ?= linux
export GOARCH ?= amd64
export CGO_ENABLED ?= 0
.PHONY: clean deps fmt vet test docker
EXECUTABLE ?= drone-email
IMAGE ?= plugins/$(EXECUTABLE)
CI_BUILD_NUMBER ?= 0
LDFLAGS += -X "main.buildDate=$(shell date -u '+%Y-%m-%d %H:%M:%S %Z')"
LDFLAGS += -X "main.build=$(CI_BUILD_NUMBER)"
LDFLAGS = -X "main.buildDate=$(shell date -u '+%Y-%m-%d %H:%M:%S %Z')"
PACKAGES = $(shell go list ./... | grep -v /vendor/)
clean:
go clean -i ./...
@ -15,11 +13,20 @@ clean:
deps:
go get -t ./...
test:
go test -cover ./...
fmt:
go fmt $(PACKAGES)
build:
go build -ldflags '-s -w $(LDFLAGS)'
vet:
go vet $(PACKAGES)
test:
@for PKG in $(PACKAGES); do go test -cover -coverprofile $$GOPATH/src/$$PKG/coverage.out $$PKG || exit 1; done;
docker:
docker build --rm=true -t plugins/drone-email .
GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -ldflags '-s -w $(LDFLAGS)'
docker build --rm -t $(IMAGE) .
$(EXECUTABLE): $(wildcard *.go)
go build -ldflags '-s -w $(LDFLAGS)'
build: $(EXECUTABLE)

View file

@ -1,33 +1,49 @@
# drone-email
[![Build Status](http://beta.drone.io/api/badges/drone-plugins/drone-email/status.svg)](http://beta.drone.io/drone-plugins/drone-email)
[![Coverage Status](https://aircover.co/badges/drone-plugins/drone-email/coverage.svg)](https://aircover.co/drone-plugins/drone-email)
[![](https://badge.imagelayers.io/plugins/drone-email:latest.svg)](https://imagelayers.io/?images=plugins/drone-email:latest 'Get your own badge on imagelayers.io')
Drone plugin for sending build status notifications via Email
Drone plugin to send build status notifications via Email
## Usage
## Binary
Build the binary using `make`:
```
make deps build
```
### Example
```sh
./drone-email <<EOF
{
"repo" : {
"owner": "foo",
"name": "bar",
"full_name": "foo/bar"
"repo": {
"clone_url": "git://github.com/drone/drone",
"owner": "drone",
"name": "drone",
"full_name": "drone/drone"
},
"system": {
"link_url": "http://drone.mycompany.com"
"link_url": "https://beta.drone.io"
},
"build" : {
"build": {
"number": 22,
"status": "success",
"started_at": 1421029603,
"finished_at": 1421029813,
"commit": "64908ed2414b771554fda6508dd56a0c43766831",
"branch": "master",
"message": "Update the Readme",
"author": "johnsmith",
"author_email": "john.smith@gmail.com"
"event": "push",
"branch": "master",
"commit": "436b7a6e2abaddfd35740527353e78a227ddcb2c",
"ref": "refs/heads/master"
},
"workspace": {
"root": "/drone/src",
"path": "/drone/src/github.com/drone/drone"
},
"vargs": {
"from": "noreply@foo.com",
@ -45,10 +61,10 @@ EOF
## Docker
Build the Docker container using `make`:
Build the container using `make`:
```sh
make deps build docker
```
make deps docker
```
### Example
@ -56,24 +72,31 @@ make deps build docker
```sh
docker run -i plugins/drone-email <<EOF
{
"repo" : {
"owner": "foo",
"name": "bar",
"full_name": "foo/bar"
"repo": {
"clone_url": "git://github.com/drone/drone",
"owner": "drone",
"name": "drone",
"full_name": "drone/drone"
},
"system": {
"link_url": "http://drone.mycompany.com"
"link_url": "https://beta.drone.io"
},
"build" : {
"build": {
"number": 22,
"status": "success",
"started_at": 1421029603,
"finished_at": 1421029813,
"commit": "64908ed2414b771554fda6508dd56a0c43766831",
"branch": "master",
"message": "Update the Readme",
"author": "johnsmith",
"author_email": "john.smith@gmail.com"
"event": "push",
"branch": "master",
"commit": "436b7a6e2abaddfd35740527353e78a227ddcb2c",
"ref": "refs/heads/master"
},
"workspace": {
"root": "/drone/src",
"path": "/drone/src/github.com/drone/drone"
},
"vargs": {
"from": "noreply@foo.com",

View file

@ -9,7 +9,6 @@ import (
)
var (
build string
buildDate string
)