diff --git a/.circleci/config.yml b/.circleci/config.yml index 4e2020079..23b33ea27 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -3,54 +3,83 @@ jobs: build: working_directory: ~/phovea docker: - - image: caleydo/phovea_circleci_python:v2.0 + - image: caleydo/phovea_circleci_python:v3.0 steps: - checkout - run: + name: Show Node.js and npm version + command: | + node -v + npm -v + - run: + name: Show Python and pip version + command: | + python --version + pip --version + - run: + name: Install Docker packages from docker_packages.txt command: | (!(test -f docker_packages.txt) || (cat docker_packages.txt | xargs sudo apt-get install -y)) - restore_cache: - key: deps4-{{ checksum "package.json" }} + key: deps4-{{ .Branch }}-{{ checksum "package.json" }} - run: - name: install-npm-wee + name: Install npm dependencies command: npm install - - run: #remove all resolved github dependencies - name: delete-vcs-dependencies + - run: + name: Remove npm dependencies installed from git repositories (avoid caching of old commits) command: | (grep -l '._resolved.: .\(git[^:]*\|bitbucket\):' ./node_modules/*/package.json || true) | xargs -r dirname | xargs -r rm -rf - save_cache: - key: deps4-{{ checksum "package.json" }} + key: deps4-{{ .Branch }}-{{ checksum "package.json" }} paths: - ./node_modules - - run: #install all dependencies - name: install-npm-wee2 + - run: + name: Install npm dependencies from git repositories (always get latest commit) command: npm install + - run: + name: Show installed npm dependencies + command: npm list --depth=1 || true - restore_cache: - key: deps1-{{ checksum "requirements.txt" }}-{{ checksum "requirements_dev.txt" }} + key: deps1-{{ .Branch }}-{{ checksum "requirements.txt" }}-{{ checksum "requirements_dev.txt" }} - run: - name: install-pip-wee + name: Install pip requirements command: | virtualenv ~/venv . ~/venv/bin/activate pip install -r requirements_dev.txt pip install -r requirements.txt - save_cache: - key: deps1-{{ checksum "requirements.txt" }}-{{ checksum "requirements_dev.txt" }} + key: deps1-{{ .Branch }}-{{ checksum "requirements.txt" }}-{{ checksum "requirements_dev.txt" }} paths: - ~/venv - - run: #force update of VCS dependencies? - name: update-pip-vcs-dependencies + - run: + name: Force an update of pip dependencies from git repositories # not sure if this is working ? command: | . ~/venv/bin/activate pip install --upgrade --upgrade-strategy=only-if-needed -r requirements.txt - run: - name: build + name: Show installed pip packages + command: pip list || true + - run: + name: Build command: | . ~/venv/bin/activate - npm run build - + npm run dist + - store_artifacts: + path: dist + prefix: dist workflows: version: 2 +# build-nightly: +# triggers: +# - schedule: +# cron: "15 1 * * 1-5" # "At 01:15 on every day-of-week from Monday through Friday.”, see: https://crontab.guru/#15_1_*_*_1-5 +# filters: +# branches: +# only: +# - develop +# jobs: +# - build build-branch: jobs: - build: diff --git a/package.json b/package.json index 66328acf4..4ad38e648 100644 --- a/package.json +++ b/package.json @@ -79,7 +79,7 @@ "@types/select2": "4.0.41", "d3": "3.5.17", "lineupjs": "github:lineupjs/lineupjs#develop", - "phovea_clue": "^2.2.0", + "phovea_clue": "github:phovea/phovea_clue#develop", "select2": "4.0.4", "select2-bootstrap-theme": "0.1.0-beta.9", "@types/jquery": "2.0.33",