github.com/hashicorp/packer@v1.14.3/.release/ci.hcl (about)

     1  # Copyright (c) HashiCorp, Inc.
     2  # SPDX-License-Identifier: BUSL-1.1
     3  
     4  schema = "1"
     5  
     6  project "packer" {
     7    team = "#proj-packer-releases"
     8    slack {
     9      notification_channel = "C09LD23QMPT"
    10    }
    11    github {
    12      organization = "hashicorp"
    13      repository = "packer"
    14      release_branches = [
    15          "main",
    16          "release/**",
    17          "feature/**"
    18      ]
    19    }
    20  }
    21  
    22  event "merge" {
    23    // "entrypoint" to use if build is not run automatically
    24    // i.e. send "merge" complete signal to orchestrator to trigger build
    25  }
    26  
    27  event "build" {
    28    depends = ["merge"]
    29    action "build" {
    30      organization = "hashicorp"
    31      repository = "packer"
    32      workflow = "build"
    33    }
    34  }
    35  
    36  event "prepare" {
    37    depends = ["build"]
    38  
    39    action "prepare" {
    40      organization = "hashicorp"
    41      repository   = "crt-workflows-common"
    42      workflow     = "prepare"
    43      depends      = ["build"]
    44    }
    45  
    46    notification {
    47      on = "fail"
    48    }
    49  }
    50  
    51  ## These are promotion and post-publish events
    52  ## they should be added to the end of the file after the verify event stanza.
    53  
    54  event "trigger-staging" {
    55  // This event is dispatched by the bob trigger-promotion command
    56  // and is required - do not delete.
    57  }
    58  
    59  event "promote-staging" {
    60    depends = ["trigger-staging"]
    61    action "promote-staging" {
    62      organization = "hashicorp"
    63      repository = "crt-workflows-common"
    64      workflow = "promote-staging"
    65      config = "release-metadata.hcl"
    66    }
    67  
    68    notification {
    69      on = "always"
    70    }
    71  }
    72  
    73  event "promote-staging-docker" {
    74    depends = ["promote-staging"]
    75    action "promote-staging-docker" {
    76      organization = "hashicorp"
    77      repository = "crt-workflows-common"
    78      workflow = "promote-staging-docker"
    79    }
    80  
    81    notification {
    82      on = "always"
    83    }
    84  }
    85  
    86  event "trigger-production" {
    87  // This event is dispatched by the bob trigger-promotion command
    88  // and is required - do not delete.
    89  }
    90  
    91  event "promote-production" {
    92    depends = ["trigger-production"]
    93    action "promote-production" {
    94      organization = "hashicorp"
    95      repository = "crt-workflows-common"
    96      workflow = "promote-production"
    97    }
    98  
    99    notification {
   100      on = "always"
   101    }
   102  }
   103  
   104  event "promote-production-docker" {
   105    depends = ["promote-production"]
   106    action "promote-production-docker" {
   107      organization = "hashicorp"
   108      repository = "crt-workflows-common"
   109      workflow = "promote-production-docker"
   110    }
   111  
   112    notification {
   113      on = "always"
   114    }
   115  }
   116  
   117  event "promote-production-packaging" {
   118    depends = ["promote-production-docker"]
   119    action "promote-production-packaging" {
   120      organization = "hashicorp"
   121      repository = "crt-workflows-common"
   122      workflow = "promote-production-packaging"
   123    }
   124  
   125    notification {
   126      on = "always"
   127    }
   128  }
   129  
   130  event "post-publish-website" {
   131    depends = ["promote-production-packaging"]
   132    action "post-publish-website" {
   133      organization = "hashicorp"
   134      repository = "crt-workflows-common"
   135      workflow = "post-publish-website"
   136    }
   137  
   138    notification {
   139      on = "always"
   140    }
   141  }
   142  
   143  event "update-ironbank" {
   144    depends = ["post-publish-website"]
   145    action "update-ironbank" {
   146      organization = "hashicorp"
   147      repository = "crt-workflows-common"
   148      workflow = "update-ironbank"
   149    }
   150  
   151    notification {
   152      on = "fail"
   153    }
   154  }