New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
AGDIGGER-21 - android slave docker image #6
Conversation
|
||
RUN android list targets | ||
|
||
# Create emulator |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we create emulator at the moment?
I see this as separate implementation to enable and document app testing.
We would need to have some predefined pipeline steps to cover that part (wrapper)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Btw. Emulator can be created as part of the jenkins file or library etc.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's not yet worry about the emulator
# Install build dependencies | ||
RUN yum install -y git wget python curl | ||
## Support native builds | ||
# RUN yum install gcc gcc-c++ make openssl-devel |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We probably need to install native tooling and support native builds. Maybe we can create separate Jenkinsfile for native stuff? Create some low priority jira for that?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure I understand this question
# --sdcard 512M | ||
|
||
# Install Cordova | ||
#RUN npm install -g cordova |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Running and installing cordova directly has many drawbacks and I do not feel we should do it this way. Locking up image to one version may be really bad idea. Suggestions:
- npm install -g cordova in Jenkins file (longer builds)
- Separate docker image that is basing on this image with cordova installed (more hassle to update)
- Docker volume with multiple cordova command line tools installed and some support in jenkins file to "mount" proper version on demand (probably to large to be done initially)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
npm install -g cordova
in pipeline files sounds like a good, first step to me. This gives FLEXIBILITY to users/developers. I think folks understand that it means longer builds (if one has used travis before, folks know)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for confirmation. Lets have it that way. Should we create something to cover 3 point?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1
Image pushed to dockerhub for testing. |
RUN cd /opt && chown -R root.root android-sdk-linux && \ | ||
chmod -R 777 /opt/tools && \ | ||
/opt/tools/android-accept-licenses.sh "android-sdk-linux/tools/android update sdk --all --no-ui --filter platform-tools,tools" && \ | ||
/opt/tools/android-accept-licenses.sh "android-sdk-linux/tools/android update sdk --all --no-ui --filter platform-tools,tools,build-tools-21.0.0,build-tools-21.0.1,build-tools-21.0.2,build-tools-21.1.0,build-tools-21.1.1,build-tools-21.1.2,build-tools-22.0.0,build-tools-22.0.1,build-tools-23.0.0,build-tools-23.0.3,build-tools-24.0.0,build-tools-24.0.1,build-tools-24.0.2,build-tools-24.0.3,build-tools-25.0.0,android-21,android-22,android-23,android-24,android-25,addon-google_apis_x86-google-21,extra-android-support,extra-android-m2repository,extra-google-m2repository,extra-google-google_play_services,sys-img-armeabi-v7a-android-24" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is not OK to do.
That's why for the other digger-build-container we used the 3rd party container
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah. That ticket is just about enabling builds (spike). We have separate ticket to get that extracted. This should not be a big problem. I have some ideas how to resolve this problem on openshift.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
not sure I follow.
but legally we can't do this suggested way
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We going to move this in separate ticket to the external volume.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1
ship it for - improving later /cc @odra |
a4552dc
to
f48177d
Compare
Motivation
WIP for android docker image.
Slave for android and cordova builds
Creating to open conversation about possible ways to support android versions.
For now the latest android and cordova are supported.
TODO
Cordova support (not required at the moment)
Squashing image laters (moved to stages for visibility and to open conversation about the changes.
Open questions for the team in comments.