32 Commits

Author SHA1 Message Date
patrick brisbin
939b9b261c
Set title/body from commit-message if given
If `title`, `body`, and `body-path` are all not given, and
`commit-message` is, parse the `title` and `body` from the
'commit-message'.

A properly formatted message (title, blank line, then body) will be used
as title and body. Otherwise, the first line is used as title and the
remaining lines as body. Another valid approach could be to take all the
lines as title, or all the lines until the first blank as title, but the
former is unlikely to be the user's intention and the latter would
introduce complexity.

The parsing function was added in `utils` to facilitate testing.
2024-12-18 07:58:29 -05:00
Peter Evans
2f38cd26bf
fix: support submodules when commit signing (#3354)
* fix: support submodules when commit signing

* create correct tree object for submodule

* update log messages
2024-09-18 09:46:39 -07:00
Peter Evans
d121e62763
fix: disable diff detection for renames and copies (#3330)
* fix: disable diff detection for renames and copies

* fix format
2024-09-12 04:48:43 -07:00
Peter Evans
4320041ed3
feat: signed commits (v7) (#3057)
* Add support for signed commits (#3055)

* formatting

* fix eslint and lint errors

* shift setting the base to before the push

* sign commits by default for testing

* add debug lines

* read to buffer not string and use non-legacy method to base64

* debug payload without contents

* disable linter for debug code

* fix filepath when using path input

* try to fix head repo

* remove commented code

* Try refactor of file changes

* add tests for building file changes

* add build file changes test for binary files

* refactor graphql code into github helper class

* build file changes even when there is no diff

* add function to get commit detail

* fix format

* build branch commits

* use source mode for deleted files

* try rest api route

* fix check for branch existence

* force push

* try fix base tree

* debug commit verification

* debug commit verification

* fix format and cleanup

* add executable mode file to test

* limit blob creation concurrency

* only build commits when feature enabled

* remove unused code

* update readme link

* update docs for commit signing

* fix capital letter

* update docs

* add throttling

* set default back to false

* output head sha and verified status

* log outputs

* fix head sha output

* default the operation output to none

* output retryafter for secondary rate limit

* use separate client for branch and pull operations

* add maintainer-can-modify input

* rename git-token to branch-token

* fix branch token input

* remove deprecated env output

* update docs

* fix doc

* update docs

* build branch commits when there is a diff with the base

* check verification status of head commit when not known

* fix verified output when no commit signing is being used

* draft always-true

* convert to draft on branch updates when there is a diff with base

* update docs with blob size limit

* catch errors during blob creation for debugging

* parse empty commits

* pass base commit to push signed commits

* use parent commit details in create commit

* use parent tree for base_tree

* multipart tree creation

* update docs

* update readme about the permissions of the default token

* fix edge case where changes are partially merged

* add updating documentation

* fix typo

* update major version

---------

Co-authored-by: Ravi <1299606+rustycl0ck@users.noreply.github.com>
2024-09-03 08:54:12 +01:00
Peter Evans
9153d834b6
perf: limit the fetch depth of pr branch (#2857) 2024-04-17 20:00:12 +09:00
Peter Evans
70a41aba78
perf: shallow fetch the actual base when rebasing from working base (#2816)
* Update git.fetch calls to use depth=1 (#2810)

* When base is set, fetch depth=1

* PR Feedback - remove depth=1 from tryFetch function

* push-to-fork fix

* test updates to handle shallow fetch of base

---------

Co-authored-by: Eric Webb <eric@collectivegenius.net>
2024-03-12 23:16:55 +09:00
Peter Evans
b1ddad2c99 feat: v6 (#2717)
* feat: update author and committer input defaults

* Update github-actions[bot]

* Update author to new email format

* feat: optional input for git ops token

* feat: allow push-to-fork to push to sibling repos (#2414)

Fixes #2412.

* build: update dist

* feat: update action runtime to node 20 (#2340)

* feat: add truncate warning to pull request body

* perf: unshallow only when necessary

* fix: remove the remote for the fork on completion

* feat: infer github server and api urls

* test: integration test fixes

* build: bump major version

* docs: update to v6

---------

Co-authored-by: Teko <112829523+Teko012@users.noreply.github.com>
Co-authored-by: Benjamin Gilbert <bgilbert@backtick.net>
2024-01-31 11:06:34 +00:00
Peter Evans
5b4a9f6a9e
v5 (#1792)
* feat: restore working base branch and uncommitted changes

* docs: uncommitted changes are stashed and restored

* docs: add major version notes

* fix: update package version

* fix: update package-lock

* feat: revise proxy implementation

* docs: add notes for the revised proxy implementation

* feat: set and remove git safe directory

* docs: add notes for the git safe directory feature

* fix: use base url for proxy check

* feat: determine the git dir with rev-parse

* build: update package lock

* fix: remove support for ghes alpha

* feat: revise handling of team reviewers

* docs: update notes

* feat: body-path

* docs: update to v5

* docs: update to v5

* build: fix package lock
2023-04-05 08:41:18 +09:00
Peter Evans
331d02c7e2
fix: support github server url for pushing to fork (#1318)
* feat: support github server url for pushing to fork (#1315)

Co-authored-by: Kevin Zhu <kevin.zhu@sap.com>

* fix: code formatting

* test: fix tests for getRemoteUrl

Co-authored-by: MildC <kevin.xizhu@gmail.com>
Co-authored-by: Kevin Zhu <kevin.zhu@sap.com>
2022-11-24 11:52:04 +09:00
Peter Evans
d7db273d6c
fix: handle update after force pushing base to a new commit (#1307) 2022-11-22 10:42:29 +09:00
Peter Evans
ee93d78b55
test: set default branch to main (#1310) 2022-11-11 16:15:15 +09:00
campersau
ddab646771
fix: only strip optional '.git' suffix from https server remote name and not 'Xgit' (#1257) 2022-09-28 12:35:31 +09:00
Peter Evans
6e59b075e0
test: update the test execution env (#1235) 2022-08-26 11:07:49 +09:00
Peter Evans
f094b77505
fix: avoid issue with case sensitivity of repo names (#1179)
* fix: avoid issue with case sensitivity in condition

* chore: upgrade jest to v28
2022-05-08 17:37:36 +09:00
Scott Alexander
15b68d176d
fix: strip optional '.git' suffix from https server remote name. (#1153)
* Strip optional '.git' suffix from https server remote name.

* Revert "Strip optional '.git' suffix from https server remote name."

This reverts commit c2e9041213985796111bd85229e2375f407c2752.

* Strip optional '.git' suffix from https server remote name.
2022-03-31 17:10:39 +09:00
Peter Evans
d6d5519d05
v4 (#1099)
* feat: update action runtime to node 16

* feat: allow add-paths to resolve to no changes

* docs: update readme

* chore: update package lock

* chore: bump dependency

* ci: add dependabot workflow

* docs: update action versions
2022-03-23 14:22:01 +09:00
Peter Evans
dcd5fd746d
feat: add-paths input (#1010)
* add add-pattern-array argument

* ignore return code

* doc to add-pattern-array

* update README.md

* cleanup after success commit

* fix integration tests

* add test

* update naming and docs

* update readme

* fix missing await

* update docs

Co-authored-by: avdim <avdim@mail.ru>
Co-authored-by: Авдеев Дима <avdeev@tutu.tech>
2021-12-14 11:23:29 +09:00
Peter Evans
3263596ac4 fix: set error types to any 2021-09-02 13:59:32 +09:00
Peter Evans
fa0950476f test: add test for detached head failure mode 2021-08-13 11:34:19 +09:00
Peter Evans
8bb8511e4d fix: remove unnecessary gpg-sign input 2021-05-10 09:01:53 +09:00
Peter Evans
0524c01297 feat: add input to enable gpg commit signing 2021-05-09 10:14:59 +09:00
Peter Evans
16fa12ee5f fix: reset branches to handle squash merge 2020-09-06 08:55:33 +09:00
Peter Evans
095c53659b feat: support checkout on a commit in addition to a ref 2020-08-29 17:28:46 +09:00
Peter Evans
8bdec9b230 Fix pr create/update for already up to date branches 2020-08-19 17:08:59 +09:00
Peter Evans
28fddffcf8 Add test for signoff 2020-07-31 16:57:41 +09:00
pvogt09
dd364f2835 adds argument to test cases
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2020-07-30 16:06:07 +02:00
Peter Evans
053b501145 Redesign from request-to-parent to push-to-fork 2020-07-18 15:35:30 +09:00
Peter Evans
24012f5c84 Refactor extraheader auth handling 2020-07-17 20:54:39 +09:00
Peter Evans
a6a1a418bf Use force-with-lease to push the pr branch 2020-07-17 10:37:09 +09:00
Peter Evans
4ba9ca3d10 Convert action to typescript 2020-07-16 17:57:42 +09:00
Peter Evans
498d78cb23 Add integration testing 2020-05-23 14:43:18 +09:00
Peter Evans
f8274253bd Convert to typescript 2020-05-17 18:02:41 +09:00