Support custom SDKs and use yarn

This commit is contained in:
Travis Ralston 2019-04-10 15:47:02 -06:00
parent 8e76cf2c13
commit 1bb70930fa
2 changed files with 46 additions and 7 deletions

View File

@ -1,22 +1,31 @@
# Builder
FROM node:alpine as builder
FROM node:10-alpine as builder
RUN apk add --no-cache git
# Support custom branches of the react-sdk and js-sdk. This also helps us build
# images of riot-web develop.
ARG USE_CUSTOM_SDKS=false
ARG REACT_SDK_REPO="https://github.com/matrix-org/matrix-react-sdk.git"
ARG REACT_SDK_BRANCH="master"
ARG JS_SDK_REPO="https://github.com/matrix-org/matrix-js-sdk.git"
ARG JS_SDK_BRANCH="master"
RUN apk add --no-cache git dos2unix
WORKDIR /src
COPY package.json /src/package.json
RUN npm install
COPY . /src
RUN npm run build
RUN dos2unix /src/scripts/docker-link-repos.sh && sh /src/scripts/docker-link-repos.sh
RUN yarn install
RUN yarn build
# Copy the config now so that we don't create another layer in the app image
RUN cp /src/config.sample.json /src/webapp/config.json
# App
FROM nginx:latest
COPY --from=builder /src/webapp /app
COPY config.sample.json /app/config.json
RUN rm -rf /usr/share/nginx/html \
&& ln -s /app /usr/share/nginx/html

View File

@ -0,0 +1,30 @@
#!/bin/sh
set -ex
if [ $USE_CUSTOM_SDKS == false ]
then
echo "skipping react-sdk and js-sdk installs: USE_CUSTOM_SDKS is false"
exit 0
fi
echo "Linking js-sdk"
git clone $JS_SDK_REPO js-sdk
cd js-sdk
git checkout $JS_SDK_BRANCH
yarn link
yarn install
cd ../
echo "Linking react-sdk"
git clone $REACT_SDK_REPO react-sdk
cd react-sdk
git checkout $REACT_SDK_BRANCH
yarn link
yarn link matrix-js-sdk
yarn install
cd ../
echo "Setting up riot-web with react-sdk and js-sdk packages"
yarn link matrix-js-sdk
yarn link matrix-react-sdk