.ecp-ci.yml 1.95 KB
Newer Older
1 2 3
variables:
  ARGOPKGS : "https://xgitlab.cels.anl.gov/argo/argopkgs/-/archive/master/argopkgs-master.tar.gz"
  CI_DEBUG_TRACE: "true"
Kyle Shaver's avatar
Kyle Shaver committed
4 5
  ANL_PROJECT_SERVICE_USER: "cscstdm"
  SCHEDULER_PARAMETERS: "-A Operations -n 1 -t 60 -q default"
6 7

stages:
Kyle Shaver's avatar
Kyle Shaver committed
8
  - style
9
  - build
Kyle Shaver's avatar
Kyle Shaver committed
10 11
  - docs
  - release
12

13
.repoquality:
Kyle Shaver's avatar
Kyle Shaver committed
14 15 16
  stage: style
  script:
    - nix run -f "$ARGOPKGS" repoquality --command repoquality
17
  tags:
Kyle Shaver's avatar
Kyle Shaver committed
18 19 20
    - ecp-theta
    - shell

21
.checkpatch:
Kyle Shaver's avatar
Kyle Shaver committed
22 23 24
  stage: style
  tags:
    - ecp-theta
25
    - shell
Kyle Shaver's avatar
Kyle Shaver committed
26 27 28
  script:
    - nix run -f "$ARGOPKGS" checkpatch --command checkpatch.pl

29
make:generic:
Kyle Shaver's avatar
Kyle Shaver committed
30
  stage: build
31 32 33
  tags:
    - ecp-theta
    - shell
Kyle Shaver's avatar
Kyle Shaver committed
34 35 36
  except:
    - /^wip.*/
    - /^WIP.*/
37 38 39 40 41 42
  script:
    - ./autogen.sh
    - mkdir build
    - ./configure --prefix=`pwd`/build
    - make
    - make check
43
    #- make install
44 45 46 47
  artifacts:
    when: on_failure
    paths:
      - tests/*.log
Kyle Shaver's avatar
Kyle Shaver committed
48 49 50

.make:knl:
  stage: build
51 52 53
  except:
    - /^wip.*/
    - /^WIP.*/
Kyle Shaver's avatar
Kyle Shaver committed
54 55
  tags:
    - knl
56
  script:
Kyle Shaver's avatar
Kyle Shaver committed
57 58 59 60 61 62 63
    - source /opt/intel/compilers_and_libraries/linux/bin/compilervars.sh intel64
    - ./autogen.sh
    - mkdir build
    - CC=icc CFLAGS="-mkl -xhost" ./configure --prefix=`pwd`/build --enable-benchmarks
    - make -j64
    - make check
    - make install
64 65 66 67 68
  artifacts:
    when: on_failure
    paths:
      - tests/*.log

Kyle Shaver's avatar
Kyle Shaver committed
69 70 71 72 73 74
.readthedocs:
  stage: docs
  when: on_success
  only:
    - master
    - /v[0-9]+\.[0-9]+\.x/
75 76
  tags:
    - integration
Kyle Shaver's avatar
Kyle Shaver committed
77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96
  script:
    - nix run nixpkgs.curl -c curl -X POST -d "branch=$CI_COMMIT_REF_NAME" -d "token=$READTHEDOCS_TOKEN" https://readthedocs.org/api/v2/webhook/argo-aml/83161/

.dist:
  stage: release
  when: on_success
  only:
    - tags
  tags:
    - integration    
  script:
    - nix-build "$ARGOPKGS" -A aml-dist --arg aml-src ./.
    - nix-shell "$ARGOPKGS" -A aml-dist --arg aml-src ./. --run  "./release.sh CREATE $CI_JOB_ID $CI_PROJECT_ID $RELEASE_TOKEN $CI_COMMIT_REF_NAME"
  artifacts:
    when: on_success
    paths:
      - result/*.tar.gz
      - CHECKSUM
    expire_in: 1000y