mirror of
https://github.com/rlespinasse/github-slug-action.git
synced 2026-06-10 08:40:58 +00:00
feat(short_sha): add a shortened sha commit id
This commit is contained in:
committed by
Romain Lespinasse
parent
3876a4c025
commit
d77acd4f47
@@ -9,6 +9,9 @@ This action slug and expose some github variables.
|
|||||||
- remove leading and trailing `-` caracter,
|
- remove leading and trailing `-` caracter,
|
||||||
- limit the string size to 63 caracters.
|
- limit the string size to 63 caracters.
|
||||||
|
|
||||||
|
Others `Slug`-ish commands are available:
|
||||||
|
- `Short SHA` a variable will limit the string size to 8 caracters.
|
||||||
|
|
||||||
## Environment Variables
|
## Environment Variables
|
||||||
|
|
||||||
| GitHub environment variable | Slug variable |
|
| GitHub environment variable | Slug variable |
|
||||||
@@ -17,6 +20,10 @@ This action slug and expose some github variables.
|
|||||||
| GITHUB_HEAD_REF | GITHUB_HEAD_REF_SLUG |
|
| GITHUB_HEAD_REF | GITHUB_HEAD_REF_SLUG |
|
||||||
| GITHUB_BASE_REF | GITHUB_BASE_REF_SLUG |
|
| GITHUB_BASE_REF | GITHUB_BASE_REF_SLUG |
|
||||||
|
|
||||||
|
| GitHub environment variable | Short variable |
|
||||||
|
| - | - |
|
||||||
|
| GITHUB_SHA | GITHUB_SHA_SHORT |
|
||||||
|
|
||||||
## Example usage
|
## Example usage
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
@@ -26,4 +33,5 @@ This action slug and expose some github variables.
|
|||||||
echo ${{ env.GITHUB_REF_SLUG }}
|
echo ${{ env.GITHUB_REF_SLUG }}
|
||||||
echo ${{ env.GITHUB_HEAD_REF_SLUG }}
|
echo ${{ env.GITHUB_HEAD_REF_SLUG }}
|
||||||
echo ${{ env.GITHUB_BASE_REF_SLUG }}
|
echo ${{ env.GITHUB_BASE_REF_SLUG }}
|
||||||
|
echo ${{ env.GITHUB_SHA_SHORT }}
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -7,6 +7,12 @@ slug_ref() {
|
|||||||
| cut -c1-63
|
| cut -c1-63
|
||||||
}
|
}
|
||||||
|
|
||||||
|
short_sha(){
|
||||||
|
echo "$1" \
|
||||||
|
| cut -c1-8
|
||||||
|
}
|
||||||
|
|
||||||
echo ::set-env name=GITHUB_REF_SLUG::"$(slug_ref "$GITHUB_REF")"
|
echo ::set-env name=GITHUB_REF_SLUG::"$(slug_ref "$GITHUB_REF")"
|
||||||
echo ::set-env name=GITHUB_HEAD_REF_SLUG::"$(slug_ref "$GITHUB_HEAD_REF")"
|
echo ::set-env name=GITHUB_HEAD_REF_SLUG::"$(slug_ref "$GITHUB_HEAD_REF")"
|
||||||
echo ::set-env name=GITHUB_BASE_REF_SLUG::"$(slug_ref "$GITHUB_BASE_REF")"
|
echo ::set-env name=GITHUB_BASE_REF_SLUG::"$(slug_ref "$GITHUB_BASE_REF")"
|
||||||
|
echo ::set-env name=GITHUB_SHA_SHORT::"$(short_sha "$GITHUB_SHA")"
|
||||||
|
|||||||
19
tests/short_sha.bats
Normal file
19
tests/short_sha.bats
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
#!/usr/bin/env bats
|
||||||
|
|
||||||
|
@test "Short long hash" {
|
||||||
|
test_short_sha \
|
||||||
|
"a35a1a486a260cfd99c5b6f8c6034a2929ba9b3f" \
|
||||||
|
"a35a1a48"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Load sluf_ref function
|
||||||
|
source entrypoint.sh > /dev/null 2>&1
|
||||||
|
|
||||||
|
test_short_sha(){
|
||||||
|
given="${1}"
|
||||||
|
expected="${2}"
|
||||||
|
|
||||||
|
actual="$(short_sha ${given})"
|
||||||
|
echo "expected : [${expected}], actual : [${actual}]"
|
||||||
|
[ "${actual}" == "${expected}" ]
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user