mirror of
https://github.com/koalaman/shellcheck
synced 2025-08-21 22:03:45 -07:00
Enable publishing to ghcr.io (Github container registry)
This commit is contained in:
parent
d47f3ff986
commit
ae3af5222e
3 changed files with 15 additions and 4 deletions
1
.github/workflows/build.yml
vendored
1
.github/workflows/build.yml
vendored
|
@ -121,6 +121,7 @@ jobs:
|
|||
env:
|
||||
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
|
||||
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
|
||||
GITHUB_GHCR_TOKEN: ${{ secrets.GITHUB_GHCR_TOKEN }}
|
||||
DOCKER_EMAIL: ${{ secrets.DOCKER_EMAIL }}
|
||||
DOCKER_BASE: ${{ secrets.DOCKER_USERNAME }}/shellcheck
|
||||
run: |
|
||||
|
|
|
@ -36,6 +36,11 @@ function multi_arch_docker::login_to_docker_hub() {
|
|||
echo "$DOCKER_PASSWORD" | docker login -u="$DOCKER_USERNAME" --password-stdin
|
||||
}
|
||||
|
||||
# Log in to Github container registry for deployment.
|
||||
function multi_arch_docker::login_to_github_container_registry() {
|
||||
echo "$GITHUB_GHCR_TOKEN" | docker login -u="$DOCKER_USERNAME" --password-stdin
|
||||
}
|
||||
|
||||
# Run buildx build and push. Passed in arguments augment the command line.
|
||||
function multi_arch_docker::buildx() {
|
||||
mkdir -p /tmp/empty
|
||||
|
@ -51,11 +56,14 @@ function multi_arch_docker::buildx() {
|
|||
|
||||
# Build and push plain and alpine docker images for all tags.
|
||||
function multi_arch_docker::build_and_push_all() {
|
||||
declare -a registries=("" "ghcr.io/")
|
||||
for tag in $TAGS; do
|
||||
multi_arch_docker::buildx -t "$DOCKER_BASE:$tag" --build-arg "tag=$tag"
|
||||
multi_arch_docker::buildx -t "$DOCKER_BASE-alpine:$tag" \
|
||||
for registry in "${registries[@]}"; do
|
||||
multi_arch_docker::buildx -t "${registry}$DOCKER_BASE:$tag" --build-arg "tag=$tag"
|
||||
multi_arch_docker::buildx -t "${registry}$DOCKER_BASE-alpine:$tag" \
|
||||
--build-arg "tag=$tag" --target alpine
|
||||
done
|
||||
done
|
||||
}
|
||||
|
||||
# Test all pushed docker images.
|
||||
|
@ -101,6 +109,7 @@ function multi_arch_docker::main() {
|
|||
|
||||
multi_arch_docker::install_docker_buildx
|
||||
multi_arch_docker::login_to_docker_hub
|
||||
multi_arch_docker::login_to_github_container_registry
|
||||
multi_arch_docker::build_and_push_all
|
||||
multi_arch_docker::test_all
|
||||
}
|
||||
|
|
|
@ -210,10 +210,11 @@ From Snap Store:
|
|||
|
||||
snap install --channel=edge shellcheck
|
||||
|
||||
From Docker Hub:
|
||||
From Docker Hub / GitHub Container Registry:
|
||||
|
||||
```sh
|
||||
docker run --rm -v "$PWD:/mnt" koalaman/shellcheck:stable myscript
|
||||
docker run --rm -v "$PWD:/mnt" ghcr.io/koalaman/shellcheck:stable myscript
|
||||
# Or :v0.4.7 for that version, or :latest for daily builds
|
||||
```
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue