debian-forge-composer/.github/workflows/tests.yml
Ondřej Budai ab773975ea ci: do not run the unit tests with verbose on
When unit tests succeed, no one cares about them.

When unit tests fail, it's hard to find which one failed. This commit removes
the verbose flag, so it's easy to spot what failed.

Signed-off-by: Ondřej Budai <ondrej@budai.cz>
2021-02-13 18:33:09 +00:00

93 lines
2.6 KiB
YAML

name: Tests
# NOTE(mhayden): Restricting branches prevents jobs from being doubled since
# a push to a pull request triggers two events.
on:
pull_request:
branches:
- "*"
push:
branches:
- main
jobs:
lint:
name: "🛃 Checks"
runs-on: ubuntu-20.04
steps:
- name: Set up Go 1.14
uses: actions/setup-go@v1
with:
go-version: 1.14
id: go
- name: Check out code into the Go module directory
uses: actions/checkout@v2
- name: Check that source has been prepared
run: |
./tools/prepare-source.sh
if [ -n "$(git status --porcelain)" ]; then
echo
echo "Please include these changes in your branch: "
git status -vv
exit "1"
else
exit "0"
fi
- name: Install golangci-lint
run: curl -sfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh| sh -s -- -b $(go env GOPATH)/bin v1.30.0
# This is needed to lint internal/upload/koji package
- name: Install kerberos devel package
run: sudo apt-get install -y libkrb5-dev
- name: Run golangci-lint
run: $(go env GOPATH)/bin/golangci-lint run --timeout 5m0s
- name: Run unit tests
run: go test -race -covermode=atomic -coverprofile=coverage.txt -coverpkg=./... ./...
- name: Send coverage to codecov.io
run: bash <(curl -s https://codecov.io/bash)
- name: Trigger Schutzbot
env:
EVENT_NAME: ${{ github.event_name }}
WEBHOOK_PAYLOAD: ${{ toJSON(github.event) }}
SQS_REGION: us-east-1
SQS_QUEUE_URL: "https://sqs.us-east-1.amazonaws.com/933752197999/schutzbot_webhook_sqs-staging"
run: |
#!/bin/bash
pip3 install boto3 botocore
schutzbot/send_webhook.py
shellcheck:
name: "🐚 Shellcheck"
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2
- name: Run ShellCheck
uses: ludeeus/action-shellcheck@0.5.0
with:
ignore: vendor # We don't want to fix the code in vendored dependencies
env:
SHELLCHECK_OPTS: -e SC1091 -e SC2002 # don't check /etc/os-release sourcing and allow useless cats to live inside our codebase
rpmlint:
name: "📦 RPMlint"
runs-on: ubuntu-20.04
container: registry.fedoraproject.org/fedora:33
steps:
- name: Install dependencies
run: sudo dnf install -y rpmlint rpm-build make git-core
- uses: actions/checkout@v2
- name: Create SRPM
run: make srpm
- name: Run rpmlint
run: rpmlint rpmbuild/SRPMS/*