Documentation ¶
Index ¶
- func ContainsStringPart(s []string, part string) bool
- func Copy(src, dst string) (int64, error)
- func CopyAtoB(a, b interface{})
- func CopyData(dst io.Writer, src io.Reader) (int64, error)
- func EncodeString(token string) string
- func EncodeUsernamePassword(username, password string) string
- func ExcludeFiles(files, excludes []string) ([]string, error)
- func ExecuteTemplate(txtTemplate string, context interface{}) (string, error)
- func ExecuteTemplateFunctions(txtTemplate string, functionMap template.FuncMap, context interface{}) (string, error)
- func FileExists(filename string) (bool, error)
- func GetPurl(bomFilePath string) string
- func Keys[M ~map[K]V, K comparable, V any](m M) []K
- func PersistReportsAndLinks(stepName, workspace string, files fileWriter, reports, links []Path) error
- func Prefix(in []string, prefix string) []string
- func PrefixIfNeeded(in []string, prefix string) []string
- func RemoveAll(arr []string, item string) ([]string, bool)
- func SafeDereference[T any](p *T) T
- func SplitAndTrim(in []string, separator string) (out []string)
- func Title(in string) string
- func Trim(in []string) (out []string)
- func UniqueStrings(values []string) []string
- func Untar(src string, dest string, stripComponentLevel int) error
- func Unzip(src, dest string) ([]string, error)
- func Values[M ~map[K]V, K comparable, V any](m M) []V
- type Bom
- type BomComponent
- type BomProperty
- type FileUtils
- type Files
- func (f Files) Abs(path string) (string, error)
- func (f Files) Chdir(path string) error
- func (f Files) Chmod(path string, mode os.FileMode) error
- func (f Files) Chown(path string, uid, gid int) error
- func (f Files) Copy(src, dst string) (int64, error)
- func (f Files) Create(name string) (io.ReadWriteCloser, error)
- func (f Files) CurrentTime(format string) string
- func (f Files) DirExists(path string) (bool, error)
- func (f Files) FileExists(filename string) (bool, error)
- func (f *Files) FileOpen(name string, flag int, perm os.FileMode) (*os.File, error)
- func (f Files) FileRead(path string) ([]byte, error)
- func (f Files) FileRemove(path string) error
- func (f Files) FileRename(oldPath, newPath string) error
- func (f Files) FileWrite(path string, content []byte, perm os.FileMode) error
- func (f Files) Getwd() (string, error)
- func (f Files) Glob(pattern string) (matches []string, err error)
- func (f Files) Lstat(path string) (os.FileInfo, error)
- func (f Files) MkdirAll(path string, perm os.FileMode) error
- func (f Files) Move(src, dst string) error
- func (f Files) Open(name string) (io.ReadWriteCloser, error)
- func (f Files) ReadFile(path string) ([]byte, error)
- func (f Files) Readlink(name string) (string, error)
- func (f Files) RemoveAll(path string) error
- func (f Files) SHA256(path string) (string, error)
- func (f Files) Stat(path string) (os.FileInfo, error)
- func (f Files) Symlink(oldname, newname string) error
- func (f Files) TempDir(dir, pattern string) (name string, err error)
- func (f Files) WriteFile(path string, content []byte, perm os.FileMode) error
- type Metadata
- type Path
- type ProjectStructure
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ContainsStringPart ¶ added in v1.38.0
ContainsStringPart checks whether the element is contained as part of one of the elements of the slice
func CopyAtoB ¶ added in v1.204.0
func CopyAtoB(a, b interface{})
CopyAtoB copies the contents of a into slice b given that they are of equal size and compatible type
func CopyData ¶ added in v1.149.0
CopyData transfers the bytes from src to dst without doing close handling implicitly.
func EncodeString ¶ added in v1.153.0
func EncodeUsernamePassword ¶ added in v1.153.0
func ExcludeFiles ¶ added in v1.111.0
ExcludeFiles returns a slice of files, which contains only the sub-set of files that matched none of the glob patterns in the provided excludes list.
func ExecuteTemplate ¶ added in v1.38.0
ExecuteTemplate parses the provided template, substitutes values and returns the output
func ExecuteTemplateFunctions ¶ added in v1.38.0
func ExecuteTemplateFunctions(txtTemplate string, functionMap template.FuncMap, context interface{}) (string, error)
ExecuteTemplateFunctions parses the provided template, applies the transformation functions, substitutes values and returns the output
func FileExists ¶
FileExists returns true if the file system entry for the given path exists and is not a directory.
func Keys ¶ added in v1.238.0
func Keys[M ~map[K]V, K comparable, V any](m M) []K
func PersistReportsAndLinks ¶ added in v1.11.0
func PersistReportsAndLinks(stepName, workspace string, files fileWriter, reports, links []Path) error
PersistReportsAndLinks stores the report paths and links in JSON format in the workspace for processing outside
func PrefixIfNeeded ¶ added in v1.22.0
PrefixIfNeeded adds a prefix to each element of the slice if not already prefixed
func RemoveAll ¶ added in v1.87.0
RemoveAll removes all instances of element from the slice and returns a truncated slice as well as a boolean to indicate whether at least one element was found and removed.
func SafeDereference ¶ added in v1.311.0
func SafeDereference[T any](p *T) T
func SplitAndTrim ¶ added in v1.25.0
SplitAndTrim iterates over the strings in the given slice and splits each on the provided separator. Each resulting sub-string is then a separate entry in the returned array.
func Trim ¶ added in v1.19.0
Trim removes dangling whitespaces from each element of the slice, empty elements are dropped
func UniqueStrings ¶ added in v1.123.0
UniqueStrings removes duplicates from values
func Untar ¶ added in v1.172.0
Untar will decompress a gzipped archive and then untar it, moving all files and folders within the tgz file (parameter 1) to an output directory (parameter 2). some tar like the one created from npm have an addtional package folder which need to be removed during untar stripComponent level acts the same like in the tar cli with level 1 corresponding to elimination of parent folder stripComponentLevel = 1 -> parentFolder/someFile.Txt -> someFile.Txt stripComponentLevel = 2 -> parentFolder/childFolder/someFile.Txt -> someFile.Txt when stripCompenent in 0 the untar will retain the original tar folder structure when stripCompmenet is greater than 0 the expectation is all files must be under that level folder and if not there is a hard check and failure condition
func Unzip ¶ added in v1.19.0
Unzip will decompress a zip archive, moving all files and folders within the zip file (parameter 1) to an output directory (parameter 2). from https://golangcode.com/unzip-files-in-go/ with the following license: MIT License
Copyright (c) 2017 Edd Turtle ¶
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
func Values ¶ added in v1.238.0
func Values[M ~map[K]V, K comparable, V any](m M) []V
Values returns the slice of values of the map provided
Types ¶
type Bom ¶ added in v1.387.0
type Bom struct {
Metadata Metadata `xml:"metadata"`
}
To serialize the cyclonedx BOM file
type BomComponent ¶ added in v1.387.0
type BomComponent struct {
Purl string `xml:"purl"`
}
type BomProperty ¶ added in v1.387.0
type FileUtils ¶ added in v1.15.0
type FileUtils interface { Abs(path string) (string, error) DirExists(path string) (bool, error) FileExists(filename string) (bool, error) Copy(src, dest string) (int64, error) Move(src, dest string) error FileRead(path string) ([]byte, error) ReadFile(path string) ([]byte, error) FileWrite(path string, content []byte, perm os.FileMode) error WriteFile(path string, content []byte, perm os.FileMode) error FileRemove(path string) error MkdirAll(path string, perm os.FileMode) error Chmod(path string, mode os.FileMode) error Chown(path string, uid, gid int) error Glob(pattern string) (matches []string, err error) Chdir(path string) error TempDir(string, string) (string, error) RemoveAll(string) error FileRename(string, string) error Getwd() (string, error) Symlink(oldname string, newname string) error SHA256(path string) (string, error) CurrentTime(format string) string Open(name string) (io.ReadWriteCloser, error) Create(name string) (io.ReadWriteCloser, error) Readlink(name string) (string, error) Stat(path string) (os.FileInfo, error) Lstat(path string) (os.FileInfo, error) }
FileUtils ...
type Files ¶ added in v1.15.0
type Files struct{}
Files ...
func (Files) Create ¶ added in v1.207.0
func (f Files) Create(name string) (io.ReadWriteCloser, error)
Create is a wrapper for os.Create
func (Files) CurrentTime ¶ added in v1.204.0
CurrentTime returns the current time in the specified format
func (Files) DirExists ¶ added in v1.43.0
DirExists returns true if the file system entry for the given path exists and is a directory.
func (Files) FileExists ¶ added in v1.15.0
FileExists returns true if the file system entry for the given path exists and is not a directory.
func (Files) FileRemove ¶ added in v1.43.0
FileRemove is a wrapper for os.Remove().
func (Files) FileRename ¶ added in v1.85.0
FileRename is a wrapper for os.Rename().
func (Files) Open ¶ added in v1.207.0
func (f Files) Open(name string) (io.ReadWriteCloser, error)
Open is a wrapper for os.Open
func (Files) ReadFile ¶ added in v1.238.0
ReadFile is a wrapper for os.ReadFile() using the same name and syntax.
type Metadata ¶ added in v1.387.0
type Metadata struct { Component BomComponent `xml:"component"` Properties []BomProperty `xml:"properties>property"` }
type Path ¶ added in v1.11.0
type Path struct { Name string `json:"name"` Target string `json:"target"` Mandatory bool `json:"mandatory"` Scope string `json:"scope"` }
Path - struct to serialize paths and some metadata back to the invoker
type ProjectStructure ¶ added in v1.14.0
type ProjectStructure struct {
// contains filtered or unexported fields
}
ProjectStructure describes a directory containing source code
func (*ProjectStructure) UsesMaven ¶ added in v1.14.0
func (projectStructure *ProjectStructure) UsesMaven() bool
UsesMaven returns `true` if the project structure directory contains a pom.xml file, false otherwise
func (*ProjectStructure) UsesMta ¶ added in v1.14.0
func (projectStructure *ProjectStructure) UsesMta() bool
UsesMta returns `true` if the project structure directory contains typical files for mta projects (mta.yaml, mta.yml), `false` otherwise
func (*ProjectStructure) UsesNpm ¶ added in v1.14.0
func (projectStructure *ProjectStructure) UsesNpm() bool
UsesNpm returns `true` if the project structure directory contains a package.json file, false otherwise