public void GetBucketKeys_ReturnsValidCombinations(string splittableTags, string source, params string[] expected) { var provider = new BucketKeyProvider(splittableTags.Split("|")); var keys = provider.GetBucketKeys(Parse(source)); keys.Select(Format).Should().BeEquivalentTo(expected); }
public void GetBucketKeys_RealCase_ReturnsValidCombinations() { var provider = new BucketKeyProvider(); var keys = provider.GetBucketKeys(Parse("host:vm1|operation:read|status:200|type:requests|gfv:100501")); keys.Select(Format) .Should() .BeEquivalentTo( "host:vm1|operation:read|status:200|type:requests|gfv:100501", "host:vm1|operation:read|status:any|type:requests|gfv:100501", "host:vm1|operation:any|status:200|type:requests|gfv:100501", "host:vm1|operation:any|status:any|type:requests|gfv:100501", "host:any|operation:read|status:200|type:requests|gfv:100501", "host:any|operation:read|status:any|type:requests|gfv:100501", "host:any|operation:any|status:200|type:requests|gfv:100501", "host:any|operation:any|status:any|type:requests|gfv:100501"); }
public override int Execute(string[] commandLineArguments) { Options.Parse(commandLineArguments); if (string.IsNullOrEmpty(pathToPackage)) { throw new CommandException($"No package file was specified. Please provide `{TentacleVariables.CurrentDeployment.PackageFilePath}` variable"); } if (!fileSystem.FileExists(pathToPackage)) { throw new CommandException("Could not find package file: " + pathToPackage); } var environment = AwsEnvironmentGeneration.Create(log, variables).GetAwaiter().GetResult(); var bucketKeyProvider = new BucketKeyProvider(); var targetType = GetTargetMode(targetMode); var conventions = new List <IConvention> { new DelegateInstallConvention(d => extractPackage.ExtractToStagingDirectory(pathToPackage)), new LogAwsUserInfoConvention(environment), new CreateS3BucketConvention(environment, _ => bucket), new UploadAwsS3Convention( log, fileSystem, environment, bucket, targetType, new VariableS3TargetOptionsProvider(variables), bucketKeyProvider, substituteInFiles, structuredConfigVariablesService ) }; var deployment = new RunningDeployment(pathToPackage, variables); var conventionRunner = new ConventionProcessor(deployment, conventions, log); conventionRunner.RunConventions(); return(0); }