32 Commits

Author SHA1 Message Date
mantasmatij
ee0f5bae45 feat: add ability to select versioning-strategy and release-as (#1121)
Summary
This PR adds support for two new inputs to the release-please GitHub
Action:

`versioning-strategy` Allows users to specify the versioning strategy to
use for releases (e.g., default, always-bump-minor, etc.).
`release-as`: Allows users to specify the exact version to release as
(e.g., 2.0.0).

Usage Example
```
- uses: googleapis/release-please-action@v4
  with:
    token: ${{ secrets.GITHUB_TOKEN }}
    release-type: node
    versioning-strategy: always-bump-minor
    release-as: 2.0.0
```
Motivation
These options provide more flexibility and control over how versions are
determined and released, addressing use cases where the default behavior
is not sufficient.

---------

Signed-off-by: Marco Ferrari <ferrarim@google.com>
Co-authored-by: Mantas Matijosaitis <mantas.matijosaitis@telesoftas.com>
Co-authored-by: Marco Ferrari <ferrarim@google.com>
2025-09-16 08:19:00 +00:00
Vincent Lee
535c4130c1 fix: changelog-host parameter ignored when using manifest configuration (#1151)
## Problem
The `changelog-host` action parameter was being ignored when using
manifest configuration files (`release-please-config.json`). This caused
changelog links to always point to `github.com` instead of the specified
GitHub Enterprise Server URL, breaking changelog functionality for
GitHub Enterprise users.

## Root Cause
The original implementation attempted to pass `changelogHost` through
`manifestOverrides` to the `Manifest.fromManifest()` method. However,
`changelogHost` is not part of the `ManifestOptions` interface - it
belongs to the per-path `ReleaserConfig` interface. This architectural
mismatch meant the parameter was silently ignored.

## Solution
Modified the `loadOrBuildManifest()` function to:
1. Load the manifest normally without trying to pass `changelogHost`
through manifest options
2. Post-process the loaded manifest to override `changelogHost` for all
configured paths when the action input is provided and differs from the
default GitHub URL

## Technical Details
- **Before**: Attempted to use `manifestOverrides.changelogHost`
(invalid approach)
- **After**: Directly modifies
`manifest.repositoryConfig[path].changelogHost` for each path after
manifest loading
- Only applies the override when `changelog-host` input is provided and
differs from `https://github.com`
- Preserves existing behavior for config-less operation (single package
repos)

## Testing
- Updated existing test to verify the new implementation approach
- Maintains backward compatibility with all existing functionality
- Fixes the specific issue where GitHub Enterprise users couldn't
customize changelog host URLs

## Impact
This fix enables GitHub Enterprise Server users to properly use the
`changelog-host` parameter with manifest configurations, ensuring
changelog links point to their custom Git hosting instead

---------

Co-authored-by: Vincent Lee <vincentclee@users.noreply.github.com>
2025-09-16 08:10:05 +00:00
Marco Ferrari
15209c45fc chore: verify body contents when running tests (#1148)
Related to #1129
2025-09-09 15:04:16 +00:00
Jeff Ching
f07192c046 deps: update release-please to 17.1.2 (#1137)
The Octokit update requires providing/mocking a fetch implementation
(which is necessary because we use nock for http mocking)

Fixes #1136
2025-08-20 18:43:09 +00:00
Jeff Ching
aeb7f8d384 fix(deps): update release-please to 16.18.0 (#1083) 2025-02-27 17:39:30 +00:00
Jeff Ching
9cf05a09b1 feat!: v4 release (#871)
Any advanced configuration should be done via a
release-please-config.json.

Fixes #859
Fixes #858
Fixes #857
Fixes #852

feat!: remove most configuration options in favor of manifest
configuration to configure the release-please-action
refactor!: rewrite in typescript
feat!: remove command option in favor of setting `release-type` and
`skip-github-release`/`skip-github-pull-request`
feat!: run on node20
deps!: upgrade release-please to v16
2023-11-29 13:09:28 -08:00
Philippe Laflamme
9963ea2aa8 feat: add pull-request-header input (#615)
Co-authored-by: Jeff Ching <chingor@google.com>
2022-12-08 08:45:33 -08:00
Philippe Laflamme
a651f3c5e8 test: add check for release id output (#657)
This is a corresponding PR for
[this](https://github.com/googleapis/release-please/pull/1719)
release-please change

Co-authored-by: Jeff Ching <chingor@google.com>
2022-12-08 08:42:19 -08:00
mrzmyr
4da3bc1534 fix: update release-please to 14.17.5 (#671)
- https://github.com/googleapis/release-please/issues/1767
- https://github.com/googleapis/release-please/pull/1770
- https://github.com/googleapis/release-please/releases/tag/v14.17.5
2022-12-08 08:39:44 -08:00
Andrew Sweet
44827541d2 feat: provide inputs for releaser and manifest options in release-please 13.15 (#474)
* Synchronised action inputs with ReleaserConfig and ManifestOptions from release-please 13.15.0

* fix conflict from merge

* fix merge issue

* fix merge issue

Co-authored-by: Benjamin E. Coe <bencoe@google.com>
Co-authored-by: Jeff Ching <chingor@google.com>
2022-08-10 11:08:25 -07:00
tasshi / Masaharu TASHIRO
daa0d8f245 test: fix createPullRequestsFake() returns wrong values (#521)
test: fix createPullRequestsFake() returns wrong values

Co-authored-by: Jeff Ching <chingor@google.com>
2022-07-18 15:39:23 -07:00
Jeff Ching
2e2f852b70 fix: coerce v13 release object to expected action output keys (#437) 2022-02-19 09:54:13 -05:00
Benjamin E. Coe
ad9cdb78a6 fix(release-please): upgrade release-please dep (#422)
Upgrade release-please dep, address issue with manifest configuration
maintaining state between tagging releases and creating release PRs.
2022-01-22 13:32:50 -05:00
Benjamin E. Coe
52ffbbe392 feat(release-please)!: consolidate manifest and individual releasers (#398)
Major update to release-please which consolidates the manifest and single
releaser behavior into a single set of strategies, which can be used
on both split and mono-repos.

feat: adds support for draft pull requests.
feat: adds support for draft releases.
refactor!: if switching to manifest releaser, release_created will only be set if "." path is published.
refactor!: switch to using @actions/core getBooleanInput, accepted values for true = ["true", "True", "TRUE"], accepted values for false = ["false", "False", "FALSE"]
2021-12-29 19:54:42 +00:00
Ilya Lesikov
435e216fbe feat: add bump-patch-for-minor-pre-major option (#365) 2021-09-23 14:02:28 -07:00
Benjamin E. Coe
670afac8ab feat: output list of paths released during manifest release (#362) 2021-09-12 17:52:27 -07:00
Blaine Bublitz
5f94ededed feat: add release_created per path in manifest PR (#310) 2021-06-25 14:54:33 -07:00
Benjamin E. Coe
d234c634c2 fix(manifest): if "." is used it should have same outputs as node (#319) 2021-06-20 16:25:41 -07:00
Benjamin E. Coe
f48a175f37 feat(manifest): add manifest-pr command (#280) 2021-03-24 22:48:32 -07:00
Joel Dodge
45c32ccd24 feat: manifest based releaser https://git.io/JmVD4 (#273) 2021-03-24 14:59:21 -07:00
yi_Xu
d447fdb632 feat: add pull-request-title-pattern option (#259) 2021-03-03 10:20:34 -08:00
Benjamin E. Coe
038a2f320b fix(release-please): setup.py retains formatting (#246) 2021-02-19 17:55:48 -08:00
yi_Xu
c23605fcb2 fix: get the correct boolean value of the input (#233) 2021-02-17 11:56:51 -08:00
Benjamin E. Coe
70bba9e674 test: smoke test for factory returning instances (#224) 2021-02-14 20:04:48 -08:00
Ivan Santos
cede8e4837 fix(release-please): uses factory from latest version (#222) 2021-02-14 19:42:33 -08:00
Ivan Santos
efd1c77e85 fix(release-please): update github-release call to new function (#217)
This PR fixes the wrong call to createRelease now named as run.

Tests are also updated.
2021-02-13 20:16:30 -08:00
Ivan Santos
484099d969 feat(release-please): use latest release please version (#210) 2021-02-12 14:55:35 -08:00
Ivan Santos
534536c1c2 feat(release-please): add default branch input option for github release (#206) 2021-02-05 11:17:28 -08:00
Ivan Santos
4845e49098 feat(release-please): add default branch input option (#202) 2021-01-30 18:29:14 -08:00
Benjamin E. Coe
b0faf1dd7d fix: do not set PR output, if no PR opened (#129) 2020-12-07 08:37:47 -08:00
Benjamin E. Coe
c0f7d24cd0 feat: add additional outputs (#106)
Opening a release PR now outputs a release #. Creating a GitHub release outputs
SemVer major/minor/patch values
2020-11-25 12:34:05 -08:00
Benjamin E. Coe
fe20625bea test: add tests and configure CI/CD (#104) 2020-11-25 11:10:46 -08:00