Skip to content

Commit df2a386

Browse files
authored
Merge branch 'main' into handsomely-lighter
2 parents 7965afc + c4473c9 commit df2a386

167 files changed

Lines changed: 1713 additions & 990 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/ci.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -162,17 +162,17 @@ jobs:
162162
run: dotnet run --project build -c release -- unit-test
163163

164164
- name: Publish AOT
165-
if: ${{ matrix.os != 'ubuntu-latest' }} # publish containers already validates AOT build
165+
if: ${{ github.event_name == 'push' && matrix.os != 'ubuntu-latest' }} # publish containers already validates AOT build
166166
run: dotnet run --project build -c release -- publishbinaries
167-
167+
168168
- name: Publish Containers
169-
if: ${{ matrix.os == 'ubuntu-latest' }}
169+
if: ${{ github.event_name == 'push' && matrix.os == 'ubuntu-latest' }}
170170
env:
171171
DOCKER_NO_PUBLISH: true
172172
run: dotnet run --project build -c release -- publishcontainers
173-
173+
174174
- name: Run Container
175-
if: ${{ matrix.os == 'ubuntu-latest' }}
175+
if: ${{ github.event_name == 'push' && matrix.os == 'ubuntu-latest' }}
176176
run: dotnet run --project build -c release -- runlocalcontainer
177177

178178

Directory.Packages.props

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@
4242
<PackageVersion Include="Microsoft.Extensions.Configuration.UserSecrets" Version="10.0.0" />
4343
<PackageVersion Include="Microsoft.Extensions.Configuration.Abstractions" Version="10.0.3" />
4444
<PackageVersion Include="Microsoft.Extensions.Telemetry.Abstractions" Version="10.0.0" />
45+
<PackageVersion Include="Nullean.ScopedFileSystem" Version="0.4.0" />
4546
<PackageVersion Include="OpenTelemetry.Instrumentation.AspNetCore" Version="1.13.0" />
4647
<PackageVersion Include="Generator.Equals" Version="4.0.0" PrivateAssets="all" IncludeAssets="runtime; build; native; contentfiles; analyzers; buildtransitive" />
4748
<PackageVersion Include="KubernetesClient" Version="18.0.5" />

config/versions.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ versioning_systems:
1919
ech: *all
2020
eck:
2121
base: 3.0
22-
current: 3.3.1
22+
current: 3.3.2
2323
ess: *all
2424
ecs:
2525
base: 9.0
@@ -103,7 +103,7 @@ versioning_systems:
103103
current: 1.4.0
104104
edot-cf-azure:
105105
base: 0.1
106-
current: 0.6.0
106+
current: 0.7.1
107107
edot-cf-gcp:
108108
base: 0.1
109109
current: 0.1.2

docs/_docset.yml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -185,17 +185,17 @@ toc:
185185
- file: inbound-links-validate.md
186186
- file: inbound-links-validate-all.md
187187
- file: inbound-links-validate-link-reference.md
188-
- folder: release
188+
- folder: changelog
189189
children:
190190
- file: index.md
191-
- file: changelog-add.md
192-
- file: changelog-bundle.md
193-
- file: changelog-bundle-amend.md
194-
- file: changelog-evaluate-pr.md
195-
- file: changelog-gh-release.md
196-
- file: changelog-init.md
197-
- file: changelog-remove.md
198-
- file: changelog-render.md
191+
- file: add.md
192+
- file: bundle.md
193+
- file: bundle-amend.md
194+
- file: evaluate-pr.md
195+
- file: gh-release.md
196+
- file: init.md
197+
- file: remove.md
198+
- file: render.md
199199
- folder: mcp
200200
children:
201201
- file: index.md

docs/_redirects.yml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,17 @@ redirects:
22
'migration/freeze/gh-action.md' : 'index.md'
33
'migration/freeze/index.md' : 'index.md'
44
'cli/mcp.md': 'index.md'
5+
'cli/release/changelog-add.md': 'cli/changelog/add.md'
56
'cli/release/changelog-evaluate-artifact.md': 'index.md'
7+
'cli/release/changelog-evaluate-pr.md': 'cli/changelog/evaluate-pr.md'
8+
'cli/release/changelog-bundle.md': 'cli/changelog/bundle.md'
9+
'cli/release/changelog-bundle-amend.md': 'cli/changelog/bundle-amend.md'
10+
'cli/release/changelog-gh-release.md': 'cli/changelog/gh-release.md'
11+
'cli/release/changelog-init.md': 'cli/changelog/init.md'
612
'cli/release/changelog-prepare-artifact.md': 'index.md'
13+
'cli/release/changelog-remove.md': 'cli/changelog/remove.md'
14+
'cli/release/changelog-render.md': 'cli/changelog/render.md'
15+
'cli/release/index.md': 'cli/changelog/index.md'
716
'testing/redirects/4th-page.md': 'testing/redirects/5th-page.md'
817
'testing/redirects/9th-page.md': '!testing/redirects/5th-page.md'
918
'testing/redirects/6th-page.md':
File renamed without changes.

docs/cli/release/changelog-bundle-amend.md renamed to docs/cli/changelog/bundle-amend.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
Amend a bundle with additional changelog entries.
44
Amend bundles follow a specific naming convention: `{parent-bundle-name}.amend-{N}.yaml` where `{N}` is a sequence number.
55

6-
To create a bundle, use [](/cli/release/changelog-bundle.md).
6+
To create a bundle, use [](/cli/changelog/bundle.md).
77
For details and examples, go to [](/contribute/changelog.md).
88

99
## Usage
Lines changed: 33 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
Bundle changelog files.
44

5-
To create the changelogs, use [](/cli/release/changelog-add.md).
5+
To create the changelogs, use [](/cli/changelog/add.md).
66
For details and examples, go to [](/contribute/changelog.md).
77

88
## Usage
@@ -141,7 +141,7 @@ The `--input-products` option determines which changelog files are gathered for
141141
: By default, the bundle contains only the file names and checksums.
142142

143143
`--sanitize-private-links`
144-
: Optional: Turn on [private link sanitization](/cli/release/changelog-bundle.md#private-link-sanitization).
144+
: Optional: Turn on [private link sanitization](#private-link-sanitization).
145145
: Pull requests and issues that target repositories marked `private: true` in the `references` section of `assembler.yml` are rewritten as quoted `# PRIVATE:` sentinel strings in the bundle file.
146146
: This option requires a resolved bundle: use `--resolve` or set `bundle.resolve: true` in the `changelog.yml`.
147147
: If sanitization is enabled and the bundle is not resolved, the command fails.
@@ -372,6 +372,7 @@ If you're using profile-based commands, they're affected by the following fields
372372

373373
`products`
374374
: Required when filtering by product metadata (equivalent to the `--input-products` command option).
375+
: The value `"* * *"` is equivalent to the `--all` command option.
375376
: Not used when the filter comes from a promotion report, URL list file, or `source: github_release` — in those cases the PR or issue list determines what's included and `products` is ignored.
376377
: Supports `{version}` and `{lifecycle}` placeholders that are substituted at runtime.
377378
: Example: `"elasticsearch {version} {lifecycle}"`
@@ -452,42 +453,64 @@ For example:
452453

453454
```yaml
454455
bundle:
456+
# Input directory containing changelog YAML files
457+
directory: docs/changelog
458+
# Output directory for bundles
459+
output_directory: docs/releases
460+
# Whether to resolve (copy contents) by default
461+
resolve: true
455462
repo: elasticsearch <1>
456463
owner: elastic
457464
profiles:
465+
# Collect all changelogs
466+
release-all:
467+
products: "* * *" <2>
468+
output: "all.yaml"
458469
# Find changelogs with any lifecycle and a partial date
459470
serverless-monthly:
460-
products: "cloud-serverless {version}-* *" <2>
471+
products: "cloud-serverless {version}-* *" <3>
461472
output: "serverless-{version}.yaml"
462473
output_products: "cloud-serverless {version}"
463474
464475
# Find changelogs with a specific lifecycle
465476
elasticsearch-ga-only:
466-
products: "elasticsearch {version} ga" <3>
477+
products: "elasticsearch {version} ga" <4>
467478
output: "elasticsearch-{version}.yaml"
468479
469480
# Infer the lifecycle from the version
470481
elasticsearch-release:
471-
hide_features: <4>
482+
hide_features: <5>
472483
- feature-flag-1
473484
- feature-flag-2
474-
products: "elasticsearch {version} {lifecycle}" <5>
485+
products: "elasticsearch {version} {lifecycle}" <6>
475486
output: "elasticsearch-{version}.yaml"
476487
output_products: "elasticsearch {version}"
477488
```
478489

479490
1. Bundle-level defaults that apply to all profiles. Individual profiles can override these.
480-
2. Bundles any changelogs that have `product: cloud-serverless`, any lifecycle, and the date partially specified in the command. This is equivalent to the `--input-products` command option's support for wildcards.
481-
3. Bundles any changelogs that have `product: elasticsearch`, `lifecycle: ga`, and the version specified in the command.
482-
4. Adds a `hide-features` array in the bundle. This is equivalent to the `--hide-features` command option.
483-
5. In this case, the lifecycle is inferred from the version string passed as the second command argument (for example, `9.2.0-beta.1` → `beta`).
491+
2. Collects all changelogs from the `directory`. This is equivalent to the `--all` command.
492+
3. Collects any changelogs that have `product: cloud-serverless`, any lifecycle, and the date partially specified in the command. This is equivalent to the `--input-products` command option's support for wildcards.
493+
4. Collects any changelogs that have `product: elasticsearch`, `lifecycle: ga`, and the version specified in the command.
494+
5. Adds a `hide-features` array in the bundle. This is equivalent to the `--hide-features` command option.
495+
6. In this case, the lifecycle is inferred from the version string passed as the second command argument (for example, `9.2.0-beta.1` → `beta`).
484496

485497
`output_products: "elasticsearch {version} {lifecycle}"` produces a single, authoritative product entry in the bundle derived from the release tag — for example, tag `v9.2.0` gives `elasticsearch 9.2.0 ga` and tag `v9.2.0-beta.1` gives `elasticsearch 9.2.0 beta`. Without `output_products`, the bundle products array is instead derived from the matched changelog files' own `products` fields, which is the consistent fallback for all profile types. Set `output_products` when you need a single clean product entry that reflects the release identity rather than the diverse metadata across individual changelog files.
486498

487499
:::{note}
488500
The `products` field determines which changelog files are gathered for consideration. **`rules.bundle` still applies** afterward (see the note under [`--input-products`](#options)). Input stage and bundle filtering stage are conceptually separate.
489501
:::
490502

503+
For profiles that use static patterns (without `{version}` or `{lifecycle}` placeholders), the second argument is still required but serves no functional purpose. You can pass any placeholder value. For example:
504+
505+
```sh
506+
# Profile with static patterns - second argument unused but required
507+
docs-builder changelog bundle release-all '*'
508+
docs-builder changelog bundle release-all 'unused'
509+
docs-builder changelog bundle release-all 'none'
510+
```
511+
512+
If you are using the `{version}` placeholder in the `output_products` or `output` fields, you must provide an appropriate value even though it's not used by the `products` filter.
513+
491514
### Bundle by report or URL list [profile-bundle-report-examples]
492515

493516
You can also create profiles that are equivalent to the `--prs`, `--issues`, and `--report` filter options.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ The product, target version, and lifecycle are inferred automatically from the r
5555

5656
The `rules.bundle` section of your `changelog.yml` applies to bundles created by this command (after changelog files are gathered from the release).
5757
Which fields take effect depends on [bundle rule modes](/contribute/changelog.md#bundle-rule-modes).
58-
For details, refer to [Rules for filtered bundles](/cli/release/changelog-bundle.md#changelog-bundle-rules).
58+
For details, refer to [Rules for filtered bundles](/cli/changelog/bundle.md#changelog-bundle-rules).
5959
If you use per-product rule overrides, refer to [Single-product rule resolution (Mode 3 only)](/contribute/changelog.md#changelog-bundle-rule-resolution).
6060

6161
## Examples

0 commit comments

Comments
 (0)