Skip to content

Commit 20f7120

Browse files
authored
Merge pull request #131 from ix-ax/dev
preview v 0.13.4
2 parents 6b9157a + 6ab3beb commit 20f7120

2,469 files changed

Lines changed: 194134 additions & 35360 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.config/dotnet-tools.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
]
1010
},
1111
"docfx": {
12-
"version": "2.60.0",
12+
"version": "2.63.0",
1313
"commands": [
1414
"docfx"
1515
]

.github/workflows/static.yml

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# Simple workflow for deploying static content to GitHub Pages
2+
name: Deploy static content to Pages
3+
4+
on:
5+
# Runs on pushes targeting the default branch
6+
push:
7+
branches: ["dev"]
8+
9+
# Allows you to run this workflow manually from the Actions tab
10+
workflow_dispatch:
11+
12+
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
13+
permissions:
14+
contents: read
15+
pages: write
16+
id-token: write
17+
18+
# Allow one concurrent deployment
19+
concurrency:
20+
group: "pages"
21+
cancel-in-progress: true
22+
23+
jobs:
24+
# Single deploy job since we're just deploying
25+
deploy:
26+
environment:
27+
name: github-pages
28+
url: ${{ steps.deployment.outputs.page_url }}
29+
runs-on: ubuntu-latest
30+
steps:
31+
- name: Checkout
32+
uses: actions/checkout@v3
33+
- name: Setup Pages
34+
uses: actions/configure-pages@v3
35+
- name: Upload artifact
36+
uses: actions/upload-pages-artifact@v1
37+
with:
38+
# Upload entire repository
39+
path: './docs/'
40+
- name: Deploy to GitHub Pages
41+
id: deployment
42+
uses: actions/deploy-pages@v1

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -400,6 +400,7 @@ FodyWeavers.xsd
400400
.idea/
401401

402402
ix/.g/**
403+
.g/
403404

404405
.apax/
405406
/src/apax/stc-generic-x64

GitVersion.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
mode: ContinuousDeployment
2-
next-version: 0.13.3
2+
next-version: 0.13.4
33
branches:
44
main:
55
regex: ^master$|^main$

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ Entry.Plc.weather.GeoLocation.Write();
118118

119119
## Getting started
120120

121-
To get started, visit the documentation [here](docs/README.md#getting-started).
121+
To get started, visit the documentation [here](docfx/index.md#getting-started).
122122

123123

124124
## Examples

cake/Build.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
<IsPackable>false</IsPackable>
77
</PropertyGroup>
88
<ItemGroup>
9+
<PackageReference Include="Cake.DocFx" Version="1.0.0" />
910
<PackageReference Include="CliWrap" Version="3.5.0" />
1011
<PackageReference Include="CommandLineParser" Version="2.9.1" />
1112
<PackageReference Include="Octokit" Version="4.0.1" />

cake/BuildContext.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,9 @@ public class BuildContext : FrostingContext
2424

2525
public string WorkDirName => Environment.WorkingDirectory.GetDirectoryName();
2626

27-
public string ApiDocumentationDir => Path.GetFullPath(Path.Combine(Environment.WorkingDirectory.FullPath, "..//docs//api//"));
27+
public string DocumentationOutputDir => Path.GetFullPath(Path.Combine(Environment.WorkingDirectory.FullPath, "..//docs//"));
28+
29+
public string DocumentationSource => Path.GetFullPath(Path.Combine(Environment.WorkingDirectory.FullPath, "..//docfx//"));
2830

2931
public string RootDir => Path.GetFullPath(Path.Combine(Environment.WorkingDirectory.FullPath, "..//src//"));
3032

cake/Program.cs

Lines changed: 45 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
12
// Build
23
// Copyright (c) 2023 Peter Kurhajec (PTKu), MTS, and Contributors. All Rights Reserved.
34
// Contributors: https://github.com/ix-ax/ix/graphs/contributors
@@ -24,6 +25,8 @@
2425
using Cake.Core.Diagnostics;
2526
using Cake.Core.IO;
2627
using Cake.Core.Tooling;
28+
using Cake.DocFx;
29+
using Cake.DocFx.Build;
2730
using Cake.Frosting;
2831
using Cake.Powershell;
2932
using CliWrap;
@@ -111,15 +114,21 @@ public override void Run(BuildContext context)
111114
{
112115
context.DotNetBuild(Path.Combine(context.RootDir, "ix.compiler\\src\\ixc\\Ix.ixc.csproj"), context.DotNetBuildSettings);
113116

114-
context.DotNetRunSettings.WorkingDirectory = Path.Combine(context.RootDir, "ix.blazor\\tests\\sandbox\\ax-blazor-example\\");
115-
116-
context.DotNetRun(Path.Combine(context.RootDir, "ix.compiler\\src\\ixc\\Ix.ixc.csproj"), context.DotNetRunSettings);
117+
var axprojects = new List<string>()
118+
{
119+
Path.Combine(context.RootDir, "ix.blazor\\tests\\sandbox\\ax-blazor-example\\"),
120+
Path.Combine(context.RootDir, "sanbox\\integration\\ix-integration-plc\\"),
121+
Path.Combine(context.RootDir, "ix.examples\\hello.world.console\\hello.world.console.plc"),
122+
Path.Combine(context.RootDir, "ix.connectors\\tests\\ax-test-project\\"),
123+
Path.Combine(context.RootDir, "tests.integrations\\integrated\\src\\ax\\")
124+
};
117125

118-
context.DotNetRunSettings.WorkingDirectory = Path.Combine(context.RootDir, "sanbox\\integration\\ix-integration-plc\\");
119-
context.DotNetRun(Path.Combine(context.RootDir, "ix.compiler\\src\\ixc\\Ix.ixc.csproj"), context.DotNetRunSettings);
120126

121-
context.DotNetRunSettings.WorkingDirectory = Path.Combine(context.RootDir, "ix.examples\\hello.world.console\\hello.world.console.plc");
122-
context.DotNetRun(Path.Combine(context.RootDir, "ix.compiler\\src\\ixc\\Ix.ixc.csproj"), context.DotNetRunSettings);
127+
foreach (var axproject in axprojects)
128+
{
129+
context.DotNetRunSettings.WorkingDirectory = Path.Combine(context.RootDir, axproject);
130+
context.DotNetRun(Path.Combine(context.RootDir, "ix.compiler\\src\\ixc\\Ix.ixc.csproj"), context.DotNetRunSettings);
131+
}
123132

124133
context.DotNetBuild(Path.Combine(context.RootDir, "ix.sln"), context.DotNetBuildSettings);
125134

@@ -155,13 +164,15 @@ public override void Run(BuildContext context)
155164
}
156165
else
157166
{
158-
var workingDirectory = Path.GetFullPath(Path.Combine(context.WorkDirName,
159-
"..//..//src//ix.connectors//tests//ax-test-project//"));
160-
161-
var targetIp = Environment.GetEnvironmentVariable("AXTARGET");
162-
var targetPlatform = Environment.GetEnvironmentVariable("AXTARGETPLATFORMINPUT");
167+
UploadTestPlc(context,
168+
Path.GetFullPath(Path.Combine(context.WorkDirName, "..//..//src//ix.connectors//tests//ax-test-project//")),
169+
Environment.GetEnvironmentVariable("AX_WEBAPI_TARGET"),
170+
Environment.GetEnvironmentVariable("AXTARGETPLATFORMINPUT"));
163171

164-
UploadTestPlc(context, workingDirectory, targetIp, targetPlatform);
172+
UploadTestPlc(context,
173+
Path.GetFullPath(Path.Combine(context.WorkDirName, "..//..//src//tests.integrations//integrated//src//ax")),
174+
Environment.GetEnvironmentVariable("AXTARGET"),
175+
Environment.GetEnvironmentVariable("AXTARGETPLATFORMINPUT"));
165176

166177
RunTestsFromFilteredSolution(context, Path.Combine(context.RootDir, "ix-L3-tests.slnf"));
167178
}
@@ -315,27 +326,33 @@ public override void Run(BuildContext context)
315326
return;
316327
}
317328

318-
if (Helpers.CanReleaseInternal())
319-
GenerateApiDocumentation(context, @$"ix.connectors\src\Ix.Connector\bin\{context.DotNetBuildSettings.Configuration}\net6.0\Ix.Connector.dll", @"Ix.Connector");
320-
GenerateApiDocumentation(context, @$"ix.connectors\src\Ix.Connector.S71500.WebAPI\bin\{context.DotNetBuildSettings.Configuration}\net6.0\Ix.Connector.S71500.WebAPI.dll", @"Ix.Connector.S71500.WebAPI");
329+
context.ProcessRunner.Start(@"dotnet", new Cake.Core.IO.ProcessSettings()
330+
{
331+
WorkingDirectory = context.DocumentationSource,
332+
Arguments = $"docfx build"
333+
}).WaitForExit();
334+
335+
//GenerateApiDocumentation(context, @$"ix.connectors\src\Ix.Connector\bin\{context.DotNetBuildSettings.Configuration}\net6.0\Ix.Connector.dll", @"Ix.Connector");
336+
//GenerateApiDocumentation(context, @$"ix.connectors\src\Ix.Connector.S71500.WebAPI\bin\{context.DotNetBuildSettings.Configuration}\net6.0\Ix.Connector.S71500.WebAPI.dll", @"Ix.Connector.S71500.WebAPI");
321337

322-
GenerateApiDocumentation(context, @$"ix.compiler\src\IX.Compiler\bin\{context.DotNetBuildSettings.Configuration}\net6.0\IX.Compiler.dll", @"IX.Compiler");
323-
GenerateApiDocumentation(context, @$"ix.compiler\src\IX.Cs.Compiler\bin\{context.DotNetBuildSettings.Configuration}\net6.0\IX.Compiler.Cs.dll", @"IX.Compiler.Cs");
338+
//GenerateApiDocumentation(context, @$"ix.compiler\src\IX.Compiler\bin\{context.DotNetBuildSettings.Configuration}\net6.0\IX.Compiler.dll", @"IX.Compiler");
339+
//GenerateApiDocumentation(context, @$"ix.compiler\src\IX.Cs.Compiler\bin\{context.DotNetBuildSettings.Configuration}\net6.0\IX.Compiler.Cs.dll", @"IX.Compiler.Cs");
324340

325-
GenerateApiDocumentation(context, @$"ix.abstractions\src\Ix.Abstractions\bin\{context.DotNetBuildSettings.Configuration}\net6.0\Ix.Abstractions.dll", @"Ix.Abstractions");
326-
GenerateApiDocumentation(context, @$"ix.blazor\src\Ix.Presentation.Blazor\bin\{context.DotNetBuildSettings.Configuration}\net6.0\Ix.Presentation.Blazor.dll", @"Ix.Presentation.Blazor");
327-
GenerateApiDocumentation(context, @$"ix.blazor\src\Ix.Presentation.Blazor.Controls\bin\{context.DotNetBuildSettings.Configuration}\net6.0\Ix.Presentation.Blazor.Controls.dll", @"Ix.Presentation.Blazor.Controls");
341+
//GenerateApiDocumentation(context, @$"ix.abstractions\src\Ix.Abstractions\bin\{context.DotNetBuildSettings.Configuration}\net6.0\Ix.Abstractions.dll", @"Ix.Abstractions");
342+
//GenerateApiDocumentation(context, @$"ix.blazor\src\Ix.Presentation.Blazor\bin\{context.DotNetBuildSettings.Configuration}\net6.0\Ix.Presentation.Blazor.dll", @"Ix.Presentation.Blazor");
343+
//GenerateApiDocumentation(context, @$"ix.blazor\src\Ix.Presentation.Blazor.Controls\bin\{context.DotNetBuildSettings.Configuration}\net6.0\Ix.Presentation.Blazor.Controls.dll", @"Ix.Presentation.Blazor.Controls");
328344
}
329345

346+
[Obsolete("Using docfx now...", true)]
330347
private static void GenerateApiDocumentation(BuildContext context, string assemblyFile, string outputDocDirectory)
331348
{
332-
context.Log.Information($"Generating documentation for {assemblyFile}");
333-
var docXmlFile = Path.Combine(context.RootDir, assemblyFile);
334-
var docDirectory = Path.Combine(context.ApiDocumentationDir, outputDocDirectory);
335-
context.ProcessRunner.Start(@"dotnet", new Cake.Core.IO.ProcessSettings()
336-
{
337-
Arguments = $"xmldocmd {docXmlFile} {docDirectory}"
338-
}).WaitForExit();
349+
//context.Log.Information($"Generating documentation for {assemblyFile}");
350+
//var docXmlFile = Path.Combine(context.RootDir, assemblyFile);
351+
//var docDirectory = Path.Combine(context.ApiDocumentationDir, outputDocDirectory);
352+
//context.ProcessRunner.Start(@"dotnet", new Cake.Core.IO.ProcessSettings()
353+
//{
354+
// Arguments = $"xmldocmd {docXmlFile} {docDirectory}"
355+
//}).WaitForExit();
339356
}
340357
}
341358

docfx/.gitignore

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
###############
2+
# folder #
3+
###############
4+
/**/DROP/
5+
/**/TEMP/
6+
/**/packages/
7+
/**/bin/
8+
/**/obj/
9+
_site

docfx/api/.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
###############
2+
# temp file #
3+
###############
4+
*.yml
5+
.manifest

0 commit comments

Comments
 (0)