use docker auth system

Signed-off-by: Josh Dolitsky <jdolitsky@gmail.com>
pull/5597/head
Josh Dolitsky 7 years ago
parent 99df3640b2
commit 454c481c5c

@ -17,7 +17,11 @@ limitations under the License.
package action package action
import ( import (
"context"
"fmt"
"io" "io"
auth "github.com/deislabs/oras/pkg/auth/docker"
) )
// ChartLogin performs a chart login operation. // ChartLogin performs a chart login operation.
@ -34,5 +38,13 @@ func NewChartLogin(cfg *Configuration) *ChartLogin {
// Run executes the chart login operation // Run executes the chart login operation
func (a *ChartLogin) Run(out io.Writer, host string, username string, password string) error { func (a *ChartLogin) Run(out io.Writer, host string, username string, password string) error {
cli, err := auth.NewClient("~/.docker/config")
if err != nil {
return err
}
if err := cli.Login(context.Background(), host, username, password); err != nil {
return err
}
fmt.Println("Login Succeeded")
return nil return nil
} }

@ -17,22 +17,34 @@ limitations under the License.
package action package action
import ( import (
"context"
"fmt"
"io" "io"
auth "github.com/deislabs/oras/pkg/auth/docker"
) )
// ChartLogin performs a chart login operation. // ChartLogout performs a chart login operation.
type ChartLogout struct { type ChartLogout struct {
cfg *Configuration cfg *Configuration
} }
// NewChartLogin creates a new ChartLogin object with the given configuration. // NewChartLogout creates a new ChartLogout object with the given configuration.
func NewChartLogout(cfg *Configuration) *ChartLogout { func NewChartLogout(cfg *Configuration) *ChartLogout {
return &ChartLogout{ return &ChartLogout{
cfg: cfg, cfg: cfg,
} }
} }
// Run executes the chart login operation // Run executes the chart logout operation
func (a *ChartLogout) Run(out io.Writer, host string) error { func (a *ChartLogout) Run(out io.Writer, host string) error {
cli, err := auth.NewClient("~/.docker/config")
if err != nil {
return err
}
if err := cli.Logout(context.Background(), host); err != nil {
return err
}
fmt.Println("Logout Succeeded")
return nil return nil
} }

Loading…
Cancel
Save