Skip to content

Commit

Permalink
Initial commit.
Browse files Browse the repository at this point in the history
  • Loading branch information
isaacabraham committed Mar 26, 2016
0 parents commit cd956aa
Show file tree
Hide file tree
Showing 77 changed files with 11,481 additions and 0 deletions.
2 changes: 2 additions & 0 deletions .deployment
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[config]
command = build.cmd
32 changes: 32 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@

#ignore thumbnails created by windows
Thumbs.db
#Ignore files build by Visual Studio
*.obj
*.exe
*.pdb
*.user
*.aps
*.pch
*.vspscc
*_i.c
*_p.c
*.ncb
*.suo
*.tlb
*.tlh
*.bak
*.cache
*.ilk
*.log
[Bb]in
[Dd]ebug*/
*.lib
*.sbr
obj/
[Rr]elease*/
_ReSharper*/
[Tt]est[Rr]esult*
src/packages/*
packages/
output/
41 changes: 41 additions & 0 deletions .paket/paket.targets
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<!-- Enable the restore command to run before builds -->
<RestorePackages Condition=" '$(RestorePackages)' == '' ">true</RestorePackages>
<!-- Download Paket.exe if it does not already exist -->
<DownloadPaket Condition=" '$(DownloadPaket)' == '' ">true</DownloadPaket>
<PaketToolsPath>$(MSBuildThisFileDirectory)</PaketToolsPath>
<PaketRootPath>$(MSBuildThisFileDirectory)..\</PaketRootPath>
<MonoPath Condition="'$(MonoPath)' == '' And Exists('/Library/Frameworks/Mono.framework/Commands/mono')">/Library/Frameworks/Mono.framework/Commands/mono</MonoPath>
<MonoPath Condition="'$(MonoPath)' == ''">mono</MonoPath>
</PropertyGroup>
<PropertyGroup>
<!-- Paket command -->
<PaketExePath Condition=" '$(PaketExePath)' == '' ">$(PaketToolsPath)paket.exe</PaketExePath>
<PaketBootStrapperExePath Condition=" '$(PaketBootStrapperExePath)' == '' ">$(PaketToolsPath)paket.bootstrapper.exe</PaketBootStrapperExePath>
<PaketCommand Condition=" '$(OS)' == 'Windows_NT'">"$(PaketExePath)"</PaketCommand>
<PaketCommand Condition=" '$(OS)' != 'Windows_NT' ">$(MonoPath) --runtime=v4.0.30319 "$(PaketExePath)"</PaketCommand>
<PaketBootStrapperCommand Condition=" '$(OS)' == 'Windows_NT'">"$(PaketBootStrapperExePath)" $(PaketBootStrapperCommandArgs)</PaketBootStrapperCommand>
<PaketBootStrapperCommand Condition=" '$(OS)' != 'Windows_NT' ">$(MonoPath) --runtime=v4.0.30319 $(PaketBootStrapperExePath) $(PaketBootStrapperCommandArgs)</PaketBootStrapperCommand>
<!-- Commands -->
<PaketReferences Condition="!Exists('$(MSBuildProjectFullPath).paket.references')">$(MSBuildProjectDirectory)\paket.references</PaketReferences>
<PaketReferences Condition="!Exists('$(PaketReferences)')">$(MSBuildStartupDirectory)\paket.references</PaketReferences>
<PaketReferences Condition="Exists('$(MSBuildProjectFullPath).paket.references')">$(MSBuildProjectFullPath).paket.references</PaketReferences>
<RestoreCommand>$(PaketCommand) restore --references-files "$(PaketReferences)"</RestoreCommand>
<DownloadPaketCommand>$(PaketBootStrapperCommand)</DownloadPaketCommand>
<!-- We need to ensure packages are restored prior to assembly resolve -->
<BuildDependsOn Condition="$(RestorePackages) == 'true'">RestorePackages; $(BuildDependsOn);</BuildDependsOn>
</PropertyGroup>
<Target Name="CheckPrerequisites">
<!-- Raise an error if we're unable to locate paket.exe -->
<Error Condition="'$(DownloadPaket)' != 'true' AND !Exists('$(PaketExePath)')" Text="Unable to locate '$(PaketExePath)'" />
<MsBuild Targets="DownloadPaket" Projects="$(MSBuildThisFileFullPath)" Properties="Configuration=NOT_IMPORTANT;DownloadPaket=$(DownloadPaket)" />
</Target>
<Target Name="DownloadPaket">
<Exec Command="$(DownloadPaketCommand)" IgnoreStandardErrorWarningFormat="true" Condition=" '$(DownloadPaket)' == 'true' AND !Exists('$(PaketExePath)')" />
</Target>
<Target Name="RestorePackages" DependsOnTargets="CheckPrerequisites">
<Exec Command="$(RestoreCommand)" IgnoreStandardErrorWarningFormat="true" WorkingDirectory="$(PaketRootPath)" Condition="Exists('$(PaketReferences)')" ContinueOnError="true" />
</Target>
</Project>
1,046 changes: 1,046 additions & 0 deletions .vs/config/applicationhost.config

Large diffs are not rendered by default.

23 changes: 23 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
// Place your settings in this file to overwrite default and user settings.
{
"files.exclude": {
"**/.git": true,
"**/*.js": { "when": "$(basename).ts"},
"**/*.js.map" : true,
"**/bin/**": true,
"**/obj/**": true,
"**/**paket**": true,
"**/.vs": true,
"**/packages": true,
"**/*.sln": true,
"**/.DS_Store": true,
"**/assets": true,
"**/css": true,
"**/fonts": true,
"**/img": true,
"**/less": true,
"**/style-switcher": true,
// "**/*.fs*": true,
"**/Web.config": true
}
}
27 changes: 27 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
// Available variables which can be used inside of strings.
// ${workspaceRoot}: the root folder of the team
// ${file}: the current opened file
// ${fileBasename}: the current opened file's basename
// ${fileDirname}: the current opened file's dirname
// ${fileExtname}: the current opened file's extension
// ${cwd}: the current working directory of the spawned process

{
"version": "0.1.0",

// The command is tsc. Assumes that tsc has been installed using npm install -g typescript
"command": "tsc",

// The command is a shell script
"isShellCommand": true,

// Show the output window only if unrecognized errors occur.
"showOutput": "silent",

// Tell the tsc compiler to use the tsconfig.json from the open folder.
"args": ["-p", "${workspaceRoot}/src/webhost"],

// use the standard tsc problem matcher to find compile problems
// in the output.
"problemMatcher": "$tsc"
}
56 changes: 56 additions & 0 deletions Demonstrator.sln
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 14
VisualStudioVersion = 14.0.24720.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".paket", ".paket", "{0C5F06F9-EF4E-4D50-AC69-36FEB7B3A946}"
ProjectSection(SolutionItems) = preProject
paket.dependencies = paket.dependencies
paket.lock = paket.lock
EndProjectSection
EndProject
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "FootballLibrary", "src\FootballLibrary\FootballLibrary.fsproj", "{1A4610CE-D30D-46E1-9D5E-0172965399BC}"
EndProject
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "SuaveHost", "src\SuaveHost\SuaveHost.fsproj", "{8F061178-EE0A-4287-B593-2B7DF78A47DF}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{8A890CE3-3499-4FAE-8C52-80EA4A32C6FC}"
ProjectSection(SolutionItems) = preProject
build.cmd = build.cmd
src\Sample.fsx = src\Sample.fsx
EndProjectSection
EndProject
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "OwinHost", "src\WebHost\OwinHost.fsproj", "{66FDDA31-6606-410C-837C-DBAF351B3AB3}"
EndProject
Project("{151D2E53-A2C4-4D7D-83FE-D05416EBD58E}") = "ResourceGroup", "src\ResourceGroup\ResourceGroup.deployproj", "{4EBA46A3-7F9E-4F4C-9D50-98E9DA683EBB}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Deployment", "Deployment", "{918DD70D-0D7E-458A-9C4E-E52247514FD4}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{1A4610CE-D30D-46E1-9D5E-0172965399BC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1A4610CE-D30D-46E1-9D5E-0172965399BC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1A4610CE-D30D-46E1-9D5E-0172965399BC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1A4610CE-D30D-46E1-9D5E-0172965399BC}.Release|Any CPU.Build.0 = Release|Any CPU
{8F061178-EE0A-4287-B593-2B7DF78A47DF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8F061178-EE0A-4287-B593-2B7DF78A47DF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8F061178-EE0A-4287-B593-2B7DF78A47DF}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8F061178-EE0A-4287-B593-2B7DF78A47DF}.Release|Any CPU.Build.0 = Release|Any CPU
{66FDDA31-6606-410C-837C-DBAF351B3AB3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{66FDDA31-6606-410C-837C-DBAF351B3AB3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{66FDDA31-6606-410C-837C-DBAF351B3AB3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4EBA46A3-7F9E-4F4C-9D50-98E9DA683EBB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4EBA46A3-7F9E-4F4C-9D50-98E9DA683EBB}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4EBA46A3-7F9E-4F4C-9D50-98E9DA683EBB}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4EBA46A3-7F9E-4F4C-9D50-98E9DA683EBB}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{4EBA46A3-7F9E-4F4C-9D50-98E9DA683EBB} = {918DD70D-0D7E-458A-9C4E-E52247514FD4}
EndGlobalSection
EndGlobal
98 changes: 98 additions & 0 deletions build.cmd
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
@if "%SCM_TRACE_LEVEL%" NEQ "4" @echo off

:: ----------------------
:: KUDU Deployment Script
:: Version: 1.0.4
:: ----------------------

:: Setup
:: -----

setlocal enabledelayedexpansion

SET ARTIFACTS=%~dp0%..\artifacts
SET DEPLOYMENT_SOURCE=%~dp0%.
SET DEPLOYMENT_TARGET=wwwroot
SET NEXT_MANIFEST_PATH=%ARTIFACTS%\manifest
SET PREVIOUS_MANIFEST_PATH=%ARTIFACTS%\manifest

IF NOT DEFINED KUDU_SYNC_CMD (
:: Install kudu sync
echo Installing Kudu Sync
call npm install kudusync -g --silent
IF !ERRORLEVEL! NEQ 0 goto error

:: Locally just running "kuduSync" would also work
SET KUDU_SYNC_CMD=%appdata%\npm\kuduSync.cmd
)

IF NOT DEFINED DEPLOYMENT_TEMP (
SET DEPLOYMENT_TEMP=%temp%\___deployTemp%random%
SET CLEAN_LOCAL_DEPLOYMENT_TEMP=true
)

IF DEFINED CLEAN_LOCAL_DEPLOYMENT_TEMP (
IF EXIST "%DEPLOYMENT_TEMP%" rd /s /q "%DEPLOYMENT_TEMP%"
mkdir "%DEPLOYMENT_TEMP%"
)

IF DEFINED MSBUILD_PATH goto MsbuildPathDefined
SET MSBUILD_PATH=%ProgramFiles(x86)%\MSBuild\14.0\Bin\MSBuild.exe
:MsbuildPathDefined

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: Deployment
:: ----------

:: Restore NuGet packages
.paket\paket.bootstrapper.exe
.paket\paket.exe restore

:: Copy static site content over
xcopy src\webhost "%DEPLOYMENT_TEMP%\" /Y /E /Q /EXCLUDE:excludes.txt

:: Deploy an F# script as a continuously running Web Job
xcopy src\Sample.fsx "%DEPLOYMENT_TEMP%\app_data\jobs\continuous\Sample\" /Y

:: Build to the temporary path
cd "%DEPLOYMENT_SOURCE%"
call :ExecuteCmd "%MSBUILD_PATH%" /m /t:Build /p:Configuration=Release;OutputPath="%DEPLOYMENT_TEMP%";UseSharedCompilation=false %SCM_BUILD_ARGS% /v:m
IF !ERRORLEVEL! NEQ 0 goto error
cd ..

:: KuduSync
call :ExecuteCmd "%KUDU_SYNC_CMD%" -v 50 -f "%DEPLOYMENT_TEMP%" -t "%DEPLOYMENT_TARGET%" -n "%NEXT_MANIFEST_PATH%" -p "%PREVIOUS_MANIFEST_PATH%" -i ".git;.hg;.deployment;deploy.cmd"
IF !ERRORLEVEL! NEQ 0 goto error

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::


:: Post deployment stub
IF DEFINED POST_DEPLOYMENT_ACTION call "%POST_DEPLOYMENT_ACTION%"
IF !ERRORLEVEL! NEQ 0 goto error

goto end

:: Execute command routine that will echo out when error
:ExecuteCmd
setlocal
set _CMD_=%*
call %_CMD_%
if "%ERRORLEVEL%" NEQ "0" echo Failed exitCode=%ERRORLEVEL%, command=%_CMD_%
exit /b %ERRORLEVEL%

:error
endlocal
echo An error has occurred during web site deployment.
call :exitSetErrorLevel
call :exitFromFunction 2>nul

:exitSetErrorLevel
exit /b 1

:exitFromFunction
()

:end
endlocal
echo Finished successfully.
5 changes: 5 additions & 0 deletions excludes.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
.fs
.config
.references
typings/
tsconfig.json
16 changes: 16 additions & 0 deletions paket.dependencies
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
source https://www.nuget.org/api/v2/
redirects on
framework net452

nuget Microsoft.AspNet.WebApi.Owin
nuget Microsoft.Owin.Host.SystemWeb
nuget Microsoft.Owin.StaticFiles
nuget OwinHost
nuget FSharp.Core
nuget FSharp.Data
nuget XPlot.GoogleCharts content:none
nuget Suave
nuget Microsoft.ApplicationInsights content:none
nuget Microsoft.ApplicationInsights.TraceListener content:none
nuget Microsoft.ApplicationInsights.WindowsServer content:none
nuget Deedle
51 changes: 51 additions & 0 deletions paket.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
REDIRECTS: ON
FRAMEWORK: NET452
NUGET
remote: https://www.nuget.org/api/v2
specs:
Deedle (1.2.4)
FSharp.Core (4.0.0.1)
FSharp.Data (2.2.5)
Google.DataTable.Net.Wrapper (3.1.2) - content: none
Microsoft.ApplicationInsights (2.0.0) - content: none
Microsoft.ApplicationInsights.Agent.Intercept (1.2.1) - content: none
Microsoft.ApplicationInsights.DependencyCollector (2.0.0) - content: none
Microsoft.ApplicationInsights (2.0.0)
Microsoft.ApplicationInsights.Agent.Intercept (>= 1.2.1)
Microsoft.ApplicationInsights.PerfCounterCollector (2.0.0) - content: none
Microsoft.ApplicationInsights (2.0.0)
Microsoft.ApplicationInsights.TraceListener (1.2.6) - content: none
Microsoft.ApplicationInsights (>= 1.2.3)
Microsoft.ApplicationInsights.WindowsServer (2.0.0) - content: none
Microsoft.ApplicationInsights (2.0.0)
Microsoft.ApplicationInsights.DependencyCollector (>= 2.0.0)
Microsoft.ApplicationInsights.PerfCounterCollector (>= 2.0.0)
Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel (2.0.0)
Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel (2.0.0) - content: none
Microsoft.ApplicationInsights (2.0.0)
Microsoft.AspNet.WebApi.Client (5.2.3)
Newtonsoft.Json (>= 6.0.4)
Microsoft.AspNet.WebApi.Core (5.2.3)
Microsoft.AspNet.WebApi.Client (>= 5.2.3)
Microsoft.AspNet.WebApi.Owin (5.2.3)
Microsoft.AspNet.WebApi.Core (>= 5.2.3 < 5.3.0)
Microsoft.Owin (>= 2.0.2)
Owin (>= 1.0)
Microsoft.Owin (3.0.1)
Owin (>= 1.0)
Microsoft.Owin.FileSystems (3.0.1)
Microsoft.Owin.Host.SystemWeb (3.0.1)
Microsoft.Owin (>= 3.0.1)
Owin (>= 1.0)
Microsoft.Owin.StaticFiles (3.0.1)
Microsoft.Owin (>= 3.0.1)
Microsoft.Owin.FileSystems (>= 3.0.1)
Owin (>= 1.0)
Newtonsoft.Json (8.0.3) - content: none
Owin (1.0)
OwinHost (3.0.1)
Suave (1.1.1)
FSharp.Core (>= 3.1.2.5)
XPlot.GoogleCharts (1.3.1) - content: none
Google.DataTable.Net.Wrapper
Newtonsoft.Json
Loading

0 comments on commit cd956aa

Please sign in to comment.