You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

.cirrus.yml 4.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. # content of service-account-credentials.json, used to access to Google Cloud Platform
  2. gcp_credentials: ENCRYPTED[650ffad2befada420a9dcba93e7efcb5cb0d7af63b42ca3ed64a1e5d0884ce93cf92055fbe7ee9af79ccc4a81c32329b]
  3. #
  4. # ENV VARIABLES
  5. #
  6. env:
  7. ### Shared variables
  8. ARTIFACTORY_URL: ENCRYPTED[!2f8fa307d3289faa0aa6791f18b961627ae44f1ef46b136e1a1e63b0b4c86454dbb25520d49b339e2d50a1e1e5f95c88!]
  9. ARTIFACTORY_PRIVATE_USERNAME: private-reader
  10. ARTIFACTORY_PRIVATE_PASSWORD: ENCRYPTED[!921e2792ce1fc164aaea1146ab2478e7aefd8aaa87022ca745adccee4deaa470bb883ad3066738fceb37622f239296a7!]
  11. ARTIFACTORY_API_KEY: ENCRYPTED[!f9526e763214dcd6f0cac5fbf712664bcf05395cc5c8f9f122ccf3a4c6d42c2bc809bff8a6d9904c935a47a05676682c!]
  12. ARTIFACTORY_DEPLOY_USERNAME: public-qa-deployer
  13. ARTIFACTORY_DEPLOY_PASSWORD: ENCRYPTED[!ee8f6410a42b81c6c91c7b760e7be7796a7774b6e6e6acf3ff2ecf8c7c04c732865a0300673ea41155c0d19a989c0a5a!]
  14. ARTIFACTORY_DEPLOY_REPO: sonarsource-public-qa
  15. GCF_ACCESS_TOKEN: ENCRYPTED[!1fb91961a5c01e06e38834e55755231d649dc62eca354593105af9f9d643d701ae4539ab6a8021278b8d9348ae2ce8be!]
  16. PROMOTE_URL: ENCRYPTED[!e22ed2e34a8f7a1aea5cff653585429bbd3d5151e7201022140218f9c5d620069ec2388f14f83971e3fd726215bc0f5e!]
  17. GITHUB_TOKEN: ENCRYPTED[!f272985ea5b49b3cf9c414b98de6a8e9096be47bfcee52f33311ba3131a2af637c1b956f49585b7757dd84b7c030233a!]
  18. BURGR_URL: ENCRYPTED[!c7e294da94762d7bac144abef6310c5db300c95979daed4454ca977776bfd5edeb557e1237e3aa8ed722336243af2d78!]
  19. BURGR_USERNAME: ENCRYPTED[!b29ddc7610116de511e74bec9a93ad9b8a20ac217a0852e94a96d0066e6e822b95e7bc1fe152afb707f16b70605fddd3!]
  20. BURGR_PASSWORD: ENCRYPTED[!83e130718e92b8c9de7c5226355f730e55fb46e45869149a9223e724bb99656878ef9684c5f8cfef434aa716e87f4cf2!]
  21. ### Project variables
  22. DEPLOY_PULL_REQUEST: true
  23. ARTIFACTS: org.sonarsource.scanner.cli:sonar-scanner-cli:jar
  24. #
  25. # RE-USABLE CONFIGS
  26. #
  27. container_definition: &CONTAINER_DEFINITION
  28. image: us.gcr.io/sonarqube-team/base:mvn-jdk-11
  29. cluster_name: cirrus-ci-cluster
  30. zone: us-central1-a
  31. namespace: default
  32. only_sonarsource_qa: &ONLY_SONARSOURCE_QA
  33. only_if: $CIRRUS_USER_COLLABORATOR == 'true' && ($CIRRUS_PR != "" || $CIRRUS_BRANCH == "master" || $CIRRUS_BRANCH =~ "branch-.*" || $CIRRUS_BRANCH =~ "dogfood-on-.*")
  34. #
  35. # TASKS
  36. #
  37. build_task:
  38. gke_container:
  39. <<: *CONTAINER_DEFINITION
  40. cpu: 1
  41. memory: 2G
  42. env:
  43. SONAR_TOKEN: ENCRYPTED[!5ba7cbb5bf9d168de69bcd444d9e884c9cf664be1115640cc64e49df6d241c309a87fc527cab533c08f289b167187017!]
  44. SONAR_HOST_URL: https://next.sonarqube.com/sonarqube
  45. maven_cache:
  46. folder: ${CIRRUS_WORKING_DIR}/.m2/repository
  47. script:
  48. - source cirrus-env BUILD
  49. - regular_mvn_build_deploy_analyze -Pdist-linux,dist-windows,dist-macosx
  50. cleanup_before_cache_script:
  51. - cleanup_maven_repository
  52. linux_qa_task:
  53. depends_on:
  54. - build
  55. <<: *ONLY_SONARSOURCE_QA
  56. gke_container:
  57. dockerfile: it/docker/Dockerfile
  58. builder_image_project: sonarqube-team
  59. builder_image_name: docker-builder-v20200915
  60. cluster_name: cirrus-ci-cluster
  61. zone: us-central1-a
  62. namespace: default
  63. cpu: 1
  64. memory: 2G
  65. env:
  66. matrix:
  67. - SQ_VERSION: LATEST_RELEASE[7.9]
  68. - SQ_VERSION: DEV
  69. maven_cache:
  70. folder: ${CIRRUS_WORKING_DIR}/.m2/repository
  71. qa_script:
  72. - source cirrus-env QA
  73. - source set_maven_build_version $BUILD_NUMBER
  74. - cd it
  75. - mvn -B -e -Dsonar.runtimeVersion="$SQ_VERSION" -Dmaven.test.redirectTestOutputToFile=false verify
  76. cleanup_before_cache_script:
  77. - cleanup_maven_repository
  78. create_win_vm_task:
  79. <<: *ONLY_SONARSOURCE_QA
  80. skip: "!changesInclude('it/packer/setup.ps1', 'it/packer/sonar-scanner-cli-qa.json')"
  81. gce_instance:
  82. image_project: sonarqube-team
  83. image_family: packer-builder
  84. zone: us-central1-a
  85. type: n1-standard-8
  86. use_ssd: true
  87. scopes:
  88. - cloud-platform
  89. build_script:
  90. - packer build -force it/packer/sonar-scanner-cli-qa.json
  91. win_qa_task:
  92. depends_on:
  93. - create_win_vm
  94. - build
  95. <<: *ONLY_SONARSOURCE_QA
  96. gce_instance:
  97. image_project: sonarqube-team
  98. # This VM is built using Packer, see "create_win_vm_task" above.
  99. image_name: sonar-scanner-cli-qa
  100. platform: windows
  101. zone: us-central1-a
  102. type: n1-standard-8
  103. use_ssd: true
  104. env:
  105. CIRRUS_SHELL: bash
  106. matrix:
  107. - SQ_VERSION: LATEST_RELEASE[7.9]
  108. - SQ_VERSION: DEV
  109. maven_cache:
  110. folder: ${CIRRUS_WORKING_DIR}/.m2/repository
  111. qa_script:
  112. - source cirrus-env QA
  113. - source set_maven_build_version $BUILD_NUMBER
  114. - cd it
  115. - mvn -B -e -Dsonar.runtimeVersion="$SQ_VERSION" -Dmaven.test.redirectTestOutputToFile=false verify
  116. cleanup_before_cache_script:
  117. - cleanup_maven_repository
  118. promote_task:
  119. depends_on:
  120. - linux_qa
  121. - win_qa
  122. <<: *ONLY_SONARSOURCE_QA
  123. gke_container:
  124. <<: *CONTAINER_DEFINITION
  125. cpu: 0.5
  126. memory: 500M
  127. maven_cache:
  128. folder: $CIRRUS_WORKING_DIR/.m2/repository
  129. script:
  130. - cirrus_promote_maven
  131. cleanup_before_cache_script:
  132. - cleanup_maven_repository