-
Notifications
You must be signed in to change notification settings - Fork 66
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #441 from pfitaxel/add-test
fix(*.opam): (Sort &) Fix deps for server/client build in isolation
- Loading branch information
Showing
5 changed files
with
97 additions
and
22 deletions.
There are no files selected for viewing
This file contains 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
This file contains 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
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
# This Dockerfile is useful for testing purposes | ||
# to ensure learn-ocaml can be built alone from learn-ocaml.opam | ||
|
||
FROM ocaml/opam:alpine-3.13-ocaml-4.12 as compilation | ||
LABEL Description="learn-ocaml building" Vendor="OCamlPro" | ||
|
||
WORKDIR /home/opam/learn-ocaml | ||
|
||
# Note: don't copy learn-ocaml.locked | ||
COPY learn-ocaml.opam learn-ocaml-client.opam ./ | ||
RUN sudo chown -R opam:nogroup . | ||
|
||
ENV OPAMYES true | ||
RUN echo 'archive-mirrors: [ "https://opam.ocaml.org/cache" ]' >> ~/.opam/config \ | ||
&& opam repository set-url default http://opam.ocaml.org \ | ||
&& opam switch 4.12 \ | ||
&& echo 'pre-session-commands: [ "sudo" "apk" "add" depexts ]' >> ~/.opam/config \ | ||
&& opam pin add -n -y -k path learn-ocaml . \ | ||
&& opam install learn-ocaml --deps-only --locked | ||
|
||
COPY static static | ||
COPY translations translations | ||
COPY src src | ||
COPY scripts scripts | ||
COPY Makefile Makefile | ||
COPY demo-repository demo-repository | ||
COPY dune-project dune-project | ||
COPY dune dune | ||
RUN sudo chown -R opam:nogroup . | ||
|
||
ENV OPAMVERBOSE 1 | ||
|
||
RUN opam install learn-ocaml --destdir /home/opam/install-prefix \ | ||
&& ls -l /home/opam/install-prefix/bin/learn-ocaml | ||
|
||
|
||
FROM alpine:3.13 as program | ||
|
||
ARG BUILD_DATE | ||
ARG VCS_BRANCH | ||
ARG VCS_REF | ||
|
||
LABEL org.label-schema.build-date="${BUILD_DATE}" \ | ||
org.label-schema.name="learn-ocaml" \ | ||
org.label-schema.description="learn-ocaml app manager" \ | ||
org.label-schema.url="https://ocaml-sf.org/" \ | ||
org.label-schema.vendor="The OCaml Software Foundation" \ | ||
org.label-schema.version="${VCS_BRANCH}" \ | ||
org.label-schema.vcs-ref="${VCS_REF}" \ | ||
org.label-schema.vcs-url="https://github.com/ocaml-sf/learn-ocaml" \ | ||
org.label-schema.schema-version="1.0" | ||
|
||
RUN apk update \ | ||
&& apk add ncurses-libs libev dumb-init git openssl \ | ||
&& addgroup learn-ocaml \ | ||
&& adduser learn-ocaml -DG learn-ocaml | ||
|
||
VOLUME ["/repository"] | ||
RUN mkdir -p /sync && chown learn-ocaml:learn-ocaml /sync | ||
VOLUME ["/sync"] | ||
EXPOSE 8080 | ||
EXPOSE 8443 | ||
|
||
USER learn-ocaml | ||
WORKDIR /home/learn-ocaml | ||
|
||
COPY --from=compilation /home/opam/install-prefix /usr | ||
|
||
ENTRYPOINT ["dumb-init","/usr/bin/learn-ocaml","--sync-dir=/sync","--repo=/repository"] | ||
CMD ["build","serve"] |
This file contains 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
This file contains 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