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 }