public static ProjectHistoryBean getBuildHistory(SBuildType type) { Date now = new Date(); List<ProjectHistoryItemBean> finishedBuilds = new ArrayList<>(); List<SFinishedBuild> builds = type.getHistory(); for (int i = 0; i < builds.size(); i++) { finishedBuilds.add(ProjectHistoryItemBean.build(now, builds.get(i))); if (i > MAX_BUILDS_PER_BUILD_TYPE){ break; } } return new ProjectHistoryBean(type.getProjectId(), type.getBuildTypeId(), finishedBuilds); }
public TemplateNotFoundException(BuildStateEnum buildState, SBuildType buildType, String templateId, String nonBranchOrBranch) { super("Template '" + templateId + "' was not found for build state '" + buildState.getShortName() + "'", TEMPLATE_NOT_FOUND_ERROR_CODE); this.buildState = buildState; this.projectId = buildType.getProjectId(); this.buildTypeId = buildType.getInternalId(); this.templateFormat = ""; this.templateId = templateId; this.nonBranchOrBranch = nonBranchOrBranch; }
public static ProjectAndBuildSlacknotificationsBean newInstance (SProject project, SlackNotificationProjectSettings settings, SBuildType sBuild) { ProjectAndBuildSlacknotificationsBean bean = new ProjectAndBuildSlacknotificationsBean(); bean.project = project; bean.slackNotificationProjectSettings = settings; bean.projectSlacknotifications = settings.getProjectSlackNotificationsAsList(); bean.buildSlacknotifications = new ArrayList<BuildSlacknotificationsBean>(); if (sBuild != null && sBuild.getProjectId().equals(project.getProjectId())){ bean.buildSlacknotifications.add(new BuildSlacknotificationsBean(sBuild, settings.getBuildSlackNotificationsAsList(sBuild))); } return bean; }
public String getProjectId() { // TODO Auto-generated method stub return this.getBuildType().getProjectId(); }
public static ProjectAndBuildWebhooksBean newInstance (SProject project, WebHookProjectSettings settings, SBuildType sBuild, boolean isAdmin, WebAddressTransformer webAddressTransformer) { ProjectAndBuildWebhooksBean bean = new ProjectAndBuildWebhooksBean(); bean.project = project; bean.isAdmin = isAdmin; bean.webHookProjectSettings = settings; bean.projectWebhooksWithAddress = new ArrayList<>(); for (WebHookConfig c : settings.getProjectWebHooksAsList()) { bean.projectWebhooksWithAddress.add(new WebHookConfigWithGeneralisedAddressWrapper( c, getGeneralisedWebAddress(webAddressTransformer, c.getUrl()) )); } bean.buildWebhooks = new ArrayList<>(); if (sBuild != null && sBuild.getProjectId().equals(project.getProjectId())){ bean.buildWebhooks.add(new BuildWebhooksBean(sBuild, settings.getBuildWebHooksAsList(sBuild), webAddressTransformer)); } return bean; }
/** * New version of responsibleChanged, which has some bugfixes, but * is only available in versions 7.0 and above. * @param sBuildType * @param responsibilityEntryOld * @param responsibilityEntryNew * @since 7.0 */ @Override public void responsibleChanged(@NotNull SBuildType sBuildType, @NotNull ResponsibilityEntry responsibilityEntryOld, @NotNull ResponsibilityEntry responsibilityEntryNew){ Loggers.SERVER.debug(BUILD_STATE_MESSAGE_START + sBuildType.getProjectId() + BUILD_STATE_MESSAGE_END); for (SlackNotificationConfigWrapper whcw : getListOfEnabledSlackNotifications(sBuildType.getProjectId())){ //SlackNotificationPayload payloadFormat = myManager.getFormat(whcw.whc.getPayloadFormat()); whcw.slackNotification.setPayload(myManager.responsibleChanged(sBuildType, responsibilityEntryOld, responsibilityEntryNew)); whcw.slackNotification.setEnabled(whcw.whc.isEnabledForBuildType(sBuildType) && whcw.slackNotification.getBuildStates().enabled(BuildStateEnum.RESPONSIBILITY_CHANGED)); doPost(whcw.slackNotification); //Loggers.ACTIVITIES.debug("SlackNotificationListener :: " + myManager.getFormat(whcw.whc.getPayloadFormat()).getFormatDescription()); } }
@Deprecated /** This method has been removed from the TeamCity API as of version 7.1 * * @param sBuildType * @param responsibilityInfoOld * @param responsibilityInfoNew * @param isUserAction */ public void responsibleChanged(@NotNull SBuildType sBuildType, @NotNull ResponsibilityInfo responsibilityInfoOld, @NotNull ResponsibilityInfo responsibilityInfoNew, boolean isUserAction) { if (myBuildServer.getServerMajorVersion() >= 7){ return; } Loggers.SERVER.debug(BUILD_STATE_MESSAGE_START + sBuildType.getProjectId() + BUILD_STATE_MESSAGE_END); for (SlackNotificationConfigWrapper whcw : getListOfEnabledSlackNotifications(sBuildType.getProjectId())){ //SlackNotificationPayload payloadFormat = myManager.getFormat(whcw.whc.getPayloadFormat()); whcw.slackNotification.setPayload(myManager.responsibleChanged(sBuildType, responsibilityInfoOld, responsibilityInfoNew, isUserAction)); whcw.slackNotification.setEnabled(whcw.whc.isEnabledForBuildType(sBuildType) && whcw.slackNotification.getBuildStates().enabled(BuildStateEnum.RESPONSIBILITY_CHANGED)); doPost(whcw.slackNotification); //Loggers.ACTIVITIES.debug("SlackNotificationListener :: " + myManager.getFormat(whcw.whc.getPayloadFormat()).getFormatDescription()); } }
protected WebHookHistoryItem(WebHookConfig whc, WebHookExecutionStats webHookExecutionStats, SBuildType sBuildType, WebHookErrorStatus errorStatus) { this.projectId = sBuildType.getProjectId(); this.buildTypeId = sBuildType.getBuildTypeId(); this.buildTypeName = sBuildType.getName(); this.buildTypeExternalId = sBuildType.getExternalId(); this.webHookConfig = whc; this.webHookExecutionStats = webHookExecutionStats; this.timestamp = findTimeStamp(webHookExecutionStats); this.webhookErrorStatus = checkAndSetHttpStatusInfo(errorStatus); }
@NotNull ResponsibilityEntry responsibilityEntryNew){ Loggers.SERVER.debug(ABOUT_TO_PROCESS_WEB_HOOKS_FOR + sBuildType.getProjectId() + " at buildState responsibilityChanged"); for (WebHookConfig whc : getListOfEnabledWebHooks(sBuildType.getProjectId())){ WebHook wh = webHookFactory.getWebHook(whc, myMainSettings.getProxyConfigForUrl(whc.getUrl())); try {
Loggers.SERVER.debug(ABOUT_TO_PROCESS_WEB_HOOKS_FOR + sBuild.getBuildType().getProjectId() + " at buildState " + state.getShortName()); for (WebHookConfig whc : getListOfEnabledWebHooks(sBuild.getBuildType().getProjectId())){ WebHook wh = webHookFactory.getWebHook(whc, myMainSettings.getProxyConfigForUrl(whc.getUrl())); try {