Fixes #1672: allow users to specify a custom build.gradle when using standalone docker image (#1695)
* pre-create directories for mounting and use /spring/cloud-contract and /contract and /spring-cloud-contract * add documentation on how to run a customized gradle build to create tests
This commit is contained in:
@@ -16,21 +16,29 @@ RUN useradd -u1000 -m scc
|
||||
COPY sdkman/ /usr/local/bin/
|
||||
RUN chmod +x /usr/local/bin/sdkman-wrapper.sh
|
||||
|
||||
# provide output & contract directories and change owner to scc
|
||||
RUN mkdir -p /contracts
|
||||
RUN mkdir -p /spring-cloud-contract-output
|
||||
RUN mkdir -p /spring-cloud-contract
|
||||
RUN chown -R scc:scc /contracts
|
||||
RUN chown -R scc:scc /spring-cloud-contract-output /spring-cloud-contract
|
||||
RUN chown -R scc:scc /spring-cloud-contract
|
||||
|
||||
USER scc
|
||||
RUN curl -s https://get.sdkman.io/ | bash
|
||||
COPY --chown=scc sdkman.config /home/scc/.sdkman/etc/config
|
||||
COPY --chown=scc:scc sdkman.config /home/scc/.sdkman/etc/config
|
||||
RUN bash -c "source /home/scc/.sdkman/bin/sdkman-init.sh"
|
||||
RUN bash -c "sdkman-wrapper.sh install java ${SDKMAN_JAVA_INSTALLATION}"
|
||||
ENV JAVA_HOME /home/scc/.sdkman/candidates/java/current/
|
||||
ENV PATH "${PATH}:${JAVA_HOME}/bin"
|
||||
|
||||
# Spring Cloud Contract
|
||||
COPY --chown=scc project /home/scc/spring-cloud-contract/
|
||||
WORKDIR /home/scc/spring-cloud-contract/
|
||||
COPY --chown=scc:scc project /spring-cloud-contract/
|
||||
WORKDIR /spring-cloud-contract/
|
||||
|
||||
# Let's copy the downloaded deps to .m2 and the gradle cache
|
||||
COPY --chown=scc target/maven_dependencies /home/scc/.m2/repository/
|
||||
COPY --chown=scc target/gradle_dependencies /home/scc/.gradle/
|
||||
COPY --chown=scc:scc target/maven_dependencies /home/scc/.m2/repository/
|
||||
COPY --chown=scc:scc target/gradle_dependencies /home/scc/.gradle/
|
||||
|
||||
# Let's download gradle wrapper if for some reason it hasn't been downloaded
|
||||
RUN ./gradlew clean resolveDependencies build --stacktrace -x copyOutput || echo "Expected to fail"
|
||||
|
||||
Reference in New Issue
Block a user