/** * Sends a message to slack created by information given in the event. * * @param Event $event */ public function send(Event $event) { $client = new \Maknz\Slack\Client($this->webhookURL, $this->settings); $gotoUrl = "<" . $this->router->generate("bauer_incident_dashboard_core_homepage", array('project' => $event->getEventIdentifier()->getProject()->getIdentifier()), true) . "|Go to www.koalamon.com>"; if ($event->hasUrl()) { $gotoUrl .= "\n<" . $event->getUrl() . "|Go to " . $event->getEventIdentifier()->getTool()->getName() . ">"; } if ($event->getStatus() == Event::STATUS_SUCCESS) { $color = self::COLOR_SUCCESS; $label = "Your test succeeded (" . $event->getSystem() . ")\nIdentifier: " . $event->getEventIdentifier()->getIdentifier() . ")"; $message = ""; } else { $color = self::COLOR_FAILURE; $label = "Your test failed (" . $event->getSystem() . ") \nIdentifier: " . $event->getEventIdentifier()->getIdentifier() . ""; $message = $this->slackifyText($event->getMessage()) . "\n"; } $client->enableMarkdown()->attach(['text' => $message . $gotoUrl, 'color' => $color])->send($label); }
public function closeAction(Event $event) { $closeEvent = new Event(); $closeEvent->setIdentifier($event->getIdentifier()); $closeEvent->setSystem($event->getSystem()); $closeEvent->setStatus('success'); $closeEvent->setMessage('manually closed'); $em = $this->getDoctrine()->getEntityManager(); $em->persist($closeEvent); $em->flush(); return $this->redirect($this->generateUrl("bauer_incident_dashboard_core_admin")); }
public function closeAction(Event $event) { $this->assertUserRights(UserRole::ROLE_COLLABORATOR); $closeEvent = new Event(); $closeEvent->setEventIdentifier($event->getEventIdentifier()); $closeEvent->setSystem($event->getSystem()); $closeEvent->setStatus(Event::STATUS_SUCCESS); $closeEvent->setIsStatusChange(true); $closeEvent->setUnique($event->isUnique()); $closeEvent->setType($event->getType()); $closeEvent->setMessage('Manually closed by ' . $this->getUser()->getUsername() . '.'); ProjectHelper::addEvent($this->get("Router"), $this->getDoctrine()->getEntityManager(), $closeEvent); return $this->redirect($this->generateUrl("bauer_incident_dashboard_core_homepage", array("project" => $event->getEventIdentifier()->getProject()->getIdentifier()))); }