Skip to content
/ drone-go Public

Go client for the Drone API

License

Notifications You must be signed in to change notification settings

drone/drone-go

Folders and files

NameName
Last commit message
Last commit date

Latest commit

f9e4fe3 · Mar 8, 2022
Mar 8, 2022
Mar 8, 2022
Nov 7, 2020
Oct 4, 2021
Sep 29, 2021
Nov 4, 2021
Feb 12, 2015
Feb 20, 2019
Aug 19, 2021
Aug 26, 2020
Aug 26, 2020

Repository files navigation

drone-go

Go.dev

package main

import (
	"fmt"

	"github.com/drone/drone-go/drone"
	"golang.org/x/oauth2"
)

const (
	token = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9"
	host  = "http://drone.company.com"
)

func main() {
	// create an http client with oauth authentication.
	config := new(oauth2.Config)
	auther := config.Client(
		oauth2.NoContext,
		&oauth2.Token{
			AccessToken: token,
		},
	)

	// create the drone client with authenticator
	client := drone.NewClient(host, auther)

	// gets the current user
	user, err := client.Self()
	fmt.Println(user, err)

	// gets the named repository information
	repo, err := client.Repo("drone", "drone-go")
	fmt.Println(repo, err)
}

Release procedure

Run the changelog generator.

docker run -it --rm -v "$(pwd)":/usr/local/src/your-app githubchangeloggenerator/github-changelog-generator -u drone -p drone-go -t <secret github token>

You can generate a token by logging into your GitHub account and going to Settings -> Personal access tokens.

Next we tag the PR's with the fixes or enhancements labels. If the PR does not fufil the requirements, do not add a label.

Run the changelog generator again with the future version according to semver.

docker run -it --rm -v "$(pwd)":/usr/local/src/your-app githubchangeloggenerator/github-changelog-generator -u drone -p drone-go -t <secret token> --future-release v1.0.0

Create your pull request for the release. Get it merged then tag the release.