From 49364f91a6de69921406a4322b8c37ac04ff511d Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Sun, 28 Nov 2021 20:47:04 -0800 Subject: [PATCH 01/20] Add .circleci/config.yml --- .circleci/config.yml | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 .circleci/config.yml diff --git a/.circleci/config.yml b/.circleci/config.yml new file mode 100644 index 0000000..6554e1f --- /dev/null +++ b/.circleci/config.yml @@ -0,0 +1,26 @@ +# Use the latest 2.1 version of CircleCI pipeline process engine. +# See: https://circleci.com/docs/2.0/configuration-reference +version: 2.1 + +# Define a job to be invoked later in a workflow. +# See: https://circleci.com/docs/2.0/configuration-reference/#jobs +jobs: + say-hello: + # Specify the execution environment. You can specify an image from Dockerhub or use one of our Convenience Images from CircleCI's Developer Hub. + # See: https://circleci.com/docs/2.0/configuration-reference/#docker-machine-macos-windows-executor + docker: + - image: cimg/base:stable + # Add steps to the job + # See: https://circleci.com/docs/2.0/configuration-reference/#steps + steps: + - checkout + - run: + name: "Say hello" + command: "echo Hello, World!" + +# Invoke jobs via workflows +# See: https://circleci.com/docs/2.0/configuration-reference/#workflows +workflows: + say-hello-workflow: + jobs: + - say-hello From 00414e7913bcdb0dbf24b123b8fd3c83828c8930 Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Sun, 28 Nov 2021 21:02:26 -0800 Subject: [PATCH 02/20] Update config.yml --- .circleci/config.yml | 40 ++++++++++++++++++++++------------------ 1 file changed, 22 insertions(+), 18 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 6554e1f..243a1fd 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,26 +1,30 @@ -# Use the latest 2.1 version of CircleCI pipeline process engine. -# See: https://circleci.com/docs/2.0/configuration-reference -version: 2.1 +version: 2.1 #I copied this from https://github.com/kundajelab/basepairmodels/blob/941d354f4526f7dd86c51fed0e22ef5b7dd75c38/.circleci/config.yml -# Define a job to be invoked later in a workflow. -# See: https://circleci.com/docs/2.0/configuration-reference/#jobs jobs: - say-hello: - # Specify the execution environment. You can specify an image from Dockerhub or use one of our Convenience Images from CircleCI's Developer Hub. - # See: https://circleci.com/docs/2.0/configuration-reference/#docker-machine-macos-windows-executor - docker: - - image: cimg/base:stable - # Add steps to the job - # See: https://circleci.com/docs/2.0/configuration-reference/#steps + build-and-test: + docker: # run the steps with Docker + - image: circleci/python:3.7.6 steps: - checkout + - restore_cache: + # Read about caching dependencies: https://circleci.com/docs/2.0/caching/ + key: deps9-{{ .Branch }}-{{ checksum "Pipfile.lock" }} - run: - name: "Say hello" - command: "echo Hello, World!" + command: | + sudo pip install pipenv + pipenv install + - save_cache: # cache Python dependencies using checksum of Pipfile as the cache-key + key: deps9-{{ .Branch }}-{{ checksum "Pipfile.lock" }} + paths: + - "venv" + - "/usr/local/bin" + - "/usr/local/lib/python3.7/site-packages" + - run: + command: | + pipenv run python -m pytest + name: Test -# Invoke jobs via workflows -# See: https://circleci.com/docs/2.0/configuration-reference/#workflows workflows: - say-hello-workflow: + main: jobs: - - say-hello + - build-and-test From b7e3295486421bb4f5e717afb194205c7b260197 Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Sun, 28 Nov 2021 21:17:19 -0800 Subject: [PATCH 03/20] Update config.yml --- .circleci/config.yml | 80 ++++++++++++++++++++++++++++++++++---------- 1 file changed, 62 insertions(+), 18 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 243a1fd..0f8993a 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -3,26 +3,70 @@ version: 2.1 #I copied this from https://github.com/kundajelab/basepairmodels/bl jobs: build-and-test: docker: # run the steps with Docker - - image: circleci/python:3.7.6 + - image: circleci/python:3.8 steps: - checkout - - restore_cache: - # Read about caching dependencies: https://circleci.com/docs/2.0/caching/ - key: deps9-{{ .Branch }}-{{ checksum "Pipfile.lock" }} - - run: - command: | - sudo pip install pipenv - pipenv install - - save_cache: # cache Python dependencies using checksum of Pipfile as the cache-key - key: deps9-{{ .Branch }}-{{ checksum "Pipfile.lock" }} - paths: - - "venv" - - "/usr/local/bin" - - "/usr/local/lib/python3.7/site-packages" - - run: - command: | - pipenv run python -m pytest - name: Test + - run: wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh + - run: bash miniconda.sh -b -p $HOME/miniconda + - run: export PATH="$HOME/miniconda/bin:$PATH" + - run: hash -r + - run: conda config --set always_yes yes --set changeps1 no + - run: conda update -q conda + - run: conda info -a + - run: conda create -q -n test-environment python=3.8 numpy pytest h5py nose + - run: source activate test-environment + - run: pip install tensorflow==2.3.0 + - run: pip install joblib + - run: pip install scikit-learn + - run: pip install leidenalg + - run: pip install tqdm + - run: pip install psutil + - run: pip install matplotlib + #MEME installation + - run: sudo apt-get install -y ghostscript-x + - run: mkdir -p ~/.config/matplotlib/ + - run: "echo backend : Agg > ~/.config/matplotlib/matplotlibrc" + - run: cat ~/.config/matplotlib/matplotlibrc + - run: which gs + - run: wget http://meme-suite.org/meme-software/5.1.1/meme-5.1.1.tar.gz + - run: tar zxf meme-5.1.1.tar.gz + - run: cd meme-5.1.1 + - run: export PERL5LIB=$HOME/perl5/lib/perl5:$PERL5LIB + - run: curl -L http://cpanmin.us | perl - File::Which + - run: curl -L http://cpanmin.us | perl - HTML::PullParser + - run: curl -L http://cpanmin.us | perl - HTML::Template + - run: curl -L http://cpanmin.us | perl - HTML::TreeBuilder + - run: curl -L http://cpanmin.us | perl - JSON + - run: curl -L http://cpanmin.us | perl - XML::Simple + - run: curl -L http://cpanmin.us | perl - XML::Parser::Expat + - run: perl scripts/dependencies.pl + - run: ./configure --prefix=$HOME/meme --with-url=http://alternate.meme-suite.org/ --enable-serial --enable-build-libxml2 --enable-build-libxslt + - run: make + #- make test; skip the tests since some of them are buggy and stall the build + # (see: https://groups.google.com/forum/#!topic/meme-suite/D3XR7Ws1gec) + - run: make install + - run: cd .. + - run: export PATH="$HOME/meme/bin:$PATH" + - run: echo $PWD + - run: echo $PYTHONPATH + - run: PYTHONPATH=$PWD:$PYTHONPATH py.test +# - restore_cache: +# # Read about caching dependencies: https://circleci.com/docs/2.0/caching/ +# key: deps9-{{ .Branch }}-{{ checksum "Pipfile.lock" }} +# - run: +# command: | +# sudo pip install pipenv +# pipenv install +# - save_cache: # cache Python dependencies using checksum of Pipfile as the cache-key +# key: deps9-{{ .Branch }}-{{ checksum "Pipfile.lock" }} +# paths: +# - "venv" +# - "/usr/local/bin" +# - "/usr/local/lib/python3.7/site-packages" +# - run: +# command: | +# pipenv run python -m pytest +# name: Test workflows: main: From 0b6a68e53b2ce130fa89d25a7fe0133345d718a1 Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Sun, 28 Nov 2021 21:21:00 -0800 Subject: [PATCH 04/20] Update config.yml --- .circleci/config.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.circleci/config.yml b/.circleci/config.yml index 0f8993a..4668179 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -7,6 +7,8 @@ jobs: steps: - checkout - run: wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh + - run: export HOME=~ + - run: echo $HOME - run: bash miniconda.sh -b -p $HOME/miniconda - run: export PATH="$HOME/miniconda/bin:$PATH" - run: hash -r From 3bf719cd8ad759ba05b16d6cd3fbb7c36db2fbb4 Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Sun, 28 Nov 2021 21:23:41 -0800 Subject: [PATCH 05/20] Update config.yml --- .circleci/config.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.circleci/config.yml b/.circleci/config.yml index 4668179..aaeddcd 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -11,6 +11,8 @@ jobs: - run: echo $HOME - run: bash miniconda.sh -b -p $HOME/miniconda - run: export PATH="$HOME/miniconda/bin:$PATH" + - run: echo $PATH + - run: ls $HOME/miniconda/bin - run: hash -r - run: conda config --set always_yes yes --set changeps1 no - run: conda update -q conda From 4ad7aa6fe2fe61668ca3f0dc134e40a0a7a7b23a Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Sun, 28 Nov 2021 21:30:36 -0800 Subject: [PATCH 06/20] Update config.yml --- .circleci/config.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index aaeddcd..c06d459 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -7,10 +7,8 @@ jobs: steps: - checkout - run: wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh - - run: export HOME=~ - - run: echo $HOME - run: bash miniconda.sh -b -p $HOME/miniconda - - run: export PATH="$HOME/miniconda/bin:$PATH" + - run: echo 'export PATH="$HOME/miniconda/bin:$PATH"' >> $BASH_ENV - run: echo $PATH - run: ls $HOME/miniconda/bin - run: hash -r From ed357e18a125a7995d424e8d0bf61fa184f17b37 Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Sun, 28 Nov 2021 21:39:37 -0800 Subject: [PATCH 07/20] Update config.yml --- .circleci/config.yml | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index c06d459..d2753bd 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -6,8 +6,10 @@ jobs: - image: circleci/python:3.8 steps: - checkout + #Install miniconda and create the testing environment - run: wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh - run: bash miniconda.sh -b -p $HOME/miniconda + #writing to $BASH_ENV is apparently the way to preserv an environment var between steps - run: echo 'export PATH="$HOME/miniconda/bin:$PATH"' >> $BASH_ENV - run: echo $PATH - run: ls $HOME/miniconda/bin @@ -17,6 +19,7 @@ jobs: - run: conda info -a - run: conda create -q -n test-environment python=3.8 numpy pytest h5py nose - run: source activate test-environment + #Install needed dependencies - run: pip install tensorflow==2.3.0 - run: pip install joblib - run: pip install scikit-learn @@ -24,16 +27,17 @@ jobs: - run: pip install tqdm - run: pip install psutil - run: pip install matplotlib + - run: echo $PWD + - run: echo $PYTHONPATH + #Actually run the tests + - run: PYTHONPATH=$PWD:$PYTHONPATH py.test #MEME installation - run: sudo apt-get install -y ghostscript-x - run: mkdir -p ~/.config/matplotlib/ - run: "echo backend : Agg > ~/.config/matplotlib/matplotlibrc" - run: cat ~/.config/matplotlib/matplotlibrc - run: which gs - - run: wget http://meme-suite.org/meme-software/5.1.1/meme-5.1.1.tar.gz - - run: tar zxf meme-5.1.1.tar.gz - - run: cd meme-5.1.1 - - run: export PERL5LIB=$HOME/perl5/lib/perl5:$PERL5LIB + - run: echo 'export PERL5LIB="$HOME/perl5/lib/perl5:$PERL5LIB"' >> $BASH_ENV - run: curl -L http://cpanmin.us | perl - File::Which - run: curl -L http://cpanmin.us | perl - HTML::PullParser - run: curl -L http://cpanmin.us | perl - HTML::Template @@ -41,16 +45,18 @@ jobs: - run: curl -L http://cpanmin.us | perl - JSON - run: curl -L http://cpanmin.us | perl - XML::Simple - run: curl -L http://cpanmin.us | perl - XML::Parser::Expat - - run: perl scripts/dependencies.pl - - run: ./configure --prefix=$HOME/meme --with-url=http://alternate.meme-suite.org/ --enable-serial --enable-build-libxml2 --enable-build-libxslt - - run: make + - run: wget http://meme-suite.org/meme-software/5.1.1/meme-5.1.1.tar.gz + - run: tar zxf meme-5.1.1.tar.gz + - run: cd meme-5.1.1 | perl scripts/dependencies.pl + - run: cd meme-5.1.1 | ./configure --prefix=$HOME/meme --with-url=http://alternate.meme-suite.org/ --enable-serial --enable-build-libxml2 --enable-build-libxslt + - run: cd meme-5.1.1 | make #- make test; skip the tests since some of them are buggy and stall the build # (see: https://groups.google.com/forum/#!topic/meme-suite/D3XR7Ws1gec) - - run: make install - - run: cd .. - - run: export PATH="$HOME/meme/bin:$PATH" + - run: cd meme-5.1.1 | make install + - run: echo 'export PATH="$HOME/meme/bin:$PATH"' >> $BASH_ENV - run: echo $PWD - run: echo $PYTHONPATH + #Actually run the tests - run: PYTHONPATH=$PWD:$PYTHONPATH py.test # - restore_cache: # # Read about caching dependencies: https://circleci.com/docs/2.0/caching/ From 64dd06e469c49308102e4dc8d63bf46598e0ed2b Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Sun, 28 Nov 2021 21:44:21 -0800 Subject: [PATCH 08/20] Update config.yml --- .circleci/config.yml | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index d2753bd..b8e4a43 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -18,19 +18,20 @@ jobs: - run: conda update -q conda - run: conda info -a - run: conda create -q -n test-environment python=3.8 numpy pytest h5py nose - - run: source activate test-environment - #Install needed dependencies - - run: pip install tensorflow==2.3.0 - - run: pip install joblib - - run: pip install scikit-learn - - run: pip install leidenalg - - run: pip install tqdm - - run: pip install psutil - - run: pip install matplotlib + - run: + command: | + source activate test-environment + pip install tensorflow==2.3.0 + pip install joblib + pip install scikit-learn + pip install leidenalg + pip install tqdm + pip install psutil + pip install matplotlib - run: echo $PWD - run: echo $PYTHONPATH #Actually run the tests - - run: PYTHONPATH=$PWD:$PYTHONPATH py.test + - run: source activate test-environment | PYTHONPATH=$PWD:$PYTHONPATH py.test #MEME installation - run: sudo apt-get install -y ghostscript-x - run: mkdir -p ~/.config/matplotlib/ From 184d6b8cde449f5f2fc7ce932ea598b5276508d5 Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Sun, 28 Nov 2021 21:50:13 -0800 Subject: [PATCH 09/20] Update config.yml --- .circleci/config.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index b8e4a43..a96ec19 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -18,6 +18,7 @@ jobs: - run: conda update -q conda - run: conda info -a - run: conda create -q -n test-environment python=3.8 numpy pytest h5py nose + - run: which pytest - run: command: | source activate test-environment @@ -31,7 +32,7 @@ jobs: - run: echo $PWD - run: echo $PYTHONPATH #Actually run the tests - - run: source activate test-environment | PYTHONPATH=$PWD:$PYTHONPATH py.test + - run: source activate test-environment | PYTHONPATH=$PWD:$PYTHONPATH pytest #MEME installation - run: sudo apt-get install -y ghostscript-x - run: mkdir -p ~/.config/matplotlib/ From a7d24950720963c16b00d933bc2e467d670d93f8 Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Sun, 28 Nov 2021 21:53:36 -0800 Subject: [PATCH 10/20] Update config.yml --- .circleci/config.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index a96ec19..e81d84d 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -18,7 +18,10 @@ jobs: - run: conda update -q conda - run: conda info -a - run: conda create -q -n test-environment python=3.8 numpy pytest h5py nose - - run: which pytest + - run: + command: | + source activate test-environment + which pytest - run: command: | source activate test-environment From a2d5e673a9c7a3a3f1fc46694952364b63686388 Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Sun, 28 Nov 2021 22:00:42 -0800 Subject: [PATCH 11/20] Update config.yml --- .circleci/config.yml | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index e81d84d..a5f19d6 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -18,10 +18,17 @@ jobs: - run: conda update -q conda - run: conda info -a - run: conda create -q -n test-environment python=3.8 numpy pytest h5py nose + #Actually run the tests - run: command: | source activate test-environment which pytest + - run: pwd + - run: ls + - run: + command: | + source activate test-environment + pytest - run: command: | source activate test-environment @@ -33,9 +40,7 @@ jobs: pip install psutil pip install matplotlib - run: echo $PWD - - run: echo $PYTHONPATH - #Actually run the tests - - run: source activate test-environment | PYTHONPATH=$PWD:$PYTHONPATH pytest + - run: echo 'export "PYTHONPATH=$PWD:$PYTHONPATH"' >> $BASH_ENV #MEME installation - run: sudo apt-get install -y ghostscript-x - run: mkdir -p ~/.config/matplotlib/ From e523c52a9cd799243d300169a74ea4a0b25c9a86 Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Sun, 28 Nov 2021 22:04:22 -0800 Subject: [PATCH 12/20] Update config.yml --- .circleci/config.yml | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index a5f19d6..20aca87 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -22,25 +22,13 @@ jobs: - run: command: | source activate test-environment - which pytest + pip install . - run: pwd - run: ls - run: command: | source activate test-environment pytest - - run: - command: | - source activate test-environment - pip install tensorflow==2.3.0 - pip install joblib - pip install scikit-learn - pip install leidenalg - pip install tqdm - pip install psutil - pip install matplotlib - - run: echo $PWD - - run: echo 'export "PYTHONPATH=$PWD:$PYTHONPATH"' >> $BASH_ENV #MEME installation - run: sudo apt-get install -y ghostscript-x - run: mkdir -p ~/.config/matplotlib/ From 43251a8226d0255363bc140006af1819031c92d0 Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Sun, 28 Nov 2021 22:11:35 -0800 Subject: [PATCH 13/20] Update config.yml --- .circleci/config.yml | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 20aca87..34891b4 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -18,17 +18,6 @@ jobs: - run: conda update -q conda - run: conda info -a - run: conda create -q -n test-environment python=3.8 numpy pytest h5py nose - #Actually run the tests - - run: - command: | - source activate test-environment - pip install . - - run: pwd - - run: ls - - run: - command: | - source activate test-environment - pytest #MEME installation - run: sudo apt-get install -y ghostscript-x - run: mkdir -p ~/.config/matplotlib/ @@ -55,7 +44,17 @@ jobs: - run: echo $PWD - run: echo $PYTHONPATH #Actually run the tests - - run: PYTHONPATH=$PWD:$PYTHONPATH py.test + - run: + command: | #this seems necessary for multi-line commands + source activate test-environment + pip install . + pip install tensorflow + - run: pwd + - run: ls + - run: + command: | + source activate test-environment + pytest # - restore_cache: # # Read about caching dependencies: https://circleci.com/docs/2.0/caching/ # key: deps9-{{ .Branch }}-{{ checksum "Pipfile.lock" }} From 9787d15634fef059851e44cda9a797b5516b1b65 Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Sun, 28 Nov 2021 22:17:04 -0800 Subject: [PATCH 14/20] Update config.yml --- .circleci/config.yml | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 34891b4..816b594 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -34,15 +34,26 @@ jobs: - run: curl -L http://cpanmin.us | perl - XML::Parser::Expat - run: wget http://meme-suite.org/meme-software/5.1.1/meme-5.1.1.tar.gz - run: tar zxf meme-5.1.1.tar.gz - - run: cd meme-5.1.1 | perl scripts/dependencies.pl - - run: cd meme-5.1.1 | ./configure --prefix=$HOME/meme --with-url=http://alternate.meme-suite.org/ --enable-serial --enable-build-libxml2 --enable-build-libxslt - - run: cd meme-5.1.1 | make + - run: + command: | #this seems necessary for multi-line commands + cd meme-5.1.1 + perl scripts/dependencies.pl + - run: + command: | #this seems necessary for multi-line commands + cd meme-5.1.1 + ./configure --prefix=$HOME/meme --with-url=http://alternate.meme-suite.org/ --enable-serial --enable-build-libxml2 --enable-build-libxslt + - run: + command: | #this seems necessary for multi-line commands + cd meme-5.1.1 + make #- make test; skip the tests since some of them are buggy and stall the build # (see: https://groups.google.com/forum/#!topic/meme-suite/D3XR7Ws1gec) - - run: cd meme-5.1.1 | make install + - run: + command: | #this seems necessary for multi-line commands + cd meme-5.1.1 + make install - run: echo 'export PATH="$HOME/meme/bin:$PATH"' >> $BASH_ENV - - run: echo $PWD - - run: echo $PYTHONPATH + - run: echo $PATH #Actually run the tests - run: command: | #this seems necessary for multi-line commands From ad55d01970c07e5696afb1ecedf9770c2170605b Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Sun, 28 Nov 2021 22:33:00 -0800 Subject: [PATCH 15/20] Update config.yml --- .circleci/config.yml | 32 ++++++++------------------------ 1 file changed, 8 insertions(+), 24 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 816b594..a8a019d 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,4 +1,4 @@ -version: 2.1 #I copied this from https://github.com/kundajelab/basepairmodels/blob/941d354f4526f7dd86c51fed0e22ef5b7dd75c38/.circleci/config.yml +version: 2.1 jobs: build-and-test: @@ -9,7 +9,7 @@ jobs: #Install miniconda and create the testing environment - run: wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh - run: bash miniconda.sh -b -p $HOME/miniconda - #writing to $BASH_ENV is apparently the way to preserv an environment var between steps + #writing to $BASH_ENV is apparently the way to preserve an environment variable between "run" steps - run: echo 'export PATH="$HOME/miniconda/bin:$PATH"' >> $BASH_ENV - run: echo $PATH - run: ls $HOME/miniconda/bin @@ -17,7 +17,7 @@ jobs: - run: conda config --set always_yes yes --set changeps1 no - run: conda update -q conda - run: conda info -a - - run: conda create -q -n test-environment python=3.8 numpy pytest h5py nose + - run: conda create -q -n test-environment python=3.8 pytest #MEME installation - run: sudo apt-get install -y ghostscript-x - run: mkdir -p ~/.config/matplotlib/ @@ -41,12 +41,12 @@ jobs: - run: command: | #this seems necessary for multi-line commands cd meme-5.1.1 - ./configure --prefix=$HOME/meme --with-url=http://alternate.meme-suite.org/ --enable-serial --enable-build-libxml2 --enable-build-libxslt + ./configure --prefix=$HOME/meme --with-url=http://meme-suite.org/ --enable-serial --enable-build-libxml2 --enable-build-libxslt - run: command: | #this seems necessary for multi-line commands cd meme-5.1.1 make - #- make test; skip the tests since some of them are buggy and stall the build + #skip the MEME tests since some of them are buggy and stall the build # (see: https://groups.google.com/forum/#!topic/meme-suite/D3XR7Ws1gec) - run: command: | #this seems necessary for multi-line commands @@ -54,7 +54,7 @@ jobs: make install - run: echo 'export PATH="$HOME/meme/bin:$PATH"' >> $BASH_ENV - run: echo $PATH - #Actually run the tests + #Install modisco (and associated dependencies) - note that tensorflow is not automatically installed, so we install separately - run: command: | #this seems necessary for multi-line commands source activate test-environment @@ -62,27 +62,11 @@ jobs: pip install tensorflow - run: pwd - run: ls + #Actually run the tests - run: command: | source activate test-environment - pytest -# - restore_cache: -# # Read about caching dependencies: https://circleci.com/docs/2.0/caching/ -# key: deps9-{{ .Branch }}-{{ checksum "Pipfile.lock" }} -# - run: -# command: | -# sudo pip install pipenv -# pipenv install -# - save_cache: # cache Python dependencies using checksum of Pipfile as the cache-key -# key: deps9-{{ .Branch }}-{{ checksum "Pipfile.lock" }} -# paths: -# - "venv" -# - "/usr/local/bin" -# - "/usr/local/lib/python3.7/site-packages" -# - run: -# command: | -# pipenv run python -m pytest -# name: Test + pytest workflows: main: From 42b9a140a272c55fbf5eb07460d1b33ca2235cab Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Sun, 28 Nov 2021 22:33:53 -0800 Subject: [PATCH 16/20] Delete .travis.yml --- .travis.yml | 71 ----------------------------------------------------- 1 file changed, 71 deletions(-) delete mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 366787d..0000000 --- a/.travis.yml +++ /dev/null @@ -1,71 +0,0 @@ -# Config file for automatic testing at travis-ci.org -language: python - -matrix: - include: - - python: 3.6 - env: TF_VERSION=1.14.0 - - python: 3.8.3 - env: TF_VERSION=2.3.0 - -notifications: - email: true - -before_install: - #ghostscript is used by the MEME suite - specifically, it's invoked in a meme-chip test - - sudo apt-get install -y ghostscript-x - #Set the 'Agg' backend to prevent a TclError with python 2 - # I seem to get errors when I use $HOME instead of /home/travis - - mkdir -p ~/.config/matplotlib/ - - "echo backend : Agg > ~/.config/matplotlib/matplotlibrc" - - cat ~/.config/matplotlib/matplotlibrc - -install: - #some code below copied from keras' .travis.yml - - pip install --editable . #try to install tfmodisco in a way that compiles the cython... - - which gs #sanity check that ghostscript is there... - - if [[ "$TRAVIS_PYTHON_VERSION" == "2.7" ]]; then - wget https://repo.continuum.io/miniconda/Miniconda-latest-Linux-x86_64.sh -O miniconda.sh; - else - wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh; - fi - - bash miniconda.sh -b -p $HOME/miniconda - - export PATH="$HOME/miniconda/bin:$PATH" - - hash -r - - conda config --set always_yes yes --set changeps1 no - - conda update -q conda - # Useful for debugging any issues with conda - - conda info -a - - - conda create -q -n test-environment python=$TRAVIS_PYTHON_VERSION numpy pytest h5py nose - - source activate test-environment - - pip install tensorflow==$TF_VERSION - - pip install joblib - - pip install scikit-learn - - pip install leidenalg - - pip install tqdm - - pip install psutil - - pip install matplotlib - ##MEME installation - - wget http://meme-suite.org/meme-software/5.1.1/meme-5.1.1.tar.gz - - tar zxf meme-5.1.1.tar.gz - - cd meme-5.1.1 - - export PERL5LIB=$HOME/perl5/lib/perl5:$PERL5LIB - - curl -L http://cpanmin.us | perl - File::Which - - curl -L http://cpanmin.us | perl - HTML::PullParser - - curl -L http://cpanmin.us | perl - HTML::Template - - curl -L http://cpanmin.us | perl - HTML::TreeBuilder - - curl -L http://cpanmin.us | perl - JSON - - curl -L http://cpanmin.us | perl - XML::Simple - - curl -L http://cpanmin.us | perl - XML::Parser::Expat - - perl scripts/dependencies.pl - - ./configure --prefix=$HOME/meme --with-url=http://alternate.meme-suite.org/ --enable-serial --enable-build-libxml2 --enable-build-libxslt - - make - #- make test; skip the tests since some of them are buggy and stall the build - # (see: https://groups.google.com/forum/#!topic/meme-suite/D3XR7Ws1gec) - - make install - - cd .. - - export PATH="$HOME/meme/bin:$PATH" - -script: -- PYTHONPATH=$PWD:$PYTHONPATH py.test From 7e7ba3f33e200bbc8125a19a3bd8e67dafbe9b66 Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Sun, 28 Nov 2021 22:34:29 -0800 Subject: [PATCH 17/20] Switching from travis to CircleCI --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index cb467bc..18a8a91 100644 --- a/setup.py +++ b/setup.py @@ -6,7 +6,7 @@ description='TF MOtif Discovery from Importance SCOres', long_description="""Algorithm for discovering consolidated patterns from base-pair-level importance scores""", url='https://github.com/kundajelab/tfmodisco', - version='0.5.16.0', + version='0.5.16.1', packages=find_packages(), package_data={ '': ['cluster/phenograph/louvain/*convert*', 'cluster/phenograph/louvain/*community*', 'cluster/phenograph/louvain/*hierarchy*'] From e57f4d9a0ba729bb0550aef930dc49586b8f615b Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Sun, 28 Nov 2021 22:37:18 -0800 Subject: [PATCH 18/20] Update config.yml --- .circleci/config.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index a8a019d..7a72333 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -58,8 +58,7 @@ jobs: - run: command: | #this seems necessary for multi-line commands source activate test-environment - pip install . - pip install tensorflow + pip install -e .[tensorflow] - run: pwd - run: ls #Actually run the tests From 6f90157979257745841cbf8c00f023b4972eec1e Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Sun, 28 Nov 2021 22:46:17 -0800 Subject: [PATCH 19/20] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 0222ac6..43dfe61 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ ## TF-MoDISco -[![Build Status](https://api.travis-ci.org/kundajelab/tfmodisco.svg?branch=master)](https://travis-ci.org/kundajelab/tfmodisco) [![license](https://img.shields.io/github/license/mashape/apistatus.svg?maxAge=2592000)](https://github.com/kundajelab/tfmodisco/blob/master/LICENSE) [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.4728132.svg)](https://doi.org/10.5281/zenodo.4728132) +[![CircleCI](https://circleci.com/gh/kundajelab/tfmodisco.svg?style=shield)](https://app.circleci.com/pipelines/github/kundajelab/tfmodisco) [![license](https://img.shields.io/github/license/mashape/apistatus.svg?maxAge=2592000)](https://github.com/kundajelab/tfmodisco/blob/master/LICENSE) [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.4728132.svg)](https://doi.org/10.5281/zenodo.4728132) **NOTE: we are still refining the multi-task version of TF-MoDISco. If you encounter difficulties running TF-MoDISco with multiple tasks, our recommendation is to run it on one task at a time.** From 2344f86c4634c8aefaca8e512bfc69da96fb69f2 Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Sun, 28 Nov 2021 22:47:01 -0800 Subject: [PATCH 20/20] Update config.yml --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 7a72333..70d3562 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -17,7 +17,7 @@ jobs: - run: conda config --set always_yes yes --set changeps1 no - run: conda update -q conda - run: conda info -a - - run: conda create -q -n test-environment python=3.8 pytest + - run: conda create -q -n test-environment python=3.8 pytest nose #MEME installation - run: sudo apt-get install -y ghostscript-x - run: mkdir -p ~/.config/matplotlib/