private static SlackPayload BuildSlackPayload(string message,
                                                      string username,
                                                      string category,
                                                      OctopusSubscriptionEvent octopusEvent)
        {
            var slackChannelName = Util.GetEnvironmentVariable("SLACK_CHANNEL_NAME");

            if (string.IsNullOrWhiteSpace(slackChannelName))
            {
                throw new InvalidOperationException("SLACK_CHANNEL_NAME is not set!");
            }

            var slackMsg = new SlackPayload
            {
                Channel     = slackChannelName,
                Attachments = new List <Attachment>
                {
                    new Attachment
                    {
                        Color      = "#5C91DC",
                        Fallback   = message,
                        Footer     = username,
                        FooterIcon =
                            "https://emojipedia-us.s3.amazonaws.com/thumbs/240/microsoft/106/face-with-cowboy-hat_1f920.png",
                        Pretext = category,
                        Text    = message,
                        SecondsSinceUnixEpoch = ToUnixTime(octopusEvent.Payload.Event.Occurred.ToUniversalTime())
                    }
                }
            };

            return(slackMsg);
        }
Exemplo n.º 2
0
        public void TestMethod()
        {
            var evt = new OctopusSubscriptionEvent
            {
                EventType = "SubscriptionPayload",
                Timestamp = DateTime.Now,
                Payload   = new Payload
                {
                    BatchProcessingDate = DateTime.Now,
                    Event = new Event
                    {
                        Category = "DeploymedSucceeded",
                        Message  = "Project blah was promoted to Prod",
                        Occurred = DateTime.Now,
                        Username = "******"
                    },
                    Subscription = new Subscription {
                        Name = "Notify peeps about deployments"
                    }
                }
            };

            var o = new NewOctopusSubscriptionEventReceived(evt);

            var slackHandler = new SlackMessageOnNewOctopusSubscriptionEventReceivedHandler();
            //var t = slackHandler.Handle(o, CancellationToken.None);
        }
Exemplo n.º 3
0
 public NewOctopusSubscriptionEventReceived(OctopusSubscriptionEvent subscriptionEventEvent)
 {
     SubscriptionEventEvent = subscriptionEventEvent;
 }