xrefcheck/.buildkite/pipeline.yml
Sergey Gulin 332da5569e
[#77] Add support for glob patterns to ignored and notScanned
Problem: The `virtualFiles` config option supports glob patterns. On the
other hand, `ignored` only supports exact matches and `notScanned`
mathches on prefixes. There is also a bug where `ignored` does not
ignore files if they contain broken xrefcheck annotations.

Solution: Add support for glob patterns to `ignored` and
`notScanned`. Filter ignored files before parsing their contents.
2022-09-08 22:49:27 +10:00

51 lines
1.7 KiB
YAML

# SPDX-FileCopyrightText: 2019-2021 Serokell <https://serokell.io>
#
# SPDX-License-Identifier: MPL-2.0
steps:
- command: nix-build ci.nix -A trailing-whitespace-check
label: Check trailing whitespaces
- command: nix-build ci.nix -A xrefcheck-lib-and-tests
label: Library and tests
- command: nix run -f ci.nix pkgs.bats pkgs.diffutils xrefcheck-static -c bash -c "cd tests/golden/ && bats ./**"
label: Golden tests (bats)
- command: nix-build ci.nix -A xrefcheck-static
label: Executable
artifact_paths:
- "result/bin/xrefcheck"
- command: nix-build ci.nix -A xrefcheck-windows
label: Windows executable
artifact_paths:
- "result/bin/*"
- command: nix run -f ci.nix xrefcheck-static -c xrefcheck --ignored 'tests/**/*'
label: Xrefcheck itself
- label: lint
command: nix run -f ci.nix pkgs.haskellPackages.hlint -c hlint .
- command: nix run -f ci.nix pkgs.reuse -c reuse lint
label: REUSE lint
- command:
- nix run -f ci.nix pkgs.curl pkgs.gitAndTools.hub -c bash -c "curl https://raw.githubusercontent.com/serokell/scratch/release-binary/scripts/release-binary.sh | bash"
label: Create a pre-release
branches: master
- command:
- nix-build docker
- nix run -f ci.nix pkgs.skopeo -c ./scripts/upload-docker-image.sh "docker-archive:$(readlink result)" "docker://docker.io/serokell/xrefcheck:latest"
label: Push to dockerhub
branches: master
- command:
- nix-build docker
- nix run -f ci.nix pkgs.skopeo -c ./scripts/upload-docker-image.sh "docker-archive:$(readlink result)" "docker://docker.io/serokell/xrefcheck:${BUILDKITE_BRANCH}"
label: Push release to dockerhub
if: |
build.branch =~ /^v[0-9]+.*/