Skip to content
Snippets Groups Projects
Forked from Configs / EC327 / Labs / Current
197 commits behind the upstream repository.
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
lab0.yml 966 B
stages:
  - LabZero

### Lab 0
prebuild_0:
  stage: LabZero
  script:
    - git clone https://agile.bu.edu/gitlab/configs/ec327/lab-configs/current.git base
  when: on_success # only runs if the previous stage succeeds
  rules:
    - exists:
        - lab0.cpp
  artifacts:
    paths:
      - base
      - lab0.cpp
  tags: [c++-17]

compile_0:
  stage: LabZero
  script:
    - echo "Compiling lab0.cpp"
    - g++ -c lab0.cpp
  artifacts:
    paths:
      - base
      - lab0.*
  tags: [c++-17]

lint_0:
  stage: LabZero
  script:
    - echo "Static code check of lab0.cpp"
    - cppcheck --enable=all --inconclusive --error-exitcode=1 lab0.cpp
  allow_failure: false
  needs:
    - compile_0
  artifacts:
    paths:
      - base
      - lab0.*
  tags: [cppcheck]

test_m1:
  stage: LabZero
  script:
    - echo "Testing Lab 0";
    - cp lab0.o base
    - cd base
    - g++ -c LabZero.cpp
    - g++ lab0.o LabZero.o
    - ./a.out
  needs:
    - lint_0
  tags: [shell]