github.com/billybanfield/evergreen@v0.0.0-20170525200750-eeee692790f7/service/testdata/base_project.yaml (about)

     1  display_name: testBuildId
     2  owner: evergreen-ci
     3  repo: render
     4  repokind: github
     5  branch: master
     6  enabled: true
     7  batch_time: 180
     8  stepback: true
     9  
    10  functions:
    11    "list of commands":
    12       - command: shell.exec
    13         params:
    14           script: |
    15             echo "step 1 of multi-command func"
    16       - command: shell.exec
    17         params:
    18           script: |
    19             echo "step 2 of multi-command func"
    20       - command: shell.exec
    21         params:
    22           script: |
    23             echo "step 3 of multi-command func"
    24    "predefined command test" :
    25       command: shell.exec
    26       params:
    27         shell: "sh"
    28         script: |
    29           echo "predefined command!"
    30    "silent shell test" :
    31       command: shell.exec
    32       params:
    33         silent: true
    34         script: |
    35          cat > testfile <<END_OF_HEREDOC
    36          this should not end up in the logs!
    37          END_OF_HEREDOC
    38    "function variant test":
    39        command: shell.exec
    40        variants: ["windows8"]
    41        params:
    42          script: |
    43            echo "variant not excluded!"
    44    "function with arg test" :
    45       command: shell.exec
    46       timeout_secs: 1300
    47       params:
    48         script: |
    49           echo "arg1 is ${arg1}"
    50           echo "arg2 is ${arg2}"
    51           echo "arg3 is ${arg3}"
    52           echo "arg4 is ${arg4}"
    53  
    54  pre:
    55    - command: shell.exec
    56      params:
    57        script: |
    58          echo "executing the pre-run script"
    59  
    60  post:
    61    - command: attach.results
    62      params:
    63        file_location: src/report.json
    64    - command: shell.exec
    65      params:
    66        script: |
    67          echo "executing the post-run script!"
    68  
    69  timeout:
    70    - command: shell.exec
    71      params:
    72        script: |
    73          echo "executing the task-timeout script!"
    74          sleep 5 #for testing callback timeouts
    75  
    76  tasks:
    77  - name: aggregation
    78    commands: ~
    79  - name: compile
    80    depends_on: []
    81    commands:
    82      - func: "predefined command test"
    83      - func: "silent shell test"
    84      - func: "function with arg test"
    85        vars:
    86          arg1: "FOO"
    87          arg2: "BAR"
    88          arg3: "Expanded: ${expandme}"
    89          arg4: "Default: ${empty|default_value}"
    90      - func: "list of commands"
    91        timeout_secs: 2600
    92      - command: manifest.load
    93      - command: git.get_project
    94        params:
    95          directory: src
    96          revisions:
    97            recursive: ${recursive_rev}
    98      - command: shell.exec
    99        params:
   100          working_dir: src
   101          script: |
   102              set -o verbose
   103              set -o errexit
   104              echo "i am compiling!"
   105              echo "blah blah compiling"
   106              cp "README.md" "readme2.md"
   107              mkdir jstests
   108              hostname > jstests/hostname.txt
   109              date +"%m-%d-%y" > jstests/date.txt
   110              echo "stuff" >> jstests/dont_archive_me_test.pdb
   111              echo "i am sanity testing!"
   112              echo ${fetch_key}
   113              printf "this should be on the same line..."; printf "as this.\n"
   114              cat doc.go recursive/clone/recursive/doc.go
   115      - command: archive.targz_pack
   116        params:
   117          target: "target.tgz"
   118          source_dir: "src"
   119          include:
   120            - "jstests/**"
   121            - "readme2.md"
   122            - "date.txt"
   123            - "compile_expansions.yml"
   124            - "*.tgz"
   125            - "*.zip"
   126            - "*.exe"
   127            - "jstests/**"
   128            - "./test*"
   129            - "./mongobridge*"
   130            - "buildscripts/**"
   131            - "*Example"
   132            - "*Test"
   133            - "sharedclient/**"
   134            - "./**.pdb"
   135            - "./**.msi"
   136          exclude_files:
   137            - "*_test.pdb"
   138      - command: s3.put
   139        params:
   140          aws_key: ${aws_key}
   141          aws_secret: ${aws_secret}
   142          local_file: target.tgz
   143          remote_file: unittest/blah.tgz
   144          bucket: mci-test-uploads
   145          permissions: public-read-write
   146          content_type: application/tar
   147          display_name: mongodb_binaries
   148      - func: "silent shell test"
   149        type: "system"
   150  
   151  - name: normal_task
   152    depends_on:
   153    - name: compile
   154    commands:
   155      - func: "predefined command test"
   156      - command: s3.get
   157        params:
   158          aws_key: ${aws_key}
   159          aws_secret: ${aws_secret}
   160          remote_file: unittest/blah.tgz
   161          bucket: mci-test-uploads
   162          extract_to: src
   163  
   164      - command: shell.exec
   165        params:
   166          working_dir: src
   167          system_log: true
   168          silent: true
   169          script: |
   170              echo "this output should go to the system logs."
   171  
   172      - command: shell.exec
   173        params:
   174          working_dir: src
   175          script: |
   176              set -o verbose
   177              set -o errexit
   178              echo "starting normal_task!"
   179              echo "here is some log output to stdout"
   180              cat "readme2.md"
   181              [ ! -e "jstests/dont_archive_me_test.pdb" ]
   182              echo "here is some log output to stderr" 1>&2
   183              echo "done with normal_task!"
   184              echo '{"results":[' > report.json
   185              echo '{"status":"success","test_file":"t1", "url":"url","exit_code":0,"start":0, "end":10}' >> report.json
   186              echo "]}" >> report.json
   187  
   188  - name: very_slow_task
   189    depends_on:
   190    - name: compile
   191    commands:
   192      - command: shell.exec
   193        params:
   194          script: |
   195              set -o verbose
   196              set -o errexit
   197              echo "starting very_slow_task!"
   198              sleep 10000
   199              echo "done with very slow task!"
   200  
   201  - name: failing_task
   202    depends_on:
   203    - name: compile
   204    commands:
   205      - command: shell.exec
   206        display_name: "failing shell command"
   207        type: "system"
   208        params:
   209          working_dir: src
   210          script: |
   211              set -o verbose
   212              set -o errexit
   213              echo "starting failing_task!"
   214              false
   215              echo "done with failing" "task!"
   216  
   217  - name: timeout_task
   218    depends_on:
   219    - name: compile
   220    commands:
   221      - command: shell.exec
   222        timeout_secs: 3
   223        params:
   224          script: |
   225              set -o verbose
   226              set -o errexit
   227              echo "starting slow task!"
   228              sleep 10000
   229              echo "done with slow" "task!"
   230  
   231  - name: print_dir_task
   232    depends_on:
   233    - name: compile
   234    commands:
   235      - command: shell.exec
   236        params:
   237          script: |
   238              set -o verbose
   239              set -o errexit
   240              echo "printing current directory"
   241              pwd
   242  
   243  - name: exec_timeout_task
   244    depends_on:
   245    - name: compile
   246    exec_timeout_secs: 3
   247    commands:
   248      - command: shell.exec
   249        params:
   250          script: |
   251              set -o verbose
   252              set -o errexit
   253              echo "starting slow task with output!"
   254              for i in `seq 1 100`;
   255              do
   256                  sleep 100
   257                  echo $i
   258              done
   259              echo "done with slow" "task with output!"
   260  
   261  - name: variant_test
   262    commands:
   263      - func: "function variant test"
   264  
   265  - name: push
   266    depends_on:
   267    - name: "*"
   268    commands:
   269      - command: shell.exec
   270        params:
   271          script: |
   272            set -o verbose
   273            set -o errexit
   274            ls
   275            pwd
   276            echo "push task pre-run!"
   277            date_exp=`date "+%Y-%m-%d:%H-%M-%S"`
   278            echo $date_exp | tee -a "unittest-${distro_exp}-${buildvar_exp}.txt"
   279            echo "file_exp: FILE_EXP" | tee -a compile_expansions.yml
   280            echo "new_date: $date_exp" | tee -a compile_expansions.yml
   281      - command: expansions.update
   282        params:
   283          file: compile_expansions.yml
   284      - command: s3.put
   285        params:
   286          aws_key: ${aws_key}
   287          aws_secret: ${aws_secret}
   288          local_file:  unittest-${distro_exp}-${buildvar_exp}.txt
   289          remote_file: pushtest-stage/unittest-${task_id}-${distro_exp}-${buildvar_exp}-${file_exp}.txt
   290          bucket: build-push-testing
   291          permissions: public-read-write
   292          content_type: application/tar
   293          display_name: push_file
   294      - command: s3Copy.copy
   295        params:
   296          aws_key: ${aws_key}
   297          aws_secret: ${aws_secret}
   298          s3_copy_files:
   299          - source:
   300              bucket: build-push-testing
   301              path: pushtest-stage/unittest-${task_id}-${distro_exp}-${buildvar_exp}-${file_exp}.txt
   302            destination:
   303              bucket: build-push-testing
   304              path: pushtest/unittest-${distro_exp}-${buildvar_exp}-${file_exp}-latest.txt
   305            display_name: copy_file
   306      - command: shell.exec
   307        params:
   308          script: |
   309            set -o verbose
   310            set -o errexit
   311            echo "push task post-run!\n"
   312            date +"%m-%d-%y" > "unittest-${distro_exp}-${buildvar_exp}.txt"
   313            echo "file_exp: FILE_EXP" > compile_expansions.yml
   314  modules:
   315  - name: recursive
   316    repo: git@github.com:evergreen-ci/render.git
   317    prefix: recursive/clone
   318    branch: master
   319  
   320  #######################################
   321  # Buildvariants
   322  #######################################
   323  
   324  buildvariants:
   325  
   326  ###########################################
   327  #         Linux buildvariants             #
   328  ###########################################
   329  
   330  - name: linux-64
   331    display_name: Linux 64-bit
   332    modules:
   333    - recursive
   334    run_on:
   335    - rhel55
   336    expansions:
   337      expandme: "qux"
   338      buildvar_exp: BUILDVAR_EXP
   339      push_path: linux
   340      push_bucket: build-push-testing
   341      push_name: linux
   342      push_arch: x86_64
   343      compile_flags: --sharedclient -j$(grep -c ^processor /proc/cpuinfo) --release
   344      test_flags: --continue-on-failure
   345      buildvariant_pushes: true
   346    tasks: "*"
   347  
   348  - name: windows8
   349    display_name: Windows 8
   350    modules:
   351    - recursive
   352    run_on:
   353    - rhel55
   354    expansions:
   355      expandme: "qux"
   356      buildvar_exp: BUILDVAR_EXP
   357      push_path: windows8
   358      push_bucket: build-push-testing
   359      push_name: windows8
   360      push_arch: x86_64
   361      compile_flags: --sharedclient -j$(grep -c ^processor /proc/cpuinfo) --release
   362      test_flags: --continue-on-failure
   363      buildvariant_pushes: true
   364    tasks: "*"