@@ -1752,6 +1752,56 @@ func TestJindoCacheEngine_transformMasterWithMultipleOSSEncryptOptions(t *testin
17521752 }
17531753}
17541754
1755+ func TestJindoCacheEngine_transformMasterDoesNotPersistInlineOSSCredentials (t * testing.T ) {
1756+ s := runtime .NewScheme ()
1757+ s .AddKnownTypes (datav1alpha1 .GroupVersion , & datav1alpha1.JindoRuntime {}, & datav1alpha1.Dataset {})
1758+ _ = corev1 .AddToScheme (s )
1759+
1760+ engine := JindoCacheEngine {
1761+ name : "test" ,
1762+ namespace : "fluid" ,
1763+ Client : fake .NewFakeClientWithScheme (s ),
1764+ Log : fake .NullLogger (),
1765+ runtime : & datav1alpha1.JindoRuntime {
1766+ Spec : datav1alpha1.JindoRuntimeSpec {
1767+ Fuse : datav1alpha1.JindoFuseSpec {},
1768+ },
1769+ },
1770+ }
1771+
1772+ dataset := & datav1alpha1.Dataset {
1773+ Spec : datav1alpha1.DatasetSpec {
1774+ Mounts : []datav1alpha1.Mount {{
1775+ MountPoint : "oss://bucket-a/data" ,
1776+ Name : "mount-a" ,
1777+ Options : map [string ]string {
1778+ "fs.oss.endpoint" : "oss-cn-shanghai.aliyuncs.com" ,
1779+ "fs.oss.accessKeyId" : "inline-ak" ,
1780+ "fs.oss.accessKeySecret" : "inline-sk" ,
1781+ },
1782+ }},
1783+ },
1784+ }
1785+
1786+ value := & Jindo {}
1787+ if err := engine .transformMaster (engine .runtime , "/test" , value , dataset , true ); err != nil {
1788+ t .Fatalf ("transformMaster() error = %v" , err )
1789+ }
1790+
1791+ if got := value .Master .FileStoreProperties ["jindocache.oss.bucket.bucket-a.endpoint" ]; got != "oss-cn-shanghai.aliyuncs.com" {
1792+ t .Fatalf ("expected bucket-a endpoint to be preserved, got %q" , got )
1793+ }
1794+ if _ , ok := value .Master .FileStoreProperties ["jindocache.oss.bucket.bucket-a.accessKeyId" ]; ok {
1795+ t .Fatalf ("expected inline bucket-a accessKeyId to stay out of fileStoreProperties" )
1796+ }
1797+ if _ , ok := value .Master .FileStoreProperties ["jindocache.oss.bucket.bucket-a.accessKeySecret" ]; ok {
1798+ t .Fatalf ("expected inline bucket-a accessKeySecret to stay out of fileStoreProperties" )
1799+ }
1800+ if len (value .SecretProjections ) != 0 {
1801+ t .Fatalf ("expected no secret projections for inline credentials, got %d" , len (value .SecretProjections ))
1802+ }
1803+ }
1804+
17551805func TestJindoEngine_transformMountpoint (t * testing.T ) {
17561806 jindocacheSecret := & corev1.Secret {
17571807 ObjectMeta : metav1.ObjectMeta {
0 commit comments