Advertisement
Guest User

Untitled

a guest
Dec 9th, 2019
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.45 KB | None | 0 0
  1. pipeline {
  2. agent none
  3.  
  4. triggers {
  5. // Schedule every Sunday
  6. cron('H H * * 7')
  7. }
  8.  
  9. options{
  10. timeout(time: 60, unit: 'MINUTES')
  11. }
  12.  
  13. stages('Run Pipeline'){
  14. stage('Run Parallel'){
  15. parallel {
  16. stage('Frontend') {
  17. agent {
  18. dockerfile{
  19. dir 'TestReporter/frontend'
  20. filename 'DockerfileFrontend'
  21. }
  22. }
  23. environment {
  24. HOME = "."
  25. }
  26.  
  27. stages {
  28. stage('Install') {
  29. steps {
  30. dir("TestReporter/frontend") {
  31. sh 'npm ci'
  32. }
  33. }
  34. }
  35.  
  36. stage('Build Client') {
  37. steps {
  38. dir("TestReporter/frontend") {
  39. sh 'npm run build'
  40. }
  41. }
  42. }
  43. stage('Publish'){
  44. steps{
  45. dir("TestReporter/frontend"){
  46. sh 'chmod 700 publish.sh'
  47. sh './publish.sh'
  48. }
  49. }
  50. }
  51. stage('Cleanup'){
  52. steps{
  53. dir("TestReporter/frontend"){
  54. sh 'rm -rf node_modules'
  55. }
  56. }
  57. }
  58. }
  59. }
  60.  
  61. stage('Backend'){
  62. agent {
  63. label 'windows_standard'
  64. }
  65.  
  66. stages{
  67. stage('Restore') {
  68. steps {
  69. dir("TestReporter/backend") {
  70. bat 'dotnet restore -clp:ForceConsoleColor'
  71. }
  72. }
  73. }
  74.  
  75. stage('Build') {
  76. steps {
  77. dir("TestReporter/backend") {
  78. bat 'dotnet build --no-restore -clp:ForceConsoleColor'
  79. }
  80. }
  81. }
  82.  
  83. stage('Test') {
  84. steps {
  85. dir("TestReporter/backend") {
  86. // Ignore return code, so that failing test results in yellow build
  87. bat returnStatus: true, script: 'dotnet test --logger "trx;LogFileName=TestResults.trx" --no-build -clp:ForceConsoleColor'
  88. }
  89. }
  90. post {
  91. always {
  92. dir("TestReporter/backend") {
  93. step([$class: 'MSTestPublisher', testResultsFile: "**/TestResults/*.trx", failOnError: true, keepLongStdio: true])
  94. }
  95. }
  96. }
  97. }
  98.  
  99. stage('Deploy') {
  100. steps {
  101. dir("TestReporter/backend") {
  102. bat 'dotnet publish TestReporterBackend /p:PublishProfile="DeployAzure" /p:Password="Den wolltest du wohl klauen"'
  103. }
  104. }
  105. }
  106.  
  107. stage('Cleanup') {
  108. steps {
  109. dir("TestReporter/backend") {
  110. bat 'dotnet clean'
  111. }
  112. }
  113. }
  114. }
  115. }
  116. }
  117. }
  118. }
  119. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement