public GenerateData()
            {
                _expectedId      = Guid.NewGuid().ToString();
                _expectedName    = "Test User Name";
                _expectedEmail   = "*****@*****.**";
                _expectedMessage = "Add a new widget\n* some code\n* some tests";
                _expectedBranch  = "feature";

                IEnvironmentVariables variables = new TestEnvironmentVariables(new Dictionary <string, string>
                {
                    { "APPVEYOR", "True" },
                    { "APPVEYOR_REPO_COMMIT", _expectedId },
                    { "APPVEYOR_REPO_COMMIT_AUTHOR", _expectedName },
                    { "APPVEYOR_REPO_COMMIT_AUTHOR_EMAIL", _expectedEmail },
                    { "APPVEYOR_REPO_COMMIT_MESSAGE", _expectedMessage },
                    { "APPVEYOR_REPO_BRANCH", _expectedBranch }
                });

                var sut = new AppVeyorGitDataResolver(variables);

                var generatedData = sut.GenerateData();
                var data          = generatedData.HasValue
                    ? generatedData.Value.Match(g => g, c => (GitData?)null)
                    : null;

                _gitData = data ?? throw new Exception("Expected GitData");
            }
        public GitData GenerateData()
        {
            GitData gitData  = null;
            var     commitId = _args.OptCommitid;

            if (commitId.IsNotNullOrWhitespace())
            {
                var committerName = _args.OptCommitauthor ?? string.Empty;
                var comitterEmail = _args.OptCommitemail ?? string.Empty;
                var commitMessage = _args.OptCommitmessage ?? string.Empty;
                gitData = new GitData
                {
                    Head = new GitHead
                    {
                        Id            = commitId,
                        AuthorName    = committerName,
                        AuthorEmail   = comitterEmail,
                        CommitterName = committerName,
                        ComitterEmail = comitterEmail,
                        Message       = commitMessage
                    },
                    Branch = _args.OptCommitbranch ?? string.Empty
                };
            }

            return(gitData);
        }
        public GitData GenerateData()
        {
            var generateData = new GitData
            {
                Head = new GitHead
                {
                    Id = _variables.GetEnvironmentVariable("APPVEYOR_REPO_COMMIT") ?? string.Empty,
                    AuthorName = _variables.GetEnvironmentVariable("APPVEYOR_REPO_COMMIT_AUTHOR") ?? string.Empty,
                    AuthorEmail = _variables.GetEnvironmentVariable("APPVEYOR_REPO_COMMIT_AUTHOR_EMAIL") ?? string.Empty,
                    CommitterName = _variables.GetEnvironmentVariable("APPVEYOR_REPO_COMMIT_AUTHOR") ?? string.Empty,
                    ComitterEmail = _variables.GetEnvironmentVariable("APPVEYOR_REPO_COMMIT_AUTHOR_EMAIL") ?? string.Empty,
                Message = _variables.GetEnvironmentVariable("APPVEYOR_REPO_COMMIT_MESSAGE") ?? string.Empty
                },
                Branch = _variables.GetEnvironmentVariable("APPVEYOR_REPO_BRANCH") ?? string.Empty
            };

            return generateData;
        }
        public GitData GenerateData()
        {
            var generateData = new GitData
            {
                Head = new GitHead
                {
                    Id            = _variables.GetEnvironmentVariable("APPVEYOR_REPO_COMMIT") ?? string.Empty,
                    AuthorName    = _variables.GetEnvironmentVariable("APPVEYOR_REPO_COMMIT_AUTHOR") ?? string.Empty,
                    AuthorEmail   = _variables.GetEnvironmentVariable("APPVEYOR_REPO_COMMIT_AUTHOR_EMAIL") ?? string.Empty,
                    CommitterName = _variables.GetEnvironmentVariable("APPVEYOR_REPO_COMMIT_AUTHOR") ?? string.Empty,
                    ComitterEmail = _variables.GetEnvironmentVariable("APPVEYOR_REPO_COMMIT_AUTHOR_EMAIL") ?? string.Empty,
                    Message       = _variables.GetEnvironmentVariable("APPVEYOR_REPO_COMMIT_MESSAGE") ?? string.Empty
                },
                Branch = _variables.GetEnvironmentVariable("APPVEYOR_REPO_BRANCH") ?? string.Empty
            };

            return(generateData);
        }
Ejemplo n.º 5
0
        public GitData GenerateData()
        {
            var generateData = new GitData
            {
                Head = new GitHead
                {
                    Id            = _variables.GetEnvironmentVariable("CI_COMMIT_SHA") ?? string.Empty,
                    AuthorName    = _variables.GetEnvironmentVariable("GITLAB_USER_NAME") ?? string.Empty,
                    AuthorEmail   = _variables.GetEnvironmentVariable("GITLAB_USER_EMAIL") ?? string.Empty,
                    CommitterName = _variables.GetEnvironmentVariable("GITLAB_USER_NAME") ?? string.Empty,
                    ComitterEmail =
                        _variables.GetEnvironmentVariable("GITLAB_USER_EMAIL") ?? string.Empty,
                    Message = _variables.GetEnvironmentVariable("CI_COMMIT_MESSAGE") ?? string.Empty
                },
                Branch = _variables.GetEnvironmentVariable("CI_COMMIT_REF_NAME") ?? string.Empty
            };

            return(generateData);
        }
Ejemplo n.º 6
0
        public Either <GitData, CommitSha>?GenerateData()
        {
            var customVariablesSha = _variables.GetEnvironmentVariable("TEAMCITY_BUILD_COMMIT");

            if (customVariablesSha.IsNotNullOrWhitespace())
            {
                var generateData = new GitData
                {
                    Head = new GitHead
                    {
                        Id = customVariablesSha,
                    },
                    Branch = _variables.GetEnvironmentVariable("TEAMCITY_BUILD_BRANCH") ?? string.Empty
                };

                return(generateData);
            }
            else
            {
                _console.WriteLine("Teamcity does not automatically make build parameters available as environment variables.");
                _console.WriteLine("Add the following environment parameters to the build configuration");
                _console.WriteLine("env.TEAMCITY_BUILD_BRANCH = %teamcity.build.vcs.branch.<YOUR TEAMCITY VCS NAME>%");
                _console.WriteLine("env.TEAMCITY_BUILD_COMMIT = %build.vcs.number%");
                _console.WriteLine("env.TEAMCITY_BUILD_NUMBER = %build.counter%");
                _console.WriteLine("env.TEAMCITY_PULL_REQUEST = %teamcity.build.branch%");
                var noCustomVariablesSha = _variables.GetEnvironmentVariable("BUILD_VCS_NUMBER");
                if (noCustomVariablesSha.IsNotNullOrWhitespace())
                {
                    _console.WriteLine("Using env.BUILD_VCS_NUMBER to submit commit sha only");
                    return(new CommitSha(noCustomVariablesSha));
                }
                else
                {
                    return(null);
                }
            }
        }
Ejemplo n.º 7
0
 public GivenData(ISlugFactory slugFactory)
 {
     _slugFactory = slugFactory;
     Git          = new GitData();
 }
            public GenerateData()
            {
                _expectedId = Guid.NewGuid().ToString();
                _expectedName = "Test User Name";
                _expectedEmail = "*****@*****.**";
                _expectedMessage = "Add a new widget\n* some code\n* some tests";
                _expectedBranch = "feature";

                IEnvironmentVariables variables = new TestEnvironmentVariables(new Dictionary<string, string>
                {
                    {"APPVEYOR", "True"},
                    {"APPVEYOR_REPO_COMMIT", _expectedId},
                    {"APPVEYOR_REPO_COMMIT_AUTHOR", _expectedName},
                    {"APPVEYOR_REPO_COMMIT_AUTHOR_EMAIL", _expectedEmail},
                    {"APPVEYOR_REPO_COMMIT_MESSAGE", _expectedMessage},
                    {"APPVEYOR_REPO_BRANCH", _expectedBranch}
                });

                var sut = new AppVeyorGitDataResolver(variables);

                _gitData = sut.GenerateData();
            }