Skip to content
This repository was archived by the owner on Apr 15, 2026. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 16 additions & 13 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,7 @@ name: MultiAdmin Build

# Controls when the action will run. Triggers the workflow on push or pull request
# events but only for the master branch
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
on: [push, pull_request]

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
Expand All @@ -18,19 +14,26 @@ jobs:
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v2
- uses: actions/checkout@v2.2.0

# Runs a set of commands using the runners shell
- name: Build MultiAdmin using Visual Studio
shell: cmd
run: |
call "C:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/Common7/Tools/VsMSBuildCmd.bat"
msbuild "%GITHUB_WORKSPACE%" /p:Configuration=Release /t:MultiAdmin:Rebuild /p:OutputPath="%GITHUB_WORKSPACE%/Release" /restore
- name: Setup .NET Core
uses: actions/setup-dotnet@v1.5.0
with:
dotnet-version: '3.1'

- name: Install dependencies
run: dotnet restore

- name: Build MultiAdmin
run: dotnet publish -c release

- name: Test MultiAdmin
run: dotnet test

- name: Upload a Build Artifact
uses: actions/upload-artifact@v2.0.1
with:
# Artifact name
name: MultiAdmin
# A file, directory or wildcard pattern that describes what to upload
path: ${{github.workspace}}/Release
path: ${{github.workspace}}\MultiAdmin\bin\Release\net472\publish
155 changes: 36 additions & 119 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,8 +1,3 @@

# Created by https://www.gitignore.io/api/git,rider,linux,macos,csharp,windows,monodevelop
# Edit at https://www.gitignore.io/?templates=git,rider,linux,macos,csharp,windows,monodevelop

### Csharp ###
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
##
Expand Down Expand Up @@ -47,10 +42,9 @@ Generated\ Files/
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*

# NUnit
# NUNIT
*.VisualState.xml
TestResult.xml
nunit-*.xml

# Build Results of an ATL Project
[Dd]ebugPS/
Expand All @@ -73,6 +67,7 @@ StyleCopReport.xml
*_p.c
*_h.h
*.ilk
*.meta
*.obj
*.iobj
*.pch
Expand Down Expand Up @@ -190,8 +185,6 @@ PublishScripts/

# NuGet Packages
*.nupkg
# NuGet Symbol Packages
*.snupkg
# The packages folder can be ignored because of Package Restore
**/[Pp]ackages/*
# except build/, which is used as an MSBuild target.
Expand Down Expand Up @@ -267,9 +260,7 @@ ServiceFabricBackup/
*.bim.layout
*.bim_*.settings
*.rptproj.rsuser
*- [Bb]ackup.rdl
*- [Bb]ackup ([0-9]).rdl
*- [Bb]ackup ([0-9][0-9]).rdl
*- Backup*.rdl

# Microsoft Fakes
FakesAssemblies/
Expand Down Expand Up @@ -352,36 +343,29 @@ healthchecksdb
# Backup folder for Package Reference Convert tool in Visual Studio 2017
MigrationBackup/

### Git ###
# Created by git for backups. To disable backups in Git:
# $ git config --global mergetool.keepBackup false
*.orig

# Created by git when using merge tools for conflicts
*.BACKUP.*
*.BASE.*
*.LOCAL.*
*.REMOTE.*
*_BACKUP_*.txt
*_BASE_*.txt
*_LOCAL_*.txt
*_REMOTE_*.txt

### Linux ###

# temporary files which can be created if a process still has a handle open of a deleted file
.fuse_hidden*
##
## Visual studio for Mac
##

# KDE directory preferences
.directory

# Linux trash folder which might appear on any partition or disk
.Trash-*
# globs
Makefile.in
*.userprefs
*.usertasks
config.make
config.status
aclocal.m4
install-sh
autom4te.cache/
*.tar.gz
tarballs/
test-results/

# .nfs files are created when an open file is removed but is still being accessed
.nfs*
# Mac bundle stuff
*.dmg
*.app

### macOS ###
# content below from: https://github.com/github/gitignore/blob/master/Global/macOS.gitignore
# General
.DS_Store
.AppleDouble
Expand All @@ -390,6 +374,7 @@ MigrationBackup/
# Icon must end with two \r
Icon


# Thumbnails
._*

Expand All @@ -409,88 +394,9 @@ Network Trash Folder
Temporary Items
.apdisk

### MonoDevelop ###
#User Specific
*.usertasks

#Mono Project Files
*.resources
test-results/

### Rider ###
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839

# User-specific stuff
.idea/**/workspace.xml
.idea/**/tasks.xml
.idea/**/usage.statistics.xml
.idea/**/dictionaries
.idea/**/shelf

# Generated files
.idea/**/contentModel.xml

# Sensitive or high-churn files
.idea/**/dataSources/
.idea/**/dataSources.ids
.idea/**/dataSources.local.xml
.idea/**/sqlDataSources.xml
.idea/**/dynamic.xml
.idea/**/uiDesigner.xml
.idea/**/dbnavigator.xml

# Gradle
.idea/**/gradle.xml
.idea/**/libraries

# Gradle and Maven with auto-import
# When using Gradle or Maven with auto-import, you should exclude module files,
# since they will be recreated, and may cause churn. Uncomment if using
# auto-import.
# .idea/modules.xml
# .idea/*.iml
# .idea/modules
# *.iml
# *.ipr

# CMake
cmake-build-*/

# Mongo Explorer plugin
.idea/**/mongoSettings.xml

# File-based project format
*.iws

# IntelliJ
out/

# mpeltonen/sbt-idea plugin
.idea_modules/

# JIRA plugin
atlassian-ide-plugin.xml

# Cursive Clojure plugin
.idea/replstate.xml

# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
fabric.properties

# Editor-based Rest Client
.idea/httpRequests

# Android studio 3.1+ serialized cache file
.idea/caches/build_file_checksums.ser

### Windows ###
# content below from: https://github.com/github/gitignore/blob/master/Global/Windows.gitignore
# Windows thumbnail cache files
Thumbs.db
Thumbs.db:encryptable
ehthumbs.db
ehthumbs_vista.db

Expand All @@ -513,4 +419,15 @@ $RECYCLE.BIN/
# Windows shortcuts
*.lnk

# End of https://www.gitignore.io/api/git,rider,linux,macos,csharp,windows,monodevelop
# JetBrains Rider
.idea/
*.sln.iml

##
## Visual Studio Code
##
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
23 changes: 23 additions & 0 deletions MultiAdmin.Tests/MultiAdmin.Tests.csproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net472</TargetFramework>
<IsPackable>false</IsPackable>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<RootNamespace>MultiAdmin.Tests</RootNamespace>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\MultiAdmin\MultiAdmin.csproj" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.6.1" />
<PackageReference Include="xunit" Version="2.4.1" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.2">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="coverlet.collector" Version="1.3.0">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
</ItemGroup>
</Project>
50 changes: 34 additions & 16 deletions MultiAdmin.sln
Original file line number Diff line number Diff line change
@@ -1,30 +1,48 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.27130.2026
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MultiAdmin", "MultiAdmin\MultiAdmin.csproj", "{8384BF3C-5FC8-4395-A3DE-440C6C531D36}"
VisualStudioVersion = 15.0.26124.0
MinimumVisualStudioVersion = 15.0.26124.0
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MultiAdmin", "MultiAdmin\MultiAdmin.csproj", "{457C38EC-1251-4FEA-80D9-2EA10BD18A35}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MultiAdminTests", "MultiAdminTests\MultiAdminTests.csproj", "{D56F8899-C7BB-4ADE-A62C-DEC4DC8C2EE8}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MultiAdmin.Tests", "MultiAdmin.Tests\MultiAdmin.Tests.csproj", "{314971BB-616B-4FAE-B375-5A4A670D8626}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Debug|x64 = Debug|x64
Debug|x86 = Debug|x86
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{8384BF3C-5FC8-4395-A3DE-440C6C531D36}.Debug|Any CPU.ActiveCfg = Release|Any CPU
{8384BF3C-5FC8-4395-A3DE-440C6C531D36}.Debug|Any CPU.Build.0 = Release|Any CPU
{8384BF3C-5FC8-4395-A3DE-440C6C531D36}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8384BF3C-5FC8-4395-A3DE-440C6C531D36}.Release|Any CPU.Build.0 = Release|Any CPU
{D56F8899-C7BB-4ADE-A62C-DEC4DC8C2EE8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D56F8899-C7BB-4ADE-A62C-DEC4DC8C2EE8}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D56F8899-C7BB-4ADE-A62C-DEC4DC8C2EE8}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D56F8899-C7BB-4ADE-A62C-DEC4DC8C2EE8}.Release|Any CPU.Build.0 = Release|Any CPU
Release|x64 = Release|x64
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {07CC5FC6-4DFB-4CA5-9B8B-17B36431B6C9}
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{457C38EC-1251-4FEA-80D9-2EA10BD18A35}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{457C38EC-1251-4FEA-80D9-2EA10BD18A35}.Debug|Any CPU.Build.0 = Debug|Any CPU
{457C38EC-1251-4FEA-80D9-2EA10BD18A35}.Debug|x64.ActiveCfg = Debug|Any CPU
{457C38EC-1251-4FEA-80D9-2EA10BD18A35}.Debug|x64.Build.0 = Debug|Any CPU
{457C38EC-1251-4FEA-80D9-2EA10BD18A35}.Debug|x86.ActiveCfg = Debug|Any CPU
{457C38EC-1251-4FEA-80D9-2EA10BD18A35}.Debug|x86.Build.0 = Debug|Any CPU
{457C38EC-1251-4FEA-80D9-2EA10BD18A35}.Release|Any CPU.ActiveCfg = Release|Any CPU
{457C38EC-1251-4FEA-80D9-2EA10BD18A35}.Release|Any CPU.Build.0 = Release|Any CPU
{457C38EC-1251-4FEA-80D9-2EA10BD18A35}.Release|x64.ActiveCfg = Release|Any CPU
{457C38EC-1251-4FEA-80D9-2EA10BD18A35}.Release|x64.Build.0 = Release|Any CPU
{457C38EC-1251-4FEA-80D9-2EA10BD18A35}.Release|x86.ActiveCfg = Release|Any CPU
{457C38EC-1251-4FEA-80D9-2EA10BD18A35}.Release|x86.Build.0 = Release|Any CPU
{314971BB-616B-4FAE-B375-5A4A670D8626}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{314971BB-616B-4FAE-B375-5A4A670D8626}.Debug|Any CPU.Build.0 = Debug|Any CPU
{314971BB-616B-4FAE-B375-5A4A670D8626}.Debug|x64.ActiveCfg = Debug|Any CPU
{314971BB-616B-4FAE-B375-5A4A670D8626}.Debug|x64.Build.0 = Debug|Any CPU
{314971BB-616B-4FAE-B375-5A4A670D8626}.Debug|x86.ActiveCfg = Debug|Any CPU
{314971BB-616B-4FAE-B375-5A4A670D8626}.Debug|x86.Build.0 = Debug|Any CPU
{314971BB-616B-4FAE-B375-5A4A670D8626}.Release|Any CPU.ActiveCfg = Release|Any CPU
{314971BB-616B-4FAE-B375-5A4A670D8626}.Release|Any CPU.Build.0 = Release|Any CPU
{314971BB-616B-4FAE-B375-5A4A670D8626}.Release|x64.ActiveCfg = Release|Any CPU
{314971BB-616B-4FAE-B375-5A4A670D8626}.Release|x64.Build.0 = Release|Any CPU
{314971BB-616B-4FAE-B375-5A4A670D8626}.Release|x86.ActiveCfg = Release|Any CPU
{314971BB-616B-4FAE-B375-5A4A670D8626}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
EndGlobal
Loading