• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

mesosphere / kommander-applications / 12834334794

17 Jan 2025 06:00PM UTC coverage: 51.703%. Remained the same
12834334794

Pull #3033

github

web-flow
Merge 74bfdecb6 into b50a65ebd
Pull Request #3033: feat: add optional overrides for knative

167 of 323 relevant lines covered (51.7%)

222.28 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/hack/release/cmd/postrelease/postrelease.go
1
package postrelease
2

3
import (
4
        "fmt"
5
        "log"
6
        "os"
7

8
        "github.com/Masterminds/semver/v3"
9
        "github.com/mesosphere/kommander-applications/hack/release/pkg/appversion"
10
        "github.com/mesosphere/kommander-applications/hack/release/pkg/chartversion"
11
        "github.com/mesosphere/kommander-applications/hack/release/pkg/extraimages"
12
        "github.com/mesosphere/kommander-applications/hack/release/pkg/upgradematrix"
13
        "github.com/spf13/cobra"
14
)
15

16
var Cmd *cobra.Command //nolint:gochecknoglobals // Cobra commands are global.
17

18
const (
19
        versionFlagName = "version"
20
        repoFlagName    = "repo"
21
)
22

23
func init() { //nolint:gochecknoinits // Initializing cobra application.
×
24
        Cmd = &cobra.Command{
×
25
                Use:   "post-release",
×
26
                Short: "Handles post-release tasks for kommander-applications (i.e. updating Kommander chart versions)",
×
27
                Args:  cobra.MaximumNArgs(0),
×
28
                RunE: func(cmd *cobra.Command, args []string) error {
×
29
                        chartVersion, err := semver.NewVersion(Cmd.Flag(versionFlagName).Value.String())
×
30
                        if err != nil {
×
31
                                return fmt.Errorf("cannot parse given version: %w", err)
×
32
                        }
×
33
                        kommanderApplicationsRepo := Cmd.Flag(repoFlagName).Value.String()
×
34
                        if _, err := os.Stat(kommanderApplicationsRepo); os.IsNotExist(err) {
×
35
                                return err
×
36
                        }
×
37

38
                        if err := chartversion.UpdateChartVersions(kommanderApplicationsRepo, chartVersion.Original()); err != nil {
×
39
                                return err
×
40
                        }
×
41

42
                        if err := appversion.SetKommanderAppsVersion(
×
43
                                cmd.Context(),
×
44
                                kommanderApplicationsRepo,
×
45
                                chartVersionToAppVersion(chartVersion),
×
46
                        ); err != nil {
×
47
                                return err
×
48
                        }
×
49

50
                        if _, err := appversion.ReplaceContent(
×
51
                                cmd.Context(),
×
52
                                kommanderApplicationsRepo,
×
53
                                chartVersionToAppVersion(chartVersion),
×
54
                        ); err != nil {
×
55
                                return err
×
56
                        }
×
57

58
                        fmt.Fprintf(cmd.OutOrStdout(), "Updated Kommander chart version to %s", chartVersion)
×
59

×
60
                        if err := upgradematrix.UpdateUpgradeMatrix(
×
61
                                cmd.Context(),
×
62
                                kommanderApplicationsRepo,
×
63
                        ); err != nil {
×
64
                                return err
×
65
                        }
×
66

67
                        if err := extraimages.UpdateExtraImagesVersions(kommanderApplicationsRepo, chartVersion.Original()); err != nil {
×
68
                                return err
×
69
                        }
×
70

71
                        return nil
×
72
                },
73
        }
74
        Cmd.Flags().String(versionFlagName, "", "the new Kommander chart version")
×
75
        Cmd.Flags().String(repoFlagName, "", "the path to the local kommander-applications repository to modify")
×
76

×
77
        err := Cmd.MarkFlagRequired(versionFlagName)
×
78
        if err != nil {
×
79
                log.Fatal(err)
×
80
        }
×
81

82
        err = Cmd.MarkFlagRequired(repoFlagName)
×
83
        if err != nil {
×
84
                log.Fatal(err)
×
85
        }
×
86
}
87

88
func chartVersionToAppVersion(ver *semver.Version) string {
×
89
        return fmt.Sprintf("0.%d.%d", ver.Minor(), ver.Patch())
×
90
}
×
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc