Skip to content
GitLab
Explore
Projects
Groups
Topics
Snippets
Projects
Groups
Topics
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
1105 Внедрение механизмов обеспечения безопасности цепочки поставки программных проектов
Legacy
scanned-projects
helm
Commits
7842d245
Commit
7842d245
authored
8 years ago
by
Michelle Noorali
Browse files
Options
Download
Patches
Plain Diff
feat(helm): reindex cache file
parent
f9c06b1d
main
Release
add-codeql
dependabot/go_modules/github.com/docker/distribution-2.8.2incompatible
dependabot/go_modules/github.com/lib/pq-1.10.9
dependabot/go_modules/github.com/rubenv/sql-migrate-1.4.0
dependabot/go_modules/golang.org/x/crypto-0.9.0
dependabot/go_modules/golang.org/x/term-0.8.0
dependabot/go_modules/k8s.io/klog/v2-2.100.1
dev-v2
feat-v3/event-emitter-lua
kube-update-test
release-2.0
release-2.1
release-2.10
release-2.11
release-2.12
release-2.13
release-2.14
release-2.15
release-2.16
release-2.17
release-2.2
release-2.3
release-2.4
release-2.5
release-2.6
release-2.7
release-2.8
release-2.9
release-3.0
release-3.1
release-3.10
release-3.11
release-3.12
release-3.2
release-3.3
release-3.4
release-3.5
release-3.6
release-3.6.1
release-3.6.2
release-3.7
release-3.8
release-3.9
release-v3.0.0-beta.4
v3.12.0
v3.12.0-rc.1
v3.12.0-dev.1
v3.11.3
v3.11.2
v3.11.1
v3.11.0
v3.11.0-rc.2
v3.11.0-rc.1
v3.10.3
v3.10.2
v3.10.1
v3.10.0
v3.10.0-rc.1
v3.9.4
v3.9.3
v3.9.2
v3.9.1
v3.9.0
v3.9.0-rc.1
v3.8.2
v3.8.1
v3.8.0
v3.8.0-rc.2
v3.8.0-rc.1
v3.7.2
v3.7.1
v3.7.0
v3.7.0-rc.3
v3.7.0-rc.2
v3.7.0-rc.1
v3.6.3
v3.6.2
v3.6.1
v3.6.0
v3.6.0-rc.1
v3.5.4
v3.5.3
v3.5.2
v3.5.1
v3.5.0
v3.5.0-rc.2
v3.5.0-rc.1
v3.4.2
v3.4.1
v3.4.0
v3.4.0-rc.1
v3.3.4
v3.3.3
v3.3.2
v3.3.1
v3.3.0
v3.3.0-rc.2
v3.3.0-rc.1
v3.2.4
v3.2.3
v3.2.2
v3.2.1
v3.2.0
v3.2.0-rc.1
v3.1.3
v3.1.2
v3.1.1
v3.1.0
v3.1.0-rc.3
v3.1.0-rc.2
v3.1.0-rc.1
v3.0.3
v3.0.2
v3.0.1
v3.0.0
v3.0.0-rc.4
v3.0.0-rc.3
v3.0.0-rc.2
v3.0.0-rc.1
v3.0.0-beta.5
v3.0.0-beta.4
v3.0.0-beta.3
v3.0.0-beta.2
v3.0.0-beta.1
v3.0.0-alpha.2
v3.0.0-alpha.1
v2.17.0
v2.17.0-rc.1
v2.16.12
v2.16.11
v2.16.10
v2.16.9
v2.16.8
v2.16.7
v2.16.6
v2.16.5
v2.16.4
v2.16.3
v2.16.2
v2.16.1
v2.16.0
v2.16.0-rc.2
v2.16.0-rc.1
v2.15.2
v2.15.1
v2.15.0
v2.15.0-rc.2
v2.15.0-rc.1
v2.14.3
v2.14.2
v2.14.1
v2.14.0
v2.14.0-rc.2
v2.14.0-rc.1
v2.13.1
v2.13.1-rc.1
v2.13.0
v2.13.0-rc.2
v2.13.0-rc.1
v2.12.3
v2.12.2
v2.12.1
v2.12.0
v2.12.0-rc.2
v2.12.0-rc.1
v2.11.0
v2.11.0-rc.4
v2.11.0-rc.3
v2.11.0-rc.2
v2.11.0-rc.1
v2.10.0
v2.10.0-rc.3
v2.10.0-rc.2
v2.10.0-rc.1
v2.9.1
v2.9.0
v2.9.0-rc5
v2.9.0-rc4
v2.9.0-rc3
v2.9.0-rc2
v2.9.0-rc1
v2.8.2
v2.8.2-rc1
v2.8.1
v2.8.0
v2.8.0-rc.1
v2.7.2
v2.7.1
v2.7.0
v2.7.0-rc1
v2.6.2
v2.6.1
v2.6.0
v2.5.1
v2.5.0
v2.4.2
v2.4.1
v2.4.0
v2.3.1
v2.3.0
v2.2.3
v2.2.2
v2.2.1
v2.2.0
v2.1.3
v2.1.2
v2.1.1
v2.1.0
v2.0.2
v2.0.1
v2.0.0
v2.0.0-rc.2
v2.0.0-rc.1
v2.0.0-beta.2
v2.0.0-beta.1
v2.0.0-alpha.5
v2.0.0-alpha.4
v2.0.0-alpha.3
v2.0.0-alpha.2
v2.0.0-alpha.1
No related merge requests found
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
cmd/helm/init.go
+1
-1
cmd/helm/init.go
cmd/helm/package.go
+2
-5
cmd/helm/package.go
pkg/repo/local.go
+128
-0
pkg/repo/local.go
with
131 additions
and
6 deletions
+131
-6
cmd/helm/init.go
+
1
−
1
View file @
7842d245
...
@@ -20,7 +20,7 @@ Kubernetes Cluster and sets up local configuration in $HELM_HOME (default: ~/.he
...
@@ -20,7 +20,7 @@ Kubernetes Cluster and sets up local configuration in $HELM_HOME (default: ~/.he
const
repositoriesPath
=
".repositories"
const
repositoriesPath
=
".repositories"
const
cachePath
=
"cache"
const
cachePath
=
"cache"
const
localPath
=
"local"
const
localPath
=
"local"
const
localCacheFilePath
=
localPath
+
"/cache.
txt
"
const
localCacheFilePath
=
localPath
+
"/cache.
yaml
"
var
defaultRepo
=
map
[
string
]
string
{
"default-name"
:
"default-url"
}
var
defaultRepo
=
map
[
string
]
string
{
"default-name"
:
"default-url"
}
var
tillerImg
string
var
tillerImg
string
...
...
This diff is collapsed.
Click to expand it.
cmd/helm/package.go
+
2
−
5
View file @
7842d245
...
@@ -6,6 +6,7 @@ import (
...
@@ -6,6 +6,7 @@ import (
"path/filepath"
"path/filepath"
"github.com/deis/tiller/pkg/chart"
"github.com/deis/tiller/pkg/chart"
"github.com/deis/tiller/pkg/repo"
"github.com/spf13/cobra"
"github.com/spf13/cobra"
)
)
...
@@ -55,11 +56,7 @@ func runPackage(cmd *cobra.Command, args []string) error {
...
@@ -55,11 +56,7 @@ func runPackage(cmd *cobra.Command, args []string) error {
// Save to $HELM_HOME/local directory.
// Save to $HELM_HOME/local directory.
if
save
{
if
save
{
dir
:=
LocalDirectory
(
os
.
ExpandEnv
(
helmHome
))
if
err
:=
repo
.
AddChartToLocalRepo
(
ch
,
LocalDirectory
(
os
.
ExpandEnv
(
helmHome
)));
err
!=
nil
{
name
,
err
:=
chart
.
Save
(
ch
,
dir
)
if
err
==
nil
{
cmd
.
Printf
(
"Saved %s to $HELM_HOME/local/
\n
"
,
name
)
}
else
{
return
err
return
err
}
}
}
}
...
...
This diff is collapsed.
Click to expand it.
pkg/repo/local
Repo
.go
→
pkg/repo/local.go
+
128
−
0
View file @
7842d245
...
@@ -2,13 +2,26 @@ package repo
...
@@ -2,13 +2,26 @@ package repo
import
(
import
(
"fmt"
"fmt"
"io/ioutil"
"net/http"
"net/http"
"path/filepath"
"path/filepath"
"strings"
"strings"
"github.com/deis/tiller/pkg/chart"
"gopkg.in/yaml.v2"
)
)
var
localRepoPath
string
var
localRepoPath
string
type
CacheFile
struct
{
Entries
map
[
string
]
*
ChartRef
}
type
ChartRef
struct
{
Name
string
`yaml:name`
Url
string
`yaml:url`
}
func
StartLocalRepo
(
path
string
)
{
func
StartLocalRepo
(
path
string
)
{
fmt
.
Println
(
"Now serving you on localhost:8879..."
)
fmt
.
Println
(
"Now serving you on localhost:8879..."
)
localRepoPath
=
path
localRepoPath
=
path
...
@@ -35,3 +48,81 @@ func indexHandler(w http.ResponseWriter, r *http.Request) {
...
@@ -35,3 +48,81 @@ func indexHandler(w http.ResponseWriter, r *http.Request) {
func
serveFile
(
w
http
.
ResponseWriter
,
r
*
http
.
Request
,
file
string
)
{
func
serveFile
(
w
http
.
ResponseWriter
,
r
*
http
.
Request
,
file
string
)
{
http
.
ServeFile
(
w
,
r
,
filepath
.
Join
(
localRepoPath
,
file
))
http
.
ServeFile
(
w
,
r
,
filepath
.
Join
(
localRepoPath
,
file
))
}
}
func
AddChartToLocalRepo
(
ch
*
chart
.
Chart
,
path
string
)
error
{
name
,
err
:=
chart
.
Save
(
ch
,
path
)
if
err
!=
nil
{
return
err
}
err
=
ReindexCacheFile
(
ch
,
path
+
"/cache.yaml"
)
if
err
!=
nil
{
return
nil
}
fmt
.
Printf
(
"Saved %s to $HELM_HOME/local"
,
name
)
return
nil
}
func
ReindexCacheFile
(
ch
*
chart
.
Chart
,
path
string
)
error
{
name
:=
ch
.
Chartfile
()
.
Name
+
"-"
+
ch
.
Chartfile
()
.
Version
fmt
.
Println
(
"
\n
name: "
+
name
)
b
,
err
:=
ioutil
.
ReadFile
(
path
)
if
err
!=
nil
{
fmt
.
Println
(
"read file err"
)
fmt
.
Printf
(
"err, %s"
,
err
)
return
err
}
var
y
CacheFile
err
=
yaml
.
Unmarshal
(
b
,
&
y
)
if
err
!=
nil
{
fmt
.
Println
(
"error unmarshaling"
)
fmt
.
Println
(
"err, %s"
,
err
)
return
err
}
fmt
.
Println
(
"%v
\n
"
,
y
)
found
:=
false
for
k
,
v
:=
range
y
.
Entries
{
fmt
.
Printf
(
"in here: %v"
,
v
)
fmt
.
Printf
(
"in here: %v"
,
k
)
if
k
==
name
{
found
=
true
break
}
}
if
!
found
{
url
:=
"localhost:8879/charts/"
+
name
+
".tgz"
out
,
err
:=
y
.
InsertChartEntry
(
name
,
url
)
if
err
!=
nil
{
return
err
}
ioutil
.
WriteFile
(
path
,
out
,
0644
)
}
return
nil
}
func
(
c
*
CacheFile
)
UnmarshalYAML
(
unmarshal
func
(
interface
{})
error
)
error
{
var
refs
map
[
string
]
*
ChartRef
if
err
:=
unmarshal
(
&
refs
);
err
!=
nil
{
if
_
,
ok
:=
err
.
(
*
yaml
.
TypeError
);
!
ok
{
return
err
}
}
c
.
Entries
=
refs
return
nil
}
func
(
cache
*
CacheFile
)
InsertChartEntry
(
name
string
,
url
string
)
([]
byte
,
error
)
{
if
cache
.
Entries
==
nil
{
cache
.
Entries
=
make
(
map
[
string
]
*
ChartRef
)
}
entry
:=
ChartRef
{
Name
:
name
,
Url
:
url
}
cache
.
Entries
[
name
]
=
&
entry
out
,
err
:=
yaml
.
Marshal
(
&
cache
.
Entries
)
if
err
!=
nil
{
return
nil
,
err
}
return
out
,
nil
}
This diff is collapsed.
Click to expand it.
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment
Menu
Explore
Projects
Groups
Topics
Snippets