mirror of
https://github.com/imjasonh/kontain.me
synced 2026-07-08 09:04:54 +00:00
Auth fixes
This commit is contained in:
parent
f1d8a3388f
commit
d1adfb1479
2 changed files with 3 additions and 23 deletions
|
|
@ -244,7 +244,7 @@ func (s *server) prepareWorkspace(tok string) (string, string, error) {
|
||||||
}
|
}
|
||||||
os.Setenv("HOME", home)
|
os.Setenv("HOME", home)
|
||||||
|
|
||||||
// Write Docker config.
|
// Write Docker config with user credentials.
|
||||||
auth := base64.StdEncoding.EncodeToString([]byte(fmt.Sprintf("oauth2accesstoken:%s", tok)))
|
auth := base64.StdEncoding.EncodeToString([]byte(fmt.Sprintf("oauth2accesstoken:%s", tok)))
|
||||||
configJSON := fmt.Sprintf(`{
|
configJSON := fmt.Sprintf(`{
|
||||||
"auths": {
|
"auths": {
|
||||||
|
|
@ -279,7 +279,6 @@ func (s *server) fetchAndBuild(src, layers, tok string, req *gcb.Build) error {
|
||||||
fmt.Sprintf("chown -R %d:%d %s", os.Geteuid(), os.Getgid(), src),
|
fmt.Sprintf("chown -R %d:%d %s", os.Geteuid(), os.Getgid(), src),
|
||||||
fmt.Sprintf("chown -R %d:%d %s", os.Geteuid(), os.Getgid(), layers),
|
fmt.Sprintf("chown -R %d:%d %s", os.Geteuid(), os.Getgid(), layers),
|
||||||
fmt.Sprintf("wget -qO- %s | tar xz -C %s", source, src),
|
fmt.Sprintf("wget -qO- %s | tar xz -C %s", source, src),
|
||||||
fmt.Sprintf("cat $HOME/.docker/config.json"),
|
|
||||||
fmt.Sprintf("/lifecycle/detector -app=%s -group=%s/group.toml -plan=%s/plan.toml", src, layers, layers),
|
fmt.Sprintf("/lifecycle/detector -app=%s -group=%s/group.toml -plan=%s/plan.toml", src, layers, layers),
|
||||||
fmt.Sprintf("/lifecycle/analyzer -layers=%s -helpers=false -group=%s/group.toml %s", layers, layers, image),
|
fmt.Sprintf("/lifecycle/analyzer -layers=%s -helpers=false -group=%s/group.toml %s", layers, layers, image),
|
||||||
fmt.Sprintf("/lifecycle/builder -layers=%s -app=%s -group=%s/group.toml -plan=%s/plan.toml", layers, src, layers, layers),
|
fmt.Sprintf("/lifecycle/builder -layers=%s -app=%s -group=%s/group.toml -plan=%s/plan.toml", layers, src, layers, layers),
|
||||||
|
|
@ -293,7 +292,7 @@ func (s *server) fetchAndBuild(src, layers, tok string, req *gcb.Build) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *server) getImage(image string) (v1.Image, error) {
|
func (s *server) getImage(image string) (v1.Image, error) {
|
||||||
ref, err := name.NewTag(image, name.WeakValidation)
|
ref, err := name.NewTag(image)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,6 @@ package main
|
||||||
import (
|
import (
|
||||||
"bytes"
|
"bytes"
|
||||||
"context"
|
"context"
|
||||||
"encoding/base64"
|
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"fmt"
|
"fmt"
|
||||||
"io"
|
"io"
|
||||||
|
|
@ -24,7 +23,6 @@ import (
|
||||||
"github.com/google/go-containerregistry/pkg/v1/types"
|
"github.com/google/go-containerregistry/pkg/v1/types"
|
||||||
"github.com/imjasonh/kontain.me/pkg/run"
|
"github.com/imjasonh/kontain.me/pkg/run"
|
||||||
"github.com/imjasonh/kontain.me/pkg/serve"
|
"github.com/imjasonh/kontain.me/pkg/serve"
|
||||||
"golang.org/x/oauth2/google"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
var projectID = ""
|
var projectID = ""
|
||||||
|
|
@ -211,23 +209,6 @@ func (s *server) resolveCommit(repo, ref string) (string, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *server) prepareWorkspace() (string, string, error) {
|
func (s *server) prepareWorkspace() (string, string, error) {
|
||||||
// Write Docker config.
|
|
||||||
tok, err := google.ComputeTokenSource("").Token()
|
|
||||||
if err != nil {
|
|
||||||
return "", "", fmt.Errorf("getting access token from metadata: %v", err)
|
|
||||||
}
|
|
||||||
auth := base64.StdEncoding.EncodeToString([]byte(fmt.Sprintf("oauth2accesstoken:%s", tok.AccessToken)))
|
|
||||||
configJSON := fmt.Sprintf(`{
|
|
||||||
"auths": {
|
|
||||||
"https://gcr.io": {
|
|
||||||
"auth": %q
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}`, auth)
|
|
||||||
if err := run.Do(s.info.Writer(), "mkdir -p ~/.docker/ && cat << EOF > ~/.docker/config.json\n"+string(configJSON)+"\nEOF"); err != nil {
|
|
||||||
return "", "", err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Create tempdir to store app source.
|
// Create tempdir to store app source.
|
||||||
src, err := ioutil.TempDir("", "")
|
src, err := ioutil.TempDir("", "")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
@ -240,7 +221,7 @@ func (s *server) prepareWorkspace() (string, string, error) {
|
||||||
return "", "", err
|
return "", "", err
|
||||||
}
|
}
|
||||||
|
|
||||||
// Create and set $HOME.
|
// Create and set $HOME, which is otherwise not writable.
|
||||||
home, err := ioutil.TempDir("", "")
|
home, err := ioutil.TempDir("", "")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return "", "", err
|
return "", "", err
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue