Commit 7f1b58fe authored by Patrik Meijer's avatar Patrik Meijer
Browse files

Re-initialized repository

parents
Loading
Loading
Loading
Loading

.gitignore

0 → 100644
+1 −0
Changes for .gitignore: 1 added line, 0 removed lines.
Original line number Diff line number Diff line
release.diff
 No newline at end of file

.gitlab-ci.yml

0 → 100644
+26 −0
Changes for .gitlab-ci.yml: 26 added lines, 0 removed lines.
Original line number Diff line number Diff line
stages:
  - publish

docker-publish:
  stage: publish
  tags:
    - ubuntu18
  only:
    - tags
  variables:
    GIT_SUBMODULE_STRATEGY: recursive
    GIT_SUBMODULE_FORCE_HTTPS: "true"
  before_script:
    - docker images -a
    - docker login $CI_REGISTRY -u $CI_REGISTRY_USER --password-stdin <<<$CI_REGISTRY_PASSWORD
  script:
    - docker build -t "$CI_REGISTRY_IMAGE/caid-tools:${CI_COMMIT_TAG:1}" .
    - docker push "$CI_REGISTRY_IMAGE/caid-tools:${CI_COMMIT_TAG:1}"
    - docker tag "$CI_REGISTRY_IMAGE/caid-tools:${CI_COMMIT_TAG:1}" "$CI_REGISTRY_IMAGE/caid-tools:latest"
    - docker push "$CI_REGISTRY_IMAGE/caid-tools:latest"
    - source versions && docker build -f Dockerfile.front-end --build-arg "DEPI_IMPL=$DEPI_IMPL" --build-arg "WEBGME_DEPI=$WEBGME_DEPI" --build-arg "GSN_ASSURANCE=$GSN_ASSURANCE" -t "$CI_REGISTRY_IMAGE/caid-front-end:${CI_COMMIT_TAG:1}" .
    - docker push "$CI_REGISTRY_IMAGE/caid-front-end:${CI_COMMIT_TAG:1}"
    - docker tag "$CI_REGISTRY_IMAGE/caid-front-end:${CI_COMMIT_TAG:1}" "$CI_REGISTRY_IMAGE/caid-front-end:latest"
    - docker push "$CI_REGISTRY_IMAGE/caid-front-end:latest"
  after_script:
    - docker logout $CI_REGISTRY

.gitmodules

0 → 100644
+9 −0
Changes for .gitmodules: 9 added lines, 0 removed lines.
Original line number Diff line number Diff line
[submodule "depi-impl"]
	path = depi-impl
	url = git@git.isis.vanderbilt.edu:aa-caid/depi-impl.git
[submodule "webgme-depi"]
	path = webgme-depi
	url = git@git.isis.vanderbilt.edu:aa-caid/webgme-depi.git
[submodule "gsn-domain"]
	path = gsn-domain
	url = git@git.isis.vanderbilt.edu:aa-caid/gsn-domain.git

Dockerfile

0 → 100644
+85 −0
Changes for Dockerfile: 85 added lines, 0 removed lines.
Original line number Diff line number Diff line
# docker build -t caid-tools .
# docker run --rm --name caid -p 3000:3000 -p 8888:8888 -p 5150:5150 caid-tools

# This in a multiple stage build and only the built go-resources will be used from this step.
FROM golang:1.22.2-bookworm
RUN apt update
RUN apt install -y protobuf-compiler

RUN mkdir /depi

COPY /depi-impl/depi/go-impl /depi/go-impl
COPY /depi-impl/depi/proto /depi/proto

WORKDIR /depi/go-impl

RUN go get go-impl/server
RUN go get github.com/golang/protobuf/proto@v1.5.3
RUN go get go-impl/depi_grpc
RUN go build -o depiserver cmd/server/main.go

# This base image uses alpine
# NAME="Alpine Linux"
# VERSION_ID=3.18.6
# PRETTY_NAME="Alpine Linux v3.18"
# HOME_URL="https://alpinelinux.org/"

# Which uses https://wiki.alpinelinux.org/wiki/Alpine_Package_Keeper instead of apt-get
FROM gitea/gitea:1.21

COPY --from=0 /depi /depi

# Make sure needed binary available at correct place for the go built binary to work
RUN apk update && apk add --no-cache supervisor libc6-compat gcompat

# gitea listening on port 3000
ENV GITEA__REPOSITORY__ENABLE_PUSH_CREATE_USER=true

# mongodb and mongorestore
RUN echo 'http://dl-cdn.alpinelinux.org/alpine/v3.9/main' >> /etc/apk/repositories
RUN echo 'http://dl-cdn.alpinelinux.org/alpine/v3.9/community' >> /etc/apk/repositories
RUN apk add mongodb mongodb-tools
RUN mkdir /data
RUN mkdir /data/db

# nodejs/npm
RUN apk add --update nodejs npm

# webgme listening on port 8888
RUN mkdir /webgme-depi
COPY ./webgme-depi/webgme-depi-components /webgme-depi
RUN npm --prefix /webgme-depi install

# python
RUN apk add --no-cache gcc g++ make libffi-dev musl-dev mysql-dev python3-dev py3-pip

# depi-monitors
COPY ./depi-impl/depi/monitors /depi/monitors
COPY ./depi-impl/depi/proto /depi/monitors/proto

WORKDIR /depi/monitors
RUN pip install .
WORKDIR /

# supervisor
RUN apk update && apk add --no-cache supervisor
COPY examples/mono-image/supervisord.conf /etc/supervisord.conf

## init data that can be moved in correct place before services are running
COPY examples/mono-image/app.ini /data/gitea/conf/app.ini
RUN mkdir -p /depi/go-impl/.state/main
COPY examples/depi/memory-state-dump/main/1 /depi/go-impl/.state/main/1

# init data inserted after services are running via script
RUN mkdir -p /depi-init-data/webgme
COPY examples/webgme/dumps /depi-init-data/webgme/dumps
COPY examples/repos /depi-init-data/repos
COPY examples/mono-image/init.sh /depi-init-data/init.sh
COPY examples/mono-image/ensure_port.sh /depi-init-data/ensure_port.sh
COPY examples/push-git-repos.sh /depi-init-data/push-git-repos.sh

RUN /depi-init-data/init.sh

# /depi-init-data can be removed

CMD ["/usr/bin/supervisord", "-c", "/etc/supervisord.conf"]
 No newline at end of file

Dockerfile.front-end

0 → 100644
+30 −0
Changes for Dockerfile.front-end: 30 added lines, 0 removed lines.
Original line number Diff line number Diff line
# source versions && docker build -f Dockerfile.front-end --build-arg "DEPI_IMPL=$DEPI_IMPL" --build-arg "WEBGME_DEPI=$WEBGME_DEPI" --build-arg "GSN_ASSURANCE=$GSN_ASSURANCE" -t caid-front-end .
# docker run --rm --name caid-fe -p 4000:4000 --network="host" caid-front-end

ARG DEPI_IMPL
ARG WEBGME_DEPI
ARG GSN_ASSURANCE

FROM git.isis.vanderbilt.edu:5050/aa-caid/depi-impl/depi-vsix:${DEPI_IMPL} as depi-vsix
FROM git.isis.vanderbilt.edu:5050/aa-caid/webgme-depi/webgme-depi-vsix:${WEBGME_DEPI} as webgme-depi-vsix
FROM git.isis.vanderbilt.edu:5050/aa-caid/gsn-domain/gsn-assurance-vsix:${GSN_ASSURANCE} as gsn-assurance-vsix

# PRETTY_NAME="Debian GNU/Linux 11 (bullseye)"
# NAME="Debian GNU/Linux"
# VERSION_ID="11"
# VERSION="11 (bullseye)"
FROM ghcr.io/eclipse-theia/theia-blueprint/theia-ide:1.49.100

RUN mkdir -p /home/theia/.theia-ide/plugins

# Copy over vsix-es
COPY --from=depi-vsix /depi.vsix /home/theia/.theia-ide/plugins/depi.vsix
COPY --from=webgme-depi-vsix /webgme-depi.vsix /home/theia/.theia-ide/plugins/webgme-depi.vsix
COPY --from=gsn-assurance-vsix /gsn-assurance.vsix /home/theia/.theia-ide/plugins/gsn-assurance.vsix

# Add all the repositores (currently localhost only)
RUN mkdir /home/project/.theia
COPY --chown=theia examples/client/settings.json /home/project/.theia/settings.json
COPY --chown=theia examples/client/clone_repos.sh /home/project/clone_repos.sh

CMD [ "/home/project", "--hostname=0.0.0.0", "--port=4000" ]
 No newline at end of file
Loading