1
Fork 0
mirror of https://gitea.com/actions/checkout.git synced 2025-01-05 14:15:47 +01:00
Commit graph

30 commits

Author SHA1 Message Date
Tatyana Kostromskaya
9a43814785 . 2023-10-05 13:10:00 +02:00
Finley Garton
c533a0a4cf
Add support for partial checkout filters ()
* added filter option & tests

* added build file

* fix test oversight

* added exit 1

* updated docs to specify override

* undo unneeded readme change

* set to undefined rather than empty string

* run git config in correct di

---------

Co-authored-by: Cory Miller <13227161+cory-miller@users.noreply.github.com>
2023-09-22 13:30:36 -04:00
Simon Baird
8b5e8b7687
Support fetching without the --progress option ()
Setting the `show-progress` option to false in the `with` section of the
workflow step will cause git fetch to run without `--progress`.

The motivation is to be able to suppress the noisy progress status
output which adds many hundreds of "remote: Counting objects: 85%
(386/453)" and similar lines in the workflow log.

This should be sufficient to resolve  and its older friends,
though the solution is different to the one proposed there because
it doesn't use the --quiet flag. IIUC git doesn't show the progress
status by default since the output is not a terminal, so that's why
removing the --progress option is all that's needed.

Adding the --quiet flag doesn't make a lot of difference once the
--progress flag is removed, and actually I think using --quiet would
suppress some other more useful output that would be better left
visible.

Signed-off-by: Simon Baird <sbaird@redhat.com>
2023-09-01 14:19:18 -04:00
Robert Wieczoreck
7739b9ba2e
Add option to fetch tags even if fetch-depth > 0 ()
* Add option to fetch tags even if fetch-depth > 0

* Add jest tests for fetchDepth and fetchTags options
2023-08-16 16:34:54 -04:00
Johannes Schindelin
96f53100ba
Mark test scripts with Bash'isms to be run via Bash ()
In , I mistakenly replaced the hash-bang lines in the two new
scripts with `#!/bin/sh`, missing that both files contain the Bash'ism
`[[`. Symptom as per
https://github.com/actions/checkout/actions/runs/5200323109/jobs/9378889172?pr=1369#step:12:5

    __test__/verify-sparse-checkout.sh: 58: [[: not found

Let's change those hash-bang lines back to `#!/bin/bash`.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2023-06-09 11:05:29 -04:00
Johannes Schindelin
d106d4669b
Add support for sparse checkouts ()
* Add support for sparse checkouts

* sparse-checkout: optionally turn off cone mode

While it _is_ true that cone mode is the default nowadays (mainly for
performance reasons: code mode is much faster than non-cone mode), there
_are_ legitimate use cases where non-cone mode is really useful.

Let's add a flag to optionally disable cone mode.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>

* Verify minimum Git version for sparse checkout

The `git sparse-checkout` command is available only since Git version
v2.25.0. The `actions/checkout` Action actually supports older Git
versions than that; As of time of writing, the minimum version is
v2.18.0.

Instead of raising this minimum version even for users who do not
require a sparse checkout, only check for this minimum version
specifically when a sparse checkout was asked for.

Suggested-by: Tingluo Huang <tingluohuang@github.com>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>

* Support sparse checkout/LFS better

Instead of fetching all the LFS objects present in the current revision
in a sparse checkout, whether they are needed inside the sparse cone or
not, let's instead only pull the ones that are actually needed.

To do that, let's avoid running that preemptive `git lfs fetch` call in
case of a sparse checkout.

An alternative that was considered during the development of this patch
(and ultimately rejected) was to use `git lfs pull --include <path>...`,
but it turned out to be too inflexible because it requires exact paths,
not the patterns that are available via the sparse checkout definition,
and that risks running into command-line length limitations.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>

---------

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Co-authored-by: Daniel <daniel.fernandez@feverup.com>
2023-06-09 09:08:21 -04:00
SKi
47fbe2df0a
Fix: Checkout fail in self-hosted runners when faulty submodule are checked-in ()
* Fix Self hosted runner issue wrt bad submodules - solution cleanup working space.

* Fix format with npm run format output

* Add mock implementation for new function submoduleStatus

* Add 2  test cases for submodule status.

* Codeql-Action Analyse revert v1 to v2

---------

Co-authored-by: Bassem Dghaidi <568794+Link-@users.noreply.github.com>
Co-authored-by: sminnie <minnie@sankhe.com>
2023-04-14 06:26:47 -04:00
Cory Miller
8856415920
Implement branch list using callbacks from exec function ()
When trying to list local branches to figure out what needs cleaned up during runs on non-ephemeral Actions Runners, we use git rev-parse --symbolic-full-name to get a list of branches. This can lead to ambiguous ref name errors when there are branches and tags with similar names.

Part of the reason we use rev-parse --symbolic-full-name vs git branch --list or git rev-parse --symbolic seems to related to a bug in Git 2.18. Until we can deprecate our usage of Git 2.18, I think we need to keep --symbolic-full-name. Since part of the problem is that these ambiguous ref name errors clog the Actions annotation limits, this is a mitigation to suppress those messages until we can get rid of the workaround.
2022-12-14 16:08:53 -05:00
Peter Murray
e6d535c99c
Inject GitHub host to be able to clone from another GitHub instance ()
* Adding the ability to specify the GitHub Server URL and allowing for it to differ from the Actions workflow host

* Adding tests for injecting the GitHub URL

* Addressing code review comments for PR 
2022-09-26 12:34:52 -04:00
Tingluo Huang
0ffe6f9c55
Add set-safe-directory input to allow customers to take control. ()
* Add set-safe-directory input to allow customers to take control.
2022-04-20 21:37:43 -04:00
Thomas Boop
dcd71f6466
Enforce safe directory ()
* set safe directory when running checkout

* Update CHANGELOG.md
2022-04-14 14:13:20 -04:00
eric sciple
ec3a7ce113
set insteadOf url for org-id () 2021-11-01 11:43:18 -05:00
eric sciple
eb8a193c1d
update dev dependencies and react to new linting rules () 2021-10-19 09:52:57 -05:00
Thomas Boop
c952173edf
Swap to Environment Files () 2020-09-30 11:41:09 -04:00
eric sciple
1433f62caa
update default branch () 2020-07-14 09:23:30 -04:00
eric sciple
fb6f360df2
fix default branch for .wiki and when using ssh () 2020-06-18 10:20:33 -04:00
eric sciple
00a3be8934
determine default branch () 2020-06-16 13:41:01 -04:00
eric sciple
453ee27fca update troubleshooting instructions to include 'npm run format' 2020-05-31 17:48:51 -04:00
Daniel Hwang
65865e15a1
build because all is no more () 2020-05-31 17:46:53 -04:00
eric sciple
e52d022eb5
Fetch all history for all tags and branches when fetch-depth=0 () 2020-05-27 09:54:28 -04:00
eric sciple
9a3a9ade82
persist core.sshCommand for submodules ()
* persist core.sshCommand for submodules

* update verbiage; add comments

* fail when submodules or ssh-key and fallback to REST API
2020-03-12 11:42:38 -04:00
eric sciple
b2e6b7ed13
add ssh support () 2020-03-11 15:55:17 -04:00
eric sciple
422dc45671
add support for submodules () 2020-03-05 14:21:59 -05:00
eric sciple
f219062370
more unit tests and corresponding refactoring () 2020-03-02 11:33:30 -05:00
eric sciple
61fd8fd0c7
switch to spyOn for mocks () 2020-02-13 13:25:46 -05:00
eric sciple
f90c7b395d
follow proxy settings () 2020-01-27 10:21:50 -05:00
eric sciple
090d9c9dfd
fix ref for pr closed event when a pr is merged () 2020-01-21 14:17:04 -05:00
eric sciple
c170eefc26
add input persist-credentials () 2019-12-12 13:49:26 -05:00
eric sciple
a572f640b0
fallback to REST API to download repo () 2019-12-12 13:16:16 -05:00
eric sciple
e347bba93b
Convert checkout to a regular action () 2019-12-03 10:28:59 -05:00