Exemple #1
0
        public VaultClientFactory(FileArgsBase args)
        {
            if (args == null)
            {
                throw new ArgumentNullException(nameof(args));
            }
            if (String.IsNullOrEmpty(args.VaultRoleId))
            {
                throw new ArgumentException("Vault Rold Id missing", nameof(args.VaultRoleId));
            }
            if (String.IsNullOrEmpty(args.VaultSecretId))
            {
                throw new ArgumentException("Vault Secret Id missing", nameof(args.VaultSecretId));
            }
            if (String.IsNullOrEmpty(args.VaultUri))
            {
                throw new ArgumentException("Vault VaultUri missing", nameof(args.VaultUri));
            }
            IAuthMethodInfo authMethod = new AppRoleAuthMethodInfo(args.VaultRoleId, secretId: args.VaultSecretId);

            _vaultClientSettings = new VaultClientSettings(args.VaultUri, authMethod)
            {
                VaultServiceTimeout = TimeSpan.FromMinutes(5)
            };
        }
            public void NullOrEmptyRoleIdThrows(string roleId)
            {
                var args = new FileArgsBase()
                {
                    VaultRoleId = roleId
                };
                Action test = () => new VaultClientFactory(args);

                test.Should().Throw <ArgumentException>();
            }
            public void NullOrEmptyUriThrows(string uri)
            {
                var args = new FileArgsBase()
                {
                    VaultUri = uri, VaultRoleId = "a", VaultSecretId = "b"
                };
                Action test = () => new VaultClientFactory(args);

                test.Should().Throw <ArgumentException>();
            }
        public void ArrayFlattenTest(string json, string prefix, string expectedName)
        {
            var args = new FileArgsBase()
            {
                Prefix = prefix, MergeArrays = true
            };
            var js   = new VariableConverter(args, Mock.Of <ILogger>());
            var vars = js.Convert(json);

            vars.Single().Name.Should().Be(expectedName);
        }
        public void PrefixUnderscoreSeparatorTest(string json, string prefix, string expectedName)
        {
            var args = new FileArgsBase()
            {
                Prefix = prefix, MergeArrays = false, VariableType = VariableType.Environment
            };
            var js   = new VariableConverter(args, Mock.Of <ILogger>());
            var vars = js.Convert(json);

            vars.Single().Name.Should().Be(expectedName);
        }
        public void BasicEnviroTest()
        {
            var args = new FileArgsBase()
            {
                Prefix = "", MergeArrays = false, VariableType = VariableType.Environment
            };
            var js   = new VariableConverter(args, Mock.Of <ILogger>());
            var vars = js.Convert("{\"a\":\"b\"}");

            vars.Single().Name.Should().Be("a");
        }
Exemple #7
0
 public VaultProvider(FileArgsBase args, IVaultClientFactory vaultClientFactory, ILogger logger)
 {
     if (args == null)
     {
         throw new ArgumentNullException(nameof(args));
     }
     if (!String.IsNullOrEmpty(args.MountPoint))
     {
         _mountPoint = args.MountPoint;
     }
     _vaultClientFactory = vaultClientFactory ?? throw new ArgumentNullException(nameof(vaultClientFactory));
     _logger             = logger ?? throw new ArgumentNullException(nameof(logger));
 }
Exemple #8
0
        public VariableConverter(FileArgsBase args, ILogger logger)
        {
            _args = args ?? throw new ArgumentNullException(nameof(args));
            switch (args.VariableType)
            {
            case VariableType.Environment:
            case VariableType.EnvironmentGlob:
                _separator = "__";
                break;

            case VariableType.JsonConversion:
                _separator = ":";
                break;

            default:
                throw new ArgumentException($"Unknown enum vaule of {args.VariableType}", nameof(args.VariableType));
            }

            _logger = logger ?? throw new ArgumentNullException(nameof(logger));
        }
 public void GoodArgsDoesNotThrow(FileArgsBase args)
 {
     // should not throw
     new VaultClientFactory(args);
 }