1
0
mirror of https://github.com/goreleaser/goreleaser.git synced 2025-01-10 03:47:03 +02:00
goreleaser/client/client.go
2017-04-19 16:59:26 -03:00

25 lines
616 B
Go

// Package client contains the client implementations for several providers.
package client
import (
"bytes"
"os"
"github.com/goreleaser/goreleaser/context"
)
// Info of the repository
type Info struct {
Description string
Homepage string
URL string
}
// Client interface
type Client interface {
GetInfo(ctx *context.Context) (info Info, err error)
CreateRelease(ctx *context.Context, body string) (releaseID int, err error)
CreateFile(ctx *context.Context, content bytes.Buffer, path string) (err error)
Upload(ctx *context.Context, releaseID int, name string, file *os.File) (err error)
}