Skip to content

refactor to use env instead of arg for allowed domains #120

refactor to use env instead of arg for allowed domains

refactor to use env instead of arg for allowed domains #120

Workflow file for this run

on:
pull_request:
paths:
- '**/*.go'
- '**/*.mod'
- '**/*.sum'
- '**/*.yml'
- '**/*.astro'
push:
paths:
- '**/*.go'
- '**/*.mod'
- '**/*.sum'
- '**/*.yml'
- '**/*.astro'
name: "Cover It Up"
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}
jobs:
coveritup:
strategy:
matrix:
go-version: [mod]
os: [ubuntu-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: kevincobain2000/action-gobrew@v2
with:
version: ${{ matrix.go-version }}
- name: Install Tools
run: |
go install github.com/securego/gosec/v2/cmd/gosec@latest
go install github.com/axw/gocov/gocov@latest
go install github.com/AlekSi/gocov-xml@latest
shell: bash
- name: Setup Node
uses: actions/setup-node@v2
with:
node-version: '20'
- name: Prepare frontend
working-directory: frontend
run: |
BUILD_START=$SECONDS
npm install
echo SCORE=$(($SECONDS-BUILD_START)) >> "$GITHUB_ENV"
- uses: kevincobain2000/action-coveritup@v1
with:
type: npm-install-time
- name: Node Modules Size
working-directory: frontend
run: |
echo SCORE=`du -sm node_modules/ | awk '{print $1}'` >> "$GITHUB_ENV"
- uses: kevincobain2000/action-coveritup@v1
with:
type: npm-modules-size
- name: NPM Build time
working-directory: frontend
run: |
BUILD_START=$SECONDS
npm run build
echo SCORE=$(($SECONDS-BUILD_START)) >> "$GITHUB_ENV"
- uses: kevincobain2000/action-coveritup@v1
with:
type: npm-build-time
metric: sec
- name: Go Build time
run: |
BUILD_START=$SECONDS
go build -ldflags '-s -w' -o main main.go
echo SCORE=$(($SECONDS-BUILD_START)) >> "$GITHUB_ENV"
- uses: kevincobain2000/action-coveritup@v1
with:
type: go-build-time
metric: sec
- name: Test
run: |
BUILD_START=$SECONDS
go test -race -v ./... -count=1 -coverprofile=coverage.out
echo SCORE=$(($SECONDS-BUILD_START)) >> "$GITHUB_ENV"
shell: bash
- uses: kevincobain2000/action-coveritup@v1
with:
type: unit-test-run-time
- name: Coverage
run: |
go tool cover -html=coverage.out -o coverage.html
gocov convert coverage.out | gocov-xml > coverage.xml
- name: Coveritup
run: |
curl -sLk https://raw.githubusercontent.com/kevincobain2000/cover-totalizer/master/install.sh | sh
echo SCORE=`./cover-totalizer coverage.xml` >> "$GITHUB_ENV"
shell: bash
- uses: kevincobain2000/action-coveritup@v1
with:
type: coverage
- name: Go Binary Size
run: |
echo SCORE=`du -sk main | awk '{print $1}'` >> "$GITHUB_ENV"
shell: bash
- uses: kevincobain2000/action-coveritup@v1
with:
type: go-binary-size
- name: Number of dependencies
run: |
echo SCORE=`go list -m all|wc -l|awk '{$1=$1};1'` >> "$GITHUB_ENV"
shell: bash
- uses: kevincobain2000/action-coveritup@v1
with:
type: go-mod-dependencies
- name: Number of GO Sec issues
run: |
echo SCORE=`gosec -no-fail --quiet ./...|grep Issues | tail -1 |awk '{print $3}'` >> "$GITHUB_ENV"
shell: bash
- uses: kevincobain2000/action-coveritup@v1
with:
type: go-sec-issues
- uses: kevincobain2000/action-coveritup@v1
with:
pr_comment: true