forked from cerc-io/stack-orchestrator
Merge pull request #234 from cerc-io/dboreham/lirewine-builds
Add support for lirewine npm package build and consumption
This commit is contained in:
commit
ebe1dfa4bf
@ -1,7 +1,7 @@
|
||||
#!/bin/bash
|
||||
# Usage: build-npm-package-local-dependencies.sh <registry-url> <publish-with-this-version>
|
||||
# Runs build-npm-package.sh after first fixing up yarn.lock to use a local
|
||||
# npm registry for all packages in a spcific scope (currently @cerc-io)
|
||||
# npm registry for all packages in a spcific scope (currently @cerc-io and @lirewine)
|
||||
if [ -n "$CERC_SCRIPT_DEBUG" ]; then
|
||||
set -x
|
||||
fi
|
||||
@ -17,18 +17,21 @@ fi
|
||||
set -e
|
||||
local_npm_registry_url=$1
|
||||
package_publish_version=$2
|
||||
# TODO: make this a paramater and allow a list of scopes
|
||||
npm_scope_for_local="@cerc-io"
|
||||
# We need to configure the local registry
|
||||
npm config set ${npm_scope_for_local}:registry ${local_npm_registry_url}
|
||||
npm config set -- ${local_npm_registry_url}:_authToken ${CERC_NPM_AUTH_TOKEN}
|
||||
# Find the set of dependencies from the specified scope
|
||||
mapfile -t dependencies_from_scope < <(cat package.json | jq -r '.dependencies | with_entries(if (.key|test("^'${npm_scope_for_local}'/.*$")) then ( {key: .key, value: .value } ) else empty end ) | keys[]')
|
||||
echo "Fixing up dependencies"
|
||||
for package in "${dependencies_from_scope[@]}"
|
||||
# If we need to handle an additional scope, add it to the list below:
|
||||
npm_scopes_to_handle=("@cerc-io" "@lirewine")
|
||||
for npm_scope_for_local in ${npm_scopes_to_handle[@]}
|
||||
do
|
||||
# We need to configure the local registry
|
||||
npm config set ${npm_scope_for_local}:registry ${local_npm_registry_url}
|
||||
npm config set -- ${local_npm_registry_url}:_authToken ${CERC_NPM_AUTH_TOKEN}
|
||||
# Find the set of dependencies from the specified scope
|
||||
mapfile -t dependencies_from_scope < <(cat package.json | jq -r '.dependencies | with_entries(if (.key|test("^'${npm_scope_for_local}'/.*$")) then ( {key: .key, value: .value } ) else empty end ) | keys[]')
|
||||
echo "Fixing up dependencies in scope ${npm_scope_for_local}"
|
||||
for package in "${dependencies_from_scope[@]}"
|
||||
do
|
||||
echo "Fixing up package ${package}"
|
||||
yarn-local-registry-fixup.sh $package ${local_npm_registry_url}
|
||||
done
|
||||
done
|
||||
echo "Running build"
|
||||
build-npm-package.sh ${local_npm_registry_url} ${package_publish_version}
|
||||
|
@ -22,8 +22,8 @@ set -e
|
||||
# Get the name of this package from package.json since we weren't passed that
|
||||
package_name=$( cat package.json | jq -r .name )
|
||||
local_npm_registry_url=$1
|
||||
npm config set @lirewine:registry ${local_npm_registry_url}
|
||||
npm config set @cerc-io:registry ${local_npm_registry_url}
|
||||
npm config set @lirewine:registry ${local_npm_registry_url}
|
||||
npm config set -- ${local_npm_registry_url}:_authToken ${CERC_NPM_AUTH_TOKEN}
|
||||
# First check if the version of this package we're trying to build already exists in the registry
|
||||
package_exists=$( yarn info --json ${package_name}@${package_publish_version} 2>/dev/null | jq -r .data.dist.tarball )
|
||||
|
@ -40,8 +40,7 @@ RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
|
||||
# RUN su node -c "npm install -g <your-package-list-here>"
|
||||
|
||||
# Configure the local npm registry
|
||||
RUN npm config set @lirewine:registry ${CERC_NPM_URL} \
|
||||
&& npm config set @cerc-io:registry ${CERC_NPM_URL} \
|
||||
RUN npm config set @cerc-io:registry ${CERC_NPM_URL} \
|
||||
&& npm config set @lirewine:registry ${CERC_NPM_URL} \
|
||||
&& npm config set -- ${CERC_NPM_URL}:_authToken ${CERC_NPM_AUTH_TOKEN}
|
||||
|
||||
|
@ -1,4 +1,5 @@
|
||||
gem
|
||||
laconic-sdk
|
||||
debug
|
||||
laconic-registry-cli
|
||||
gem
|
||||
debug
|
||||
crypto
|
||||
|
@ -19,3 +19,6 @@ vulcanize/assemblyscript
|
||||
cerc-io/eth-probe
|
||||
cerc-io/tx-spammer
|
||||
dboreham/foundry
|
||||
lirewine/gem
|
||||
lirewine/debug
|
||||
lirewine/crypto
|
||||
|
Loading…
Reference in New Issue
Block a user