Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package arkade for openSUSE:Factory checked in at 2023-04-17 18:15:32 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/arkade (Old) and /work/SRC/openSUSE:Factory/.arkade.new.2023 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "arkade" Mon Apr 17 18:15:32 2023 rev:7 rq:1079948 version:0.9.13 Changes: -------- --- /work/SRC/openSUSE:Factory/arkade/arkade.changes 2023-04-13 14:26:28.321719083 +0200 +++ /work/SRC/openSUSE:Factory/.arkade.new.2023/arkade.changes 2023-04-17 18:15:33.234225405 +0200 @@ -1,0 +2,23 @@ +Mon Apr 17 13:31:17 UTC 2023 - ka...@b1-systems.de + +- Update to version 0.9.13: + * Update version for metrics-server + * bump linkerd + * Add kyverno CLI + * Remove ioutil usage + * Fix command info + * Remove background from image using Gimp + * Clarify how Derek works with DCO sign-off messages + +------------------------------------------------------------------- +Mon Apr 17 13:30:06 UTC 2023 - ka...@b1-systems.de + +- Update to version 0.9.12: + * Fix test for kubens + * Update kubectl, terraform and remove version for kubens + * Bump github.com/otiai10/copy from 1.9.0 to 1.10.0 + * enable support for seaweedfs + * Update ISSUE_TEMPLATE.md + * Bump golang.org/x/crypto from 0.7.0 to 0.8.0 + +------------------------------------------------------------------- Old: ---- arkade-0.9.11.obscpio New: ---- arkade-0.9.13.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ arkade.spec ++++++ --- /var/tmp/diff_new_pack.iAJBIQ/_old 2023-04-17 18:15:34.246231312 +0200 +++ /var/tmp/diff_new_pack.iAJBIQ/_new 2023-04-17 18:15:34.250231336 +0200 @@ -19,7 +19,7 @@ %define __arch_install_post export NO_BRP_STRIP_DEBUG=true Name: arkade -Version: 0.9.11 +Version: 0.9.13 Release: 0 Summary: Open Source Kubernetes Marketplace License: Apache-2.0 ++++++ _service ++++++ --- /var/tmp/diff_new_pack.iAJBIQ/_old 2023-04-17 18:15:34.290231569 +0200 +++ /var/tmp/diff_new_pack.iAJBIQ/_new 2023-04-17 18:15:34.294231592 +0200 @@ -3,7 +3,7 @@ <param name="url">https://github.com/alexellis/arkade</param> <param name="scm">git</param> <param name="exclude">.git</param> - <param name="revision">0.9.11</param> + <param name="revision">0.9.13</param> <param name="versionformat">@PARENT_TAG@</param> <param name="changesgenerate">enable</param> <param name="versionrewrite-pattern">v(.*)</param> ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.iAJBIQ/_old 2023-04-17 18:15:34.314231709 +0200 +++ /var/tmp/diff_new_pack.iAJBIQ/_new 2023-04-17 18:15:34.318231732 +0200 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/alexellis/arkade</param> - <param name="changesrevision">4f5998546a3b7b42c931ec89b17acfecfd193d21</param></service></servicedata> + <param name="changesrevision">0d507d0f72224b3b1fa9451d144dbe8c64749b75</param></service></servicedata> (No newline at EOF) ++++++ arkade-0.9.11.obscpio -> arkade-0.9.13.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/arkade-0.9.11/.github/ISSUE_TEMPLATE.md new/arkade-0.9.13/.github/ISSUE_TEMPLATE.md --- old/arkade-0.9.11/.github/ISSUE_TEMPLATE.md 2023-04-09 14:56:08.000000000 +0200 +++ new/arkade-0.9.13/.github/ISSUE_TEMPLATE.md 2023-04-17 14:55:46.000000000 +0200 @@ -32,6 +32,8 @@ https://somsubhra.github.io/github-release-stats/ +If approved, are you willing to submit a pull request for this? + ## Your Environment * What Kubernetes distribution are you using? diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/arkade-0.9.11/CONTRIBUTING.md new/arkade-0.9.13/CONTRIBUTING.md --- old/arkade-0.9.11/CONTRIBUTING.md 2023-04-09 14:56:08.000000000 +0200 +++ new/arkade-0.9.13/CONTRIBUTING.md 2023-04-17 14:55:46.000000000 +0200 @@ -32,7 +32,9 @@ git commit -s / --signoff ``` -This is not cryptography, does not require any keys and does not take any longer than typing in the above three +We do not expect to contact you in relation to your contributions, however a real, genuine email address must be used which is contactable. A no-reply email address will result in the DCO being marked as invalid by Derek, the DCO bot we use. + +This is not cryptography (GPG commit signing), does not require any keys and does not take any longer than typing in the above three commands. ### Recommended settings for apps for `arkade install` diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/arkade-0.9.11/README.md new/arkade-0.9.13/README.md --- old/arkade-0.9.11/README.md 2023-04-09 14:56:08.000000000 +0200 +++ new/arkade-0.9.13/README.md 2023-04-17 14:55:46.000000000 +0200 @@ -763,6 +763,7 @@ | [kubeval](https://github.com/instrumenta/kubeval) | Validate your Kubernetes configuration files, supports multiple Kubernetes versions | | [kumactl](https://github.com/kumahq/kuma) | kumactl is a CLI to interact with Kuma and its data | | [kustomize](https://github.com/kubernetes-sigs/kustomize) | Customization of kubernetes YAML configurations | +| [kyverno](https://github.com/kyverno/kyverno) | Apply and test Kyverno policies outside a cluster | | [lazygit](https://github.com/jesseduffield/lazygit) | A simple terminal UI for git commands. | | [linkerd2](https://github.com/linkerd/linkerd2) | Ultralight, security-first service mesh for Kubernetes. | | [mc](https://github.com/minio/mc) | MinIO Client is a replacement for ls, cp, mkdir, diff and rsync commands for filesystems and object storage. | @@ -788,6 +789,7 @@ | [rpk](https://github.com/redpanda-data/redpanda) | Kafka compatible streaming platform for mission critical workloads. | | [run-job](https://github.com/alexellis/run-job) | Run a Kubernetes Job and get the logs when it's done. | | [scaleway-cli](https://github.com/scaleway/scaleway-cli) | Scaleway CLI is a tool to help you pilot your Scaleway infrastructure directly from your terminal. | +| [seaweedfs](https://github.com/seaweedfs/seaweedfs) | SeaweedFS is a fast distributed storage system for blobs, objects, files, and data lake, for billions of files! | | [sops](https://github.com/mozilla/sops) | Simple and flexible tool for managing secrets | | [stern](https://github.com/stern/stern) | Multi pod and container log tailing for Kubernetes. | | [syft](https://github.com/anchore/syft) | CLI tool and library for generating a Software Bill of Materials from container images and filesystems | diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/arkade-0.9.11/cmd/apps/linkerd_app.go new/arkade-0.9.13/cmd/apps/linkerd_app.go --- old/arkade-0.9.11/cmd/apps/linkerd_app.go 2023-04-09 14:56:08.000000000 +0200 +++ new/arkade-0.9.13/cmd/apps/linkerd_app.go 2023-04-17 14:55:46.000000000 +0200 @@ -22,7 +22,7 @@ "github.com/spf13/cobra" ) -var linkerdVersion = "stable-2.11.1" +var linkerdVersion = "stable-2.13.0" func MakeInstallLinkerd() *cobra.Command { var linkerd = &cobra.Command{ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/arkade-0.9.11/cmd/apps/metricsserver_app.go new/arkade-0.9.13/cmd/apps/metricsserver_app.go --- old/arkade-0.9.11/cmd/apps/metricsserver_app.go 2023-04-09 14:56:08.000000000 +0200 +++ new/arkade-0.9.13/cmd/apps/metricsserver_app.go 2023-04-17 14:55:46.000000000 +0200 @@ -26,7 +26,7 @@ metricsServer.Flags().StringP("namespace", "n", "kube-system", "The namespace used for installation") metricsServer.Flags().StringArray("set", []string{}, "Use custom flags or override existing flags \n(example --set persistence.enabled=true)") - metricsServer.Flags().StringP("tag", "t", "v0.6.1", "The tag or version of the metrics-server to install") + metricsServer.Flags().StringP("tag", "t", "v0.6.3", "The tag or version of the metrics-server to install") metricsServer.Flags().Bool("update-repo", true, "Update the helm repo") metricsServer.RunE = func(command *cobra.Command, args []string) error { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/arkade-0.9.11/cmd/system/actions_runner.go new/arkade-0.9.13/cmd/system/actions_runner.go --- old/arkade-0.9.11/cmd/system/actions_runner.go 2023-04-09 14:56:08.000000000 +0200 +++ new/arkade-0.9.13/cmd/system/actions_runner.go 2023-04-17 14:55:46.000000000 +0200 @@ -28,9 +28,8 @@ command.Flags().StringP("version", "v", "", "The version or leave blank to determine the latest available version") command.Flags().String("path", "$HOME/actions-runner/", "Installation path, where a actions-runner subfolder will be created") - command.Flags().String("arch", "", "Leave blank for automatic determination") - command.Flags().Bool("progress", true, "Show download progress") + command.Flags().String("arch", "", "CPU architecture i.e. amd64") command.PreRunE = func(cmd *cobra.Command, args []string) error { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/arkade-0.9.11/cmd/system/containerd.go new/arkade-0.9.13/cmd/system/containerd.go --- old/arkade-0.9.11/cmd/system/containerd.go 2023-04-09 14:56:08.000000000 +0200 +++ new/arkade-0.9.13/cmd/system/containerd.go 2023-04-17 14:55:46.000000000 +0200 @@ -6,15 +6,16 @@ import ( "bytes" "fmt" + "io" + "net/http" + "os" + "strings" + "github.com/alexellis/arkade/pkg/archive" "github.com/alexellis/arkade/pkg/env" "github.com/alexellis/arkade/pkg/get" execute "github.com/alexellis/go-execute/pkg/v1" "github.com/spf13/cobra" - "io/ioutil" - "net/http" - "os" - "strings" ) func MakeInstallContainerd() *cobra.Command { @@ -28,9 +29,9 @@ cmd.Flags().StringP("version", "v", "", "Version of the containerd binary pack, leave blank for latest") cmd.Flags().String("path", "/usr/local/bin", "Install path, where the containerd binaries will installed") - cmd.Flags().String("arch", "", "Set system download arch") cmd.Flags().Bool("systemd", true, "Add and enable systemd service for containerd") cmd.Flags().Bool("progress", true, "Show download progress") + cmd.Flags().String("arch", "", "CPU architecture i.e. amd64") cmd.PreRunE = func(cmd *cobra.Command, args []string) error { _, err := cmd.Flags().GetString("path") @@ -148,7 +149,7 @@ return err } - content, err := ioutil.ReadAll(response.Body) + content, err := io.ReadAll(response.Body) if err != nil { return err } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/arkade-0.9.11/cmd/system/node.go new/arkade-0.9.13/cmd/system/node.go --- old/arkade-0.9.11/cmd/system/node.go 2023-04-09 14:56:08.000000000 +0200 +++ new/arkade-0.9.13/cmd/system/node.go 2023-04-17 14:55:46.000000000 +0200 @@ -51,11 +51,11 @@ SilenceUsage: true, } - command.Flags().StringP("version", "v", "latest", "The version for Node.js to install, either a specific version, 'latest' or 'latest-CODENAME' (eg: latest-gallium)") + command.Flags().StringP("version", "v", "latest", "The version for Node.js to install, either a specific version, 'latest' or 'latest-CODENAME' (eg: latest-hydrogen)") command.Flags().StringP("path", "p", "/usr/local/", "Installation path") - command.Flags().StringP("channel", "c", "release", "The channel to install from, can be 'releases' or 'nightly',") + command.Flags().StringP("channel", "c", "release", "The channel to install from, can be 'release' or 'nightly',") command.Flags().Bool("progress", true, "Show download progress") - command.Flags().String("arch", "", "CPU architecture for Prometheus, eg: amd64") + command.Flags().String("arch", "", "CPU architecture i.e. amd64") command.RunE = func(cmd *cobra.Command, args []string) error { installPath, _ := cmd.Flags().GetString("path") @@ -63,7 +63,7 @@ progress, _ := cmd.Flags().GetBool("progress") channel, _ := cmd.Flags().GetString("channel") - fmt.Printf("Installing Node.js to %s\n", installPath) + fmt.Printf("Installing Node.js to: %s\n", installPath) arch, osVer := env.GetClientArch() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/arkade-0.9.11/cmd/system/prometheus.go new/arkade-0.9.13/cmd/system/prometheus.go --- old/arkade-0.9.11/cmd/system/prometheus.go 2023-04-09 14:56:08.000000000 +0200 +++ new/arkade-0.9.13/cmd/system/prometheus.go 2023-04-17 14:55:46.000000000 +0200 @@ -24,7 +24,7 @@ command.Flags().StringP("version", "v", "latest", "The version for Prometheus to install") command.Flags().StringP("path", "p", "/usr/local/bin", "Installation path, where a go subfolder will be created") command.Flags().Bool("progress", true, "Show download progress") - command.Flags().String("arch", "", "CPU architecture for Prometheus, eg: amd64") + command.Flags().String("arch", "", "CPU architecture i.e. amd64") command.RunE = func(cmd *cobra.Command, args []string) error { installPath, _ := cmd.Flags().GetString("path") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/arkade-0.9.11/cmd/system/registry.go new/arkade-0.9.13/cmd/system/registry.go --- old/arkade-0.9.11/cmd/system/registry.go 2023-04-09 14:56:08.000000000 +0200 +++ new/arkade-0.9.13/cmd/system/registry.go 2023-04-17 14:55:46.000000000 +0200 @@ -22,8 +22,8 @@ cmd.Flags().StringP("version", "v", "", "Version of the registry binary pack, leave blank for latest") cmd.Flags().String("path", "/usr/local/bin", "Install path, where the distribution binaries will installed") - cmd.Flags().String("arch", "", "Set system download arch") cmd.Flags().Bool("progress", true, "Show download progress") + cmd.Flags().String("arch", "", "CPU architecture i.e. amd64") cmd.PreRunE = func(cmd *cobra.Command, args []string) error { _, err := cmd.Flags().GetString("path") Binary files old/arkade-0.9.11/docs/arkade-logo-sm.png and new/arkade-0.9.13/docs/arkade-logo-sm.png differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/arkade-0.9.11/go.mod new/arkade-0.9.13/go.mod --- old/arkade-0.9.11/go.mod 2023-04-09 14:56:08.000000000 +0200 +++ new/arkade-0.9.13/go.mod 2023-04-17 14:55:46.000000000 +0200 @@ -10,11 +10,11 @@ github.com/google/go-containerregistry v0.14.0 github.com/morikuni/aec v1.0.0 github.com/olekukonko/tablewriter v0.0.5 - github.com/otiai10/copy v1.9.0 + github.com/otiai10/copy v1.10.0 github.com/pkg/errors v0.9.1 github.com/sethvargo/go-password v0.2.0 github.com/spf13/cobra v1.7.0 - golang.org/x/crypto v0.7.0 + golang.org/x/crypto v0.8.0 golang.org/x/mod v0.10.0 gopkg.in/yaml.v2 v2.4.0 ) @@ -41,5 +41,5 @@ github.com/spf13/pflag v1.0.5 // indirect github.com/vbatts/tar-split v0.11.2 // indirect golang.org/x/sync v0.1.0 // indirect - golang.org/x/sys v0.6.0 // indirect + golang.org/x/sys v0.7.0 // indirect ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/arkade-0.9.11/go.sum new/arkade-0.9.13/go.sum --- old/arkade-0.9.11/go.sum 2023-04-09 14:56:08.000000000 +0200 +++ new/arkade-0.9.13/go.sum 2023-04-17 14:55:46.000000000 +0200 @@ -56,13 +56,9 @@ github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= github.com/opencontainers/image-spec v1.1.0-rc2 h1:2zx/Stx4Wc5pIPDvIxHXvXtQFW/7XWJGmnM7r3wg034= github.com/opencontainers/image-spec v1.1.0-rc2/go.mod h1:3OVijpioIKYWTqjiG0zfF6wvoJ4fAXGbjdZuI2NgsRQ= -github.com/otiai10/copy v1.9.0 h1:7KFNiCgZ91Ru4qW4CWPf/7jqtxLagGRmIxWldPP9VY4= -github.com/otiai10/copy v1.9.0/go.mod h1:hsfX19wcn0UWIHUQ3/4fHuehhk2UyArQ9dVFAn3FczI= -github.com/otiai10/curr v0.0.0-20150429015615-9b4961190c95/go.mod h1:9qAhocn7zKJG+0mI8eUu6xqkFDYS2kb2saOteoSB3cE= -github.com/otiai10/curr v1.0.0/go.mod h1:LskTG5wDwr8Rs+nNQ+1LlxRjAtTZZjtJW4rMXl6j4vs= -github.com/otiai10/mint v1.3.0/go.mod h1:F5AjcsTsWUqX+Na9fpHb52P8pcRX2CI6A3ctIT91xUo= -github.com/otiai10/mint v1.4.0 h1:umwcf7gbpEwf7WFzqmWwSv0CzbeMsae2u9ZvpP8j2q4= -github.com/otiai10/mint v1.4.0/go.mod h1:gifjb2MYOoULtKLqUAEILUG/9KONW6f7YsJ6vQLTlFI= +github.com/otiai10/copy v1.10.0 h1:znyI7l134wNg/wDktoVQPxPkgvhDfGCYUasey+h0rDQ= +github.com/otiai10/copy v1.10.0/go.mod h1:rSaLseMUsZFFbsFGc7wCJnnkTAvdc5L6VWxPE4308Ww= +github.com/otiai10/mint v1.5.1 h1:XaPLeE+9vGbuyEHem1JNk3bYc7KKqyI/na0/mLd/Kks= github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= @@ -91,8 +87,8 @@ github.com/urfave/cli v1.22.4/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= github.com/vbatts/tar-split v0.11.2 h1:Via6XqJr0hceW4wff3QRzD5gAk/tatMw/4ZA7cTlIME= github.com/vbatts/tar-split v0.11.2/go.mod h1:vV3ZuO2yWSVsz+pfFzDG/upWH1JhjOiEaWq6kXyQ3VI= -golang.org/x/crypto v0.7.0 h1:AvwMYaRytfdeVt3u6mLaxYtErKYjxA2OXjJ1HHq6t3A= -golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU= +golang.org/x/crypto v0.8.0 h1:pd9TJtTueMTVQXzk8E2XESSMQDj/U7OUu0PqJqPXQjQ= +golang.org/x/crypto v0.8.0/go.mod h1:mRqEX+O9/h5TFCrQhkgjo2yKi0yYA+9ecGkdQoHrywE= golang.org/x/mod v0.10.0 h1:lFO9qtOdlre5W1jxS3r/4szv2/6iXxScdzjoBMXNhYk= golang.org/x/mod v0.10.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o= @@ -100,8 +96,8 @@ golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.6.0 h1:MVltZSvRTcU2ljQOhs94SXPftV6DCNnZViHeQps87pQ= -golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.7.0 h1:3jlCCIQZPdOYu1h8BkNvLz8Kgwtae2cagcG/VamtZRU= +golang.org/x/sys v0.7.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/arkade-0.9.11/pkg/get/get.go new/arkade-0.9.13/pkg/get/get.go --- old/arkade-0.9.11/pkg/get/get.go 2023-04-09 14:56:08.000000000 +0200 +++ new/arkade-0.9.13/pkg/get/get.go 2023-04-17 14:55:46.000000000 +0200 @@ -5,7 +5,7 @@ "crypto/tls" "errors" "fmt" - "io/ioutil" + "io" "log" "net" "net/http" @@ -123,7 +123,7 @@ var body string if res.Body != nil { - b, _ := ioutil.ReadAll(res.Body) + b, _ := io.ReadAll(res.Body) body = string(b) } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/arkade-0.9.11/pkg/get/get_test.go new/arkade-0.9.13/pkg/get/get_test.go --- old/arkade-0.9.11/pkg/get/get_test.go 2023-04-09 14:56:08.000000000 +0200 +++ new/arkade-0.9.13/pkg/get/get_test.go 2023-04-17 14:55:46.000000000 +0200 @@ -129,7 +129,7 @@ t.Run(tt.localToolsStore[0].Name, func(t *testing.T) { msg, _ := PostInstallationMsg(tt.dlMode, tt.localToolsStore) - got := fmt.Sprintf("%s", msg) + got := string(msg) if got != tt.want { t.Errorf("got %q, want %q", got, tt.want) @@ -140,7 +140,7 @@ func Test_GetDownloadURLs(t *testing.T) { tools := MakeTools() - kubectlVersion := "v1.24.2" + kubectlVersion := "v1.26.2" tests := []struct { name string @@ -193,8 +193,8 @@ }, { name: "terraform", - url: "https://releases.hashicorp.com/terraform/1.1.7/terraform_1.1.7_linux_amd64.zip", - version: "1.1.7", + url: "https://releases.hashicorp.com/terraform/1.3.9/terraform_1.3.9_linux_amd64.zip", + version: "1.3.9", os: "linux", arch: "x86_64", }, @@ -224,13 +224,7 @@ tools := MakeTools() name := "arkade" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ {os: "mingw64_nt-10.0-18362", @@ -277,13 +271,7 @@ tools := MakeTools() name := "run-job" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ {os: "mingw64_nt-10.0-18362", @@ -330,13 +318,7 @@ tools := MakeTools() name := "actuated-cli" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ {os: "mingw64_nt-10.0-18362", @@ -371,13 +353,7 @@ tools := MakeTools() name := "mixctl" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ {os: "mingw64_nt-10.0-18362", @@ -424,13 +400,7 @@ tools := MakeTools() name := "kubectl" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ {os: "darwin", @@ -465,13 +435,7 @@ func Test_DownloadKubectx(t *testing.T) { tools := MakeTools() name := "kubectx" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) got, err := tool.GetURL("linux", arch64bit, "v0.9.4", false) if err != nil { @@ -486,19 +450,13 @@ func Test_DownloadKubens(t *testing.T) { tools := MakeTools() name := "kubens" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) got, err := tool.GetURL("linux", arch64bit, tool.Version, false) if err != nil { t.Fatal(err) } - want := "https://github.com/ahmetb/kubectx/releases/download/v0.9.1/kubens" + want := "https://github.com/ahmetb/kubectx/releases/download/v0.9.4/kubens" if got != want { t.Fatalf("want: %s, got: %s", want, got) } @@ -508,13 +466,7 @@ tools := MakeTools() name := "kubeseal" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ {os: "mingw64_nt-10.0-18362", @@ -557,13 +509,7 @@ tools := MakeTools() name := "kind" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ {os: "mingw64_nt-10.0-18362", @@ -606,13 +552,7 @@ tools := MakeTools() name := "k3d" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ {os: "mingw64_nt-10.0-18362", @@ -651,13 +591,7 @@ tools := MakeTools() name := "k3s" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ {os: "linux", @@ -684,13 +618,7 @@ tools := MakeTools() name := "devspace" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ {os: "mingw64_nt-10.0-18362", @@ -729,13 +657,7 @@ tools := MakeTools() name := "tilt" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ {os: "mingw64_nt-10.0-18362", @@ -774,13 +696,7 @@ tools := MakeTools() name := "k3sup" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ {os: "mingw64_nt-10.0-18362", @@ -818,13 +734,7 @@ tools := MakeTools() name := "autok3s" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ {os: "mingw64_nt-10.0-18362", @@ -863,13 +773,7 @@ tools := MakeTools() name := "inletsctl" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ {os: "mingw64_nt-10.0-18362", @@ -916,13 +820,7 @@ tools := MakeTools() name := "kubebuilder" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ {os: "darwin", @@ -954,13 +852,7 @@ tools := MakeTools() name := "kustomize" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) ver := "4.4.1" @@ -999,13 +891,7 @@ const toolVersion = "v0.11.0" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ {os: "mingw64_nt-10.0-18362", @@ -1304,41 +1190,41 @@ tool := getTool(name, tools) - const toolVersion = "1.1.7" + const toolVersion = "1.3.9" tests := []test{ { os: "mingw64_nt-10.0-18362", arch: arch64bit, version: toolVersion, - url: `https://releases.hashicorp.com/terraform/1.1.7/terraform_1.1.7_windows_amd64.zip`, + url: `https://releases.hashicorp.com/terraform/1.3.9/terraform_1.3.9_windows_amd64.zip`, }, { - url: "https://releases.hashicorp.com/terraform/1.1.7/terraform_1.1.7_linux_amd64.zip", + url: "https://releases.hashicorp.com/terraform/1.3.9/terraform_1.3.9_linux_amd64.zip", version: toolVersion, os: "linux", arch: arch64bit, }, { - url: "https://releases.hashicorp.com/terraform/1.1.7/terraform_1.1.7_linux_arm.zip", + url: "https://releases.hashicorp.com/terraform/1.3.9/terraform_1.3.9_linux_arm.zip", version: toolVersion, os: "linux", arch: archARM7, }, { - url: "https://releases.hashicorp.com/terraform/1.1.7/terraform_1.1.7_linux_arm64.zip", + url: "https://releases.hashicorp.com/terraform/1.3.9/terraform_1.3.9_linux_arm64.zip", version: toolVersion, os: "linux", arch: archARM64, }, { - url: "https://releases.hashicorp.com/terraform/1.1.7/terraform_1.1.7_darwin_arm64.zip", + url: "https://releases.hashicorp.com/terraform/1.3.9/terraform_1.3.9_darwin_arm64.zip", version: toolVersion, os: "darwin", arch: archDarwinARM64, }, { - url: "https://releases.hashicorp.com/terraform/1.1.7/terraform_1.1.7_darwin_amd64.zip", + url: "https://releases.hashicorp.com/terraform/1.3.9/terraform_1.3.9_darwin_amd64.zip", version: toolVersion, os: "darwin", arch: arch64bit, @@ -1862,13 +1748,7 @@ tools := MakeTools() name := "linkerd2" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ {os: "mingw64_nt-10.0-18362", @@ -1904,13 +1784,7 @@ name := "argocd" version := "v2.4.14" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ { @@ -1953,13 +1827,7 @@ tools := MakeTools() name := "nerdctl" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ {os: "linux", @@ -3411,13 +3279,7 @@ tools := MakeTools() name := "kube-bench" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ { @@ -3449,13 +3311,7 @@ tools := MakeTools() name := "clusterctl" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ { @@ -3499,13 +3355,7 @@ tools := MakeTools() name := "vcluster" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ { @@ -3556,13 +3406,7 @@ name := "hostctl" version := "v1.1.3" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ { @@ -3719,13 +3563,7 @@ name := "sops" version := "v3.7.2" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) tests := []test{ { @@ -3775,13 +3613,8 @@ tools := MakeTools() name := "dagger" - var tool *Tool - for _, target := range tools { - if name == target.Name { - tool = &target - break - } - } + tool := getTool(name, tools) + version := "v0.2.4" tests := []test{ { @@ -6027,6 +5860,116 @@ version: toolVersion, url: `https://github.com/stefanprodan/timoni/releases/download/v0.3.0/timoni_0.3.0_darwin_arm64.tar.gz`, }, + { + os: "linux", + arch: archARM7, + version: toolVersion, + url: `https://github.com/stefanprodan/timoni/releases/download/v0.3.0/timoni_0.3.0_linux_armv7l.tar.gz`, + }, + } + + for _, tc := range tests { + got, err := tool.GetURL(tc.os, tc.arch, tc.version, false) + if err != nil { + t.Fatal(err) + } + if got != tc.url { + t.Errorf("want: %s, got: %s", tc.url, got) + } + } +} + +func Test_DownloadSeaweedFS(t *testing.T) { + tools := MakeTools() + name := "seaweedfs" + + tool := getTool(name, tools) + + const toolVersion = "3.45" + + tests := []test{ + { + os: "linux", + arch: arch64bit, + version: toolVersion, + url: `https://github.com/seaweedfs/seaweedfs/releases/download/3.45/linux_amd64.tar.gz`, + }, + { + os: "darwin", + arch: arch64bit, + version: toolVersion, + url: `https://github.com/seaweedfs/seaweedfs/releases/download/3.45/darwin_amd64.tar.gz`, + }, + { + os: "linux", + arch: archARM64, + version: toolVersion, + url: `https://github.com/seaweedfs/seaweedfs/releases/download/3.45/linux_arm64.tar.gz`, + }, + { + os: "darwin", + arch: archDarwinARM64, + version: toolVersion, + url: `https://github.com/seaweedfs/seaweedfs/releases/download/3.45/darwin_arm64.tar.gz`, + }, + { + os: "linux", + arch: archARM7, + version: toolVersion, + url: `https://github.com/seaweedfs/seaweedfs/releases/download/3.45/linux_arm.tar.gz`, + }, + } + + for _, tc := range tests { + got, err := tool.GetURL(tc.os, tc.arch, tc.version, false) + if err != nil { + t.Fatal(err) + } + if got != tc.url { + t.Errorf("want: %s, got: %s", tc.url, got) + } + } +} + +func Test_DownloadKyverno(t *testing.T) { + tools := MakeTools() + name := "kyverno" + + tool := getTool(name, tools) + + const toolVersion = "v1.9.2" + + tests := []test{ + { + os: "darwin", + arch: arch64bit, + version: toolVersion, + url: `https://github.com/kyverno/kyverno/releases/download/v1.9.2/kyverno-cli_v1.9.2_darwin_x86_64.tar.gz`, + }, + { + os: "darwin", + arch: archDarwinARM64, + version: toolVersion, + url: `https://github.com/kyverno/kyverno/releases/download/v1.9.2/kyverno-cli_v1.9.2_darwin_arm64.tar.gz`, + }, + { + os: "linux", + arch: arch64bit, + version: toolVersion, + url: `https://github.com/kyverno/kyverno/releases/download/v1.9.2/kyverno-cli_v1.9.2_linux_x86_64.tar.gz`, + }, + { + os: "linux", + arch: archARM64, + version: toolVersion, + url: `https://github.com/kyverno/kyverno/releases/download/v1.9.2/kyverno-cli_v1.9.2_linux_arm64.tar.gz`, + }, + { + os: "ming", + arch: arch64bit, + version: toolVersion, + url: `https://github.com/kyverno/kyverno/releases/download/v1.9.2/kyverno-cli_v1.9.2_windows_x86_64.zip`, + }, } for _, tc := range tests { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/arkade-0.9.11/pkg/get/tools.go new/arkade-0.9.13/pkg/get/tools.go --- old/arkade-0.9.11/pkg/get/tools.go 2023-04-09 14:56:08.000000000 +0200 +++ new/arkade-0.9.13/pkg/get/tools.go 2023-04-17 14:55:46.000000000 +0200 @@ -176,7 +176,6 @@ Owner: "ahmetb", Repo: "kubectx", Name: "kubens", - Version: "v0.9.1", Description: "Switch between Kubernetes namespaces smoothly.", BinaryTemplate: `kubens`, NoExtension: true, @@ -764,7 +763,7 @@ Owner: "hashicorp", Repo: "terraform", Name: "terraform", - Version: "1.1.9", + Version: "1.3.9", Description: "Infrastructure as Code for major cloud providers.", URLTemplate: ` {{$arch := ""}} @@ -3442,5 +3441,52 @@ {{.Name}}_{{$os}}{{$arch}}{{$ext}}`, }) + tools = append(tools, + Tool{ + Owner: "seaweedfs", + Repo: "seaweedfs", + Name: "seaweedfs", + Description: "SeaweedFS is a fast distributed storage system for blobs, objects, files, and data lake, for billions of files!", + URLTemplate: ` + {{$arch := ""}} + {{$os := .OS}} + {{$ext := ".tar.gz"}} + + {{- if (or (eq .Arch "aarch64") (eq .Arch "arm64")) -}} + {{$arch = "arm64"}} + {{- else if (or (eq .Arch "armv6l") (eq .Arch "armv7l")) -}} + {{$arch = "arm"}} + {{- else if eq .Arch "x86_64" -}} + {{$arch = "amd64"}} + {{- end -}} + + https://github.com/{{.Owner}}/{{.Repo}}/releases/download/{{.Version}}/{{$os}}_{{$arch}}{{$ext}} + `, + BinaryTemplate: `weed`, + }) + + tools = append(tools, + Tool{ + Owner: "kyverno", + Repo: "kyverno", + Name: "kyverno", + Description: "CLI to apply and test Kyverno policies outside a cluster.", + URLTemplate: ` + {{$arch := .Arch}} + {{ if (or (eq .Arch "x86_64") (eq .Arch "amd64")) -}} + {{$arch = "x86_64"}} + {{- else if (or (eq .Arch "aarch64") (eq .Arch "arm64")) -}} + {{$arch = "arm64"}} + {{- end -}} + + {{$os := .OS}} + {{$extStr := "tar.gz"}} + + {{ if HasPrefix .OS "ming" -}} + {{$os = "windows"}} + {{$extStr = "zip"}} + {{- end -}} + https://github.com/{{.Owner}}/{{.Repo}}/releases/download/{{.Version}}/{{.Name}}-cli_{{.Version}}_{{$os}}_{{$arch}}.{{$extStr}}`, + }) return tools } ++++++ arkade.obsinfo ++++++ --- /var/tmp/diff_new_pack.iAJBIQ/_old 2023-04-17 18:15:34.542233040 +0200 +++ /var/tmp/diff_new_pack.iAJBIQ/_new 2023-04-17 18:15:34.546233063 +0200 @@ -1,5 +1,5 @@ name: arkade -version: 0.9.11 -mtime: 1681044968 -commit: 4f5998546a3b7b42c931ec89b17acfecfd193d21 +version: 0.9.13 +mtime: 1681736146 +commit: 0d507d0f72224b3b1fa9451d144dbe8c64749b75 ++++++ vendor.tar.gz ++++++ ++++ 2209 lines of diff (skipped)