Last active
January 19, 2018 07:30
-
-
Save hlavki/511256c5488213630874609ceb2ba125 to your computer and use it in GitHub Desktop.
Build mattermost-mobile in ubuntu:xenial
This file contains hidden or 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
#!/bin/bash | |
cd $DEVEL_HOME | |
if [ ! -e "$DEVEL_HOME/mattermost.keystore" ]; then | |
keytool -genkey -v -keystore $DEVEL_HOME/mattermost.keystore -alias mattermost -keyalg RSA -keysize 2048 -validity 10000 -storepass changeme --keypass changeme -dname "CN=mattermost, OU=devel, O=xIT, L=Bratislava, S=Bratislava, C=SK" | |
mkdir -p ~/.gradle/ | |
echo "MATTERMOST_RELEASE_STORE_FILE=$DEVEL_HOME/mattermost.keystore" >> ~/.gradle/gradle.properties | |
echo "MATTERMOST_RELEASE_KEY_ALIAS=mattermost" >> ~/.gradle/gradle.properties | |
echo "MATTERMOST_RELEASE_PASSWORD=changeme" >> ~/.gradle/gradle.properties | |
fi | |
git clone https://github.com/mattermost/mattermost-mobile.git | |
cd $DEVEL_HOME/mattermost-mobile | |
git checkout release-1.5 | |
cd fastlane | |
sudo bundle install | |
cd .. | |
sed -i 's/184930218130/250533560677/g' android/app/src/main/AndroidManifest.xml | |
make build-android release |
This file contains hidden or 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
FROM ubuntu:xenial | |
RUN apt-get clean && apt-get update && apt-get install -y locales && locale-gen en_US.UTF-8 && rm -rf /var/lib/apt/lists/* | |
ENV USERNAME=docker | |
ENV DEVEL_HOME="/home/${USERNAME}/develop" | |
ENV ANDROID_HOME="${DEVEL_HOME}/android/sdk" | |
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' \ | |
PATH="${ANDROID_HOME}/platform-tools:${ANDROID_HOME}/tools:$PATH" \ | |
SUBMIT_ANDROID_TO_GOOGLE_PLAY=false ANDROID_BUILD_FOR_RELEASE=true SUPPLY_TRACK=beta | |
RUN sed -i -e 's/archive.ubuntu.com/archive.ubuntu.cz/g' /etc/apt/sources.list; \ | |
sed -i -e 's/security.ubuntu.com/archive.ubuntu.cz/g' /etc/apt/sources.list; \ | |
apt-get update; \ | |
apt-get install -y sudo apt-utils build-essential default-jdk git autoconf automake python-dev libssl-dev libtool pkg-config curl rubygems ruby-dev lib32stdc++6 lib32z1 nodejs; \ | |
curl -sL https://deb.nodesource.com/setup_8.x | bash -; \ | |
apt-get install -y nodejs; \ | |
sysctl -w fs.inotify.max_user_watches=1048576; \ | |
rm -rf /var/lib/apt/lists/* | |
RUN useradd -m $USERNAME && groupadd nopwd && echo "$USERNAME:$USERNAME" | chpasswd && usermod -aG sudo,nopwd $USERNAME; \ | |
echo "%nopwd ALL=NOPASSWD: ALL" | sudo tee -a /etc/sudoers | |
USER docker | |
RUN mkdir -p $DEVEL_HOME; \ | |
cd $DEVEL_HOME; \ | |
git clone https://github.com/facebook/watchman.git; \ | |
cd $DEVEL_HOME/watchman; \ | |
git checkout tags/v4.9.0; \ | |
./autogen.sh && ./configure && make && sudo make install; \ | |
cd $DEVEL_HOME && rm -rf ~/$DEVEL_HOME/watchman; \ | |
mkdir -p $ANDROID_HOME && cd $ANDROID_HOME; \ | |
curl -o sdk.zip https://dl.google.com/android/repository/sdk-tools-linux-3859397.zip; \ | |
unzip ./sdk.zip && rm ./sdk.zip; \ | |
echo y | $ANDROID_HOME/tools/bin/sdkmanager "build-tools;23.0.3" "build-tools;25.0.3" "build-tools;26.0.1" "platform-tools"; \ | |
sudo gem install bundler && sudo gem install cocoapods; \ | |
sudo npm install -g react-native-cli && sudo npm install -g yarn; \ | |
sudo chown -R docker:docker /home/$USERNAME/.config | |
WORKDIR ${DEVEL_HOME} | |
CMD ["/bin/bash"] |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment