Skip to content
Snippets Groups Projects
.gitlab-ci.yml 2.29 KiB
Newer Older
  • Learn to ignore specific revisions
  • # maintained by q3k, built using docker/build-env
    
    q3k's avatar
    q3k committed
    image: "derq3k/card10-build-env:20190806-195837Z-f95b541-dirty"
    
    rahix's avatar
    rahix committed
            - ./bootstrap.sh
    
    schneider's avatar
    schneider committed
            - ninja -C build/
    
            - arm-none-eabi-size build/bootloader/bootloader.elf build/epicardium/epicardium.elf build/pycardium/pycardium.elf
    
        only:
            - merge_requests
            - master
    
    release:
        stage: build
        script:
            - ./bootstrap.sh
            - ninja -C build/
            - arm-none-eabi-size build/bootloader/bootloader.elf build/epicardium/epicardium.elf build/pycardium/pycardium.elf
        only:
            - tag
        artifacts:
            paths:
                - build/bootloader/bootloader.elf
                - build/epicardium/epicardium.elf
                - build/pycardium/pycardium.elf
                - build/pycardium/pycardium_epicardium.bin
    
    
    q3k's avatar
    q3k committed
    lint:
        stage: test
    
    q3k's avatar
    q3k committed
        image: "derq3k/card10-lint-env:20190806-201106Z-f95b541-dirty"
    
    q3k's avatar
    q3k committed
        script:
            # Annoyatron is maintained by q3k. Its job is to serve MR comments that are friendlier than just a failing pipeline.
            #  source code: https://git.card10.badge.events.ccc.de/q3k/annoyatron/
            #  prod deployment: https://gerrit.hackerspace.pl/plugins/gitiles/hscloud/+/refs/heads/master/personal/q3k/annoyatron/
            # If this starts failing for any reason, just remove this curl ping.
            - curl --fail https://annoyatron-prod.q3k.org/ping/mr?mr=${CI_MERGE_REQUEST_IID}
            - git remote rm card10 || true # old gitlab runners might have this remote.
            - git fetch https://git.card10.badge.events.ccc.de/card10/firmware.git master:card10/master
    
            - git merge-base card10/master HEAD || ( echo "Your change needs to be rebased against current master."; exit 1; )
            - git diff --name-only --diff-filter=d card10/master...HEAD | xargs tools/code-style.sh
    
    q3k's avatar
    q3k committed
            - git diff --exit-code
        only:
            - merge_requests
    
    
    rahix's avatar
    rahix committed
    pages:
        stage: deploy
    
        # maintaned by q3k, build using docker/deploy-env
    
    q3k's avatar
    q3k committed
        image: "derq3k/card10-deploy-env:20190806-200743Z-f95b541-dirty"
    
    rahix's avatar
    rahix committed
        script:
            - export LD_LIBRARY_PATH=$(llvm-config --libdir)
            - echo $LD_LIBRARY_PATH
            - sphinx-build -b html Documentation/ Documentation/output/
            - mv Documentation/output/ public/
        artifacts:
            paths:
                - public/
        only:
            - master