Jenkins CI Traffic Light (2 / 5 steg)
Steg 2: Skapa Python-skript (PyCharm)
När PyCharm har installerats på din dator, kopiera och klistra in följande kod:
>>> Kopiera allt under raden <<<
importera json
importera sys
importera urllib2
Importera tid
importera följetong
# Konfigurationer
ping_server = 30
jenkins_jobs = ["ditt jobb namn här"]
ser = följetong. Följetong ("COM3", 9600)
# Arduino konfiguration
FRAMGÅNG = "b"
FEL = 'r'
BYGGA = "a"
INSTABIL = "y"
Time.Sleep(5)
def get_status(jobName):
jenkinsUrl = "http://Your Jenkins Server: Port/jobb /"
försök:
jenkinsStream = urllib2.urlopen (jenkinsUrl + jobbnamn + "/ lastBuild/api/json")
utom urllib2. HTTPError, e:
skriva ut "URL: fel:" + str(e.code)
skriva ut "(namnet på jobbet [" + jobbnamn + "] förmodligen fel)"
sys.Exit(2)
försök:
buildStatusJson = json.load (jenkinsStream)
utom:
skriva ut "Kunde inte tolka json"
sys.Exit(3)
återvändande jobbnamn, buildStatusJson ["tidsstämpel"], buildStatusJson ["resultatet"],
While(1):
för jobb i jenkins_jobs:
status = get_status(job)
# utskriftsstatus [0], status [2]
om status [2] == "Instabil":
ser.write(UNSTABLE)
Elif status [2] == "Framgång":
ser.write(Success)
Elif status [2] == "Fel":
ser.write(Failure)
Elif status [2] == ingen:
ser.write(Building)
Time.Sleep(ping_server)
Anteckningar:
På Windows 7, kan Arduinos COM-portens nummer ses under Enhetshanteraren.