9400eedc06
* Add the ability to rebuild images Rebuilding images will be done manually (for now). The choice of the number of rebuilt releases is available (1 by default), the choice of repositories for pushing rebuilt images is available (4testing by default). Principle of operation: Through the api of the docker hub, we get the last launched tag that falls under the pattern x.x.x.1, after that the tag with the assembly of which the minor tag x.x will be sent will be calculated. Next, at one of the build steps, the number of the previous release will be received, for example x. x.x.4 which will mean that the current one will be x.x.x.5 * Add login to dockerhub * Refactoring code Set some variables for all rebuild-info job. Also set default values for repository and quantity variables * Refactor: remove push trigger * Refactoring code * Refactor: Unlinking a version * Submitting the latest tag for the latest release only
33 lines
1.1 KiB
Docker
33 lines
1.1 KiB
Docker
### Arguments avavlivable only for FROM instruction ###
|
|
ARG PULL_TAG=latest
|
|
ARG COMPANY_NAME=onlyoffice
|
|
ARG PRODUCT_EDITION=
|
|
### Rebuild arguments
|
|
ARG UCS_PREFIX=
|
|
ARG IMAGE=${COMPANY_NAME}/documentserver${PRODUCT_EDITION}${UCS_PREFIX}:${PULL_TAG}
|
|
|
|
### Build main-release ###
|
|
|
|
FROM ${COMPANY_NAME}/4testing-documentserver${PRODUCT_EDITION}:${PULL_TAG} as documentserver-stable
|
|
|
|
### Rebuild stable images with secure updates
|
|
FROM ${IMAGE} as documentserver-stable-rebuild
|
|
RUN echo "This is rebuild" \
|
|
&& apt-get update -y \
|
|
&& apt-get upgrade -y
|
|
|
|
### Build nonexample ###
|
|
|
|
FROM ${COMPANY_NAME}/documentserver${PRODUCT_EDITION}:${PULL_TAG} as documentserver-nonexample
|
|
|
|
ARG COMPANY_NAME=onlyoffice
|
|
ARG PRODUCT_NAME=documentserver
|
|
ARG DS_SUPERVISOR_CONF=/etc/supervisor/conf.d/ds.conf
|
|
|
|
### Remove all documentserver-example data ###
|
|
|
|
RUN rm -rf /var/www/$COMPANY_NAME/$PRODUCT_NAME-example \
|
|
&& rm -rf /etc/$COMPANY_NAME/$PRODUCT_NAME-example \
|
|
&& rm -f $DS_SUPERVISOR_CONF \
|
|
&& rm -f /etc/nginx/includes/ds-example.conf \
|
|
&& ln -s /etc/$COMPANY_NAME/$PRODUCT_NAME/supervisor/ds.conf $DS_SUPERVISOR_CONF
|