gitlab.com/SiaPrime/SiaPrime@v1.4.1/.gitlab-ci.yml (about)

     1  image: golang:1.12
     2  
     3  stages:
     4    - lint
     5    - test
     6    - deploy
     7  
     8  lint:
     9    stage: lint
    10    script:
    11      - go get github.com/golangci/golangci-lint/cmd/golangci-lint
    12      - golangci-lint run --disable-all --enable=vet --enable=gofmt ./...
    13      - make test
    14  
    15  legacy-tests:
    16    stage: test
    17    except:
    18      - schedules
    19    artifacts:
    20      name: "SiaTesting-$CI_JOB_NAME"
    21      paths:
    22        - $CI_PROJECT_DIR/SiaTesting
    23        - $CI_PROJECT_DIR/cover/cover.out
    24      when: always
    25    script:
    26      - make test-long pkgs="./node ./node/api ./node/api/server" run=.
    27      - cp -R /tmp/SiaTesting $CI_PROJECT_DIR/SiaTesting
    28  
    29  package-tests:
    30    stage: test
    31    except:
    32      - schedules
    33    artifacts:
    34      name: "SiaTesting-$CI_JOB_NAME"
    35      paths:
    36        - $CI_PROJECT_DIR/SiaTesting
    37        - $CI_PROJECT_DIR/cover/cover.out
    38      when: always
    39    script:
    40      - make test-long run=. pkgs="./build ./cmd/spc ./cmd/spd ./compatibility ./crypto ./encoding ./modules ./modules/consensus ./modules/explorer ./modules/gateway ./modules/host ./modules/host/contractmanager ./modules/renter ./modules/renter/contractor ./modules/renter/hostdb ./modules/renter/hostdb/hosttree ./modules/renter/proto ./modules/renter/siadir ./modules/renter/siafile ./modules/miner ./modules/wallet ./modules/transactionpool ./persist ./sync ./types"
    41      - cp -R /tmp/SiaTesting $CI_PROJECT_DIR/SiaTesting
    42  
    43  integration-tests:
    44    stage: test
    45    except:
    46      - schedules
    47    artifacts:
    48      name: "SiaTesting-$CI_JOB_NAME"
    49      paths:
    50        - $CI_PROJECT_DIR/SiaTesting
    51        - $CI_PROJECT_DIR/cover/cover.out
    52      when: always
    53    script:
    54      - make test-long run=. pkgs="./siatest ./siatest/consensus ./siatest/renter ./siatest/wallet"
    55      - cp -R /tmp/SiaTesting $CI_PROJECT_DIR/SiaTesting
    56  
    57  legacy-tests-nightly:
    58    stage: test
    59    only:
    60      - schedules
    61    artifacts:
    62      name: "SiaTesting-$CI_JOB_NAME"
    63      paths:
    64        - $CI_PROJECT_DIR/SiaTesting
    65        - $CI_PROJECT_DIR/cover/cover.out
    66      when: always
    67    script:
    68      - make test-vlong pkgs="./node ./node/api ./node/api/server" run=.
    69      - cp -R /tmp/SiaTesting $CI_PROJECT_DIR/SiaTesting
    70  
    71  package-tests-nightly:
    72    stage: test
    73    only:
    74      - schedules
    75    artifacts:
    76      name: "SiaTesting-$CI_JOB_NAME"
    77      paths:
    78        - $CI_PROJECT_DIR/SiaTesting
    79        - $CI_PROJECT_DIR/cover/cover.out
    80      when: always
    81    script:
    82      - make test-vlong run=. pkgs="./build ./cmd/spc ./cmd/spd ./compatibility ./crypto ./encoding ./modules ./modules/consensus ./modules/explorer ./modules/gateway ./modules/host ./modules/host/contractmanager ./modules/renter ./modules/renter/contractor ./modules/renter/hostdb ./modules/renter/hostdb/hosttree ./modules/renter/proto ./modules/miner ./modules/wallet ./modules/transactionpool ./persist ./sync ./types"
    83      - cp -R /tmp/SiaTesting $CI_PROJECT_DIR/SiaTesting
    84  
    85  integration-tests-nightly:
    86    stage: test
    87    only:
    88      - schedules
    89    artifacts:
    90      name: "SiaTesting-$CI_JOB_NAME"
    91      paths:
    92        - $CI_PROJECT_DIR/SiaTesting
    93        - $CI_PROJECT_DIR/cover/cover.out
    94      when: always
    95    script:
    96      - make test-vlong run=. pkgs="./siatest ./siatest/consensus ./siatest/gateway ./siatest/renter ./siatest/wallet"
    97      - cp -R /tmp/SiaTesting $CI_PROJECT_DIR/SiaTesting
    98  
    99  deploy:
   100    stage: deploy
   101    only:
   102      refs:
   103        - master@SiaPrime/SiaPrime
   104    artifacts:
   105      name: "Binaries"
   106      paths:
   107        - $CI_PROJECT_DIR/artifacts
   108    script:
   109      - ./deploy.sh "$NIGHTLY_SIGNING_KEY"
   110      - cp -R ./artifacts $CI_PROJECT_DIR/artifacts