This GitHub Action allows you to quickly and easily get bot (GitHub App) basic details like name, email, author/committer, ... in a proper GitHub format to use in the subsequence steps for automation like git commit/push, open PR, etc.
- Action is platform-independent and tested on all the latest GitHub-hosted runners (
ubuntu-latest,macos-latest,windows-latest).
Just place in your GitHub workflow steps:
- name: Bot Details
id: bot-details
uses: raven-actions/bot-details@v1
- name: Bot Details outputs
run: |
echo "ID: ${{ steps.bot-details.outputs.id }}"
echo "Slug name: ${{ steps.bot-details.outputs.slug }}"
echo "Display name: ${{ steps.bot-details.outputs.name }}"
echo "Email: ${{ steps.bot-details.outputs.email }}"
echo "Name Email: ${{ steps.bot-details.outputs.name-email }}"
echo "HTML URL: ${{ steps.bot-details.outputs.html-url }}"
echo "API URL: ${{ steps.bot-details.outputs.api-url }}"Example output with default settings:
- ID:
41898282 - Slug name:
github-actions - Display name:
github-actions[bot] - Email:
41898282+github-actions[bot]@users.noreply.github.com - Name Email:
github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> - HTML URL:
https://github.com/apps/github-actions - API URL:
https://api.github.com/users/github-actions%5Bbot%5D
Use the action's output in the subsequence steps
- name: Bot Details
id: bot-details
uses: raven-actions/bot-details@v1
with:
bot-slug-name: dependabot # (optional) if not specified then default one is 'github-actions'
- name: Bot Details outputs
run: |
echo "ID: ${{ steps.bot-details.outputs.id }}"
echo "Slug name: ${{ steps.bot-details.outputs.slug }}"
echo "Display name: ${{ steps.bot-details.outputs.name }}"
echo "Email: ${{ steps.bot-details.outputs.email }}"
echo "Name Email: ${{ steps.bot-details.outputs.name-email }}"
echo "HTML URL: ${{ steps.bot-details.outputs.html-url }}"
echo "API URL: ${{ steps.bot-details.outputs.api-url }}"Use environment variables in the subsequence steps.
- name: Bot Details
uses: raven-actions/bot-details@v1
with:
bot-slug-name: my-gh-app # (optional) if not specified then default one is 'github-actions'
- name: Bot Details outputs
run: |
echo "ID: ${{ env.BOT_ID }}"
echo "Slug name: ${{ env.BOT_SLUG }}"
echo "Display name: ${{ env.BOT_NAME }}"
echo "Email: ${{ env.BOT_EMAIL }}"
echo "Name Email: ${{ env.BOT_NAME_EMAIL }}"
echo "HTML URL: ${{ env.BOT_HTML_URL }}"
echo "API URL: ${{ env.BOT_API_URL }}"Use environment variables with custom environment prefix in the subsequence steps.
Environment prefix will be upper-cased and striped from any special characters. A double underscore
__is placed between environment prefix and env name.
- name: Bot Details
uses: raven-actions/bot-details@v1
with:
env-prefix: myEnvPrefix # (optional) if not specified then no prefix
- name: Bot Details outputs
run: |
echo "ID: ${{ env.MYENVPREFIX__BOT_ID }}"
echo "Slug name: ${{ env.MYENVPREFIX__BOT_SLUG }}"
echo "Display name: ${{ env.MYENVPREFIX__BOT_NAME }}"
echo "Email: ${{ env.MYENVPREFIX__BOT_EMAIL }}"
echo "Name Email: ${{ env.MYENVPREFIX__BOT_NAME_EMAIL }}"
echo "HTML URL: ${{ env.MYENVPREFIX__BOT_HTML_URL }}"
echo "API URL: ${{ env.MYENVPREFIX__BOT_API_URL }}"Below are examples based on existing actions.
Example with Git Auto Commit action.
- name: Git Auto Commit
uses: stefanzweifel/git-auto-commit-action@v6
with:
commit_user_name: ${{ steps.bot-details.outputs.name }}
commit_user_email: ${{ steps.bot-details.outputs.email }}
commit_author: ${{ steps.bot-details.outputs.name-email }}Example with Create Pull Request action.
- name: Create Pull Request
uses: peter-evans/create-pull-request@v7
with:
committer: ${{ steps.bot-details.outputs.name-email }}
author: ${{ steps.bot-details.outputs.name-email }}| Name | Required | Type | Default | Description |
|---|---|---|---|---|
bot-slug-name |
false | string |
github-actions |
Bot slug name (GitHub App name) |
env-prefix |
false | string |
not set | Prefix for environment variables |
github-token |
false | string |
github.token |
GitHub token to use for API authentication |
| Name | Type | Description |
|---|---|---|
id |
number |
Bot ID |
slug |
string |
Bot slug name |
name |
string |
Bot display name |
email |
string |
Bot GitHub formatted email |
name-email |
string |
Bot GitHub formatted name and email |
html-url |
string |
Bot HTML URL |
api-url |
string |
Bot API URL |
Contributions to the project are welcome! Please follow Contributing Guide.
This project is distributed under the terms of the MIT license.