diff --git a/entrypoint.sh b/entrypoint.sh index 84e9e58..1e135c4 100755 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -9,11 +9,14 @@ main() { echo "::add-mask::${INPUT_PASSWORD}" set -x fi - + sanitize "${INPUT_NAME}" "name" sanitize "${INPUT_USERNAME}" "username" sanitize "${INPUT_PASSWORD}" "password" + registryToLower + nameToLower + REGISTRY_NO_PROTOCOL=$(echo "${INPUT_REGISTRY}" | sed -e 's/^https:\/\///g') if uses "${INPUT_REGISTRY}" && ! isPartOfTheName "${REGISTRY_NO_PROTOCOL}"; then INPUT_NAME="${REGISTRY_NO_PROTOCOL}/${INPUT_NAME}" @@ -68,6 +71,14 @@ sanitize() { fi } +registryToLower(){ + INPUT_REGISTRY=$(echo "${INPUT_REGISTRY}" | tr '[A-Z]' '[a-z]') +} + +nameToLower(){ + INPUT_NAME=$(echo "${INPUT_NAME}" | tr '[A-Z]' '[a-z]') +} + isPartOfTheName() { [ $(echo "${INPUT_NAME}" | sed -e "s/${1}//g") != "${INPUT_NAME}" ] } diff --git a/test.bats b/test.bats index bce7650..7966bd6 100755 --- a/test.bats +++ b/test.bats @@ -313,10 +313,10 @@ teardown() { run /entrypoint.sh - expectMockCalled "/usr/local/bin/docker login -u USERNAME --password-stdin my.Registry.io -/usr/local/bin/docker build -t my.Registry.io/my/repository:latest . -/usr/local/bin/docker push my.Registry.io/my/repository:latest -/usr/local/bin/docker inspect --format={{index .RepoDigests 0}} my.Registry.io/my/repository:latest + expectMockCalled "/usr/local/bin/docker login -u USERNAME --password-stdin my.registry.io +/usr/local/bin/docker build -t my.registry.io/my/repository:latest . +/usr/local/bin/docker push my.registry.io/my/repository:latest +/usr/local/bin/docker inspect --format={{index .RepoDigests 0}} my.registry.io/my/repository:latest /usr/local/bin/docker logout" } @@ -326,10 +326,10 @@ teardown() { run /entrypoint.sh - expectMockCalled "/usr/local/bin/docker login -u USERNAME --password-stdin my.Registry.io -/usr/local/bin/docker build -t my.Registry.io/my/repository:latest . -/usr/local/bin/docker push my.Registry.io/my/repository:latest -/usr/local/bin/docker inspect --format={{index .RepoDigests 0}} my.Registry.io/my/repository:latest + expectMockCalled "/usr/local/bin/docker login -u USERNAME --password-stdin my.registry.io +/usr/local/bin/docker build -t my.registry.io/my/repository:latest . +/usr/local/bin/docker push my.registry.io/my/repository:latest +/usr/local/bin/docker inspect --format={{index .RepoDigests 0}} my.registry.io/my/repository:latest /usr/local/bin/docker logout" } @@ -339,10 +339,10 @@ teardown() { run /entrypoint.sh - expectMockCalled "/usr/local/bin/docker login -u USERNAME --password-stdin https://my.Registry.io -/usr/local/bin/docker build -t my.Registry.io/my/repository:latest . -/usr/local/bin/docker push my.Registry.io/my/repository:latest -/usr/local/bin/docker inspect --format={{index .RepoDigests 0}} my.Registry.io/my/repository:latest + expectMockCalled "/usr/local/bin/docker login -u USERNAME --password-stdin https://my.registry.io +/usr/local/bin/docker build -t my.registry.io/my/repository:latest . +/usr/local/bin/docker push my.registry.io/my/repository:latest +/usr/local/bin/docker inspect --format={{index .RepoDigests 0}} my.registry.io/my/repository:latest /usr/local/bin/docker logout" }