Skip to content

Commit

Permalink
Merge branch 'main' into release/5.2.0
Browse files Browse the repository at this point in the history
  • Loading branch information
Mrtenz authored Jul 11, 2024
2 parents 106cbdd + 4d330a9 commit 7f9c428
Show file tree
Hide file tree
Showing 4 changed files with 16 additions and 7 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/test-monorepo.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
cd skunkworks
yarn install --immutable
yarn plugin import workspace-tools
../action-npm-publish/scripts/main.sh
PUBLISH_NPM_TAG="latest" ../action-npm-publish/scripts/main.sh
# test that publishing is skipped when attempting to republish the latest version
checkout_publish_skunkworks_skip:
runs-on: ubuntu-20.04
Expand Down
4 changes: 3 additions & 1 deletion scripts/main.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
#!/usr/bin/env bash

set -x
if [[ -z $ACTIONS_RUNNER_DEBUG ]]; then
set -x
fi
set -e
set -o pipefail

Expand Down
15 changes: 11 additions & 4 deletions scripts/publish.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,9 @@ if [[ "$YARN_MAJOR" -ge "3" ]]; then
PACK_CMD="yarn pack --out /tmp/%s-%v.tgz"
# install is handled by yarn berry pack/publish
INSTALL_CMD=""
LOGIN_CMD=""
else
echo "Warning: Did not detect compatible yarn version. This action officially supports Yarn v3 and newer. Falling back to using npm." >&2
echo "//registry.npmjs.org/:_authToken=${YARN_NPM_AUTH_TOKEN}" >> $HOME/.npmrc
echo "//registry.npmjs.org/:_authToken=${YARN_NPM_AUTH_TOKEN}" >> "$HOME/.npmrc"
PUBLISH_CMD="npm publish --tag $PUBLISH_NPM_TAG"
PACK_CMD="npm pack --pack-destination=/tmp/"
if [[ -f 'yarn.lock' ]]; then
Expand All @@ -24,7 +23,8 @@ else
fi
fi

if [[ -z $YARN_NPM_AUTH_TOKEN ]]; then
# "dry-run" for polyrepo
if [[ -z "$YARN_NPM_AUTH_TOKEN" && -z "$1" ]]; then
echo "Notice: 'npm-token' not set. Running '$PACK_CMD'."
$INSTALL_CMD
$PACK_CMD
Expand All @@ -51,6 +51,13 @@ if [[ -n "$1" ]]; then
PACKAGE_NAME=$(jq --raw-output .name package.json)
LATEST_PACKAGE_VERSION=$(npm view "$PACKAGE_NAME" dist-tags --workspaces false --json | jq --raw-output --arg tag "$PUBLISH_NPM_TAG" '.[$tag]' || echo "")

# "dry-run" for monorepo
if [[ -z "$YARN_NPM_AUTH_TOKEN" && ! "$LATEST_PACKAGE_VERSION" = "$CURRENT_PACKAGE_VERSION" ]]; then
echo "Notice: 'npm-token' not set. Running '$PACK_CMD'."
$PACK_CMD
exit 0
fi

if [ "$LATEST_PACKAGE_VERSION" = "$CURRENT_PACKAGE_VERSION" ]; then
echo "Notice: This module is already published at $CURRENT_PACKAGE_VERSION. aborting publish."
exit 0
Expand All @@ -59,4 +66,4 @@ fi

$INSTALL_CMD
$PUBLISH_CMD
rm -f $HOME/.npmrc
rm -f "$HOME/.npmrc"
2 changes: 1 addition & 1 deletion scripts/report.sh
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,6 @@ for file in "$directory"/*.tgz; do
pkdiff "$name@latest" "$file" \
--no-exit-code \
--no-open \
--output "$directory/$basename.html"
--output "$directory/$basename.html" || true
fi
done

0 comments on commit 7f9c428

Please sign in to comment.