1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
|
# The name of the product keys for this product (from mixlib-install)
product_key:
- chef
- angrychef
# Slack channel in Chef Software slack to send notifications about build failures, etc
slack:
notify_channel: chef-notify
# Which Ruby Gems, built when the Omnibus package is built, to publish to rubygems.org
# This publish is triggered by the `built_in:publish_rubygems` artifact_action.
rubygems:
- chef
- chef-config
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"
# 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"
# The tag format to use (e.g. v1.0.0)
version_tag_format: "v{{version}}"
# The Github Team primarily responsible for handling incoming Pull Requests.
maintainer_group: chef/client-core
# Which Github branches to build Omnibus releases from, and what versions
# (as determined by the value in the VERSION file) those branches are responsible
# for building.
release_branch:
master:
version_constraint: ~> 13.0
chef-12:
version_constraint: ~> 12.0
# These actions are taken, in order they are specified, anytime a Pull Request is merged.
merge_actions:
- built_in:bump_version:
ignore_labels: "Version: Skip Bump"
- bash:.expeditor/update_version.sh:
only_if: built_in:bump_version
- built_in:update_changelog:
ignore_labels: "Meta: Exclude From Changelog"
- built_in:trigger_omnibus_release_build:
ignore_labels: "Omnibus: Skip Build"
only_if: built_in:bump_version
# These actions are taken, in the order specified, when an Omnibus artifact is promoted
# within Chef's internal artifact storage system.
artifact_actions:
promoted_to_unstable:
- built_in:build_docker_image
promoted_to_current:
- built_in:tag_docker_image
promoted_to_stable:
- built_in:tag_docker_image
- built_in:publish_rubygems
- built_in:rollover_changelog
- bash:.expeditor/update_dockerfile.sh
###############################################################################
# Notes on the tags inside CHANGELOG.md
###############################################################################
# latest_release
# The content inside this block contains the most recent Pull Request to be
# merged into the repository. When the `built_in:update_changelog` merge_action
# is triggered, the content of this block is updated to reflect the most recent
# Pull Request merged.
#
# release_rollup
# This block contains all the Pull Requests merged since the most recent
# Stable release. When the `built_in:update_changelog` merge_action is triggered,
# the content inside this block is updated to include the most recent Pull Request
# merged. When the `built_in:rollover_changelog` artifact_action is trggered,
# the line items (each `-` line) are evaluated based on the version in the tags
# at the end of the line (e.g. `<!-- 13.0.0 -->`). If the version is more recent
# than the version that was just promoted (e.g. `> STABLE`), it is left in the
# release_rollup section. Otherwise, it is moved into the `latest_stable_release`
# section.
#
# latest_stable_release
# This block contains a list of all the changes that were released in the latest
# stable version. When the `built_in:rollover_changelog` artifact_action is triggerd,
# the content inside this block is moved underneath it and the block is updated with
# all of the line item chanages from the `release_rollup` block that were included in
# the just released stable build (e.g. `> STABLE-1, <= STABLE`)
#
|