Плагин Jenkins kubernetes Office 365 Connector Webhook не смог разрешить хост - PullRequest
0 голосов
/ 10 июля 2020

У меня следующая проблема. У нас есть кластер кубернетов, работающий на платформе DigitalOcean Cloud. Я установил с помощью Helm-диаграммы сервер непрерывной интеграции Jenkins в качестве главного / подчиненного, создал контроллер входа для доступа к экземпляру jenkins. В диаграмме управления уже есть предварительно настроенный плагин kubernetes. Чтобы обеспечить обратную связь с производством, я решил использовать Teams Connector. Вот мои шаги по установке. Подключаемый модуль соединителя 365

Теперь, когда я запускаю задание / конвейер с настроенным подключаемым модулем коннектора Office 365, я получаю следующее сообщение (вывод журнала консоли):

Running as SYSTEM
Agent default-lzcjk is provisioned from template default
---
apiVersion: "v1"
kind: "Pod"
metadata:
  labels:
    jenkins/jenkins-jenkins-slave: "true"
    jenkins/label: "jenkins-jenkins-slavex"
  name: "default-lzcjk"
spec:
  containers:
  - args:
    - "********"
    - "default-lzcjk"
    env:
    - name: "JENKINS_SECRET"
      value: "********"
    - name: "JENKINS_TUNNEL"
      value: "jenkins-agent:50000"
    - name: "JENKINS_AGENT_NAME"
      value: "default-lzcjk"
    - name: "JENKINS_NAME"
      value: "default-lzcjk"
    - name: "JENKINS_AGENT_WORKDIR"
      value: "/home/jenkins"
    - name: "JENKINS_URL"
      value: "http://jenkins.jenkins.svc.cluster.local:8080"
    image: "jenkins/jnlp-slave:3.27-1"
    imagePullPolicy: "IfNotPresent"
    name: "jnlp"
    resources:
      limits:
        memory: "512Mi"
        cpu: "512m"
      requests:
        memory: "512Mi"
        cpu: "512m"
    securityContext:
      privileged: false
      runAsUser: 2000
    tty: false
    volumeMounts:
    - mountPath: "/var/run/docker.sock"
      name: "volume-0"
      readOnly: false
    - mountPath: "/home/jenkins"
      name: "workspace-volume"
      readOnly: false
    workingDir: "/home/jenkins"
  imagePullSecrets:
  - name: "dockerhub"
  nodeSelector:
    kubernetes.io/os: "linux"
  restartPolicy: "Never"
  securityContext:
    runAsUser: 1000
  serviceAccount: "default"
  volumes:
  - hostPath:
      path: "/var/run/docker.sock"
    name: "volume-0"
  - emptyDir:
      medium: ""
    name: "workspace-volume"

Building remotely on default-lzcjk (jenkins-jenkins-slave) in workspace /home/jenkins/workspace/NotificationTest
[Office365connector] Failed to post data to webhook - https://outlook.office.com/webhook/898751e9-fa04-48dc-af5b-e94d7efb9b60@22de9855-fa92-4337-b66b-9d7d43830de6/JenkinsCI/4cdee7b7ae9d4615926e25658602fab5/d758a3f9-2841-4453-b92f-be5d6ccd026b
java.net.UnknownHostException: outlook.office.com
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:184)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:607)
    at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:666)
    at sun.security.ssl.SSLSocketImpl.<init>(SSLSocketImpl.java:471)
    at sun.security.ssl.SSLSocketFactoryImpl.createSocket(SSLSocketFactoryImpl.java:153)
    at org.apache.commons.httpclient.protocol.SSLProtocolSocketFactory.createSocket(SSLProtocolSocketFactory.java:109)
    at org.apache.commons.httpclient.protocol.ControllerThreadSocketFactory$1.doit(ControllerThreadSocketFactory.java:98)
    at org.apache.commons.httpclient.protocol.ControllerThreadSocketFactory$SocketTask.run(ControllerThreadSocketFactory.java:165)
    at java.lang.Thread.run(Thread.java:748)
[Office365connector] Failed to post data to webhook - https://outlook.office.com/webhook/898751e9-fa04-48dc-af5b-e94d7efb9b60@22de9855-fa92-4337-b66b-9d7d43830de6/JenkinsCI/4cdee7b7ae9d4615926e25658602fab5/d758a3f9-2841-4453-b92f-be5d6ccd026b
java.net.UnknownHostException: outlook.office.com
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:184)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:607)
    at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:666)
    at sun.security.ssl.SSLSocketImpl.<init>(SSLSocketImpl.java:471)
    at sun.security.ssl.SSLSocketFactoryImpl.createSocket(SSLSocketFactoryImpl.java:153)
    at org.apache.commons.httpclient.protocol.SSLProtocolSocketFactory.createSocket(SSLProtocolSocketFactory.java:109)
    at org.apache.commons.httpclient.protocol.ControllerThreadSocketFactory$1.doit(ControllerThreadSocketFactory.java:98)
    at org.apache.commons.httpclient.protocol.ControllerThreadSocketFactory$SocketTask.run(ControllerThreadSocketFactory.java:165)
    at java.lang.Thread.run(Thread.java:748)
[Office365connector] Failed to post data to webhook - https://outlook.office.com/webhook/898751e9-fa04-48dc-af5b-e94d7efb9b60@22de9855-fa92-4337-b66b-9d7d43830de6/JenkinsCI/4cdee7b7ae9d4615926e25658602fab5/d758a3f9-2841-4453-b92f-be5d6ccd026b
java.net.UnknownHostException: outlook.office.com
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:184)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:607)
    at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:666)
    at sun.security.ssl.SSLSocketImpl.<init>(SSLSocketImpl.java:471)
    at sun.security.ssl.SSLSocketFactoryImpl.createSocket(SSLSocketFactoryImpl.java:153)
    at org.apache.commons.httpclient.protocol.SSLProtocolSocketFactory.createSocket(SSLProtocolSocketFactory.java:109)
    at org.apache.commons.httpclient.protocol.ControllerThreadSocketFactory$1.doit(ControllerThreadSocketFactory.java:98)
    at org.apache.commons.httpclient.protocol.ControllerThreadSocketFactory$SocketTask.run(ControllerThreadSocketFactory.java:165)
    at java.lang.Thread.run(Thread.java:748)
[NotificationTest] $ /bin/sh -xe /tmp/jenkins5191245990750793006.sh
+ echo Test2
Test2
[Office365connector] Matched status 'SUCCESS' for webhook with name 'Test2'.
Finished: SUCCESS

Примечания:

  • Я протестировал URL-адрес веб-перехватчика с почтальоном и получил уведомления в Teams, поэтому проблема лежит на стороне Дженкинса
  • Я думаю, что модуль не может создать почтовый запрос, потому что что-то отсутствует в ведомой или облачной конфигурации

Пожалуйста, предоставьте решение этой проблемы , как должно быть очень очевидно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...