コード例 #1
0
        public async Task CreateSnapshotDependency(CreateSnapshotDependency dependency)
        {
            Log.DebugFormat("API BuildConfig.CreateSnapshotDependency for: {0}, to: {0}", dependency.TargetBuildConfigId, dependency.DependencyBuildConfigId);

            string requestUri = string.Format("/app/rest/buildTypes/id:{0}", dependency.DependencyBuildConfigId);

            BuildConfigSummary buildConfig = await _http.Get <BuildConfigSummary>(requestUri);

            var dependencyDefinition = new DependencyDefinition
            {
                Id         = buildConfig.Id,
                Type       = "snapshot_dependency",
                Properties = new Properties
                {
                    Property = new PropertyList
                    {
                        new Property()
                        {
                            Name = "run-build-if-dependency-failed", Value = dependency.RunBuildIfDependencyFailed.ToString()
                        },
                        new Property()
                        {
                            Name = "run-build-if-dependency-failed-to-start", Value = dependency.RunBuildIfDependencyFailed.ToString()
                        },
                        new Property()
                        {
                            Name = "take-successful-builds-only", Value = dependency.TakeSuccessFulBuildsOnly.ToString()
                        },
                        new Property()
                        {
                            Name = "run-build-on-the-same-agent", Value = dependency.RunBuildOnTheSameAgent.ToString()
                        },
                        new Property()
                        {
                            Name = "take-started-build-with-same-revisions", Value = dependency.TakeStartedBuildWithSameRevisions.ToString()
                        },
                    }
                },
                SourceBuildConfig = buildConfig
            };

            await CreateDependency(dependency.TargetBuildConfigId, dependencyDefinition);
        }
コード例 #2
0
        public async Task CreateArtifactDependency(CreateArtifactDependency dependency)
        {
            Log.DebugFormat("API BuildConfig.CreateArtifactDependency for: {0}, to: {1}", dependency.TargetBuildConfigId, dependency.DependencyBuildConfigId);

            string requestUri = string.Format("/app/rest/buildTypes/id:{0}", dependency.DependencyBuildConfigId);

            BuildConfigSummary buildConfig = await _http.Get <BuildConfigSummary>(requestUri);

            var dependencyDefinition = new DependencyDefinition
            {
                Id         = "0",
                Type       = "artifact_dependency",
                Properties = new Properties
                {
                    Property = new PropertyList
                    {
                        new Property()
                        {
                            Name = "cleanDestinationDirectory", Value = dependency.CleanDestinationDirectory.ToString()
                        },
                        new Property()
                        {
                            Name = "pathRules", Value = dependency.PathRules
                        },
                        new Property()
                        {
                            Name = "revisionName", Value = dependency.RevisionName
                        },
                        new Property()
                        {
                            Name = "revisionValue", Value = dependency.RevisionValue
                        },
                    }
                },
                SourceBuildConfig = buildConfig
            };

            await CreateDependency(dependency.TargetBuildConfigId, dependencyDefinition);
        }