Skip to content
Snippets Groups Projects
Earthfile 1.79 KiB
Newer Older
# Usage: earthly --push [--no-cache] +docker
egon w. stemle's avatar
egon w. stemle committed
ARG DSPACE_APP_VERSION=1.2-rc2
    FROM DOCKERFILE --build-arg DSPACE_APP_VERSION=$DSPACE_APP_VERSION .

    ARG DOCKER_BASE_URL="gitlab.inf.unibz.it:4567"
    ARG EARTHLY_GIT_PROJECT_NAME  # https://docs.earthly.dev/earthfile/builtin-args
    ARG GIT_PROJECT_NAME="commul/docker/clarin-dspace"
    ARG COMMUL_REGISTRY_URL="https://gitlab.inf.unibz.it/commul/docker/clarin-dspace/container_registry/"
    ARG LABEL_VCS_URL="https://gitlab.inf.unibz.it/commul/docker/clarin-dspace"

    ARG AUTHOR="Egon W. Stemle <egon.stemle@eurac.edu>"
    ARG MAINTAINER="Egon W. Stemle <egon.stemle@eurac.edu>"
    LABEL author="$AUTHOR"
    LABEL maintainer="$MAINTAINER"

    # An updated VERSION ARG triggers an update of the texlive installation
    ARG EARTHLY_TARGET_TAG
    ARG VERSION=$EARTHLY_TARGET_TAG

    ARG EARTHLY_GIT_HASH
    ARG GIT_HASH=$EARTHLY_GIT_HASH
    ARG EARTHLY_TARGET_TAG_DOCKER
    ARG TARGET_TAG_DOCKER=$EARTHLY_TARGET_TAG_DOCKER
    ARG DOCKER_URL="$DOCKER_BASE_URL/$GIT_PROJECT_NAME/dspace-bundle/dspace"

    LABEL org.label-schema.schema-version="1.0" \  # http://label-schema.org/rc1/
          org.label-schema.version="$VERSION" \
          org.label-schema.vcs-url="$LABEL_VCS_URL" \
          org.commul.git-hash="$GIT_HASH" \
          org.commul.registry-url="$COMMUL_REGISTRY_URL" \
          org.commul.docker-url="$DOCKER_URL"

    RUN echo $VERSION > /tmp/release
    SAVE ARTIFACT --keep-ts /tmp/release AS LOCAL ./.release

    SAVE IMAGE dspace:latest
    SAVE IMAGE --push "$DOCKER_URL:latest"
    SAVE IMAGE --push "$DOCKER_URL:$VERSION"

docker:
    BUILD ./nginx/+docker
    BUILD --build-arg DSPACE_APP_VERSION=$DSPACE_APP_VERSION ./postgres/+docker
    BUILD --build-arg DSPACE_APP_VERSION=$DSPACE_APP_VERSION +docker-from-docker