mirror of
https://github.com/jimeh/release-please-manifest-action.git
synced 2026-02-19 09:06:42 +00:00
Compare commits
18 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9e6111fa06 | ||
| f307f175b9 | |||
| 09a0ac2e59 | |||
| b2f2b18196 | |||
|
5ce2d33d70
|
|||
|
59ebc8ab5c
|
|||
|
42fbbf7a6f
|
|||
|
|
ffac38c285 | ||
| 023c0d0dc3 | |||
| 322dcdf56e | |||
|
|
38d93f4a8a | ||
|
22f0022a09
|
|||
|
|
8ae0004991 | ||
|
1139eaec31
|
|||
|
48a1ac7188
|
|||
|
|
5a9880757d | ||
|
9d21ba2763
|
|||
|
4d6baa6f81
|
3
.github/.release-please-manifest.json
vendored
Normal file
3
.github/.release-please-manifest.json
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
".": "1.0.2"
|
||||
}
|
||||
3
.github/release-please-config.json
vendored
3
.github/release-please-config.json
vendored
@@ -9,8 +9,7 @@
|
||||
"bump-minor-pre-major": true,
|
||||
"bump-patch-for-minor-pre-major": true,
|
||||
"draft": false,
|
||||
"prerelease": false,
|
||||
"initial-version": "0.0.1"
|
||||
"prerelease": false
|
||||
}
|
||||
},
|
||||
"$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json"
|
||||
|
||||
3
.github/release-please-manifest.json
vendored
3
.github/release-please-manifest.json
vendored
@@ -1,3 +0,0 @@
|
||||
{
|
||||
".": "0.0.6"
|
||||
}
|
||||
34
.github/workflows/ci.yml
vendored
34
.github/workflows/ci.yml
vendored
@@ -1,25 +1,33 @@
|
||||
---
|
||||
name: CI
|
||||
name: Release
|
||||
on: push
|
||||
|
||||
jobs:
|
||||
docs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 16
|
||||
- run: make docs
|
||||
- name: Verify no changes after docs build
|
||||
run: |
|
||||
git diff --exit-code
|
||||
|
||||
release-please:
|
||||
runs-on: ubuntu-latest
|
||||
if: github.ref == 'refs/heads/main'
|
||||
steps:
|
||||
- uses: jimeh/release-please-manifest-action@main
|
||||
- uses: jimeh/release-please-manifest-action@v1
|
||||
id: release
|
||||
- name: Create/update MAJOR tag
|
||||
if: ${{ steps.release.outputs.release_created }}
|
||||
uses: richardsimko/update-tag@v1
|
||||
with:
|
||||
tag_name: v${{ steps.release.outputs.major }}
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Create/update MAJOR.MINOR tag
|
||||
app-id: ${{ secrets.RELEASE_BOT_APP_ID }}
|
||||
private-key: ${{ secrets.RELEASE_BOT_PRIVATE_KEY }}
|
||||
- name: MAJOR and MAJOR.MINOR tags
|
||||
if: ${{ steps.release.outputs.release_created }}
|
||||
uses: richardsimko/update-tag@v1
|
||||
uses: jimeh/update-tags-action@v1
|
||||
with:
|
||||
tag_name: v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }}
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
tags: |
|
||||
v${{ steps.release.outputs.major }}
|
||||
v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }}
|
||||
|
||||
39
CHANGELOG.md
39
CHANGELOG.md
@@ -1,5 +1,44 @@
|
||||
# Changelog
|
||||
|
||||
## [1.0.2](https://github.com/jimeh/release-please-manifest-action/compare/v1.0.1...v1.0.2) (2023-05-18)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **action:** correct minor typo in action metadata ([#14](https://github.com/jimeh/release-please-manifest-action/issues/14)) ([f307f17](https://github.com/jimeh/release-please-manifest-action/commit/f307f175b93d8eb1a1a4dfaf9092efaba72a6d62))
|
||||
|
||||
## [1.0.1](https://github.com/jimeh/release-please-manifest-action/compare/v1.0.0...v1.0.1) (2023-05-08)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **action:** set correct action name in action.yml metadata ([#10](https://github.com/jimeh/release-please-manifest-action/issues/10)) ([322dcdf](https://github.com/jimeh/release-please-manifest-action/commit/322dcdf56ed8be4589ffbd70cb1382198ca65120))
|
||||
|
||||
## [1.0.0](https://github.com/jimeh/release-please-manifest-action/compare/v0.1.1...v1.0.0) (2023-05-08)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **release:** prepare for v1.0.0 ([22f0022](https://github.com/jimeh/release-please-manifest-action/commit/22f0022a0932f5639bb4808df16e76c245256880))
|
||||
|
||||
## [0.1.1](https://github.com/jimeh/release-please-manifest-action/compare/v0.1.0...v0.1.1) (2023-05-08)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **release:** rename CI workflow to Release ([1139eae](https://github.com/jimeh/release-please-manifest-action/commit/1139eaec31e83556c1eb35a523ee76485efb9ab5))
|
||||
|
||||
## [0.1.0](https://github.com/jimeh/release-please-manifest-action/compare/v0.0.6...v0.1.0) (2023-05-08)
|
||||
|
||||
|
||||
### ⚠ BREAKING CHANGES
|
||||
|
||||
* **action:** Change default manifest path to `.github/.release-please-manifest.json`.
|
||||
|
||||
### Features
|
||||
|
||||
* **action:** change default manifest file path ([4d6baa6](https://github.com/jimeh/release-please-manifest-action/commit/4d6baa6f81afde8c72681281cc4f6a9f675b8dda))
|
||||
|
||||
## [0.0.6](https://github.com/jimeh/release-please-manifest-action/compare/v0.0.5...v0.0.6) (2023-05-08)
|
||||
|
||||
|
||||
|
||||
7
Makefile
7
Makefile
@@ -1,3 +1,10 @@
|
||||
.PHONY: docs
|
||||
docs: readme
|
||||
|
||||
.PHONY: readme
|
||||
readme: check-npx action-docs
|
||||
npx --yes prettier --print-width 80 --prose-wrap always --write README.md
|
||||
|
||||
.PHONY: action-docs
|
||||
action-docs: check-npx
|
||||
npx --yes action-docs --update-readme
|
||||
|
||||
51
README.md
51
README.md
@@ -38,13 +38,18 @@ running [release-please][] in [manifest mode][].
|
||||
|
||||
- Focuses on and only supports running release-please's manifest command.
|
||||
- Optionally supports having release-please authenticate as a GitHub App.
|
||||
- By default places release-please config and manifest files within the
|
||||
top-level `.github` directory instead of in the repository root:
|
||||
- `.github/release-please-manifest.json`
|
||||
- `.github/release-please-config.json`
|
||||
- Defaults to looking for release-please's config and manifest files within the
|
||||
top-level `.github` directory instead of in the repository root.
|
||||
|
||||
# Examples
|
||||
|
||||
All examples assume you have placed your `release-please-config.json` and
|
||||
`.release-please-manifest.json` within the `.github` directory in the root of
|
||||
the repository.
|
||||
|
||||
See release-please's [manifest-releaser][manifest mode] documentation for
|
||||
details about the config and manifest files.
|
||||
|
||||
## Basic (Actions Token)
|
||||
|
||||
This example will have release-please authenticate using `secrets.GITHUB_TOKEN`
|
||||
@@ -68,7 +73,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
if: github.ref == 'refs/heads/main'
|
||||
steps:
|
||||
- uses: jimeh/release-please-manifest-action@v0
|
||||
- uses: jimeh/release-please-manifest-action@v1
|
||||
```
|
||||
|
||||
<!-- x-release-please-end -->
|
||||
@@ -88,7 +93,7 @@ jobs:
|
||||
with:
|
||||
command: manifest
|
||||
config-file: .github/release-please-config.json
|
||||
manifest-file: .github/release-please-manifest.json
|
||||
manifest-file: .github/.release-please-manifest.json
|
||||
```
|
||||
|
||||
_Note: Outputs are not included in this equivalence example._
|
||||
@@ -114,7 +119,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
if: github.ref == 'refs/heads/main'
|
||||
steps:
|
||||
- uses: jimeh/release-please-manifest-action@v0
|
||||
- uses: jimeh/release-please-manifest-action@v1
|
||||
with:
|
||||
token: ${{ secrets.RELEASE_PAT_TOKEN }}
|
||||
```
|
||||
@@ -137,7 +142,7 @@ jobs:
|
||||
token: ${{ secrets.RELEASE_PAT_TOKEN }}
|
||||
command: manifest
|
||||
config-file: .github/release-please-config.json
|
||||
manifest-file: .github/release-please-manifest.json
|
||||
manifest-file: .github/.release-please-manifest.json
|
||||
```
|
||||
|
||||
_Note: Outputs are not included in this equivalence example._
|
||||
@@ -174,7 +179,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
if: github.ref == 'refs/heads/main'
|
||||
steps:
|
||||
- uses: jimeh/release-please-manifest-action@v0
|
||||
- uses: jimeh/release-please-manifest-action@v1
|
||||
with:
|
||||
app-id: ${{ secrets.RELEASE_BOT_APP_ID }}
|
||||
private-key: ${{ secrets.RELEASE_BOT_PRIVATE_KEY }}
|
||||
@@ -203,7 +208,7 @@ jobs:
|
||||
token: ${{ steps.github-app-token.outputs.token }}
|
||||
command: manifest
|
||||
config-file: .github/release-please-config.json
|
||||
manifest-file: .github/release-please-manifest.json
|
||||
manifest-file: .github/.release-please-manifest.json
|
||||
```
|
||||
|
||||
_Note: Outputs are not included in this equivalence example._
|
||||
@@ -216,18 +221,18 @@ _Note: Outputs are not included in this equivalence example._
|
||||
|
||||
## Inputs
|
||||
|
||||
| parameter | description | required | default |
|
||||
| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------- | ------------------------------------ |
|
||||
| token | GitHub token used to authenticate. | `false` | ${{ github.token }} |
|
||||
| app-id | ID of the GitHub App to use for authentication. If set, takes precedence over token input. | `false` | |
|
||||
| private-key | Private key of the GitHub App (can be Base64 encoded). Required when app-id is provided. | `false` | |
|
||||
| installation-id | ID of the installation for which the app token will be requested. Defaults to the ID of the repository's installation. | `false` | |
|
||||
| permissions | JSON-stringified permissions granted to the app token. Defaults to all the GitHub app permissions, see: https://docs.github.com/en/rest/apps/apps#create-an-installation-access-token-for-an-app | `false` | |
|
||||
| github-api-url | Configure github API URL. | `false` | ${{ github.api_url }} |
|
||||
| repository | The full name of the repository to operate on in owner/repo format. Defaults to the current repository. | `false` | ${{ github.repository }} |
|
||||
| default-branch | Branch to open pull release PR against. Defaults to the repository's default branch. | `false` | |
|
||||
| config-file | Pat to config file within the project. | `false` | .github/release-please-config.json |
|
||||
| manifest-file | Path to manifest file within the project. | `false` | .github/release-please-manifest.json |
|
||||
| parameter | description | required | default |
|
||||
| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------- | ------------------------------------- |
|
||||
| token | GitHub token used to authenticate. | `false` | ${{ github.token }} |
|
||||
| app-id | ID of the GitHub App to use for authentication. If set, takes precedence over token input. | `false` | |
|
||||
| private-key | Private key of the GitHub App (can be Base64 encoded). Required when app-id is provided. | `false` | |
|
||||
| installation-id | ID of the installation for which the app token will be requested. Defaults to the ID of the repository's installation. | `false` | |
|
||||
| permissions | JSON-stringified permissions granted to the app token. Defaults to all the GitHub app permissions, see: https://docs.github.com/en/rest/apps/apps#create-an-installation-access-token-for-an-app | `false` | |
|
||||
| github-api-url | Configure github API URL. | `false` | ${{ github.api_url }} |
|
||||
| repository | The full name of the repository to operate on in owner/repo format. Defaults to the current repository. | `false` | ${{ github.repository }} |
|
||||
| default-branch | Branch to open pull release PR against. Defaults to the repository's default branch. | `false` | |
|
||||
| config-file | Pat to config file within the project. | `false` | .github/release-please-config.json |
|
||||
| manifest-file | Path to manifest file within the project. | `false` | .github/.release-please-manifest.json |
|
||||
|
||||
<!-- action-docs-inputs -->
|
||||
|
||||
@@ -242,7 +247,7 @@ _Note: Outputs are not included in this equivalence example._
|
||||
| id | Release ID. |
|
||||
| name | Release name. |
|
||||
| tag_name | Release tag name. |
|
||||
| sha | Release sha |
|
||||
| sha | Release SHA. |
|
||||
| body | Release body. |
|
||||
| html_url | Release URL. |
|
||||
| draft | Whether or not the release is a draft. |
|
||||
|
||||
11
action.yml
11
action.yml
@@ -1,5 +1,5 @@
|
||||
---
|
||||
name: "release-please-action"
|
||||
name: "release-please-manifest-action"
|
||||
description: >-
|
||||
Opinionated action for running release-please in manifest mode with optional
|
||||
support to authenticate as a GitHub App.
|
||||
@@ -7,8 +7,7 @@ author: "jimeh"
|
||||
|
||||
inputs:
|
||||
token:
|
||||
description: >-
|
||||
GitHub token used to authenticate.
|
||||
description: "GitHub token used to authenticate."
|
||||
required: false
|
||||
default: ${{ github.token }}
|
||||
app-id:
|
||||
@@ -52,7 +51,7 @@ inputs:
|
||||
manifest-file:
|
||||
description: Path to manifest file within the project.
|
||||
required: false
|
||||
default: ".github/release-please-manifest.json"
|
||||
default: ".github/.release-please-manifest.json"
|
||||
|
||||
outputs:
|
||||
release_created:
|
||||
@@ -71,7 +70,7 @@ outputs:
|
||||
description: "Release tag name."
|
||||
value: ${{ steps.release-please.outputs.tag_name }}
|
||||
sha:
|
||||
description: "Release sha"
|
||||
description: "Release SHA."
|
||||
value: ${{ steps.release-please.outputs.sha }}
|
||||
body:
|
||||
description: "Release body."
|
||||
@@ -126,7 +125,7 @@ runs:
|
||||
permissions: ${{ inputs.permissions }}
|
||||
private_key: ${{ inputs.private-key }}
|
||||
repository: ${{ github.repository }}
|
||||
- name: Determine which token to use
|
||||
- name: resolve token
|
||||
id: token
|
||||
run: |-
|
||||
echo "token=${APP_TOKEN:-$INPUT_TOKEN}" >> "$GITHUB_OUTPUT"
|
||||
|
||||
Reference in New Issue
Block a user