/go-harbor

A Harbor API client enabling Go programs to interact with Harbor in a simple and uniform way

Primary LanguageGoMIT LicenseMIT

go-harbor

A Harbor API client enabling Go programs to interact with Harbor in a simple and uniform way

GitHub license travis codecov

Coverage

This API client package covers most of the existing Harbor API calls and is updated regularly to add new and/or missing endpoints. Currently the following services are supported:

  • Users
  • Projects
  • Repositories
  • Artifacts
  • Jobs
  • Policies
  • Targets
  • SystemInfo
  • LDAP
  • Configurations

Usage

import "github.com/TimeBye/go-harbor"

Some API methods have optional parameters that can be passed. For example, to list all projects for user "haobor":

harborClient, err := harbor.NewClientSet("host", "username", "password")
if err != nil {
    panic(err)
}
query := options.ProjectsListOptions{}
projects, err := harborClient.V2.List(&query)

For complete usage of go-harbor, see the full package docs.

ToDo

  • The biggest thing this package still needs is tests 😞

Issues