diff --git a/azure-pipelines.yml b/azure-pipelines.yml
new file mode 100644
index 000000000..f2352a798
--- /dev/null
+++ b/azure-pipelines.yml
@@ -0,0 +1,83 @@
+# ASP.NET Core
+# Build and test ASP.NET Core projects targeting .NET Core.
+# Add steps that run tests, create a NuGet package, deploy, and more:
+# https://docs.microsoft.com/azure/devops/pipelines/languages/dotnet-core
+
+trigger:
+- master
+- feature/v4
+- develop
+
+variables:
+ solution: '**/*.sln'
+ testProj: '**/*.Tests.csproj'
+ csProj: '**/*.csproj'
+ buildConfiguration: 'Release'
+ publishLocation: '$(Build.SourcesDirectory)/src/Ombi/bin/Release/netcoreapp2.2'
+
+pool:
+ vmImage: 'ubuntu-latest'
+
+
+steps:
+- task: CmdLine@2
+ displayName: Run Build Script
+ inputs:
+ script: './build.sh'
+- task: CmdLine@2
+ inputs:
+ script: |
+ cd src/Ombi/bin/Release/netcoreapp2.2
+
+ ls
+ workingDirectory: '$(Build.SourcesDirectory)'
+- task: CopyFiles@2
+ displayName: Upload Windows Build
+ inputs:
+ SourceFolder: '$(publishLocation)/windows.zip'
+ TargetFolder: '$(Build.ArtifactStagingDirectory)'
+ OverWrite: true
+
+- task: CopyFiles@2
+ displayName: Upload OSX Build
+ inputs:
+ SourceFolder: '**/osx.tar.gz'
+ TargetFolder: '$(Build.ArtifactStagingDirectory)'
+ OverWrite: true
+
+- task: CopyFiles@2
+ displayName: Upload Linux Build
+ inputs:
+ SourceFolder: '$(publishLocation)/linux.tar.gz'
+ TargetFolder: '$(Build.ArtifactStagingDirectory)'
+ OverWrite: true
+
+- task: CopyFiles@2
+ displayName: Upload Linux-ARM Build
+ inputs:
+ SourceFolder: '$(publishLocation)/linux-arm.tar.gz'
+ TargetFolder: '$(Build.ArtifactStagingDirectory)'
+ OverWrite: true
+
+- task: CopyFiles@2
+ displayName: Upload Windows 32Bit Build
+ inputs:
+ SourceFolder: '$(publishLocation)/windows-32bit.zip'
+ TargetFolder: '$(Build.ArtifactStagingDirectory)'
+ OverWrite: true
+
+- task: CopyFiles@2
+ displayName: Upload Linux-ARM64 Build
+ inputs:
+ SourceFolder: '$(publishLocation)/linux-arm64.tar.gz'
+ TargetFolder: '$(Build.ArtifactStagingDirectory)'
+ OverWrite: true
+
+- task: PublishTestResults@2
+ displayName: Upload Test Results
+ inputs:
+ testResultsFormat: 'VSTest'
+ testResultsFiles: '**/Test.trx'
+ mergeTestResults: true
+ failTaskOnFailedTests: true
+ testRunTitle: 'Unit Tests'
\ No newline at end of file
diff --git a/build.cake b/build.cake
index 13cf9c5e7..033710a0e 100644
--- a/build.cake
+++ b/build.cake
@@ -1,10 +1,9 @@
-#tool "nuget:?package=GitVersion.CommandLine&version=4.0.0"
-#addin nuget:?package=SharpZipLib&version=1.1.0
-#addin nuget:?package=Cake.Compression&version=0.2.2
-#addin "Cake.Incubator&version=3.1.0"
-#addin nuget:?package=Cake.Yarn&version=0.4.5
-#addin "Cake.Powershell"
+#tool "nuget:?package=GitVersion.CommandLine&version=5.0.1"
+#addin nuget:?package=SharpZipLib&version=1.2.0
+#addin nuget:?package=Cake.Compression&version=0.2.3
+#addin "Cake.Incubator&version=5.1.0"
+#addin nuget:?package=Cake.Yarn&version=0.4.6
//////////////////////////////////////////////////////////////////////
// ARGUMENTS
@@ -270,16 +269,7 @@ Task("Upload-Test-Results")
.IsDependentOn("Run-Unit-Tests")
.ContinueOnError()
.Does(() => {
- var script = @"
- $wc = New-Object 'System.Net.WebClient'
- foreach ($name in Resolve-Path .\src\**\TestResults\Test*.trx)
- {
- Write-Host ""Uploading File: "" + $name
- $wc.UploadFile(""https://ci.appveyor.com/api/testresults/mstest/$($env:APPVEYOR_JOB_ID)"", $name)
- }
- ";
- // Upload the results
- StartPowershellScript(script);
+
});
Task("Run-Server-Build")
diff --git a/build.sh b/build.sh
index 6e8f207c8..6e14489c8 100755
--- a/build.sh
+++ b/build.sh
@@ -54,9 +54,9 @@ fi
# Make sure that packages.config exist.
if [ ! -f "$TOOLS_DIR/packages.config" ]; then
echo "Downloading packages.config..."
- curl -Lsfo "$TOOLS_DIR/packages.config" http://cakebuild.net/download/bootstrapper/packages
+ curl -Lsfo "$TOOLS_DIR/packages.config" https://cakebuild.net/download/bootstrapper/packages
if [ $? -ne 0 ]; then
- echo "An error occured while downloading packages.config."
+ echo "An error occurred while downloading packages.config."
exit 1
fi
fi
@@ -66,7 +66,7 @@ if [ ! -f "$NUGET_EXE" ]; then
echo "Downloading NuGet..."
curl -Lsfo "$NUGET_EXE" https://dist.nuget.org/win-x86-commandline/latest/nuget.exe
if [ $? -ne 0 ]; then
- echo "An error occured while downloading nuget.exe."
+ echo "An error occurred while downloading nuget.exe."
exit 1
fi
fi
@@ -98,4 +98,4 @@ if $SHOW_VERSION; then
exec mono "$CAKE_EXE" -version
else
exec mono "$CAKE_EXE" $SCRIPT -verbosity=$VERBOSITY -configuration=$CONFIGURATION -target=$TARGET $DRYRUN "${SCRIPT_ARGUMENTS[@]}"
-fi
\ No newline at end of file
+fi
diff --git a/ci-build.yaml b/ci-build.yaml
new file mode 100644
index 000000000..7aba1cafb
--- /dev/null
+++ b/ci-build.yaml
@@ -0,0 +1,38 @@
+# ASP.NET Core
+# Build and test ASP.NET Core projects targeting .NET Core.
+# Add steps that run tests, create a NuGet package, deploy, and more:
+# https://docs.microsoft.com/azure/devops/pipelines/languages/dotnet-core
+
+
+trigger:
+ branches:
+ include:
+ - feature/*
+ exclude:
+ - feature/v4
+
+variables:
+ solution: '**/*.sln'
+ testProj: '**/*.Tests.csproj'
+ csProj: '**/*.csproj'
+ buildConfiguration: 'Release'
+
+pool:
+ vmImage: 'ubuntu-latest'
+
+steps:
+- task: UseDotNet@2
+ displayName: Use dotnet sdk
+ inputs:
+ packageType: 'sdk'
+ version: '2.2.401'
+- task: DotNetCoreCLI@2
+ displayName: Run Unit Tests
+ inputs:
+ command: 'test'
+ projects: '$(testProj)'
+- task: Yarn@3
+ displayName: Build UI
+ inputs:
+ projectDirectory: '$(Build.SourcesDirectory)/src/Ombi/ClientApp/'
+ arguments: 'run build'
diff --git a/src/Ombi/ClientApp/src/app/media-details/components/artist/panels/artist-release-panel/artist-release-panel.component.scss b/src/Ombi/ClientApp/src/app/media-details/components/artist/panels/artist-release-panel/artist-release-panel.component.scss
index b96c43b09..c3e08c51f 100644
--- a/src/Ombi/ClientApp/src/app/media-details/components/artist/panels/artist-release-panel/artist-release-panel.component.scss
+++ b/src/Ombi/ClientApp/src/app/media-details/components/artist/panels/artist-release-panel/artist-release-panel.component.scss
@@ -1,10 +1,10 @@
-
-@import 'Styles/buttons.scss';
+ @import '../../../../../../styles/buttons.scss';
// border: solid 3px #fff;
.monitored {
border: solid 3px $orange !important;
}
+
.available {
- border: solid 3px $green !important;
- }
+ border: solid 3px $green !important;
+ }
\ No newline at end of file
diff --git a/src/Ombi/ClientApp/src/app/media-details/components/artist/panels/artist-release-panel/artist-release-panel.component.ts b/src/Ombi/ClientApp/src/app/media-details/components/artist/panels/artist-release-panel/artist-release-panel.component.ts
index ee4483595..6b26810f1 100644
--- a/src/Ombi/ClientApp/src/app/media-details/components/artist/panels/artist-release-panel/artist-release-panel.component.ts
+++ b/src/Ombi/ClientApp/src/app/media-details/components/artist/panels/artist-release-panel/artist-release-panel.component.ts
@@ -1,7 +1,6 @@
-import { Component, Input, ViewEncapsulation, OnInit, OnChanges, SimpleChanges } from "@angular/core";
+import { Component, Input, ViewEncapsulation, OnChanges, SimpleChanges } from "@angular/core";
import { IReleaseGroups } from "../../../../../interfaces/IMusicSearchResultV2";
import { SearchV2Service } from "../../../../../services/searchV2.service";
-import { ActivatedRoute } from "@angular/router";
@Component({
templateUrl: "./artist-release-panel.component.html",
diff --git a/src/Ombi/ClientApp/src/styles/_imports.scss b/src/Ombi/ClientApp/src/styles/_imports.scss
index 9809eccb5..04416038e 100644
--- a/src/Ombi/ClientApp/src/styles/_imports.scss
+++ b/src/Ombi/ClientApp/src/styles/_imports.scss
@@ -1,4 +1,4 @@
-@import "./styles.scss";
+@import "./Styles.scss";
@import "./shared.scss";
@import "./buttons.scss";
@import "./primeng-overrides.scss"
\ No newline at end of file
diff --git a/src/Ombi/Ombi.csproj b/src/Ombi/Ombi.csproj
index 2ed1edfd2..1669f75aa 100644
--- a/src/Ombi/Ombi.csproj
+++ b/src/Ombi/Ombi.csproj
@@ -105,17 +105,4 @@
-
-
-
-
-
-
-
-
- %(DistFiles.Identity)
- PreserveNewest
-
-
-