How to use gitAddCommitAndPush method of commands Package

Best Testkube code snippet using commands.gitAddCommitAndPush

release.go

Source:release.go Github

copy

Full Screen

...41 err = helm.UpdateValuesImageTag(valuesPath, nextAppVersion)42 ui.PrintOnError("Updating values image tag", err)43 err = helm.Write(path, chart)44 ui.ExitOnError("saving "+appName+" Chart.yaml file", err)45 gitAddCommitAndPush(dir, "updating "+appName+" chart version to "+nextAppVersion)46 // Checkout main testkube chart and bump main chart with next version47 dir, err = git.PartialCheckout("https://github.com/kubeshop/helm-charts.git", "testkube", "main", "", "")48 ui.ExitOnError("checking out testkube chart to "+dir, err)49 chart, path, err = helm.GetChart(dir)50 ui.ExitOnError("getting chart path", err)51 testkubeVersion := helm.GetVersion(chart)52 nextTestkubeVersion := getNextVersion(dev, testkubeVersion, version.Patch)53 ui.Info("Generated new testkube version", nextTestkubeVersion)54 // bump main testkube chart version55 err = helm.SaveString(&chart, "version", nextTestkubeVersion)56 ui.PrintOnError("Saving version string", err)57 err = helm.SaveString(&chart, "appVersion", nextTestkubeVersion)58 ui.PrintOnError("Saving appVersion string", err)59 // set app dependency version60 _, err = helm.UpdateDependencyVersion(chart, appName, nextAppVersion)61 ui.PrintOnError("Updating dependency version", err)62 err = helm.Write(path, chart)63 ui.ExitOnError("saving testkube Chart.yaml file", err)64 gitAddCommitAndPush(dir, "updating testkube to "+nextTestkubeVersion+" and "+appName+" to "+nextAppVersion)65 tab := ui.NewArrayTable([][]string{66 {appName + " previous version", currentAppVersion},67 {"testkube previous version", testkubeVersion},68 {appName + " next version", nextAppVersion},69 {"testkube next version", nextTestkubeVersion},70 })71 ui.NL()72 ui.Table(tab, os.Stdout)73 ui.Completed("Release completed - Helm charts: ", "testkube:"+nextTestkubeVersion, appName+":"+nextAppVersion)74 ui.NL()75 },76 }77 cmd.Flags().StringVarP(&appName, "app", "a", "testkube-api", "app name chart")78 cmd.Flags().StringVarP(&kind, "kind", "k", "patch", "version kind one of (patch|minor|major")79 cmd.Flags().BoolVarP(&verbose, "verbose", "", false, "verbosity level")80 cmd.Flags().BoolVarP(&dev, "dev", "d", false, "generate beta increment")81 return cmd82}83func pushVersionTag(nextAppVersion string) {84 // set new tag and push85 // add "v" for go compatibility (Semver don't have it as prefix)86 _, err := process.Execute("git", "tag", "v"+nextAppVersion)87 ui.ExitOnError("tagging new version", err)88 _, err = process.Execute("git", "push", "--tags")89 ui.ExitOnError("pushing new version to repository", err)90}91func getCurrentAppVersion() string {92 // get current app version based on tags93 out, err := process.Execute("git", "tag")94 ui.ExitOnError("getting tags", err)95 versions := strings.Split(string(out), "\n")96 currentAppVersion := version.GetNewest(versions)97 ui.Info("Current version based on tags", currentAppVersion)98 return currentAppVersion99}100func getNextVersion(dev bool, currentVersion string, kind string) (nextVersion string) {101 var err error102 switch true {103 case dev && version.IsPrerelease(currentVersion):104 nextVersion, err = version.NextPrerelease(currentVersion)105 case dev && !version.IsPrerelease(currentVersion):106 nextVersion, err = version.Next(currentVersion, version.Patch)107 // semver sorting prerelease parts as strings108 nextVersion = nextVersion + "-beta001"109 default:110 nextVersion, err = version.Next(currentVersion, kind)111 }112 ui.ExitOnError("getting next version for "+kind, err)113 return114}115func gitAddCommitAndPush(dir, message string) {116 _, err := process.ExecuteInDir(dir, "git", "add", "charts/")117 ui.ExitOnError("adding changes in charts directory (+"+dir+"+)", err)118 _, err = process.ExecuteInDir(dir, "git", "commit", "-m", message)119 ui.ExitOnError(message, err)120 _, err = process.ExecuteInDir(dir, "git", "push")121 ui.ExitOnError("pushing changes", err)122}...

Full Screen

Full Screen

gitAddCommitAndPush

Using AI Code Generation

copy

Full Screen

1import (2func main() {3 fmt.Println("Hello, playground")4 fmt.Println(commands.GitAddCommitAndPush("test", "test"))5}6import (7func main() {8 fmt.Println("Hello, playground")9 fmt.Println(commands.GitAddCommitAndPush("test", "test"))10}11./1.go:11: cannot use "github.com/ankursoni/commands".GitAddCommitAndPush("test", "test") (type error) as type string in argument to fmt.Println12./2.go:11: cannot use "github.com/ankursoni/commands".GitAddCommitAndPush("test", "test") (type error) as type string in argument to fmt.Println

Full Screen

Full Screen

gitAddCommitAndPush

Using AI Code Generation

copy

Full Screen

1import (2func main() {3 wd, err := os.Getwd()4 if err != nil {5 fmt.Println(err)6 }7 err = commands.GitAddCommitAndPush(wd, "commit message")8 if err != nil {9 fmt.Println(err)10 }11}12import (13func main() {14 wd, err := os.Getwd()15 if err != nil {16 fmt.Println(err)17 }18 err = commands.GitAddCommitAndPush(wd, "commit message")19 if err != nil {20 fmt.Println(err)21 }22}23import (24func main() {25 wd, err := os.Getwd()26 if err != nil {27 fmt.Println(err)28 }29 err = commands.GitAddCommitAndPush(wd, "commit message")30 if err != nil {31 fmt.Println(err)32 }33}34import (35func main() {36 wd, err := os.Getwd()37 if err != nil {38 fmt.Println(err)39 }40 err = commands.GitAddCommitAndPush(wd, "commit message")41 if err != nil {42 fmt.Println(err)43 }44}45import (46func main() {

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful