Advertisement
Guest User

Untitled

a guest
Apr 24th, 2016
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.95 KB | None | 0 0
  1.  
  2. I-Tee
  3. Home
  4. Labs
  5. My machines
  6. Sign out
  7. Kris-Gerhard.Aabrams
  8. Machine lab11server successfully started
  9. Labor 11: Pidevkooste
  10.  
  11. Praktikumi edukaks läbimiseks tuleb täita järgmised sammud järgide loengus kirjeldatud juhiseid.
  12.  
  13. NB! Töö lõppedes tuleb virtuaalserverisse laadida https://ained.ttu.ee lehelt nädala materjalide hulgast programm lab11-check käivitada käsk sudo ./lab11-check ja kuvatud räsi kopeerida https://ained.ttu.ee lehel ITV0050 aine vastava labori Quizzi vastuseks.
  14.  
  15. 1) Installeerida GIT.
  16.  
  17. 2) Looge kasutaja "kasutaja" kodukataloogi kaust projekt1_salv.
  18.  
  19. 3) Looge kausta projekt1_salv tühi ilma töökataloogita salv (ingl. k. "bare repository").
  20.  
  21. 4) Kloonige vastloodud salve sisu kausta projekt1.
  22.  
  23. 5) Looge tekstiredaktoriga fail ~/projekt1/anagram.py, mille sisuks on
  24.  
  25. def anagram(string, comp):
  26. """
  27. Check whether two strings are anagrams of each other.
  28.  
  29. For more information see: https://en.wikipedia.org/wiki/Anagram
  30.  
  31. Arguments:
  32. string -- first string
  33. comp -- second string
  34.  
  35. Returns:
  36. True if the strings are anagrams, False otherwise.
  37. """
  38. if len(string) != len(comp):
  39. return False
  40. for char in string:
  41. found = False
  42. for i in range(len(comp)):
  43. if comp[i] == char:
  44. comp = comp[0:i] + comp[i+1:]
  45. found = True
  46. break
  47. if not found:
  48. return False
  49. return True if len(comp) == 0 else False
  50.  
  51. Looge ka fail ~/projekt1/anagram_tests.py sisuga
  52.  
  53. import unittest
  54. import anagram
  55.  
  56. class Tests(unittest.TestCase):
  57. def test_different_length_strings(self):
  58. self.assertEqual(anagram.anagram("hallo", "kosmos"), False)
  59.  
  60. if __name__ == "__main__":
  61. unittest.main()
  62.  
  63. 6) Lisage loodud failid GIT salve
  64.  
  65. cd ~/projekt1
  66.  
  67. git add -A
  68.  
  69. git commit -m "Failid gitti imporditud"
  70.  
  71. Käske täites jälgige Giti suuniseid meiliaadressi, kasutaja tegeliku nime ja ka vaikimisi harude üleslaadimise režiimi kohta. Kasutaja nimi peab olema sama, mis kasutajal, millega sisse logiti.
  72.  
  73. 7) Laadige tehtud muudatused ühiselt kasutatavasse git salve, milleks antud juhul on /home/kasutaja/projekt1_salv. Seda saab teha käsuga "git push origin master".
  74.  
  75. 8) Installeeriga jenkins vastavalt loenguslaididel olevatele juhistele. Installeerimise õnnestumise kontrolliks avage labori arvutis brauser ja navigeerige aadressile http://localhost:8080
  76.  
  77. 9) Seadistage Jenkinsi ligipääsuõigused vastavalt loenguslaididele. Seejärel looge linki "Sign up" kasutades uus kasutaja "dev" kelle parooliks on "dev" (see on vajalik automaathindamissüsteemi toimimiseks. Kui kasutate muud parooli, siis võib jääda praktikum arvestuseta).
  78.  
  79. 10) Seadistage kasutajale "dev" õiguste maatriksis kõik õigused.
  80.  
  81. 11) Paigaldage Jenkinsi pistikprogrammide uuendused.
  82.  
  83. 12) Paigaldage Jenkinsisse "Git plugin" nimeline pistikprogramm.
  84.  
  85. 13) Pöörduge Jenkinsi avalehele ning looge uus "freestyle" projekt. Projekti nimeks pange "Projekt1". Projekti versioonihaldussüsteemiks valige git ning lisage URL-ks enda loodud git salv: /home/kasutaja/projekt1_salv. Lisage samuti uuenduste kontrollimise režiim "Poll SCM": "H/10 ", mis tähendab iga kümne minuti tagust muudatuste kontrolli, kus H tähistab projekti nimest arvutatud räsist tuletatud minutit, et vältida erinevate projektide tööde korraga käivitamist.
  86.  
  87. 14) Kontrollige konsooli väljundist, et projekti laadimine Gitist õnnestub.
  88.  
  89. 15) Lisage /home/kasutaja/projekt1 kausta alamkataloog .ci
  90.  
  91. 16) Looge /home/kasutaja/projekt1/.ci/jenkins.sh fail, mille sisuks on
  92.  
  93. #!/bin/bash
  94. python3 anagram_tests.py
  95.  
  96. NB! Lisage failile käivitamisõigus. Nt käsuga chmod +x jenkins.sh
  97.  
  98. 17) Lisage registreerige muudatused (commit) ja laadige muudatused salve /home/kasutaja/projekt1_salv (git push)
  99.  
  100. 18) Konfigureerige Jenkinsi projektis vastavalt loenguslaididele projekti "build" skriptiks kesta skripti käivitamine "execute shell".
  101.  
  102. 19) Installeerige python3-nose ja python3-coverage.
  103.  
  104. 20) Uuendage faili .ci/jenkins.sh järgnevalt:
  105.  
  106. #!/bin/bash
  107. TEST_FILE=anagram_tests.py
  108. python3-coverage run $TEST_FILE
  109. python3-coverage xml
  110. nosetests3 --with-xunit $TEST_FILE
  111.  
  112. 21) Paigaldage Cobertura pistikprogramm Jenkinsisse.
  113.  
  114. 22) Seadistage koostejärgsed tegevused (post-build actions) "Publish JUnit test result report" ja "Publish Cobertura Coverage Report" vastavalt loenguslaididel kirjeldatud juhistele.
  115.  
  116. 23) Modifitseerige faili anagram_tests.py selliselt, et koodikate saavutaks 100% ridade osas. Kas on võimalik saavutada 100% harude katet 100% ridade katte korral?
  117.  
  118. 24) Installeerige Jenkinsisse ThinBackup pistikprogramm.
  119.  
  120. 25) Seadistage vastavalt slaididel olevatele juhistele varukoopiad nii, et iga 10 minuti tagant tehtaks seadistustest täielik varukoopia.
  121.  
  122. 26) Seadistage vastavalt slaididel olevatele juhistele Jenkins nii, et koosteülesanded jookseksid alammasinas (slave) ja ülemmasinas koosteid ei toimuks.
  123.  
  124. NB! Töö lõppedes tuleb virtuaalserverisse laadida https://ained.ttu.ee lehelt nädala materjalide hulgast programm lab11-check käivitada käsk sudo ./lab11-check ja kuvatud räsi kopeerida https://ained.ttu.ee lehel ITV0050 aine vastava labori Quizzi vastuseks.
  125.  
  126. Lisaülesanne:
  127.  
  128. Java projekti kooste Jenkinsiga
  129.  
  130. a) Installeerige süsteemi Java 8 (OpenJDK 8) vastavalt järgmistele juhistele (kindlasti tuleks enne distributsioonivälise paki paigaldamist kontrollida, ega vahepeal pole vastavat pakki juba põhinimekirja lisatud): http://ubuntuhandbook.org/index.php/2015/01/install-openjdk-8-ubuntu-14-04-12-04-lts/
  131.  
  132. b) Konfigureerige Jenkinsis JDK 8: Jenkins -> Manage Jenkins -> Configure System: JDK. Lisada nimi ja JAVA_HOME kataloog: /usr/lib/jvm/java-8-openjdk-amd64
  133.  
  134. c) Lisage Jenkinsisse projekt minimal-json.
  135.  
  136. d) Lisage projekti GIT salveks https://github.com/ralfstx/minimal-json.git
  137.  
  138. e) Lisage koostatavaks haruks "*/master".
  139.  
  140. f) Muudatuste kontrollimise sageduseks iga 30 minuti järel.
  141.  
  142. g) Konfigureerige projekti tüübiks Maven.
  143.  
  144. h) Lisage "Top level Maven target"-ks: "clean install".
  145.  
  146. i) Kooste tulemusel peab kompileerimine õnnestuma ja jõudlustestid läbi jooksma. Kontrollige tulemust uurides kooste logi (console output).
  147.  
  148. NB! Töö lõppedes tuleb virtuaalserverisse laadida https://ained.ttu.ee lehelt nädala materjalide hulgast programm lab11-check käivitada käsk sudo ./lab11-check ja kuvatud räsi kopeerida https://ained.ttu.ee lehel ITV0050 aine vastava labori Quizzi vastuseks.
  149. Virtual machines
  150. lab11server (running)
  151. RDP info: itee.cs.ttu.ee:10151
  152. user: Kris-Gerhard.Aabrams
  153. pwd: D2vFwnTz
  154.  
  155. Pause Stop
  156. < more Windows
  157. Click to copy
  158. cmdkey /generic:itee.cs.ttu.ee /user:localhost\Kris-Gerhard.Aabrams /pass:D2vFwnTz&&mstsc.exe /v:itee.cs.ttu.ee:10151 /f
  159. Start all Stop all Restart lab End lab
  160. i-Tee 2011
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement