Merge branch 'master' into develop

This commit is contained in:
Griatch 2018-08-16 21:09:29 +02:00
commit 1aaee33138
2 changed files with 19 additions and 7 deletions

View file

@ -21,22 +21,30 @@
# #
FROM alpine FROM alpine
MAINTAINER www.evennia.com LABEL maintainer="www.evennia.com"
# install compilation environment # install compilation environment
RUN apk update && apk add python py-pip python-dev py-setuptools gcc \ RUN apk update && apk add bash gcc jpeg-dev musl-dev procps py-pip \
musl-dev jpeg-dev zlib-dev bash py2-openssl procps py-setuptools py2-openssl python python-dev zlib-dev
# add the project source # add the files required for pip installation
ADD . /usr/src/evennia COPY ./setup.py /usr/src/evennia/
COPY ./requirements.txt /usr/src/evennia/
COPY ./evennia/VERSION.txt /usr/src/evennia/evennia/
COPY ./bin /usr/src/evennia/bin/
# install dependencies # install dependencies
RUN pip install --upgrade pip && pip install -e /usr/src/evennia --trusted-host pypi.python.org RUN pip install --upgrade pip && pip install -e /usr/src/evennia --trusted-host pypi.python.org
RUN pip install cryptography pyasn1 service_identity RUN pip install cryptography pyasn1 service_identity
# add the project source; this should always be done after all
# expensive operations have completed to avoid prematurely
# invalidating the build cache.
COPY . /usr/src/evennia
# add the game source when rebuilding a new docker image from inside # add the game source when rebuilding a new docker image from inside
# a game dir # a game dir
ONBUILD ADD . /usr/src/game ONBUILD COPY . /usr/src/game
# make the game source hierarchy persistent with a named volume. # make the game source hierarchy persistent with a named volume.
# mount on-disk game location here when using the container # mount on-disk game location here when using the container

View file

@ -437,7 +437,7 @@ class ObjectDBManager(TypedObjectManager):
""" """
Create and return a new object as a copy of the original object. All Create and return a new object as a copy of the original object. All
will be identical to the original except for the arguments given will be identical to the original except for the arguments given
specifically to this method. specifically to this method. Object contents will not be copied.
Args: Args:
original_object (Object): The object to make a copy from. original_object (Object): The object to make a copy from.
@ -502,6 +502,10 @@ class ObjectDBManager(TypedObjectManager):
for script in original_object.scripts.all(): for script in original_object.scripts.all():
ScriptDB.objects.copy_script(script, new_obj=new_object) ScriptDB.objects.copy_script(script, new_obj=new_object)
# copy over all tags, if any
for tag in original_object.tags.get(return_tagobj=True, return_list=True):
new_object.tags.add(tag=tag.key, category=tag.category, data=tag.data)
return new_object return new_object
def clear_all_sessids(self): def clear_all_sessids(self):