Skip to content

Commit

Permalink
Merge pull request #9536 from habitat-sh/test_rel2
Browse files Browse the repository at this point in the history
remove expeditor staging area
mwrock authored Jan 3, 2025
2 parents 1a5d07a + 0bc6c40 commit 1e8e9ca
Showing 1 changed file with 133 additions and 143 deletions.
276 changes: 133 additions & 143 deletions .expeditor/config.yml
Original file line number Diff line number Diff line change
@@ -1,143 +1,133 @@
# Documentation available at https://expeditor.chef.io/

github:
# The file where the MAJOR.MINOR.PATCH version is kept. The version in this file
# is bumped automatically via the `built_in:bump_version` merge_action.
version_file: "VERSION"
version_tag_format: '{{version}}'
# The file where our CHANGELOG is kept. This file is updated automatically with
# details from the Pull Request via the `built_in:update_changelog` merge_action.
changelog_file: "CHANGELOG.md"
delete_branch_on_merge: true

# Slack channel in Chef Software slack to send notifications about Expeditor actions
slack:
notify_channel: habitat-notify

changelog:
categories:
- "Changelog: Behavioral Change": "Behavioral Changes"
- "Changelog: New Feature": "New Features & Enhancements"
- "Changelog: Bug Fix": "Bug Fixes"

pipelines:
- verify:
description: Pull Request validation tests
- release_habitat:
description: Habitat release process
- end_to_end:
description: Habitat long running end to end tests - always runs on DEV environment
- finish_release:
description: Tasks to be performed after a release has been promoted to stable

release_branches:
- main:
version_constraint: 2.*
- v1.6:
version_constraint: 1.*

staging_areas:
- release_staging:
workload: pull_request_merged:{{github_repo}}:{{release_branch}}:*

subscriptions:
- workload: pull_request_opened:{{github_repo}}:{{release_branch}}:*
actions:
- post_github_comment:.expeditor/templates/welcome.mustache:
ignore_team_members:
- habitat-sh/habitat-core-maintainers
- built_in:github_auto_assign_author:
only_if_team_member:
- habitat-sh/habitat-core-maintainers

- workload: staged_workload_released:{{agent_id}}:release_staging:*
actions:
- built_in:bump_version
- built_in:update_changelog
- trigger_pipeline:release_habitat:
only_if: built_in:bump_version

# Responses to Release Pipeline
########################################################################

- workload: buildkite_build_passed:{{agent_id}}:release_habitat:*
actions:
- trigger_pipeline:end_to_end
- unlock_staging_area:release_staging:
always_run: true
- bash:.expeditor/scripts/release_habitat/expeditor_destroy_build_channel.sh:
always_run: true
post_commit: true

# Make sure we unlock to allow later builds if one fails.
- workload: buildkite_build_failed:{{agent_id}}:release_habitat:*
actions:
- unlock_staging_area:release_staging:
always_run: true
- bash:.expeditor/scripts/release_habitat/expeditor_destroy_build_channel.sh:
always_run: true
post_commit: true

- workload: buildkite_build_canceled:{{agent_id}}:release_habitat:*
actions:
- unlock_staging_area:release_staging:
always_run: true
- bash:.expeditor/scripts/release_habitat/expeditor_destroy_build_channel.sh:
always_run: true
post_commit: true

# Promotion Workloads
########################################################################
# Only allow promotion actions from acceptance->staging,
# staging->current, and current->stable; other promotions are
# handled automatically by the pipeline.
- workload: project_promoted:{{agent_id}}:acceptance:*
actions:
- bash:.expeditor/scripts/expeditor_promote.sh:
post_commit: true
# This purges the cache on promotion to staging, so our
# "curlbash" installers get the right packages. That turns out
# to be useful for installing the new release candidate that's
# now in the staging channel in some scenarios (e.g., on macOS)
- bash:.expeditor/scripts/purge_cdn.sh:
post_commit: true

- workload: project_promoted:{{agent_id}}:staging:*
actions:
- bash:.expeditor/scripts/expeditor_promote.sh:
post_commit: true
# Not purging here because it shouldn't be necessary at this
# point.

- workload: project_promoted:{{agent_id}}:current:*
actions:
- bash:.expeditor/scripts/expeditor_promote.sh:
post_commit: true
# This purges the cache on promotion to stable, so our
# "curlbash" installers get the right packages.
- bash:.expeditor/scripts/purge_cdn.sh:
post_commit: true
- trigger_pipeline:finish_release:
post_commit: true

# Post release notification workloads
#
# Do not change the branch name here without also changing
# it in .expeditor/scripts/finish_release/bump_rustfmt.sh
# pull_request_<ACTION>:<REPO>:<BRANCH>:<NUMBER>:<GITHUB_DELIVERY_UUID>
- workload: pull_request_opened:{{github_repo}}:expeditor/rustfmt_*:*
actions:
- bash:.expeditor/scripts/finish_release/notify_rustfmt.sh

artifact_channels:
# e2e pipeline tests from here
- dev
# acceptance Builder Supervisors update from here
- acceptance
# stable "holding area" for us to perform manual evaluations. This
# is only really until we have automated more of our testing.
- staging
# prod Builder Supervisors update from here
- current
# Habitat packages in stable, binary packages available to the world
- stable
# Documentation available at https://expeditor.chef.io/

github:
# The file where the MAJOR.MINOR.PATCH version is kept. The version in this file
# is bumped automatically via the `built_in:bump_version` merge_action.
version_file: "VERSION"
version_tag_format: '{{version}}'
# The file where our CHANGELOG is kept. This file is updated automatically with
# details from the Pull Request via the `built_in:update_changelog` merge_action.
changelog_file: "CHANGELOG.md"
delete_branch_on_merge: true

# Slack channel in Chef Software slack to send notifications about Expeditor actions
slack:
notify_channel: habitat-notify

changelog:
categories:
- "Changelog: Behavioral Change": "Behavioral Changes"
- "Changelog: New Feature": "New Features & Enhancements"
- "Changelog: Bug Fix": "Bug Fixes"

pipelines:
- verify:
description: Pull Request validation tests
- release_habitat:
description: Habitat release process
- end_to_end:
description: Habitat long running end to end tests - always runs on DEV environment
- finish_release:
description: Tasks to be performed after a release has been promoted to stable

release_branches:
- main:
version_constraint: 2.*
- v1.6:
version_constraint: 1.*

subscriptions:
- workload: pull_request_opened:{{github_repo}}:{{release_branch}}:*
actions:
- post_github_comment:.expeditor/templates/welcome.mustache:
ignore_team_members:
- habitat-sh/habitat-core-maintainers
- built_in:github_auto_assign_author:
only_if_team_member:
- habitat-sh/habitat-core-maintainers

- workload: pull_request_merged:{{github_repo}}:{{release_branch}}:*
actions:
- built_in:bump_version
- built_in:update_changelog
- trigger_pipeline:release_habitat:
only_if: built_in:bump_version

# Responses to Release Pipeline
########################################################################

- workload: buildkite_build_passed:{{agent_id}}:release_habitat:*
actions:
- trigger_pipeline:end_to_end
- bash:.expeditor/scripts/release_habitat/expeditor_destroy_build_channel.sh:
always_run: true
post_commit: true

# Make sure we unlock to allow later builds if one fails.
- workload: buildkite_build_failed:{{agent_id}}:release_habitat:*
actions:
- bash:.expeditor/scripts/release_habitat/expeditor_destroy_build_channel.sh:
always_run: true
post_commit: true

- workload: buildkite_build_canceled:{{agent_id}}:release_habitat:*
actions:
- bash:.expeditor/scripts/release_habitat/expeditor_destroy_build_channel.sh:
always_run: true
post_commit: true

# Promotion Workloads
########################################################################
# Only allow promotion actions from acceptance->staging,
# staging->current, and current->stable; other promotions are
# handled automatically by the pipeline.
- workload: project_promoted:{{agent_id}}:acceptance:*
actions:
- bash:.expeditor/scripts/expeditor_promote.sh:
post_commit: true
# This purges the cache on promotion to staging, so our
# "curlbash" installers get the right packages. That turns out
# to be useful for installing the new release candidate that's
# now in the staging channel in some scenarios (e.g., on macOS)
- bash:.expeditor/scripts/purge_cdn.sh:
post_commit: true

- workload: project_promoted:{{agent_id}}:staging:*
actions:
- bash:.expeditor/scripts/expeditor_promote.sh:
post_commit: true
# Not purging here because it shouldn't be necessary at this
# point.

- workload: project_promoted:{{agent_id}}:current:*
actions:
- bash:.expeditor/scripts/expeditor_promote.sh:
post_commit: true
# This purges the cache on promotion to stable, so our
# "curlbash" installers get the right packages.
- bash:.expeditor/scripts/purge_cdn.sh:
post_commit: true
- trigger_pipeline:finish_release:
post_commit: true

# Post release notification workloads
#
# Do not change the branch name here without also changing
# it in .expeditor/scripts/finish_release/bump_rustfmt.sh
# pull_request_<ACTION>:<REPO>:<BRANCH>:<NUMBER>:<GITHUB_DELIVERY_UUID>
- workload: pull_request_opened:{{github_repo}}:expeditor/rustfmt_*:*
actions:
- bash:.expeditor/scripts/finish_release/notify_rustfmt.sh

artifact_channels:
# e2e pipeline tests from here
- dev
# acceptance Builder Supervisors update from here
- acceptance
# stable "holding area" for us to perform manual evaluations. This
# is only really until we have automated more of our testing.
- staging
# prod Builder Supervisors update from here
- current
# Habitat packages in stable, binary packages available to the world
- stable

0 comments on commit 1e8e9ca

Please sign in to comment.