cobald development environment
This commit is contained in:
7
roles/cobald/files/cobald-entrypoint.sh
Normal file
7
roles/cobald/files/cobald-entrypoint.sh
Normal file
@@ -0,0 +1,7 @@
|
||||
#!/bin/sh
|
||||
|
||||
[ -f /usr/local/lib/cobaldmodules/setup.py -a \
|
||||
-d /usr/local/lib/cobaldmodules/cobaldmodules ] && \
|
||||
pip3 install --no-deps --editable /usr/local/lib/cobaldmodules
|
||||
|
||||
exec "${@:-/bin/bash}"
|
@@ -10,28 +10,42 @@ ARG REPOTARDIS=https://github.com/MatterMiners/tardis
|
||||
RUN git clone $REPOCOBALD /usr/local/src/cobald && \
|
||||
git clone $REPOTARDIS /usr/local/src/tardis
|
||||
|
||||
RUN mkdir /etc/cobald /var/log/cobald && \
|
||||
useradd -m -d /var/lib/cobald --no-log-init --system cobald
|
||||
|
||||
#RUN mkdir /cobald && python3 -m venv /cobald && source /cobald/bin/activate &&\
|
||||
# pip3 install --upgrade pip && pip3 install cobald
|
||||
|
||||
# FIXME: run this as user!
|
||||
RUN mkdir /usr/local/src/cobaldmodules /usr/local/lib/cobaldmodules && \
|
||||
ln -s /usr/local/src/cobaldmodules/setup.py \
|
||||
/usr/local/lib/cobaldmodules/setup.py && \
|
||||
ln -s /usr/local/src/cobaldmodules/cobaldmodules \
|
||||
/usr/local/lib/cobaldmodules/cobaldmodules && \
|
||||
chown cobald:cobald /usr/local/lib/cobaldmodules
|
||||
|
||||
RUN pip3 install --editable /usr/local/src/cobald && \
|
||||
pip3 install --editable /usr/local/src/cobald[contrib]
|
||||
|
||||
RUN pip3 install --editable /tardis&& \
|
||||
pip3 install --editable /tardis[contrib]
|
||||
RUN pip3 install --editable /usr/local/src/tardis&& \
|
||||
pip3 install --editable /usr/local/src/tardis[contrib]
|
||||
|
||||
RUN mkdir /etc/cobald /var/log/cobald && \
|
||||
useradd -m -d /var/lib/cobald --no-log-init --system cobald
|
||||
|
||||
VOLUME /etc/cobald
|
||||
|
||||
USER cobald
|
||||
|
||||
ENV PYTHONPATH=/etc/cobald/modules
|
||||
ENV PYTHONPATH=/usr/local/src/cobaldmodules
|
||||
|
||||
# pip3 install --editable .
|
||||
# pip3 install --editable .[contrib]
|
||||
# pip3 install --upgrade --editable /etc/cobald/modules/
|
||||
# su cobald -c "python3 -m cobald.daemon /etc/cobald/config.yaml"
|
||||
CMD python3 -m cobald.daemon /etc/cobald/config.yaml
|
||||
|
||||
VOLUME /usr/local/src/cobaldmodules
|
||||
|
||||
VOLUME /etc/cobald
|
||||
|
||||
COPY cobald-entrypoint.sh /usr/local/sbin/docker-entrypoint.sh
|
||||
|
||||
RUN chmod 755 /usr/local/sbin/docker-entrypoint.sh
|
||||
|
||||
ENTRYPOINT /usr/local/sbin/docker-entrypoint.sh
|
||||
|
||||
USER cobald
|
||||
|
||||
CMD "python3 -m cobald.daemon /etc/cobald/config.yaml"
|
||||
|
@@ -6,19 +6,46 @@
|
||||
repo: https://github.com/thoto/cobald
|
||||
dest: "~{{unpriv_user}}/cobald-src"
|
||||
version: bugfix/mixed_construction_methods
|
||||
become: yes
|
||||
become_user: "{{unpriv_user}}"
|
||||
register: cobald_git_pull
|
||||
|
||||
- git:
|
||||
repo: https://github.com/MatterMiners/tardis
|
||||
dest: "~{{unpriv_user}}/tardis-src"
|
||||
version: master
|
||||
become: yes
|
||||
become_user: "{{unpriv_user}}"
|
||||
register: tardis_git_pull
|
||||
|
||||
- name: run pip install
|
||||
docker_container:
|
||||
image: cobald
|
||||
name: "cobald-src-{{item.name}}-install"
|
||||
volumes:
|
||||
- "~{{unpriv_user}}/{{item.name}}-src:/usr/local/src/{{item.name}}:rw"
|
||||
state: started
|
||||
detach: False
|
||||
cleanup: True
|
||||
user: 1000:1000 # FIXME
|
||||
entrypoint: ""
|
||||
command: |
|
||||
bash -c 'HOME=/tmp pip3 install --editable /usr/local/src/{{item.name}}'
|
||||
with_items:
|
||||
- name: cobald
|
||||
run: "{{cobald_git_pull.changed}}"
|
||||
- name: tardis
|
||||
run: "{{tardis_git_pull.changed}}"
|
||||
when: item.run
|
||||
|
||||
- docker_container:
|
||||
name: cobald-dev
|
||||
image: cobald
|
||||
volumes:
|
||||
- "~{{unpriv_user}}/cobald:/etc/cobald"
|
||||
- "~{{unpriv_user}}/cobald-src:/cobald:ro"
|
||||
- "~{{unpriv_user}}/tardis-src:/tardis:ro"
|
||||
- "~{{unpriv_user}}/cobald:/etc/cobald"
|
||||
- "~{{unpriv_user}}/cobald/modules:/usr/local/src/cobaldmodules"
|
||||
- "~{{unpriv_user}}/cobald-src:/usr/local/src/cobald:ro"
|
||||
- "~{{unpriv_user}}/tardis-src:/usr/local/src/tardis:ro"
|
||||
state: started
|
||||
detach: True
|
||||
cleanup: True
|
||||
|
@@ -14,6 +14,14 @@
|
||||
group: docker
|
||||
register: cobald_cp_dockerfile
|
||||
|
||||
- copy:
|
||||
src: cobald-entrypoint.sh
|
||||
dest: /container/docker-images/cobald/cobald-entrypoint.sh
|
||||
owner: "{{unpriv_user}}"
|
||||
group: docker
|
||||
mode: 0755
|
||||
register: cobald_cp_files
|
||||
|
||||
- docker_image:
|
||||
name: "cobald"
|
||||
# pull: False
|
||||
@@ -21,7 +29,7 @@
|
||||
pull: False
|
||||
path: "/container/docker-images/cobald/"
|
||||
source: build
|
||||
force_source: "{{cobald_cp_dockerfile.changed }}"
|
||||
force_source: "{{cobald_cp_dockerfile.changed or cobald_cp_files.changed}}"
|
||||
|
||||
- copy:
|
||||
src: cobald-config/
|
||||
|
Reference in New Issue
Block a user