Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
4cb5e0a
commit 8f498d4
Showing
8 changed files
with
272 additions
and
12 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
#!/bin/bash | ||
|
||
#==============================================================================# | ||
# SETUP # | ||
#==============================================================================# | ||
|
||
# Start in scripts/integration-tests/ even if run from root directory | ||
cd "$(dirname "$0")" | ||
|
||
source utils/local-registry.sh | ||
source utils/cleanup.sh | ||
|
||
# Echo every command being executed | ||
set -x | ||
|
||
# Go to the root of the monorepo | ||
cd ../.. | ||
|
||
#==============================================================================# | ||
# TEST # | ||
#==============================================================================# | ||
|
||
startLocalRegistry "$PWD"/scripts/integration-tests/verdaccio-config.yml | ||
yarn upgrade --scope @babel | ||
|
||
# Test | ||
make test-ci | ||
|
||
cleanup |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
#!/bin/bash | ||
|
||
#==============================================================================# | ||
# SETUP # | ||
#==============================================================================# | ||
|
||
# Start in scripts/integration-tests/ even if run from root directory | ||
cd "$(dirname "$0")" | ||
|
||
source utils/local-registry.sh | ||
source utils/git.sh | ||
source utils/cleanup.sh | ||
|
||
# Echo every command being executed | ||
set -x | ||
|
||
# Go to the root of the monorepo | ||
cd ../.. | ||
|
||
initializeE2Egit | ||
|
||
#==============================================================================# | ||
# PUBLISH # | ||
#==============================================================================# | ||
|
||
make bootstrap-only | ||
|
||
startLocalRegistry "$PWD"/scripts/integration-tests/verdaccio-config.yml | ||
loginLocalRegistry | ||
|
||
I_AM_USING_VERDACCIO=I_AM_SURE make publish-test | ||
|
||
cleanup |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
#!/bin/bash | ||
|
||
function cleanup { | ||
echo "Cleaning up." | ||
stopLocalRegistry | ||
|
||
if [ -n "$GIT_E2E_SETUP" ]; then | ||
cleanupE2Egit | ||
fi | ||
} | ||
|
||
# Error messages are redirected to stderr | ||
function handle_error { | ||
echo "$(basename $0): ERROR! An error was encountered executing line $1." 1>&2; | ||
cleanup | ||
echo "Exiting with error." 1>&2; | ||
exit 1 | ||
} | ||
|
||
function handle_exit { | ||
cleanup | ||
echo "Exiting without error." 1>&2; | ||
exit | ||
} | ||
|
||
# Exit the script with a helpful error message when any error is encountered | ||
trap 'set +x; handle_error $LINENO $BASH_COMMAND' ERR | ||
|
||
# Cleanup before exit on any termination signal | ||
trap 'set +x; handle_exit' SIGQUIT SIGTERM SIGINT SIGKILL SIGHUP |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
#!/bin/bash | ||
|
||
original_git_branch=`git rev-parse --abbrev-ref HEAD` | ||
tmp_branch_name="integration-tests-$(date +'%F-%H-%M-%N')" | ||
original_user_name=`git config user.name` | ||
original_user_email=`git config user.email` | ||
|
||
export GIT_E2E_SETUP="true" | ||
|
||
function initializeE2Egit { | ||
git checkout -b $tmp_branch_name | ||
|
||
# This is needed by lerna, which commits when publishing | ||
git config user.name "Babel E2E Test" | ||
git config user.email "babel-e2e@example.com" | ||
} | ||
|
||
function cleanupE2Egit { | ||
# Delete release tags | ||
git tag -d $(git tag -l "version-e2e-test-*") | ||
|
||
# Checkout the prev branch | ||
git checkout -f $original_git_branch | ||
git branch -D $tmp_branch_name | ||
|
||
# Restore git user | ||
git config user.name "$original_user_name" | ||
git config user.email "$original_user_email" | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
#!/bin/bash | ||
|
||
# Copied from https://github.com/facebook/create-react-app/blob/053f9774d3f592c17741d2a86de66a7ca58f90c0/tasks/local-registry.sh | ||
|
||
custom_registry_url=http://localhost:4873 | ||
original_npm_registry_url=`npm get registry` | ||
original_yarn_registry_url=`yarn config get registry` | ||
default_verdaccio_package=verdaccio@~4.3.3 | ||
|
||
function startLocalRegistry { | ||
# Start local registry | ||
tmp_registry_log=`mktemp` | ||
echo "Registry output file: $tmp_registry_log" | ||
(cd && nohup npx ${VERDACCIO_PACKAGE:-$default_verdaccio_package} -c $1 &>$tmp_registry_log &) | ||
|
||
# Wait for Verdaccio to boot | ||
grep -q "http address" <(tail -f $tmp_registry_log) | ||
|
||
# Set registry to local registry | ||
npm set registry "$custom_registry_url" | ||
yarn config set registry "$custom_registry_url" | ||
} | ||
|
||
function loginLocalRegistry { | ||
# Login so we can publish packages | ||
(cd && npx npm-auth-to-token@1.0.0 -u user -p password -e user@example.com -r "$custom_registry_url") | ||
} | ||
|
||
function stopLocalRegistry { | ||
# Restore the original NPM and Yarn registry URLs and stop Verdaccio | ||
fuser -k 4873/tcp | ||
npm set registry "$original_npm_registry_url" | ||
yarn config set registry "$original_yarn_registry_url" | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
# | ||
# This is the default config file. It allows all users to do anything, | ||
# so don't use it on production systems. | ||
# | ||
# Look here for more config file examples: | ||
# https://github.com/verdaccio/verdaccio/tree/master/conf | ||
# | ||
|
||
# path to a directory with all packages | ||
storage: /tmp/verdaccio-workspace/storage | ||
|
||
auth: | ||
htpasswd: | ||
file: /tmp/verdaccio-workspace/htpasswd | ||
# Maximum amount of users allowed to register, defaults to "+inf". | ||
# You can set this to -1 to disable registration. | ||
# max_users: 1000 | ||
|
||
# a list of other known repositories we can talk to | ||
uplinks: | ||
npmjs: | ||
url: https://registry.npmjs.org/ | ||
|
||
packages: | ||
'@*/*': | ||
# scoped packages | ||
access: $all | ||
publish: $all | ||
unpublish: $all | ||
proxy: npmjs | ||
|
||
'**': | ||
# allow all users (including non-authenticated users) to read and | ||
# publish all packages | ||
# | ||
# you can specify usernames/groupnames (depending on your auth plugin) | ||
# and three keywords: "$all", "$anonymous", "$authenticated" | ||
access: $all | ||
publish: $all | ||
unpublish: $all | ||
|
||
# if package is not available locally, proxy requests to 'npmjs' registry | ||
proxy: npmjs | ||
|
||
# You can specify HTTP/1.1 server keep alive timeout in seconds for incoming connections. | ||
# A value of 0 makes the http server behave similarly to Node.js versions prior to 8.0.0, which did not have a keep-alive timeout. | ||
# WORKAROUND: Through given configuration you can workaround following issue https://github.com/verdaccio/verdaccio/issues/301. Set to 0 in case 60 is not enough. | ||
server: | ||
keepAliveTimeout: 60 | ||
|
||
middlewares: | ||
audit: | ||
enabled: true | ||
|
||
# log settings | ||
logs: | ||
- { type: stdout, format: pretty, level: http } | ||
#- {type: file, path: verdaccio.log, level: info} | ||
#experiments: | ||
# # support for npm token command | ||
# token: false |