forked from coop-cloud/tagcmp
Add go doc generated output
This commit is contained in:
parent
b4367c8019
commit
a6b38843fe
80
README.md
80
README.md
|
@ -18,9 +18,85 @@ implementation quite closely.
|
||||||
[renovate]: https://github.com/renovatebot/renovate/blob/main/lib/versioning/docker/readme.md
|
[renovate]: https://github.com/renovatebot/renovate/blob/main/lib/versioning/docker/readme.md
|
||||||
[renovate implementation]: https://github.com/renovatebot/renovate/tree/main/lib/datasource/docker
|
[renovate implementation]: https://github.com/renovatebot/renovate/tree/main/lib/datasource/docker
|
||||||
|
|
||||||
## Public API
|
## go doc
|
||||||
|
|
||||||
> TODO
|
```
|
||||||
|
package tagcmp // import "coopcloud.tech/tagcmp"
|
||||||
|
|
||||||
|
Package tagcmp provides image tag comparison operations.
|
||||||
|
|
||||||
|
VARIABLES
|
||||||
|
|
||||||
|
var CommitHashPattern = "^[a-f0-9]{7,40}$"
|
||||||
|
CommitHashPattern matches commit-like hash tags
|
||||||
|
|
||||||
|
var DotPattern = "([0-9]+)\\.([0-9]+)"
|
||||||
|
DotPattern matches tags which contain multiple versions
|
||||||
|
|
||||||
|
var EmptyPattern = "^$"
|
||||||
|
EmptyPattern matches when tags are missing
|
||||||
|
|
||||||
|
var ParametrizedPattern = "\\${.+}"
|
||||||
|
ParametrizedPattern matches when tags are parametrized
|
||||||
|
|
||||||
|
var StringPattern = "^[a-zA-Z]+$"
|
||||||
|
StringPattern matches when tags are only made up of alphabetic characters
|
||||||
|
|
||||||
|
|
||||||
|
FUNCTIONS
|
||||||
|
|
||||||
|
func IsParseable(tag string) bool
|
||||||
|
IsParseable determines if a tag is supported by this library
|
||||||
|
|
||||||
|
|
||||||
|
TYPES
|
||||||
|
|
||||||
|
type ByTag []Tag
|
||||||
|
ByTag sorts tags
|
||||||
|
|
||||||
|
func (t ByTag) Len() int
|
||||||
|
|
||||||
|
func (t ByTag) Less(i, j int) bool
|
||||||
|
|
||||||
|
func (t ByTag) Swap(i, j int)
|
||||||
|
|
||||||
|
type Tag struct {
|
||||||
|
Major string `json:",omitempty"` // major semver part
|
||||||
|
Minor string `json:",omitempty"` // minor semver part
|
||||||
|
MissingMinor bool // whether or not the minor semver part was left out
|
||||||
|
Patch string `json:",omitempty"` // patch semver part
|
||||||
|
MissingPatch bool // whether or not he patch semver part was left out
|
||||||
|
Suffix string // tag suffix (e.g. "-alpine")
|
||||||
|
UsesV bool // whether or not the tag uses the "v" prefix
|
||||||
|
}
|
||||||
|
|
||||||
|
func Parse(tag string) (Tag, error)
|
||||||
|
Parse converts an image tag into a structured data format. It aims to to
|
||||||
|
support the general case of tags which are "semver-like" and/or stable and
|
||||||
|
parseable by heuristics. Image tags follow no formal specification and
|
||||||
|
therefore this is a best-effort implementation. Examples of tags this
|
||||||
|
function can parse are: "5", "5.2", "v4", "v5.3.6", "4-alpine",
|
||||||
|
"v3.2.1-debian".
|
||||||
|
|
||||||
|
func (t Tag) Equals(tag Tag) bool
|
||||||
|
Equals tests Tag equality
|
||||||
|
|
||||||
|
func (t Tag) IsCompatible(tag Tag) bool
|
||||||
|
IsCompatible determines if two tags can be compared together
|
||||||
|
|
||||||
|
func (t Tag) IsGreaterThan(tag Tag) bool
|
||||||
|
IsGreaterThan tests if a tag is greater than another. There are some
|
||||||
|
tag-isms to take into account here, shorter is bigger (i.e. 2.1 > 2.1.1 ==
|
||||||
|
true, 2 > 2.1 == true).
|
||||||
|
|
||||||
|
func (t Tag) IsLessThan(tag Tag) bool
|
||||||
|
IsLessThan tests if a tag is less than another. There are some tag-isms to
|
||||||
|
take into account here, shorter is bigger (i.e. 2.1 < 2.1.1 == false, 2 <
|
||||||
|
2.1 == false).
|
||||||
|
|
||||||
|
func (t Tag) String() string
|
||||||
|
String formats a Tag correctly in string representation
|
||||||
|
```
|
||||||
|
|
||||||
## Types of versions supported
|
## Types of versions supported
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue