github.com/xeptore/docker-cli@v20.10.14+incompatible/e2e/context/context_test.go (about)

     1  package context
     2  
     3  import (
     4  	"io/ioutil"
     5  	"os"
     6  	"testing"
     7  
     8  	"gotest.tools/v3/assert"
     9  	"gotest.tools/v3/golden"
    10  	"gotest.tools/v3/icmd"
    11  )
    12  
    13  func TestContextList(t *testing.T) {
    14  	cmd := icmd.Command("docker", "context", "ls")
    15  	cmd.Env = append(cmd.Env,
    16  		"DOCKER_CONFIG=./testdata/test-dockerconfig",
    17  		"KUBECONFIG=./testdata/test-kubeconfig",
    18  	)
    19  	result := icmd.RunCmd(cmd).Assert(t, icmd.Expected{
    20  		Err:      icmd.None,
    21  		ExitCode: 0,
    22  	})
    23  	golden.Assert(t, result.Stdout(), "context-ls.golden")
    24  }
    25  
    26  func TestContextImportNoTLS(t *testing.T) {
    27  	d, _ := ioutil.TempDir("", "")
    28  	defer func() {
    29  		os.RemoveAll(d)
    30  	}()
    31  	cmd := icmd.Command("docker", "context", "import", "remote", "./testdata/test-dockerconfig.tar")
    32  	cmd.Env = append(cmd.Env,
    33  		"DOCKER_CONFIG="+d,
    34  	)
    35  	icmd.RunCmd(cmd).Assert(t, icmd.Success)
    36  
    37  	cmd = icmd.Command("docker", "context", "ls")
    38  	cmd.Env = append(cmd.Env,
    39  		"DOCKER_CONFIG="+d,
    40  		"KUBECONFIG=./testdata/test-kubeconfig", // Allows reuse of context-ls.golden
    41  	)
    42  	result := icmd.RunCmd(cmd).Assert(t, icmd.Success)
    43  	golden.Assert(t, result.Stdout(), "context-ls.golden")
    44  }
    45  
    46  func TestContextImportTLS(t *testing.T) {
    47  	d, _ := ioutil.TempDir("", "")
    48  	defer func() {
    49  		os.RemoveAll(d)
    50  	}()
    51  	cmd := icmd.Command("docker", "context", "import", "test", "./testdata/test-dockerconfig-tls.tar")
    52  	cmd.Env = append(cmd.Env,
    53  		"DOCKER_CONFIG="+d,
    54  	)
    55  	icmd.RunCmd(cmd).Assert(t, icmd.Success)
    56  
    57  	cmd = icmd.Command("docker", "context", "ls")
    58  	cmd.Env = append(cmd.Env,
    59  		"DOCKER_CONFIG="+d,
    60  	)
    61  	result := icmd.RunCmd(cmd).Assert(t, icmd.Success)
    62  	golden.Assert(t, result.Stdout(), "context-ls-tls.golden")
    63  
    64  	b, err := ioutil.ReadFile(d + "/contexts/tls/9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08/kubernetes/key.pem")
    65  	assert.NilError(t, err)
    66  	assert.Equal(t, string(b), `-----BEGIN RSA PRIVATE KEY-----
    67  MIIEpAIBAAKCAQEArQk77K5sgrQYY6HiQ1y7AC+67HrRB36oEvR+Fq60RsFcc3cZ
    68  xAvMkRSBPjQyskjdYY7kfykGHhfJxGKopb3cDJx3eDBxjgAniwnnOMmHVWbf8Eik
    69  o0sNxkgzQPGq83nL3QvVxm3xgqe4nlTdR/Swoq6Pv0oaVYvPPMnaZIF89SJ/wlNT
    70  myCs6Uq00dICi20II+M2Nw9b+EVEK4ENl+SlrsK7iuoBIh/H0ZghxOthO9J/HeBb
    71  hmM4wcs1OonhPDYKHEaChYA7/Q3/8OBp3bAdlQJ1ziyP3ROAKHL2NwwkGZ8o8HP8
    72  u0ex/NAb8w5J5WNePqYQd/sqfisfNpA5VIKcEQIDAQABAoIBABLo4W2aGi2mdMve
    73  kxV9esoobSsOuO0ywDdiFK1x5i2dT/cmWuB70Z1BOmaL2cZ2BAt3TC1BVHPRcbFO
    74  ftOuDfAq4Tt3P9Ge3rNpH6WrEGka1voxVhyqRRUYKtG8F0yIUOkVNAV9WllG7vwO
    75  ligY63y7yuXCuWID51/jR0SYiglXz6G4gcJKFXtugXXiLUIg08GVWkwOsrACC+hR
    76  mhcHly1926VhN5+ozjNU/GZ1LaTuK6erBZakH5bqlN97s5rrk0ZRwk/JtnkoRRdI
    77  cq0918Za2vqGDHZ3MqLttL52YfDXPIEJPwlFdvC/+sXK2NhUB/xY4yuliU3sY0sf
    78  XsIvIWECgYEAwD8AnZI0hnGv8hc6zJppHFRwhrtLZ+09SJwPv5Y4wxuuk5dzNkpf
    79  xCNo5hjSVYA1MMmWG8p/sEXo2IyCT8sWDNCn9kieTXihxRxbj88Y2qA5O4N46Zy4
    80  kPngjkP5PPDMkwaQQgUr9LvlWS7P6OJkH18ZN8s3QhMaKcHu9FFT44UCgYEA5mte
    81  mMSDf9hUK3IK+yrGX62qc2H+ecXN3Zf3nehyiz+dX4ZXhBwBkwJ/mHvuAZPfoFUN
    82  Xg6cdyWFJg9ynm45JXnDjmYPGmFLn0mP3Mje/+SbbW2fdFWHJW/maqj4uUqqgQd+
    83  pGNzKXq34MzDrpsqIJ7AHu3LYVMOoLAVqC7LXh0CgYEAnLF9ZfFqQH7fgvouIeBl
    84  dgLZKOf2AUJcJheVunnN0DF67K+P55tdTTfzY0CuB6SVNivI3uQBiYKh1AdKm5ET
    85  auSTUmlEJi8B4/BGLQQG5QOdQoXZgsgLo5cX0b1To7k9dUTvRfCDMFoKCNPgAJiu
    86  NOfFXTWU15VMSObaRmcXciUCgYEA5e1cXwsxwUAodZX+eTXs8ArHHQ47Nl55GFeN
    87  wufybRuUuX7AE9cyhvUmSA3aqX5a144noaTo40fwftNJZ+jLY6cGyjDzfzp5kMCC
    88  KynSxPzlUCPkytyR2Hy6K9LjJ1rnm4vUBswqXcjUdiE+Xxz8w8JGKlbV7Q9JeHVd
    89  lw7i5s0CgYAn9T9ySI3xCbrUa/XV/ZY2hopUdH5CDPeTd2eH+L+lctkD9nlzLrpj
    90  qij+jaEUweymNx0uttgv02J3DYcIIvVq3RNAwORy5Mp9KasHmjbW2xq+HAq5yFOO
    91  1ma82F5zeUl+bKqjMRCY8IVZ349VxRZtb2RVVEKyVswb7HmKp6gGbA==
    92  -----END RSA PRIVATE KEY-----
    93  `)
    94  }