github.com/doitroot/helm@v3.0.0-beta.3+incompatible/pkg/repo/doc.go (about)

     1  /*
     2  Copyright The Helm Authors.
     3  
     4  Licensed under the Apache License, Version 2.0 (the "License");
     5  you may not use this file except in compliance with the License.
     6  You may obtain a copy of the License at
     7  
     8      http://www.apache.org/licenses/LICENSE-2.0
     9  
    10  Unless required by applicable law or agreed to in writing, software
    11  distributed under the License is distributed on an "AS IS" BASIS,
    12  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    13  See the License for the specific language governing permissions and
    14  limitations under the License.
    15  */
    16  
    17  /*Package repo implements the Helm Chart Repository.
    18  
    19  A chart repository is an HTTP server that provides information on charts. A local
    20  repository cache is an on-disk representation of a chart repository.
    21  
    22  There are two important file formats for chart repositories.
    23  
    24  The first is the 'index.yaml' format, which is expressed like this:
    25  
    26  	apiVersion: v1
    27  	entries:
    28  	  frobnitz:
    29  	  - created: 2016-09-29T12:14:34.830161306-06:00
    30  		description: This is a frobniz.
    31  		digest: 587bd19a9bd9d2bc4a6d25ab91c8c8e7042c47b4ac246e37bf8e1e74386190f4
    32  		home: http://example.com
    33  		keywords:
    34  		- frobnitz
    35  		- sprocket
    36  		- dodad
    37  		maintainers:
    38  		- email: helm@example.com
    39  		  name: The Helm Team
    40  		- email: nobody@example.com
    41  		  name: Someone Else
    42  		name: frobnitz
    43  		urls:
    44  		- http://example-charts.com/testdata/repository/frobnitz-1.2.3.tgz
    45  		version: 1.2.3
    46  	  sprocket:
    47  	  - created: 2016-09-29T12:14:34.830507606-06:00
    48  		description: This is a sprocket"
    49  		digest: 8505ff813c39502cc849a38e1e4a8ac24b8e6e1dcea88f4c34ad9b7439685ae6
    50  		home: http://example.com
    51  		keywords:
    52  		- frobnitz
    53  		- sprocket
    54  		- dodad
    55  		maintainers:
    56  		- email: helm@example.com
    57  		  name: The Helm Team
    58  		- email: nobody@example.com
    59  		  name: Someone Else
    60  		name: sprocket
    61  		urls:
    62  		- http://example-charts.com/testdata/repository/sprocket-1.2.0.tgz
    63  		version: 1.2.0
    64  	generated: 2016-09-29T12:14:34.829721375-06:00
    65  
    66  An index.yaml file contains the necessary descriptive information about what
    67  charts are available in a repository, and how to get them.
    68  
    69  The second file format is the repositories.yaml file format. This file is for
    70  facilitating local cached copies of one or more chart repositories.
    71  
    72  The format of a repository.yaml file is:
    73  
    74  	apiVersion: v1
    75  	generated: TIMESTAMP
    76  	repositories:
    77  	  - name: stable
    78  	    url: http://example.com/charts
    79  		cache: stable-index.yaml
    80  	  - name: incubator
    81  	    url: http://example.com/incubator
    82  		cache: incubator-index.yaml
    83  
    84  This file maps three bits of information about a repository:
    85  
    86  	- The name the user uses to refer to it
    87  	- The fully qualified URL to the repository (index.yaml will be appended)
    88      - The name of the local cachefile
    89  
    90  The format for both files was changed after Helm v2.0.0-Alpha.4. Helm is not
    91  backwards compatible with those earlier versions.
    92  */
    93  package repo