Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

plugin install does not work for helm3 #25

Open
suseclee opened this issue Jun 15, 2020 · 2 comments
Open

plugin install does not work for helm3 #25

suseclee opened this issue Jun 15, 2020 · 2 comments

Comments

@suseclee
Copy link

suseclee commented Jun 15, 2020

I am using helm3.

helm version
version.BuildInfo{Version:"v3.0", GitCommit:"", GitTreeState:"", GoVersion:"go1.13.11"}

Installation error for helm3 plugin installation

helm plugin install https://github.com/openSUSE/helm-mirror --version master
using download url https://github.com/openSUSE/helm-mirror/releases/download/v0.3.1/helm-mirror-linux.tgz
Downloading https://github.com/openSUSE/helm-mirror/releases/download/v0.3.1/helm-mirror-linux.tgz
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   634  100   634    0     0    794      0 --:--:-- --:--:-- --:--:--   793
100 6831k  100 6831k    0     0  3159k      0  0:00:02  0:00:02 --:--:--  9.8M
Preparing to install into The Kubernetes package manager

Common actions for Helm:

- helm search:    search for charts
- helm pull:      download a chart to your local directory to view
- helm install:   upload the chart to Kubernetes
- helm list:      list releases of charts

Environment variables:

+------------------+-----------------------------------------------------------------------------+
| Name             | Description                                                                 |
+------------------+-----------------------------------------------------------------------------+
| $XDG_CACHE_HOME  | set an alternative location for storing cached files.                       |
| $XDG_CONFIG_HOME | set an alternative location for storing Helm configuration.                 |
| $XDG_DATA_HOME   | set an alternative location for storing Helm data.                          |
| $HELM_DRIVER     | set the backend storage driver. Values are: configmap, secret, memory       |
| $HELM_NO_PLUGINS | disable plugins. Set HELM_NO_PLUGINS=1 to disable plugins.                  |
| $KUBECONFIG      | set an alternative Kubernetes configuration file (default "~/.kube/config") |
+------------------+-----------------------------------------------------------------------------+

Helm stores configuration based on the XDG base directory specification, so

- cached files are stored in $XDG_CACHE_HOME/helm
- configuration is stored in $XDG_CONFIG_HOME/helm
- data is stored in $XDG_DATA_HOME/helm

By default, the default directories depend on the Operating System. The defaults are listed below:

+------------------+---------------------------+--------------------------------+-------------------------+
| Operating System | Cache Path                | Configuration Path             | Data Path               |
+------------------+---------------------------+--------------------------------+-------------------------+
| Linux            | $HOME/.cache/helm         | $HOME/.config/helm             | $HOME/.local/share/helm |
| macOS            | $HOME/Library/Caches/helm | $HOME/Library/Preferences/helm | $HOME/Library/helm      |
| Windows          | %TEMP%\helm               | %APPDATA%\helm                 | %APPDATA%\helm          |
+------------------+---------------------------+--------------------------------+-------------------------+

Usage:
  helm [command]

Available Commands:
  completion  Generate autocompletions script for the specified shell (bash or zsh)
  create      create a new chart with the given name
  dependency  manage a chart's dependencies
  env         Helm client environment information
  get         download extended information of a named release
  help        Help about any command
  history     fetch release history
  install     install a chart
  lint        examines a chart for possible issues
  list        list releases
  mirror      Mirror Helm Charts from a repository into a local folder.
  package     package a chart directory into a chart archive
  plugin      install, list, or uninstall Helm plugins
  pull        download a chart from a repository and (optionally) unpack it in local directory
  repo        add, list, remove, update, and index chart repositories
  rollback    roll back a release to a previous revision
  search      search for a keyword in charts
  show        show information of a chart
  status      displays the status of the named release
  template    locally render templates
  test        run tests for a release
  uninstall   uninstall a release
  upgrade     upgrade a release
  verify      verify that a chart at the given path has been signed and is valid
  version     print the client version information

Flags:
      --add-dir-header                   If true, adds the file directory to the header
      --alsologtostderr                  log to standard error as well as files
      --debug                            enable verbose output
  -h, --help                             help for helm
      --kube-context string              name of the kubeconfig context to use
      --kubeconfig string                path to the kubeconfig file
      --log-backtrace-at traceLocation   when logging hits line file:N, emit a stack trace (default :0)
      --log-dir string                   If non-empty, write log files in this directory
      --log-file string                  If non-empty, use this log file
      --log-file-max-size uint           Defines the maximum size a log file can grow to. Unit is megabytes. If the value is 0, the maximum file size is unlimited. (default 1800)
      --logtostderr                      log to standard error instead of files (default true)
  -n, --namespace string                 namespace scope for this request (default "default")
      --registry-config string           path to the registry config file (default "/home/sles/.config/helm/registry.json")
      --repository-cache string          path to the file containing cached repository indexes (default "/home/sles/.cache/helm/repository")
      --repository-config string         path to the file containing repository names and URLs (default "/home/sles/.config/helm/repositories.yaml")
      --skip-headers                     If true, avoid header prefixes in the log messages
      --skip-log-headers                 If true, avoid headers when opening log files
      --stderrthreshold severity         logs at or above this threshold go to stderr (default 2)
  -v, --v Level                          number for the log level verbosity
      --vmodule moduleSpec               comma-separated list of pattern=N settings for file-filtered logging

Use "helm [command] --help" for more information about a command./plugins/helm-mirror
mkdir: cannot create directory ‘The Kubernetes package manager\n\nCommon actions for Helm:\n\n- helm search:    search for charts\n- helm pull:      download a chart to your local directory to view\n- helm install:   upload the chart to Kubernetes\n- helm list:      list releases of charts\n\nEnvironment variables:\n\n+------------------+-----------------------------------------------------------------------------+\n| Name             | Description                                                                 |\n+------------------+-----------------------------------------------------------------------------+\n| $XDG_CACHE_HOME  | set an alternative location for storing cached files.                       |\n| $XDG_CONFIG_HOME | set an alternative location for storing Helm configuration.                 |\n| $XDG_DATA_HOME   | set an alternative location for storing Helm data.                          |\n| $HELM_DRIVER     | set the backend storage driver. Values are: configmap, secret, memory       |\n| $HELM_NO_PLUGINS | disable plugins. Set HELM_NO_PLUGINS=1 to disable plugins.                  |\n| $KUBECONFIG      | set an alternative Kubernetes configuration file (default "~’: File name too long
Failed to install helm-mirror
For support, go to https://github.com/openSUSE/helm-mirror.
Error: plugin install hook for "mirror" exited with error

After the installation error

helm mirror
Error: fork/exec /home/sles/.local/share/helm/plugins/helm-mirror/bin/mirror: no such file or directory

When I tried to use plugin install with helm2, it worked as expected. But with helm3, I encountered the above error.

@KlavsKlavsen
Copy link

I had same experience unfortunately :(

@jfarrell
Copy link

using helm 3 was able to get this working with minimal workarounds, not great that it did not work out of the box, but simple enough to get up and running

helm plugin install https://github.com/openSUSE/helm-mirror --version master
cd ~/.local/share/helm/plugins/helm-mirror
make mirror
mv bin/helm-mirror bin/mirror
helm mirror ... 

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants