github.com/ericjee/storage@v1.12.13/.cirrus.yml (about)

     1  ---
     2  
     3  # Main collection of env. vars to set for all tasks and scripts.
     4  env:
     5      ####
     6      #### Global variables used for all tasks
     7      ####
     8      # Overrides default location (/tmp/cirrus) for repo clone
     9      CIRRUS_WORKING_DIR: "/var/tmp/go/src/github.com/containers/storage"
    10      # Shell used to execute all script commands
    11      CIRRUS_SHELL: "/bin/bash"
    12      # Automation script path relative to $CIRRUS_WORKING_DIR)
    13      SCRIPT_BASE: "./contrib/cirrus"
    14      # No need to go crazy, but grab enough to cover most PRs
    15      CIRRUS_CLONE_DEPTH: 50
    16  
    17      ####
    18      #### Cache-image names to test with
    19      ####
    20      # GCE project where images live
    21      IMAGE_PROJECT: "libpod-218412"
    22      FEDORA_CACHE_IMAGE_NAME: "fedora-cloud-base-30-1-2-1556821664"
    23      PRIOR_FEDORA_CACHE_IMAGE_NAME: "fedora-cloud-base-29-1-2-1541789245"
    24      UBUNTU_CACHE_IMAGE_NAME: "ubuntu-1904-disco-v20190514"
    25  
    26      ####
    27      #### Command variables to help avoid duplication
    28      ####
    29      # Command to prefix every output line with a timestamp
    30      # (can't do inline awk script, Cirrus-CI or YAML mangles quoting)
    31      _TIMESTAMP: 'awk --file ${CIRRUS_WORKING_DIR}/${SCRIPT_BASE}/timestamp.awk'
    32      _DFCMD: 'df -lhTx tmpfs'
    33      _RAUDITCMD: 'cat /var/log/audit/audit.log'
    34      _UAUDITCMD: 'cat /var/log/kern.log'
    35      _JOURNALCMD: 'journalctl -b'
    36  
    37  gcp_credentials: ENCRYPTED[c87717f04fb15499d19a3b3fa0ad2cdedecc047e82967785d101e9bc418e93219f755e662feac8390088a2df1a4d8464]
    38  
    39  # Default timeout for each task
    40  timeout_in: 120m
    41  
    42  # Default VM to use unless set or modified by task
    43  gce_instance:
    44      image_project: "${IMAGE_PROJECT}"
    45      zone: "us-central1-b"  # Required by Cirrus for the time being
    46      cpu: 2
    47      memory: "4Gb"
    48      disk: 200
    49      image_name: "${FEDORA_CACHE_IMAGE_NAME}"
    50  
    51  testing_task:
    52      gce_instance:  # Only need to specify differences from defaults (above)
    53          matrix:  # Duplicate this task for each matrix product.
    54              image_name: "${FEDORA_CACHE_IMAGE_NAME}"
    55              image_name: "${PRIOR_FEDORA_CACHE_IMAGE_NAME}"
    56              image_name: "${UBUNTU_CACHE_IMAGE_NAME}"
    57  
    58      # Separate scripts for separate outputs, makes debugging easier.
    59      setup_script: '${CIRRUS_WORKING_DIR}/${SCRIPT_BASE}/setup.sh |& ${_TIMESTAMP}'
    60      build_and_test_script: '${CIRRUS_WORKING_DIR}/${SCRIPT_BASE}/build_and_test.sh |& ${_TIMESTAMP}'
    61  
    62      # Log collection when job was successful
    63      df_script: '${_DFCMD} || true'
    64      rh_audit_log_script: '${_RAUDITCMD} || true'
    65      ubuntu_audit_log_script: '${_UAUDITCMD} || true'
    66      journal_log_script: '${_JOURNALCMD} || true'
    67  
    68      on_failure:  # Script names must be different from above
    69          failure_df_script: '${_DFCMD} || true'
    70          failure_rh_audit_log_script: '${_RAUDITCMD} || true'
    71          failure_ubuntu_audit_log_script: '${_UAUDITCMD} || true'
    72          failure_journal_log_script: '${_JOURNALCMD} || true'
    73  
    74  
    75  # Update metadata on VM images referenced by this repository state
    76  meta_task:
    77  
    78      container:
    79          image: "quay.io/libpod/imgts:latest"  # see contrib/imgts
    80          cpu: 1
    81          memory: 1
    82  
    83      env:
    84          # Space-separated list of images used by this repository state
    85          IMGNAMES: |-
    86              ${FEDORA_CACHE_IMAGE_NAME}
    87              ${PRIOR_FEDORA_CACHE_IMAGE_NAME}
    88              ${UBUNTU_CACHE_IMAGE_NAME}
    89          BUILDID: "${CIRRUS_BUILD_ID}"
    90          REPOREF: "${CIRRUS_CHANGE_IN_REPO}"
    91          GCPJSON: ENCRYPTED[244a93fe8b386b48b96f748342bf741350e43805eee81dd04b45093bdf737e540b993fc735df41f131835fa0f9b65826]
    92          GCPNAME: ENCRYPTED[91cf7aa421858b26b67835978d224b4a5c46afcf52a0f1ec1b69a99b248715dc8e92a1b56fde18e092acf256fa80ae9c]
    93          GCPPROJECT: ENCRYPTED[79b0f7eb5958e25bc7095d5d368fa8d94447a43ffacb9c693de438186e2f767b7efe9563d6954297ae4730220e10aa9c]
    94          CIRRUS_CLONE_DEPTH: 1  # source not used
    95  
    96      script: '/usr/local/bin/entrypoint.sh |& ${_TIMESTAMP}'