Compare commits

...

30 Commits

Author SHA1 Message Date
Stefan Zweifel
2f5e73df85 Release v4.1.6 2020-04-28 13:28:19 +02:00
Stefan Zweifel
cc16347545 Merge pull request #68 from stefanzweifel/fix-67
Inline User Configuration when creating a Tag
2020-04-28 13:27:03 +02:00
Stefan Zweifel
1ee136f439 Inline user config with tag command 2020-04-28 13:12:43 +02:00
Stefan Zweifel
7fdc480651 Update README.md 2020-04-24 10:14:37 +02:00
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
4 changed files with 63 additions and 28 deletions

View File

@@ -4,7 +4,36 @@ 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.2...HEAD) ## [Unreleased](https://github.com/stefanzweifel/git-auto-commit-action/compare/v4.1.6...HEAD)
> TBD
## [v4.1.6](https://github.com/stefanzweifel/git-auto-commit-action/compare/v4.1.5...v4.1.6) - 2020-04-28
### Fixes
- Fix issue where tags could not be created correctly [#68](https://github.com/stefanzweifel/git-auto-commit-action/pull/68)
## [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 ## [v4.1.2](https://github.com/stefanzweifel/git-auto-commit-action/compare/v4.1.1...v4.1.2) - 2020-04-03

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.2 - uses: stefanzweifel/git-auto-commit-action@v4.1.6
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: .
@@ -57,6 +57,8 @@ In this example I'm running `php-cs-fixer` in a PHP project.
### Example on `pull_request` event ### Example on `pull_request` event
If you would like to use this Action in a Workflow which listens to the `pull_request` event, you must add the `ref`-input to the `actions/checkout@v2` step. It's also recommended to add the `branch`-input to the `git-auto-commit`-step. This way you tell the Action exactly where to push the commit.
```yaml ```yaml
name: php-cs-fixer name: php-cs-fixer
@@ -74,7 +76,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.2 - uses: stefanzweifel/git-auto-commit-action@v4.1.6
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 +99,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.2 - uses: stefanzweifel/git-auto-commit-action@v4.1.6
with: with:
commit_message: Apply php-cs-fixer changes commit_message: Apply php-cs-fixer changes
``` ```
@@ -145,7 +147,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.2 - uses: stefanzweifel/git-auto-commit-action@v4.1.6
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,9 +65,10 @@ _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 -c user.name="$INPUT_COMMIT_USER_NAME" -c user.email="$INPUT_COMMIT_USER_EMAIL" tag -a "$INPUT_TAGGING_MESSAGE" -m "$INPUT_TAGGING_MESSAGE";
else else
echo " No tagging message supplied. No tag will be added." echo " No tagging message supplied. No tag will be added.";
fi fi
} }
@@ -78,13 +78,16 @@ _push_to_github() {
# Only add `--tags` option, if `$INPUT_TAGGING_MESSAGE` is set # Only add `--tags` option, if `$INPUT_TAGGING_MESSAGE` is set
if [ -n "$INPUT_TAGGING_MESSAGE" ] if [ -n "$INPUT_TAGGING_MESSAGE" ]
then then
git push origin --tags echo "::debug::git push origin --tags";
git push origin --tags;
else else
git push origin echo "::debug::git push origin";
git push origin;
fi fi
else else
git push --set-upstream origin "HEAD:$INPUT_BRANCH" --tags echo "::debug::Push commit to remote branch $INPUT_BRANCH";
git push --set-upstream origin "HEAD:$INPUT_BRANCH" --tags;
fi fi
} }