Tidies up naming of variables in code. See #2389 (#2541)

This commit is contained in:
Alex Collins 2019-10-22 14:25:02 -07:00 committed by GitHub
parent 7e4cb92fb8
commit 99426ce659
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 47 additions and 31 deletions

View file

@ -54,7 +54,7 @@ func NewClusterAddCommand(clientOpts *argocdclient.ClientOptions, pathOpts *clie
systemNamespace string
)
var command = &cobra.Command{
Use: "add",
Use: "add CONTEXT",
Short: fmt.Sprintf("%s cluster add CONTEXT", cliName),
Run: func(c *cobra.Command, args []string) {
var configAccess clientcmd.ConfigAccess = pathOpts
@ -65,9 +65,10 @@ func NewClusterAddCommand(clientOpts *argocdclient.ClientOptions, pathOpts *clie
}
config, err := configAccess.GetStartingConfig()
errors.CheckError(err)
clstContext := config.Contexts[args[0]]
contextName := args[0]
clstContext := config.Contexts[contextName]
if clstContext == nil {
log.Fatalf("Context %s does not exist in kubeconfig", args[0])
log.Fatalf("Context %s does not exist in kubeconfig", contextName)
}
overrides := clientcmd.ConfigOverrides{
@ -93,7 +94,7 @@ func NewClusterAddCommand(clientOpts *argocdclient.ClientOptions, pathOpts *clie
}
conn, clusterIf := argocdclient.NewClientOrDie(clientOpts).NewClusterClientOrDie()
defer util.Close(conn)
clst := NewCluster(args[0], conf, managerBearerToken, awsAuthConf)
clst := NewCluster(contextName, conf, managerBearerToken, awsAuthConf)
if inCluster {
clst.Server = common.KubernetesInternalAPIServerAddr
}
@ -101,9 +102,9 @@ func NewClusterAddCommand(clientOpts *argocdclient.ClientOptions, pathOpts *clie
Cluster: clst,
Upsert: upsert,
}
clst, err = clusterIf.Create(context.Background(), &clstCreateReq)
_, err = clusterIf.Create(context.Background(), &clstCreateReq)
errors.CheckError(err)
fmt.Printf("Cluster '%s' added\n", clst.Name)
fmt.Printf("Cluster '%s' added\n", clst.Server)
},
}
command.PersistentFlags().StringVar(&pathOpts.LoadingRules.ExplicitPath, pathOpts.ExplicitFileFlag, pathOpts.LoadingRules.ExplicitPath, "use a particular kubeconfig file")

View file

@ -49,7 +49,7 @@ export const ApplicationSummary = (props: {
},
{
title: 'CLUSTER',
view: <Cluster url={app.spec.destination.server} showUrl={true}/> ,
view: <Cluster server={app.spec.destination.server} showUrl={true}/> ,
edit: (formApi: FormApi) => (
<DataLoader load={() => services.clusters.list().then((clusters) => clusters.map((cluster) => ({
title: clusterTitle(cluster),

View file

@ -53,7 +53,7 @@ export const ApplicationsTable = (props: {
</div>
<div className='row'>
<div className='show-for-xxlarge columns small-2'>Destination:</div>
<div className='columns small-12 xxlarge-10'><Cluster url={app.spec.destination.server}/>/{app.spec.destination.namespace}</div>
<div className='columns small-12 xxlarge-10'><Cluster server={app.spec.destination.server}/>/{app.spec.destination.namespace}</div>
</div>
</div>
<div className='columns small-2'>

View file

@ -17,13 +17,13 @@ const clusterHTML = (cluster: models.Cluster, showUrl: boolean) => {
return <Tooltip content={cluster.server}><span>{text}</span></Tooltip>;
};
async function getCluster(clusters: Promise<models.Cluster[]>, url: string): Promise<models.Cluster> {
async function getCluster(clusters: Promise<models.Cluster[]>, server: string): Promise<models.Cluster> {
let cluster: models.Cluster;
if (clusters) {
cluster = await clusters.then((items) => items.find((item) => item.server === url));
cluster = await clusters.then((items) => items.find((item) => item.server === server));
} else {
try {
cluster = await services.clusters.get(url);
cluster = await services.clusters.get(server);
} catch {
cluster = null;
}
@ -31,8 +31,8 @@ async function getCluster(clusters: Promise<models.Cluster[]>, url: string): Pro
if (!cluster) {
cluster = {
connectionState: null,
name: url,
server: url,
name: server,
server,
serverVersion: null,
};
}
@ -41,11 +41,11 @@ async function getCluster(clusters: Promise<models.Cluster[]>, url: string): Pro
export const ClusterCtx = React.createContext<Promise<Array<models.Cluster>>>(null);
export const Cluster = (props: {url: string; showUrl?: boolean; }) => (
export const Cluster = (props: {server: string; showUrl?: boolean; }) => (
<ClusterCtx.Consumer>
{(clusters) => (
<DataLoader input={props.url} loadingRenderer={() => <span>{props.url}</span>}
load={(url) => getCluster(clusters, url)}>{(cluster: models.Cluster) => clusterHTML(cluster, props.showUrl)}</DataLoader>
<DataLoader input={props.server} loadingRenderer={() => <span>{props.server}</span>}
load={(server) => getCluster(clusters, server)}>{(cluster: models.Cluster) => clusterHTML(cluster, props.showUrl)}</DataLoader>
)}
</ClusterCtx.Consumer>
);

View file

@ -210,8 +210,8 @@ func (db *db) UpdateCluster(ctx context.Context, c *appv1.Cluster) (*appv1.Clust
}
// Delete deletes a cluster by name
func (db *db) DeleteCluster(ctx context.Context, name string) error {
secret, err := db.getClusterSecret(name)
func (db *db) DeleteCluster(ctx context.Context, server string) error {
secret, err := db.getClusterSecret(server)
if err != nil {
if errorStatus, ok := status.FromError(err); ok && errorStatus.Code() == codes.NotFound {
return nil

13
util/db/cluster_test.go Normal file
View file

@ -0,0 +1,13 @@
package db
import (
"testing"
"github.com/stretchr/testify/assert"
)
func Test_serverToSecretName(t *testing.T) {
name, err := serverToSecretName("http://foo")
assert.NoError(t, err)
assert.Equal(t, "cluster-foo-752281925", name)
}

View file

@ -18,11 +18,11 @@ type ArgoDB interface {
// WatchClusters allow watching for cluster events
WatchClusters(ctx context.Context, callback func(*ClusterEvent)) error
// Get returns a cluster from a query
GetCluster(ctx context.Context, name string) (*appv1.Cluster, error)
GetCluster(ctx context.Context, server string) (*appv1.Cluster, error)
// UpdateCluster updates a cluster
UpdateCluster(ctx context.Context, c *appv1.Cluster) (*appv1.Cluster, error)
// DeleteCluster deletes a cluster by name
DeleteCluster(ctx context.Context, name string) error
DeleteCluster(ctx context.Context, server string) error
// ListRepositories lists repositories
ListRepositories(ctx context.Context) ([]*appv1.Repository, error)

View file

@ -296,33 +296,35 @@ func TestUpdateRepositoryWithManagedSecrets(t *testing.T) {
}
func TestGetClusterSuccessful(t *testing.T) {
clusterURL := "https://mycluster"
server := "my-cluster"
name := "my-name"
clientset := getClientset(nil, &v1.Secret{
ObjectMeta: metav1.ObjectMeta{
Name: "mycluster-443",
Namespace: testNamespace,
Labels: map[string]string{
common.LabelKeySecretType: common.LabelValueSecretTypeCluster,
},
},
Data: map[string][]byte{
"server": []byte(clusterURL),
"server": []byte(server),
"name": []byte(name),
"config": []byte("{}"),
},
})
db := NewDB(testNamespace, settings.NewSettingsManager(context.Background(), clientset, testNamespace), clientset)
cluster, err := db.GetCluster(context.Background(), clusterURL)
assert.Nil(t, err)
assert.Equal(t, clusterURL, cluster.Server)
cluster, err := db.GetCluster(context.Background(), server)
assert.NoError(t, err)
assert.Equal(t, server, cluster.Server)
assert.Equal(t, name, cluster.Name)
}
func TestGetNonExistingCluster(t *testing.T) {
clusterURL := "https://mycluster"
server := "https://mycluster"
clientset := getClientset(nil)
db := NewDB(testNamespace, settings.NewSettingsManager(context.Background(), clientset, testNamespace), clientset)
_, err := db.GetCluster(context.Background(), clusterURL)
_, err := db.GetCluster(context.Background(), server)
assert.NotNil(t, err)
status, ok := status.FromError(err)
assert.True(t, ok)
@ -330,19 +332,19 @@ func TestGetNonExistingCluster(t *testing.T) {
}
func TestCreateClusterSuccessful(t *testing.T) {
clusterURL := "https://mycluster"
server := "https://mycluster"
clientset := getClientset(nil)
db := NewDB(testNamespace, settings.NewSettingsManager(context.Background(), clientset, testNamespace), clientset)
_, err := db.CreateCluster(context.Background(), &v1alpha1.Cluster{
Server: clusterURL,
Server: server,
})
assert.Nil(t, err)
secret, err := clientset.CoreV1().Secrets(testNamespace).Get("cluster-mycluster-3274446258", metav1.GetOptions{})
assert.Nil(t, err)
assert.Equal(t, clusterURL, string(secret.Data["server"]))
assert.Equal(t, server, string(secret.Data["server"]))
assert.Equal(t, common.AnnotationValueManagedByArgoCD, secret.Annotations[common.AnnotationKeyManagedBy])
}