github.com/anth0d/nomad@v0.0.0-20221214183521-ae3a0a2cad06/.release/ci.hcl (about)

     1  schema = "1"
     2  
     3  project "nomad" {
     4    team = "nomad"
     5  
     6    slack {
     7      notification_channel = "C03B5EWFW01"
     8    }
     9  
    10    github {
    11      organization = "hashicorp"
    12      repository   = "nomad"
    13  
    14      release_branches = [
    15        "main",
    16        "release/**",
    17      ]
    18    }
    19  }
    20  
    21  event "merge" {
    22    // "entrypoint" to use if build is not run automatically  // i.e. send "merge" complete signal to orchestrator to trigger build
    23  }
    24  
    25  event "build" {
    26    depends = ["merge"]
    27  
    28    action "build" {
    29      organization = "hashicorp"
    30      repository   = "nomad"
    31      workflow     = "build"
    32    }
    33  }
    34  
    35  event "upload-dev" {
    36    depends = ["build"]
    37  
    38    action "upload-dev" {
    39      organization = "hashicorp"
    40      repository   = "crt-workflows-common"
    41      workflow     = "upload-dev"
    42    }
    43  
    44    notification {
    45      on = "fail"
    46    }
    47  }
    48  
    49  event "security-scan-binaries" {
    50    depends = ["upload-dev"]
    51  
    52    action "security-scan-binaries" {
    53      organization = "hashicorp"
    54      repository   = "crt-workflows-common"
    55      workflow     = "security-scan-binaries"
    56      config       = "security-scan.hcl"
    57    }
    58  
    59    notification {
    60      on = "fail"
    61    }
    62  }
    63  
    64  event "notarize-darwin-amd64" {
    65    depends = ["security-scan-binaries"]
    66  
    67    action "notarize-darwin-amd64" {
    68      organization = "hashicorp"
    69      repository   = "crt-workflows-common"
    70      workflow     = "notarize-darwin-amd64"
    71    }
    72  
    73    notification {
    74      on = "fail"
    75    }
    76  }
    77  
    78  event "notarize-darwin-arm64" {
    79    depends = ["notarize-darwin-amd64"]
    80  
    81    action "notarize-darwin-arm64" {
    82      organization = "hashicorp"
    83      repository   = "crt-workflows-common"
    84      workflow     = "notarize-darwin-arm64"
    85    }
    86  
    87    notification {
    88      on = "fail"
    89    }
    90  }
    91  
    92  event "notarize-windows-386" {
    93    depends = ["notarize-darwin-arm64"]
    94  
    95    action "notarize-windows-386" {
    96      organization = "hashicorp"
    97      repository   = "crt-workflows-common"
    98      workflow     = "notarize-windows-386"
    99    }
   100  
   101    notification {
   102      on = "fail"
   103    }
   104  }
   105  
   106  event "notarize-windows-amd64" {
   107    depends = ["notarize-windows-386"]
   108  
   109    action "notarize-windows-amd64" {
   110      organization = "hashicorp"
   111      repository   = "crt-workflows-common"
   112      workflow     = "notarize-windows-amd64"
   113    }
   114  
   115    notification {
   116      on = "fail"
   117    }
   118  }
   119  
   120  event "sign" {
   121    depends = ["notarize-windows-amd64"]
   122  
   123    action "sign" {
   124      organization = "hashicorp"
   125      repository   = "crt-workflows-common"
   126      workflow     = "sign"
   127    }
   128  
   129    notification {
   130      on = "fail"
   131    }
   132  }
   133  
   134  event "sign-linux-rpms" {
   135    depends = ["sign"]
   136  
   137    action "sign-linux-rpms" {
   138      organization = "hashicorp"
   139      repository   = "crt-workflows-common"
   140      workflow     = "sign-linux-rpms"
   141    }
   142  
   143    notification {
   144      on = "fail"
   145    }
   146  }
   147  
   148  event "verify" {
   149    depends = ["sign-linux-rpms"]
   150  
   151    action "verify" {
   152      organization = "hashicorp"
   153      repository   = "crt-workflows-common"
   154      workflow     = "verify"
   155    }
   156  
   157    notification {
   158      on = "always"
   159    }
   160  }
   161  
   162  event "fossa-scan" {
   163    depends = ["verify"]
   164  
   165    action "fossa-scan" {
   166      organization = "hashicorp"
   167      repository   = "crt-workflows-common"
   168      workflow     = "fossa-scan"
   169    }
   170  }
   171  
   172  ## These are promotion and post-publish events
   173  ## they should be added to the end of the file after the verify event stanza.
   174  
   175  event "trigger-staging" {
   176    // This event is dispatched by the bob trigger-promotion command  // and is required - do not delete.
   177  }
   178  
   179  event "promote-staging" {
   180    depends = ["trigger-staging"]
   181  
   182    action "promote-staging" {
   183      organization = "hashicorp"
   184      repository   = "crt-workflows-common"
   185      workflow     = "promote-staging"
   186      config       = "release-metadata.hcl"
   187    }
   188  
   189    notification {
   190      on = "always"
   191    }
   192  }
   193  
   194  event "trigger-production" {
   195    // This event is dispatched by the bob trigger-promotion command  // and is required - do not delete.
   196  }
   197  
   198  event "promote-production" {
   199    depends = ["trigger-production"]
   200  
   201    action "promote-production" {
   202      organization = "hashicorp"
   203      repository   = "crt-workflows-common"
   204      workflow     = "promote-production"
   205    }
   206  
   207    notification {
   208      on = "always"
   209    }
   210  }
   211  
   212  event "promote-production-packaging" {
   213    depends = ["promote-production"]
   214  
   215    action "promote-production-packaging" {
   216      organization = "hashicorp"
   217      repository   = "crt-workflows-common"
   218      workflow     = "promote-production-packaging"
   219    }
   220  
   221    notification {
   222      on = "always"
   223    }
   224  }
   225  
   226  event "post-publish-website" {
   227    depends = ["promote-production-packaging"]
   228  
   229    action "post-publish-website" {
   230      organization = "hashicorp"
   231      repository   = "crt-workflows-common"
   232      workflow     = "post-publish-website"
   233    }
   234  
   235    notification {
   236      on = "always"
   237    }
   238  }