Loading .dockerignore 0 → 100644 +2 −0 Original line number Diff line number Diff line * !/dist*.tar.gz .env 0 → 100644 +1 −0 Original line number Diff line number Diff line WEB_PORT=3050 .gitignore 0 → 100644 +5 −0 Original line number Diff line number Diff line node_modules dist test_reports .gitmodules.old *.tar.gz .gitlab-ci.yml 0 → 100644 +201 −0 Original line number Diff line number Diff line image: redmic/web-gitlab stages: - build - test - package - test-package - deploy prepare-for-unbuilt: stage: build variables: GIT_SUBMODULE_STRATEGY: normal script: - 'type yarn grunt java' - 'yarn install || yarn install' - 'grunt preBuild' only: - branches except: - pre - master cache: key: '${CI_COMMIT_REF_NAME}' paths: - node_modules/ - public/javascript/redmic-widgets/node_modules/ - public/javascript/templates/node_modules/ - public/stylesheets/node_modules/ artifacts: name: '${CI_JOB_NAME}_${CI_COMMIT_REF_NAME}' expire_in: '1 day' paths: - public/javascript/proj4js/dist/proj4.js - public/javascript/redmic-widgets/src/app/ - public/javascript/templates/dist/ - public/stylesheets/style.styl - public/stylesheets/src/ - public/stylesheets/submodules/ prepare-for-built: stage: build variables: GIT_SUBMODULE_STRATEGY: normal script: - 'type yarn grunt java' - 'yarn install || yarn install' - 'grunt' only: - pre - master cache: key: '${CI_COMMIT_REF_NAME}' paths: - node_modules/ - public/javascript/redmic-widgets/node_modules/ - public/javascript/templates/node_modules/ - public/stylesheets/node_modules/ policy: pull artifacts: name: '${CI_JOB_NAME}_${CI_COMMIT_REF_NAME}' expire_in: '1 week' paths: - dist*.tar.gz run-local-unit-tests: stage: test script: 'grunt test-unit-local' only: - branches except: - pre - master cache: key: '${CI_COMMIT_REF_NAME}' paths: - node_modules/ - public/javascript/redmic-widgets/node_modules/ - public/javascript/templates/node_modules/ - public/stylesheets/node_modules/ policy: pull run-local-modules-functional-tests: stage: test script: - 'echo $(head -1 /etc/hosts | cut -f1) redmic.local >> /etc/hosts' - 'npm start -- -p 80 &' - 'grunt test-functional-local --functionalSuites=tests/functional/modules/**/!\(*Script\).js --headless' only: - branches except: - pre - master cache: key: '${CI_COMMIT_REF_NAME}' paths: - node_modules/ - public/javascript/redmic-widgets/node_modules/ - public/javascript/templates/node_modules/ - public/stylesheets/node_modules/ policy: pull run-local-functional-tests: stage: test script: - 'echo $(head -1 /etc/hosts | cut -f1) redmic.local >> /etc/hosts' - 'npm start -- -p 80 &' - 'grunt test-functional-local-parallel --user=${REDMIC_USER} --pass=${REDMIC_PASS}' only: - schedules cache: key: '${CI_COMMIT_REF_NAME}' paths: - node_modules/ - public/javascript/redmic-widgets/node_modules/ - public/javascript/templates/node_modules/ - public/stylesheets/node_modules/ policy: pull docker-build-commit: stage: package image: redmic/docker-gitlab variables: DOCKER_DRIVER: overlay2 services: - docker:dind only: - pre script: - docker login -u gitlab-ci-token -p ${CI_JOB_TOKEN} ${CI_REGISTRY} - docker build -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_REF_NAME}-latest . - docker push ${CI_REGISTRY_IMAGE} docker-build-tag: stage: package image: redmic/docker-gitlab variables: DOCKER_DRIVER: overlay2 services: - docker:dind only: - tags script: - docker login -u gitlab-ci-token -p ${CI_JOB_TOKEN} ${CI_REGISTRY} - docker build -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG} -t ${CI_REGISTRY_IMAGE}:latest . - docker push ${CI_REGISTRY_IMAGE} container_scanning: stage: test-package image: docker:stable variables: DOCKER_DRIVER: overlay2 allow_failure: true services: - docker:stable-dind only: - pre script: - docker run -d --name db arminc/clair-db:latest - docker run -p 6060:6060 --link db:postgres -d --name clair arminc/clair-local-scan:v2.0.1 - apk add -U wget ca-certificates - docker login -u gitlab-ci-token -p ${CI_JOB_TOKEN} ${CI_REGISTRY} - docker pull ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} - wget https://github.com/arminc/clair-scanner/releases/download/v8/clair-scanner_linux_amd64 - mv clair-scanner_linux_amd64 clair-scanner - chmod +x clair-scanner - touch clair-whitelist.yml - ./clair-scanner -c http://docker:6060 --ip $(hostname -i) -r gl-sast-container-report.json -l clair.log -w clair-whitelist.yml ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} || true artifacts: paths: [gl-sast-container-report.json] deploy-dev: stage: deploy image: redmic/docker-gitlab variables: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${DEV_SSH_REMOTE} SERVICE: ${CI_PROJECT_NAME} IMAGE_NAME: ${DOCKER_ENV_CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_SHA} COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.dev.yml services: - docker:dind script: - deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} environment: name: dev url: https://appdev.${DEV_PUBLIC_HOSTNAME} only: - pre deploy-pro: stage: deploy script: - 'echo deploy-pro' environment: name: pro url: https://redmic.es only: - tags when: manual .gitmodules 0 → 100644 +21 −0 Original line number Diff line number Diff line [submodule "public/javascript/proj4js"] path = public/javascript/proj4js url = ../../../third-party/proj4js.git branch = master ignore = dirty [submodule "public/javascript/redmic-widgets"] path = public/javascript/redmic-widgets url = ../widgets.git branch = dev ignore = dirty [submodule "public/stylesheets"] path = public/stylesheets url = ../style.git branch = dev ignore = dirty [submodule "public/javascript/templates"] path = public/javascript/templates url = ../templates.git branch = dev ignore = dirty No newline at end of file Loading
.gitignore 0 → 100644 +5 −0 Original line number Diff line number Diff line node_modules dist test_reports .gitmodules.old *.tar.gz
.gitlab-ci.yml 0 → 100644 +201 −0 Original line number Diff line number Diff line image: redmic/web-gitlab stages: - build - test - package - test-package - deploy prepare-for-unbuilt: stage: build variables: GIT_SUBMODULE_STRATEGY: normal script: - 'type yarn grunt java' - 'yarn install || yarn install' - 'grunt preBuild' only: - branches except: - pre - master cache: key: '${CI_COMMIT_REF_NAME}' paths: - node_modules/ - public/javascript/redmic-widgets/node_modules/ - public/javascript/templates/node_modules/ - public/stylesheets/node_modules/ artifacts: name: '${CI_JOB_NAME}_${CI_COMMIT_REF_NAME}' expire_in: '1 day' paths: - public/javascript/proj4js/dist/proj4.js - public/javascript/redmic-widgets/src/app/ - public/javascript/templates/dist/ - public/stylesheets/style.styl - public/stylesheets/src/ - public/stylesheets/submodules/ prepare-for-built: stage: build variables: GIT_SUBMODULE_STRATEGY: normal script: - 'type yarn grunt java' - 'yarn install || yarn install' - 'grunt' only: - pre - master cache: key: '${CI_COMMIT_REF_NAME}' paths: - node_modules/ - public/javascript/redmic-widgets/node_modules/ - public/javascript/templates/node_modules/ - public/stylesheets/node_modules/ policy: pull artifacts: name: '${CI_JOB_NAME}_${CI_COMMIT_REF_NAME}' expire_in: '1 week' paths: - dist*.tar.gz run-local-unit-tests: stage: test script: 'grunt test-unit-local' only: - branches except: - pre - master cache: key: '${CI_COMMIT_REF_NAME}' paths: - node_modules/ - public/javascript/redmic-widgets/node_modules/ - public/javascript/templates/node_modules/ - public/stylesheets/node_modules/ policy: pull run-local-modules-functional-tests: stage: test script: - 'echo $(head -1 /etc/hosts | cut -f1) redmic.local >> /etc/hosts' - 'npm start -- -p 80 &' - 'grunt test-functional-local --functionalSuites=tests/functional/modules/**/!\(*Script\).js --headless' only: - branches except: - pre - master cache: key: '${CI_COMMIT_REF_NAME}' paths: - node_modules/ - public/javascript/redmic-widgets/node_modules/ - public/javascript/templates/node_modules/ - public/stylesheets/node_modules/ policy: pull run-local-functional-tests: stage: test script: - 'echo $(head -1 /etc/hosts | cut -f1) redmic.local >> /etc/hosts' - 'npm start -- -p 80 &' - 'grunt test-functional-local-parallel --user=${REDMIC_USER} --pass=${REDMIC_PASS}' only: - schedules cache: key: '${CI_COMMIT_REF_NAME}' paths: - node_modules/ - public/javascript/redmic-widgets/node_modules/ - public/javascript/templates/node_modules/ - public/stylesheets/node_modules/ policy: pull docker-build-commit: stage: package image: redmic/docker-gitlab variables: DOCKER_DRIVER: overlay2 services: - docker:dind only: - pre script: - docker login -u gitlab-ci-token -p ${CI_JOB_TOKEN} ${CI_REGISTRY} - docker build -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_REF_NAME}-latest . - docker push ${CI_REGISTRY_IMAGE} docker-build-tag: stage: package image: redmic/docker-gitlab variables: DOCKER_DRIVER: overlay2 services: - docker:dind only: - tags script: - docker login -u gitlab-ci-token -p ${CI_JOB_TOKEN} ${CI_REGISTRY} - docker build -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG} -t ${CI_REGISTRY_IMAGE}:latest . - docker push ${CI_REGISTRY_IMAGE} container_scanning: stage: test-package image: docker:stable variables: DOCKER_DRIVER: overlay2 allow_failure: true services: - docker:stable-dind only: - pre script: - docker run -d --name db arminc/clair-db:latest - docker run -p 6060:6060 --link db:postgres -d --name clair arminc/clair-local-scan:v2.0.1 - apk add -U wget ca-certificates - docker login -u gitlab-ci-token -p ${CI_JOB_TOKEN} ${CI_REGISTRY} - docker pull ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} - wget https://github.com/arminc/clair-scanner/releases/download/v8/clair-scanner_linux_amd64 - mv clair-scanner_linux_amd64 clair-scanner - chmod +x clair-scanner - touch clair-whitelist.yml - ./clair-scanner -c http://docker:6060 --ip $(hostname -i) -r gl-sast-container-report.json -l clair.log -w clair-whitelist.yml ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} || true artifacts: paths: [gl-sast-container-report.json] deploy-dev: stage: deploy image: redmic/docker-gitlab variables: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${DEV_SSH_REMOTE} SERVICE: ${CI_PROJECT_NAME} IMAGE_NAME: ${DOCKER_ENV_CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_SHA} COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.dev.yml services: - docker:dind script: - deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} environment: name: dev url: https://appdev.${DEV_PUBLIC_HOSTNAME} only: - pre deploy-pro: stage: deploy script: - 'echo deploy-pro' environment: name: pro url: https://redmic.es only: - tags when: manual
.gitmodules 0 → 100644 +21 −0 Original line number Diff line number Diff line [submodule "public/javascript/proj4js"] path = public/javascript/proj4js url = ../../../third-party/proj4js.git branch = master ignore = dirty [submodule "public/javascript/redmic-widgets"] path = public/javascript/redmic-widgets url = ../widgets.git branch = dev ignore = dirty [submodule "public/stylesheets"] path = public/stylesheets url = ../style.git branch = dev ignore = dirty [submodule "public/javascript/templates"] path = public/javascript/templates url = ../templates.git branch = dev ignore = dirty No newline at end of file