Skip to content

Using Nexus to configure the Helm repository and encountering an error when pushing the chat. #912

@pptfz

Description

@pptfz

The Nexus installed by Helm is version 3.89.0.
helm version 3.20.0 (Using version 4.x of Helm has more issues. Let's first solve the problems with Helm 3.)

A helm type repository has been created.
Image

The referenced document https://help.sonatype.com/en/helm-repositories.html

Add warehouse

helm repo add pptfz \
  http://nexus.ops.com/repository/my-helm/ \
  --username admin \
  --password admin

installing plugins

helm plugin install https://github.com/chartmuseum/helm-push

Pushed the chat, but then encountered an error.

helm cm-push redis-22.0.3.tgz http://nexus.ops.com/repository/my-helm/ \
  --username admin \
  --password admin
Pushing redis-22.0.3.tgz to http://nexus.ops.com/repository/my-helm/...
Error: 405: could not properly parse response JSON: 
<!DOCTYPE html>
<html lang="en">
<head>
  <title>405 - Sonatype Nexus Repository</title>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>


  <link rel="icon" type="image/png" href="../../../static/rapture/resources/safari-favicon-32x32.png?3.89.0-09" sizes="32x32">
  <link rel="mask-icon" href="../../../static/rapture/resources/favicon-white.svg?3.89.0-09" color="#00bb6c">
  <link rel="icon" type="image/png" href="../../../static/rapture/resources/favicon.svg?3.89.0-09" sizes="16x16">

  <link rel="stylesheet" type="text/css" href="../../../static/css/nexus-content.css?3.89.0-09"/>
  <link rel="stylesheet" type="text/css" href="../../../static/css/error-styles.css?3.89.0-09"/>
</head>
<body>
<div class="nexus-header">
  <a href="../../..">
    <div class="product-logo">
      <img src="../../../static/rapture/resources/sonatype-repository-logo-nav.png?3.89.0-09" alt="Product logo"/>
    </div>
  </a>
</div>

<div class="nexus-body">
  <div class="content-header">
    <img src="../../../static/rapture/resources/404-error-image.svg?3.89.0-09" alt="404 Error illustration" aria-role="presentation"/>
    <span class="title">Error 405</span>
    <span class="description">Method Not Allowed</span>
  </div>
  <div class="content-body">
    <div class="content-section">
      HTTP method POST is not supported by this URL
    </div>
  </div>
</div>
</body>
</html>


Usage:
  helm cm-push [flags]

Flags:
      --access-token string   Send token in Authorization header [$HELM_REPO_ACCESS_TOKEN]
  -a, --app-version string    Override app version pre-push
      --auth-header string    Alternative header to use for token auth [$HELM_REPO_AUTH_HEADER]
      --ca-file string        Verify certificates of HTTPS-enabled servers using this CA bundle [$HELM_REPO_CA_FILE]
      --cert-file string      Identify HTTPS client using this SSL certificate file [$HELM_REPO_CERT_FILE]
      --check-helm-version    outputs either "2" or "3" indicating the current Helm major version
      --context-path string   ChartMuseum context path [$HELM_REPO_CONTEXT_PATH]
  -d, --dependency-update     update dependencies from "requirements.yaml" to dir "charts/" before packaging
  -f, --force                 Force upload even if chart version exists
  -h, --help                  
      --insecure              Connect to server with an insecure way by skipping certificate verification [$HELM_REPO_INSECURE]
      --key-file string       Identify HTTPS client using this SSL key file [$HELM_REPO_KEY_FILE]
      --keyring string        location of a public keyring (default "/Users/pptfz/.gnupg/pubring.gpg")
  -p, --password string       Override HTTP basic auth password [$HELM_REPO_PASSWORD]
  -t, --timeout int           The duration (in seconds) Helm will wait to get response from chartmuseum (default 30)
  -u, --username string       Override HTTP basic auth username [$HELM_REPO_USERNAME]
  -v, --version string        Override chart version pre-push

Error: plugin "cm-push" exited with error

I used an AI tool to help me solve it, but it didn't work at all.

The Helm repository created by Nexus can only be uploaded using the curl command, and not using the Helm command?

curl -u admin:admin \
     -X PUT \
     --upload-file redis-22.0.3.tgz \
     http://nexus.ops.com/repository/my-helm/redis-22.0.3.tgz

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions