github.com/mongodb/grip@v0.0.0-20240213223901-f906268d82b9/evergreen.yaml (about) 1 ####################################### 2 # YAML Templates # 3 ####################################### 4 variables: 5 - &run-build 6 # runs a build operation. The task name in evergreen should 7 # correspond to a make target for the build operation. 8 name: test 9 must_have_test_results: true 10 commands: 11 - func: get-project-and-modules 12 - func: run-make 13 vars: { target: "${task_name}" } 14 15 ####################################### 16 # Functions # 17 ####################################### 18 functions: 19 get-project-and-modules: 20 - command: git.get_project 21 type: system 22 params: 23 directory: grip 24 - command: subprocess.exec 25 type: setup 26 params: 27 working_dir: grip 28 binary: make 29 args: ["mod-tidy"] 30 include_expansions_in_env: ["GOROOT"] 31 run-make: 32 command: subprocess.exec 33 type: test 34 params: 35 working_dir: grip 36 binary: make 37 args: ["${make_args}", "${target}"] 38 include_expansions_in_env: ["GOROOT", "RACE_DETECTOR"] 39 40 ####################################### 41 # Tasks # 42 ####################################### 43 post: 44 - command: gotest.parse_files 45 type: setup 46 params: 47 files: 48 - "grip/build/output.*" 49 - command: s3.put 50 type: system 51 params: 52 aws_key: ${aws_key} 53 aws_secret: ${aws_secret} 54 local_files_include_filter: ["grip/build/output.*.coverage.html"] 55 remote_file: evergreen/${task_id}/ 56 bucket: mciuploads 57 content_type: text/html 58 permissions: public-read 59 display_name: "(html) coverage:" 60 - command: s3.put 61 type: system 62 params: 63 aws_key: ${aws_key} 64 aws_secret: ${aws_secret} 65 local_files_include_filter: ["grip/build/output.*.coverage"] 66 remote_file: evergreen/${task_id}/ 67 bucket: mciuploads 68 content_type: text/plain 69 permissions: public-read 70 display_name: "(txt) coverage:" 71 72 tasks: 73 - <<: *run-build 74 tags: ["report"] 75 name: lint-grip 76 - <<: *run-build 77 tags: ["report"] 78 name: lint-logging 79 - <<: *run-build 80 tags: ["report"] 81 name: lint-message 82 - <<: *run-build 83 tags: ["report"] 84 name: lint-recovery 85 - <<: *run-build 86 tags: ["report"] 87 name: lint-send 88 - <<: *run-build 89 tags: ["report"] 90 name: lint-slogger 91 92 - name: verify-mod-tidy 93 tags: ["report"] 94 commands: 95 - command: git.get_project 96 type: system 97 params: 98 directory: grip 99 - func: run-make 100 vars: { target: "${task_name}" } 101 102 - <<: *run-build 103 tags: ["report"] 104 name: coverage 105 106 - <<: *run-build 107 tags: ["test"] 108 name: test-grip 109 - <<: *run-build 110 tags: ["test"] 111 name: test-logging 112 - <<: *run-build 113 tags: ["test"] 114 name: test-message 115 - <<: *run-build 116 tags: ["test"] 117 name: test-recovery 118 - <<: *run-build 119 tags: ["test"] 120 name: test-send 121 - <<: *run-build 122 tags: ["test"] 123 name: test-slogger 124 125 - <<: *run-build 126 tags: ["test"] 127 name: benchmark-send 128 must_have_test_results: false 129 130 ####################################### 131 # Buildvariants # 132 ####################################### 133 buildvariants: 134 - name: lint 135 display_name: Lint 136 expansions: 137 GOROOT: /opt/golang/go1.20 138 run_on: 139 - ubuntu2204-small 140 tasks: [ ".report" ] 141 142 - name: ubuntu 143 display_name: Ubuntu 22.04 144 expansions: 145 GOROOT: /opt/golang/go1.20 146 RACE_DETECTOR: true 147 run_on: 148 - ubuntu2204-small 149 tasks: [ ".test" ] 150 151 - name: macos 152 display_name: macOS 153 expansions: 154 GOROOT: /opt/golang/go1.20 155 run_on: 156 - macos-1100-arm64 157 tasks: [ ".test" ] 158 159 - name: windows 160 display_name: Windows 161 run_on: 162 - windows-vsCurrent-small 163 expansions: 164 GOROOT: C:/golang/go1.20 165 tasks: [ ".test" ]