actions-yarn/entrypoint.sh
Corentin Ardeois e0c8d84b6e fix .npmrc file generation
When we pass an `auth-token`, a `.npmrc` file is generated but it's value could be invalid
The parameter substitution to set a default value on `NPM_` was not working.

Github action defines the `NPM_*` environment variables with a null value, but we were setting a default value only if the environment variable was not set at all.
2019-10-15 14:38:37 -04:00

23 lines
723 B
Bash
Executable File

#!/bin/sh
set -e
if [ -n "$NPM_AUTH_TOKEN" ]; then
# Respect NPM_CONFIG_USERCONFIG if it is provided, default to $HOME/.npmrc
NPM_CONFIG_USERCONFIG="${NPM_CONFIG_USERCONFIG:-"$HOME/.npmrc"}"
NPM_REGISTRY_URL="${NPM_REGISTRY_URL:-registry.npmjs.org}"
NPM_STRICT_SSL="${NPM_STRICT_SSL:-true}"
NPM_REGISTRY_SCHEME="https"
if ! $NPM_STRICT_SSL
then
NPM_REGISTRY_SCHEME="http"
fi
# Allow registry.npmjs.org to be overridden with an environment variable
printf "//%s/:_authToken=%s\\nregistry=%s\\nstrict-ssl=%s" "$NPM_REGISTRY_URL" "$NPM_AUTH_TOKEN" "${NPM_REGISTRY_SCHEME}://$NPM_REGISTRY_URL" "${NPM_STRICT_SSL}" > "$NPM_CONFIG_USERCONFIG"
chmod 0600 "$NPM_CONFIG_USERCONFIG"
fi
sh -c "yarn $*"