Compare commits

...

42 Commits

Author SHA1 Message Date
Stefan Zweifel
394681d465 Release v4.1.5 2020-04-23 20:46:50 +02:00
Stefan Zweifel
a261484cc8 Update file_pattern Example in README 2020-04-23 20:46:41 +02:00
Stefan Zweifel
43ed630979 Merge pull request #64 from stefanzweifel/fix-61
Fix Issue with Commit Options
2020-04-23 20:35:56 +02:00
Stefan Zweifel
ee9d717e46 Merge branch 'master' into fix-61
# Conflicts:
#	entrypoint.sh
2020-04-23 20:20:10 +02:00
Stefan Zweifel
68b94ecdf3 Merge pull request #65 from cristianpb/master
 Allow to add multiple files
2020-04-23 16:20:11 +02:00
cristianpb
2b0a9bca02 Allow to add multiple files 2020-04-23 15:55:10 +02:00
Stefan Zweifel
13c9c82cae Merge pull request #63 from stefanzweifel/revert-62-revert-59-no-override-global-git
Revert "Revert "Place git user configuration inline before commit""
2020-04-22 21:20:00 +02:00
Stefan Zweifel
6e0a745133 Use Array 2020-04-22 21:17:10 +02:00
Stefan Zweifel
88ddd5fba5 WIP 2020-04-22 21:04:17 +02:00
Stefan Zweifel
2dec151b5c WIP 2020-04-22 20:49:36 +02:00
Stefan Zweifel
1ba0b8765f WIP 2020-04-22 20:43:52 +02:00
Stefan Zweifel
f278d451d8 Revert hard coded options 2020-04-22 20:39:17 +02:00
Stefan Zweifel
1f6bf5e4c0 Set default value for commit_options 2020-04-22 20:39:08 +02:00
Stefan Zweifel
5dae7dbdb7 Hard Code Options 2020-04-22 20:36:26 +02:00
Stefan Zweifel
fbbf9665a8 Output git version and debugging message 2020-04-22 20:21:08 +02:00
Stefan Zweifel
e8ab63a01b Add ; in more places 2020-04-22 20:17:05 +02:00
Stefan Zweifel
fdbf836519 Split git-commit command 2020-04-22 20:07:31 +02:00
Stefan Zweifel
8f94f9b7ec Revert "Revert "Place git user configuration inline before commit"" 2020-04-22 20:04:52 +02:00
Stefan Zweifel
e6db1ef8bd Release v4.1.4 2020-04-22 12:58:51 +02:00
Stefan Zweifel
d09082150e Merge pull request #62 from stefanzweifel/revert-59-no-override-global-git
Revert "Place git user configuration inline before commit"
2020-04-22 12:56:36 +02:00
Stefan Zweifel
3e578b5696 Revert "Place git user configuration inline before commit" 2020-04-22 12:55:25 +02:00
Stefan Zweifel
c586963a3d Update README 2020-04-18 10:55:30 +02:00
Stefan Zweifel
a7342eab13 Release v4.1.3 2020-04-18 10:55:26 +02:00
Stefan Zweifel
256f31683d Add some Debug Logs 2020-04-18 10:53:20 +02:00
Stefan Zweifel
8040ba33d6 Merge pull request #59 from parndt/no-override-global-git
Place git user configuration inline before commit
2020-04-10 14:50:57 +02:00
Philip Arndt
80c7ed953f Place git user configuration inline 2020-04-10 11:38:03 +12:00
Stefan Zweifel
dd055f6225 Release v4.1.2 2020-04-03 09:19:39 +02:00
Stefan Zweifel
55734408b7 Merge pull request #57 from wxt2005/master
Remove unnecessary escape
2020-04-03 09:10:34 +02:00
Botao
d317154f77 Remove unnecessary escape 2020-04-03 13:21:53 +08:00
Stefan Zweifel
36489f4cb5 Merge pull request #56 from localheinz/patch-1
Fix: Typo
2020-03-17 15:44:10 +01:00
Andreas Möller
2530046e72 Fix: Typo 2020-03-17 13:44:47 +01:00
Stefan Zweifel
172c2a2fc3 Update CD Workflow 2020-03-14 13:39:33 +01:00
Stefan Zweifel
480e111bf8 Release v4.1.1 2020-03-14 13:37:49 +01:00
Stefan Zweifel
7659782c71 Merge pull request #54 from stefanzweifel/hotfix/optional-branch-push
Fix: Push branch to repository if no branch name is given and no tagging message is set
2020-03-14 13:34:39 +01:00
Stefan Zweifel
026f88c27c Fix typo in message 2020-03-14 13:32:10 +01:00
Stefan Zweifel
f73d11d461 Revert changes 2020-03-14 13:21:42 +01:00
Stefan Zweifel
2b6b90e8f1 Test shorthand 2020-03-14 13:20:32 +01:00
Stefan Zweifel
e1770ec52b Only add --tags option if tagging message is set 2020-03-14 13:13:34 +01:00
Stefan Zweifel
0453bb1c25 Temp disable push of tags 2020-03-14 13:11:13 +01:00
Stefan Zweifel
da55e4a0cf Add echo statements for easier debugging 2020-03-14 13:09:53 +01:00
Stefan Zweifel
b1833bd054 Merge pull request #52 from localheinz/fix/typo
Fix: Typo
2020-03-13 17:02:58 +01:00
Andreas Möller
6dfda22dd6 Fix: Typo 2020-03-13 12:35:11 +01:00
5 changed files with 76 additions and 29 deletions

View File

@@ -25,5 +25,7 @@ jobs:
with: with:
draft: false draft: false
prerelease: false prerelease: false
body: |
See [Changelog](https://github.com/stefanzweifel/git-auto-commit-action/blob/master/CHANGELOG.md) for details.
release_name: "${{ steps.determine-tag.outputs.tag }}" release_name: "${{ steps.determine-tag.outputs.tag }}"
tag_name: "${{ steps.determine-tag.outputs.tag }}" tag_name: "${{ steps.determine-tag.outputs.tag }}"

View File

@@ -4,10 +4,42 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
## [Unreleased](https://github.com/stefanzweifel/git-auto-commit-action/compare/v4.1.0...HEAD) ## [Unreleased](https://github.com/stefanzweifel/git-auto-commit-action/compare/v4.1.5...HEAD)
> TBD > TBD
## [v4.1.5](https://github.com/stefanzweifel/git-auto-commit-action/compare/v4.1.4...v4.1.5) - 2020-04-23
### Added
- Update `file_pattern` to support multiple file paths [#65](https://github.com/stefanzweifel/git-auto-commit-action/pull/65)
### Changes
- Revert changes made in v4.1.4 [#63](https://github.com/stefanzweifel/git-auto-commit-action/pull/63)
### Fixes
- Fix issue with `commit_options` [#64](https://github.com/stefanzweifel/git-auto-commit-action/pull/64)
## [v4.1.4](https://github.com/stefanzweifel/git-auto-commit-action/compare/v4.1.3...v4.1.4) - 2020-04-22
### Fixed
- Fix bug introduced in previous version, where git user configuration has been placed inline [#62](https://github.com/stefanzweifel/git-auto-commit-action/pull/62)
## [v4.1.3](https://github.com/stefanzweifel/git-auto-commit-action/compare/v4.1.2...v4.1.3) - 2020-04-18
### Changed
- Place Git user configuration inline [#59](https://github.com/stefanzweifel/git-auto-commit-action/pull/59)
## [v4.1.2](https://github.com/stefanzweifel/git-auto-commit-action/compare/v4.1.1...v4.1.2) - 2020-04-03
### Fixes
- Fix Issue with `changes_detected`-output [#57](https://github.com/stefanzweifel/git-auto-commit-action/pull/57)
## [v4.1.1](https://github.com/stefanzweifel/git-auto-commit-action/compare/v4.1.0...v4.1.1) - 2020-03-14
### Fixes
- Fix issue where commit has not been pushed to remote repository, when no `branch`-option has been given [#54](https://github.com/stefanzweifel/git-auto-commit-action/pull/54)
## [v4.1.0](https://github.com/stefanzweifel/git-auto-commit-action/compare/v4.0.0...v4.1.0) - 2020-03-05 ## [v4.1.0](https://github.com/stefanzweifel/git-auto-commit-action/compare/v4.0.0...v4.1.0) - 2020-03-05

View File

@@ -17,7 +17,7 @@ This Action has been inspired and adapted from the [auto-commit](https://github.
Add the following step at the end of your job. Add the following step at the end of your job.
```yaml ```yaml
- uses: stefanzweifel/git-auto-commit-action@v4.1.0 - uses: stefanzweifel/git-auto-commit-action@v4.1.5
with: with:
commit_message: Apply automatic changes commit_message: Apply automatic changes
@@ -29,7 +29,7 @@ Add the following step at the end of your job.
commit_options: '--no-verify --signoff' commit_options: '--no-verify --signoff'
# Optional glob pattern of files which should be added to the commit # Optional glob pattern of files which should be added to the commit
file_pattern: src/\*.js file_pattern: src/*.js tests/*.js
# Optional local file path to the repository # Optional local file path to the repository
repository: . repository: .
@@ -37,7 +37,7 @@ Add the following step at the end of your job.
# Optional commit user and author settings # Optional commit user and author settings
commit_user_name: My GitHub Actions Bot commit_user_name: My GitHub Actions Bot
commit_user_email: my-github-actions-bot@example.org commit_user_email: my-github-actions-bot@example.org
commit_author: Author <actions@gitub.com> commit_author: Author <actions@github.com>
# Optional tag message. Will create and push a new tag to the remote repository # Optional tag message. Will create and push a new tag to the remote repository
tagging_message: 'v1.0.0' tagging_message: 'v1.0.0'
@@ -74,7 +74,7 @@ jobs:
- name: Run php-cs-fixer - name: Run php-cs-fixer
uses: docker://oskarstark/php-cs-fixer-ga uses: docker://oskarstark/php-cs-fixer-ga
- uses: stefanzweifel/git-auto-commit-action@v4.1.0 - uses: stefanzweifel/git-auto-commit-action@v4.1.5
with: with:
commit_message: Apply php-cs-fixer changes commit_message: Apply php-cs-fixer changes
branch: ${{ github.head_ref }} branch: ${{ github.head_ref }}
@@ -97,7 +97,7 @@ jobs:
- name: Run php-cs-fixer - name: Run php-cs-fixer
uses: docker://oskarstark/php-cs-fixer-ga uses: docker://oskarstark/php-cs-fixer-ga
- uses: stefanzweifel/git-auto-commit-action@v4.1.0 - uses: stefanzweifel/git-auto-commit-action@v4.1.5
with: with:
commit_message: Apply php-cs-fixer changes commit_message: Apply php-cs-fixer changes
``` ```
@@ -124,7 +124,7 @@ This is due to limitations set up by GitHub:
> An action in a workflow run can't trigger a new workflow run. For example, if an action pushes code using the repository's GITHUB_TOKEN, a new workflow will not run even when the repository contains a workflow configured to run when push events occur. > An action in a workflow run can't trigger a new workflow run. For example, if an action pushes code using the repository's GITHUB_TOKEN, a new workflow will not run even when the repository contains a workflow configured to run when push events occur.
[Source](https://help.github.com/en/actions/reference/events-that-trigger-workflows) [Source](https://help.github.com/en/actions/reference/events-that-trigger-workflows)
You can change this by creating a new [Pesonal Access Token (PAT)](https://github.com/settings/tokens/new), storing the token as a secret in your repository and then passing the new token to the [`actions/checkout`](https://github.com/actions/checkout#usage) Action. You can change this by creating a new [Personal Access Token (PAT)](https://github.com/settings/tokens/new), storing the token as a secret in your repository and then passing the new token to the [`actions/checkout`](https://github.com/actions/checkout#usage) Action.
#### Example Workflow #### Example Workflow
@@ -145,7 +145,7 @@ jobs:
- name: Run php-cs-fixer - name: Run php-cs-fixer
uses: docker://oskarstark/php-cs-fixer-ga uses: docker://oskarstark/php-cs-fixer-ga
- uses: stefanzweifel/git-auto-commit-action@v4.1.0 - uses: stefanzweifel/git-auto-commit-action@v4.1.5
with: with:
commit_message: Apply php-cs-fixer changes commit_message: Apply php-cs-fixer changes
``` ```

View File

@@ -14,6 +14,7 @@ inputs:
commit_options: commit_options:
description: Commit options (eg. --no-verify) description: Commit options (eg. --no-verify)
required: false required: false
default: ''
file_pattern: file_pattern:
description: File pattern used for `git add`. For example `src/\*.js` description: File pattern used for `git add`. For example `src/\*.js`
required: false required: false

View File

@@ -7,9 +7,7 @@ _main() {
if _git_is_dirty; then if _git_is_dirty; then
echo \"::set-output name=changes_detected::true\" echo "::set-output name=changes_detected::true";
_setup_git
_switch_to_branch _switch_to_branch
@@ -22,43 +20,44 @@ _main() {
_push_to_github _push_to_github
else else
echo \"::set-output name=changes_detected::false\" echo "::set-output name=changes_detected::false";
echo "Working tree clean. Nothing to commit." echo "Working tree clean. Nothing to commit.";
fi fi
} }
_switch_to_repository() { _switch_to_repository() {
echo "INPUT_REPOSITORY value: $INPUT_REPOSITORY"; echo "INPUT_REPOSITORY value: $INPUT_REPOSITORY";
cd $INPUT_REPOSITORY cd $INPUT_REPOSITORY;
} }
_git_is_dirty() { _git_is_dirty() {
[ -n "$(git status -s)" ] [ -n "$(git status -s)" ]
} }
# Set up git user configuration
_setup_git ( ) {
git config --global user.name "$INPUT_COMMIT_USER_NAME"
git config --global user.email "$INPUT_COMMIT_USER_EMAIL"
}
_switch_to_branch() { _switch_to_branch() {
echo "INPUT_BRANCH value: $INPUT_BRANCH"; echo "INPUT_BRANCH value: $INPUT_BRANCH";
# Switch to branch from current Workflow run # Switch to branch from current Workflow run
git checkout $INPUT_BRANCH git checkout $INPUT_BRANCH;
} }
_add_files() { _add_files() {
echo "INPUT_FILE_PATTERN: ${INPUT_FILE_PATTERN}" echo "INPUT_FILE_PATTERN: ${INPUT_FILE_PATTERN}";
git add "${INPUT_FILE_PATTERN}" git add ${INPUT_FILE_PATTERN};
} }
_local_commit() { _local_commit() {
echo "INPUT_COMMIT_OPTIONS: ${INPUT_COMMIT_OPTIONS}" echo "INPUT_COMMIT_OPTIONS: ${INPUT_COMMIT_OPTIONS}";
git commit -m "$INPUT_COMMIT_MESSAGE" --author="$INPUT_COMMIT_AUTHOR" ${INPUT_COMMIT_OPTIONS:+"$INPUT_COMMIT_OPTIONS"} echo "::debug::Apply commit options ${INPUT_COMMIT_OPTIONS}";
INPUT_COMMIT_OPTIONS_ARRAY=( $INPUT_COMMIT_OPTIONS );
git -c user.name="$INPUT_COMMIT_USER_NAME" -c user.email="$INPUT_COMMIT_USER_EMAIL" \
commit -m "$INPUT_COMMIT_MESSAGE" \
--author="$INPUT_COMMIT_AUTHOR" \
${INPUT_COMMIT_OPTIONS:+"${INPUT_COMMIT_OPTIONS_ARRAY[@]}"};
} }
_tag_commit() { _tag_commit() {
@@ -66,16 +65,29 @@ _tag_commit() {
if [ -n "$INPUT_TAGGING_MESSAGE" ] if [ -n "$INPUT_TAGGING_MESSAGE" ]
then then
git tag -a "$INPUT_TAGGING_MESSAGE" -m "$INPUT_TAGGING_MESSAGE" echo "::debug::Create tag $INPUT_TAGGING_MESSAGE";
git tag -a "$INPUT_TAGGING_MESSAGE" -m "$INPUT_TAGGING_MESSAGE";
else
echo " No tagging message supplied. No tag will be added.";
fi fi
} }
_push_to_github() { _push_to_github() {
if [ -z "$INPUT_BRANCH" ] if [ -z "$INPUT_BRANCH" ]
then then
git push origin --tags # Only add `--tags` option, if `$INPUT_TAGGING_MESSAGE` is set
if [ -n "$INPUT_TAGGING_MESSAGE" ]
then
echo "::debug::git push origin --tags";
git push origin --tags;
else else
git push --set-upstream origin "HEAD:$INPUT_BRANCH" --tags echo "::debug::git push origin";
git push origin;
fi
else
echo "::debug::Push commit to remote branch $INPUT_BRANCH";
git push --set-upstream origin "HEAD:$INPUT_BRANCH" --tags;
fi fi
} }