Adds github action (#151)
This commit is contained in:
parent
efbbd4c324
commit
012c5fa9b7
3 changed files with 80 additions and 60 deletions
|
|
@ -1,58 +0,0 @@
|
||||||
version: 2.1
|
|
||||||
|
|
||||||
orbs:
|
|
||||||
win: circleci/windows@2.4.0
|
|
||||||
|
|
||||||
executors:
|
|
||||||
linux-build:
|
|
||||||
description: "Executor using Debian and .NET Core 3.1"
|
|
||||||
docker:
|
|
||||||
- image: mcr.microsoft.com/dotnet/core/sdk:3.1-buster
|
|
||||||
working_directory: /mnt/ramdisk
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build_linux:
|
|
||||||
description: Build ModernUO with Debian
|
|
||||||
executor: linux-build
|
|
||||||
steps:
|
|
||||||
- run: rm -rf ~/project/.git # CircleCI git caching is likely broken
|
|
||||||
- checkout
|
|
||||||
- run:
|
|
||||||
name: Building ModernUO for Linux
|
|
||||||
command: Tools/publish.cmd linux
|
|
||||||
build_windows:
|
|
||||||
description: Build application
|
|
||||||
executor: win/default
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- run:
|
|
||||||
name: Building ModernUO for Windows
|
|
||||||
command: Tools/publish.cmd win
|
|
||||||
code_styling:
|
|
||||||
description: Code analysis
|
|
||||||
executor: linux-build
|
|
||||||
steps:
|
|
||||||
- run: rm -rf ~/project/.git # CircleCI git caching is likely broken
|
|
||||||
- checkout
|
|
||||||
- run:
|
|
||||||
name: Building with Analyzers
|
|
||||||
command: Tools/publish.cmd linux Analyze
|
|
||||||
tests:
|
|
||||||
description: Unit Tests
|
|
||||||
executor: linux-build
|
|
||||||
steps:
|
|
||||||
- run: rm -rf ~/project/.git # CircleCI git caching is likely broken
|
|
||||||
- checkout
|
|
||||||
- run:
|
|
||||||
name: Build native libraries
|
|
||||||
command: /mnt/ramdisk/Tools/build-native-libraries.sh
|
|
||||||
- run:
|
|
||||||
name: Running unit tests
|
|
||||||
command: dotnet test -r linux-x64
|
|
||||||
workflows:
|
|
||||||
build-and-test:
|
|
||||||
jobs:
|
|
||||||
- build_linux
|
|
||||||
- build_windows
|
|
||||||
- code_styling
|
|
||||||
- tests
|
|
||||||
78
.github/workflows/dotnet-core.yml
vendored
Normal file
78
.github/workflows/dotnet-core.yml
vendored
Normal file
|
|
@ -0,0 +1,78 @@
|
||||||
|
name: Build
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ master ]
|
||||||
|
pull_request:
|
||||||
|
branches: [ master ]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
include:
|
||||||
|
- os: windows-latest
|
||||||
|
rid: win-x64
|
||||||
|
- os: ubuntu-latest
|
||||||
|
rid: linux-x64
|
||||||
|
- os: macos-latest
|
||||||
|
rid: osx-x64
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- name: Setup .NET Core
|
||||||
|
uses: actions/setup-dotnet@v1
|
||||||
|
with:
|
||||||
|
dotnet-version: 3.1.300
|
||||||
|
- name: NuGet Cache
|
||||||
|
uses: actions/cache@v2
|
||||||
|
with:
|
||||||
|
path: |
|
||||||
|
~/.nuget/packages
|
||||||
|
!~/.nuget/packages/argon2.bindings
|
||||||
|
!~/.nuget/packages/zlib.bindings
|
||||||
|
key: ${{ matrix.os }}-nuget-${{ hashFiles('Projects/**/*.csproj') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ matrix.os }}-nuget-
|
||||||
|
- name: Argon2 Library Cache
|
||||||
|
id: argon2-cache
|
||||||
|
uses: actions/cache@v2
|
||||||
|
with:
|
||||||
|
path: |
|
||||||
|
~/.nuget/packages/argon2.bindings
|
||||||
|
Projects/ZLib/*
|
||||||
|
packages/Argon2.Bindings*.nupkg
|
||||||
|
key: ${{ matrix.os }}-argon2-${{ hashFiles('Projects/Argon2/*') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ matrix.os }}-argon2-
|
||||||
|
- name: ZLib Library Cache
|
||||||
|
id: zlib-cache
|
||||||
|
uses: actions/cache@v2
|
||||||
|
with:
|
||||||
|
path: |
|
||||||
|
~/.nuget/packages/zlib.bindings
|
||||||
|
Projects/ZLib/*
|
||||||
|
packages/ZLib.Bindings*.nupkg
|
||||||
|
key: ${{ matrix.os }}-argon2-${{ hashFiles('Projects/Argon2/*') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ matrix.os }}-argon2-
|
||||||
|
- name: Build ZLib
|
||||||
|
if: steps.zlib-cache.outputs.cache-hit != 'true'
|
||||||
|
run: |
|
||||||
|
dotnet build -c Release Projects/ZLib/ZLib.csproj
|
||||||
|
dotnet pack -c Release -o packages Projects/ZLib/ZLib.csproj
|
||||||
|
- name: Build Argon2
|
||||||
|
if: steps.argon2-cache.outputs.cache-hit != 'true'
|
||||||
|
run: |
|
||||||
|
dotnet build -c Release Projects/Argon2/Argon2.csproj
|
||||||
|
dotnet pack -c Release -o packages Projects/Argon2/Argon2.csproj
|
||||||
|
- name: Install dependencies
|
||||||
|
run: dotnet restore
|
||||||
|
- name: Build Server
|
||||||
|
run: dotnet build -c Release --no-restore Projects/Server/Server.csproj
|
||||||
|
- name: Build UO Content
|
||||||
|
run: dotnet build -c Release --no-restore Projects/UOContent/UOContent.csproj
|
||||||
|
- name: Test
|
||||||
|
run: dotnet test -r ${{ matrix.rid }} --no-restore --verbosity normal
|
||||||
|
|
@ -12,14 +12,14 @@ ModernUO [](https://github.com/modernuo/ModernUO/blob/master/LICENSE)
|
[](https://github.com/modernuo/ModernUO/blob/master/LICENSE)
|
||||||
[](https://github.com/modernuo/ModernUO/stargazers)
|
[](https://github.com/modernuo/ModernUO/stargazers)
|
||||||
[](https://github.com/modernuo/ModernUO/issues)
|
[](https://github.com/modernuo/ModernUO/issues)
|
||||||
[](https://circleci.com/gh/modernuo/ModernUO)
|
[?logo=github)](https://github.com/modernuo/ModernUO/actions)
|
||||||
|
|
||||||
## Goals
|
## Goals
|
||||||
- See [Goals](./GOALS.md)
|
- See [Goals](./GOALS.md)
|
||||||
|
|
||||||
## Publishing a build
|
## Publishing a build
|
||||||
#### Requirements
|
#### Requirements
|
||||||
- [.NET Core 3.1 SDK](https://dotnet.microsoft.com/download/dotnet-core/3.1)
|
- [.NET Core 3.1.4 SDK](https://dotnet.microsoft.com/download/dotnet-core/3.1)
|
||||||
|
|
||||||
#### Publishing
|
#### Publishing
|
||||||
OSX/Linux
|
OSX/Linux
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue