Skip to content

Add-ci

Add-ci #15

Workflow file for this run

name: Build Project
on:
push:
branches:
- master
pull_request:
branches:
- master
workflow_dispatch: ## turn available trigger manually the workflow
jobs:
versioning:
runs-on: ubuntu-latest
name: Versioning
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
fetch-depth: 0
- uses: codacy/git-version@2.8.0
id: version
with:
release-branch: master
prefix: v
## prefix to version
- name: Tag do repositorio
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
echo "::notice:: ${{ steps.version.outputs.version }}"
git config --global user.email "${{ github.actor }}@users.noreply.github.com"
git config --global user.name "${{ github.actor }}"
git tag -a ${{ steps.version.outputs.version }} -m "Release ${{ steps.version.outputs.version }}"
git push --tags
if: github.ref == 'refs/heads/master'
build-and-tests:
needs: versioning # dependency between jobs
runs-on: ubuntu-latest
name: Build Project
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup .NET Core
uses: actions/setup-dotnet@v4
with:
dotnet-version: '9.0.x' # Adjust the version as needed
cache: true
cache-dependency-path: ./src/**/packages.lock.json # Needs to enable cache directly in the main project first, adding that flag as true RestorePackagesWithLockFile
- uses: github/super-linter@v6
env:
DEFAULT_BRANCH: "main"
VALIDATE_ALL_CODEBASE: "false"
VALIDATE_YAML: "true"
VALIDATE_CSHARP: "true"
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Restore dependencies
run: dotnet restore
- name: Build the project
run: dotnet build --configuration Release --no-restore
# Do the tests and generate the file
- name: Test
run: |
dotnet test --no-build --no-restore ./AspirePoc.sln --configuration Release --logger trx --results-directory "TestResults"
- uses: actions/upload-artifact@v4 # generate artifacts that turn available to download
with:
name: dotnet-test-results
path: TestResults