Skip to content

Don't delete redundant postdata files #944

Don't delete redundant postdata files

Don't delete redundant postdata files #944

Workflow file for this run

name: CI
on:
pull_request:
push:
branches:
- develop
tags:
- 'v*'
jobs:
quicktests:
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- name: checkout
uses: actions/checkout@v4
- name: set up go
uses: actions/setup-go@v4
with:
check-latest: true
go-version-file: "go.mod"
- name: Install OpenCL dev
run: sudo apt-get update -q && sudo apt-get install -qy ocl-icd-opencl-dev
- name: fmt, tidy, generate
run: |
make install
make test-fmt
make test-tidy
make test-generate
- name: staticcheck
run: make staticcheck
lint:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- name: checkout
uses: actions/checkout@v4
- name: set up go
uses: actions/setup-go@v4
with:
check-latest: true
go-version-file: "go.mod"
- name: setup env
run: make install
- name: lint
run: make lint-github-action
unittests:
runs-on: ${{ matrix.os }}
timeout-minutes: 15
needs:
- quicktests
- lint
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- [self-hosted, linux, arm64]
- macos-latest
- [self-hosted, macos, arm64]
- windows-latest
steps:
- name: Add OpenCL support - Ubuntu
if: ${{ matrix.os == 'ubuntu-latest' }}
run: sudo apt-get update -q && sudo apt-get install -qy ocl-icd-opencl-dev libpocl2
- name: Override SDKROOT for macOS
if: ${{ contains(matrix.os, 'macos') && runner.arch == 'arm64' }}
run: echo "SDKROOT=/Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk" >> $GITHUB_ENV
- name: disable Windows Defender - Windows
if: ${{ matrix.os == 'windows-latest' }}
run: |
Set-MpPreference -DisableRealtimeMonitoring $true
- name: Add OpenCL support - Windows
if: ${{ matrix.os == 'windows-latest' }}
run: choco install opencl-intel-cpu-runtime
- name: checkout
uses: actions/checkout@v4
- name: set up go
uses: actions/setup-go@v4
with:
check-latest: true
go-version-file: "go.mod"
- name: setup env
run: make install
- name: Clear test cache
run: make clear-test-cache
- name: unit tests
env:
GOTESTSUM_FORMAT: standard-verbose
GOTESTSUM_JUNITFILE: unit-tests.xml
run: make test
- name: Publish Test Report
uses: mikepenz/action-junit-report@v4
# always run even if the previous step fails
if: always()
with:
report_paths: "**/unit-tests.xml"
annotate_only: true
build:
name: Build postcli
runs-on: ${{ matrix.os }}
timeout-minutes: 15
needs:
- unittests
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- [self-hosted, linux, arm64]
- macos-latest
- [self-hosted, macos, arm64]
- windows-latest
steps:
- name: Add OpenCL support - Ubuntu
if: ${{ matrix.os == 'ubuntu-latest' }}
run: sudo apt-get update -q && sudo apt-get install -qy ocl-icd-opencl-dev libpocl2
- name: Override SDKROOT for macOS
if: ${{ contains(matrix.os, 'macos') && runner.arch == 'arm64' }}
run: echo "SDKROOT=/Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk" >> $GITHUB_ENV
- name: disable Windows Defender - Windows
if: ${{ matrix.os == 'windows-latest' }}
run: |
Set-MpPreference -DisableRealtimeMonitoring $true
- name: checkout
uses: actions/checkout@v4
- name: set up go
uses: actions/setup-go@v4
with:
check-latest: true
go-version-file: "go.mod"
- name: setup env
run: make install
- name: build postcli
run: make build
- name: Prepare release archive
shell: bash
run: |
rm -f ./build/post.h
cp ./cmd/postcli/README.md ./build/
- name: Set name of release archive
shell: bash
run: |
if [[ ${{ runner.arch }} == "ARM64" ]]; then
echo "OUTNAME=${{ runner.os }}_${{ runner.arch }}" >> $GITHUB_ENV
else
echo "OUTNAME=${{ runner.os }}" >> $GITHUB_ENV
fi
- name: Archive postcli artifacts
uses: actions/upload-artifact@v3
with:
name: postcli-${{ env.OUTNAME }}.zip
path: ./build/*
if-no-files-found: error
release:
name: Publish release
if: github.event_name == 'push' && github.ref_type == 'tag'
needs: build
runs-on: ubuntu-latest
steps:
- name: Download artifacts
uses: actions/download-artifact@v3
with:
path: ${{ github.workspace }}/assets
- name: Create archives
run: |
mkdir ./artifacts;
for dir in ./assets/*/; do
7z a -tzip "${{ github.workspace }}/artifacts/$(basename $dir)" "$dir/*";
done
- name: Release
uses: softprops/action-gh-release@v1
with:
files: ${{ github.workspace }}/artifacts/*.zip
prerelease: false
draft: true
fail_on_unmatched_files: true
coverage:
runs-on: ubuntu-latest
timeout-minutes: 30
needs:
- quicktests
- lint
steps:
- name: Add OpenCL support - Ubuntu
run: sudo apt-get update -q && sudo apt-get install -qy ocl-icd-opencl-dev libpocl2
- uses: actions/checkout@v4
- name: set up go
uses: actions/setup-go@v4
with:
check-latest: true
go-version-file: "go.mod"
- name: setup env
run: make install
- name: test coverage
run: make cover
- name: Upload to codecov.io
uses: codecov/codecov-action@v3
with:
fail_ci_if_error: true
token: ${{ secrets.CODECOV_TOKEN }}