From 58aff6724f6dad407319f494bfdf8f9695a460ff Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Fri, 13 May 2022 19:14:59 +0200 Subject: [PATCH 1/7] update client --- Icoel.Soap/Compac/CompacClient.cs | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/Icoel.Soap/Compac/CompacClient.cs b/Icoel.Soap/Compac/CompacClient.cs index 86644d70..97e4f85f 100644 --- a/Icoel.Soap/Compac/CompacClient.cs +++ b/Icoel.Soap/Compac/CompacClient.cs @@ -10,13 +10,13 @@ namespace Icoel.Soap.Compac #region Public Constructors /// - /// Oggetto client comunicazione con sizer + /// Oggetto client comunicazione con sizer ICOEL per invio/recupero informazioni di produzione (batch) /// - /// - /// - public CompacClient(string Sizerip, string port) + /// Indirizzo IP del server SIZER + /// Porta di connessione del sizer (def: 8001) + public CompacClient(string sizerIp, string port) { - var url = "http://" + Sizerip + ":" + port + "/SizerService/"; + var url = "http://" + sizerIp + ":" + port + "/SizerService/"; var epa = new EndpointAddress(new Uri(url)); Client = new SizerServiceClient("WSHttpBinding_ISizerService", epa); } @@ -59,7 +59,7 @@ namespace Icoel.Soap.Compac /// /// Elenco dei layout attivi della varietà /// - /// + /// Guid della varietà /// internal Layout GetActiveLayout(Guid VarietyId) { @@ -97,7 +97,7 @@ namespace Icoel.Soap.Compac /// /// Elenco dei layout della varietà /// - /// + /// Guid della varietà /// internal Layout[] GetLayouts(Guid VarietyId) { @@ -107,7 +107,7 @@ namespace Icoel.Soap.Compac /// /// Effettua chiamata per mettere in coda il lotto richiesto /// - /// + /// Oggetto Batch completamente popolato da accodare in richiesta internal void MettiLottoInCoda(Batch batch) { Client.AddBatch(batch); @@ -116,8 +116,8 @@ namespace Icoel.Soap.Compac /// /// Verifica del grower da codice/nome /// - /// - /// + /// Codice del produttore + /// Denominazione del produttore internal void VerificaEsistenzaGrower(string growerCode, string growerName) { var grower = Client.GetGrower(growerCode); From c51d483c322a1f536da40e2d7aee63f0c4abeaed Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Fri, 13 May 2022 19:15:11 +0200 Subject: [PATCH 2/7] Aggiunta preliminare DocFx in VStudio (da validare e testare uso) --- .gitignore | 4 +++ Icoel.Soap/Icoel.Soap.csproj | 16 +++++++++ Icoel.Soap/docfx.json | 68 ++++++++++++++++++++++++++++++++++++ Icoel.Soap/index.md | 20 +++++++++++ Icoel.Soap/log.txt | 0 Icoel.Soap/packages.config | 4 +++ Icoel.Soap/toc.yml | 6 ++++ 7 files changed, 118 insertions(+) create mode 100644 Icoel.Soap/docfx.json create mode 100644 Icoel.Soap/index.md create mode 100644 Icoel.Soap/log.txt create mode 100644 Icoel.Soap/packages.config create mode 100644 Icoel.Soap/toc.yml diff --git a/.gitignore b/.gitignore index afc2b628..5312e298 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,10 @@ ## Ignore Visual Studio temporary files, build results, and ## files generated by popular Visual Studio add-ons. +#ignoro (per ora) DoxFx site autogenerato da MSBuild in VStudio +Icoel.Soap/_site/* +Icoel.Soap/*/*.md + # User-specific files *.suo *.user diff --git a/Icoel.Soap/Icoel.Soap.csproj b/Icoel.Soap/Icoel.Soap.csproj index 0cc632c5..32c69571 100644 --- a/Icoel.Soap/Icoel.Soap.csproj +++ b/Icoel.Soap/Icoel.Soap.csproj @@ -13,6 +13,8 @@ true true + + AnyCPU @@ -62,7 +64,10 @@ + + + PreserveNewest @@ -134,6 +139,10 @@ Designer + + + + @@ -154,4 +163,11 @@ + + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + + \ No newline at end of file diff --git a/Icoel.Soap/docfx.json b/Icoel.Soap/docfx.json new file mode 100644 index 00000000..bacb80c9 --- /dev/null +++ b/Icoel.Soap/docfx.json @@ -0,0 +1,68 @@ +{ + "metadata": [ + { + "src": [ + { + "files": [ + "*.csproj" + ], + "cwd": ".", + "exclude": [ + "**/obj/**", + "**/bin/**", + "_site/**" + ] + } + ], + "dest": "obj/api" + } + ], + "build": { + "content": [ + { + "files": [ + "api/**.yml" + ], + "cwd": "obj" + }, + { + "files": [ + "api/*.md", + "articles/**.md", + "toc.yml", + "*.md" + ], + "exclude": [ + "obj/**", + "_site/**" + ] + } + ], + "resource": [ + { + "files": [ + "images/**" + ], + "exclude": [ + "obj/**", + "_site/**" + ] + } + ], + "overwrite": [ + { + "files": [ + "apidoc/**.md" + ], + "exclude": [ + "obj/**", + "_site/**" + ] + } + ], + "dest": "_site", + "template": [ + "default" + ] + } +} \ No newline at end of file diff --git a/Icoel.Soap/index.md b/Icoel.Soap/index.md new file mode 100644 index 00000000..4c3c687f --- /dev/null +++ b/Icoel.Soap/index.md @@ -0,0 +1,20 @@ + +# Icoel.Soap Library + +Documentazione relativa alla libreria di interfaccia con il Sizer di ICOEL per le operazioni di R/W dei dati di batch di produzione + +## Logica di funzionamento impianto ICOEL: + +L'impianto Icoel prevede di comunicare in 3 modalita'': +1. OPC-UA per dati RealTime di processo/automazione +2. SOAP API per informazioni scambiate riguardo al setup dei batch da produrre (messa in coda) ed in produzione +3. DB per dati produttivita "nrear-realtime" e tracciatura + +La presente libreria si occupa della modalità SOAP. + +## Modalita'' impiego libreria + +La libreria va chiamata inizializzando un oggetto Connector, e poi invocando i suoi metodi messia disposizione che si occupano di + - aprire canale di comunicazione + - effettuare chaimate + - chiudere canale \ No newline at end of file diff --git a/Icoel.Soap/log.txt b/Icoel.Soap/log.txt new file mode 100644 index 00000000..e69de29b diff --git a/Icoel.Soap/packages.config b/Icoel.Soap/packages.config new file mode 100644 index 00000000..6b239d6f --- /dev/null +++ b/Icoel.Soap/packages.config @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/Icoel.Soap/toc.yml b/Icoel.Soap/toc.yml new file mode 100644 index 00000000..7eee9ffb --- /dev/null +++ b/Icoel.Soap/toc.yml @@ -0,0 +1,6 @@ + +- name: Articles + href: articles/ +- name: API Documentation + href: obj/api/ + homepage: api/index.md From 35e7d57ac99ea29bc6dea0049303d9dba1fc3bee Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Sat, 14 May 2022 12:49:35 +0200 Subject: [PATCH 3/7] update gitignore: lascio pagine dettaglio --- .gitignore | 1 - 1 file changed, 1 deletion(-) diff --git a/.gitignore b/.gitignore index 5312e298..cd69b45d 100644 --- a/.gitignore +++ b/.gitignore @@ -4,7 +4,6 @@ #ignoro (per ora) DoxFx site autogenerato da MSBuild in VStudio Icoel.Soap/_site/* -Icoel.Soap/*/*.md # User-specific files *.suo From b9e4ed0c70bef9bee11bcaedb37cd456eeb36400 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Sat, 14 May 2022 12:49:40 +0200 Subject: [PATCH 4/7] refresh docs --- .../Compac/{CompacClient.cs => ComClient.cs} | 43 +++++++++++-------- Icoel.Soap/Connector.cs | 23 +++++++--- Icoel.Soap/Icoel.Soap.csproj | 2 +- Icoel.Soap/api/index.md | 3 ++ Icoel.Soap/articles/intro.md | 22 ++++++++++ Icoel.Soap/articles/toc.md | 1 + Icoel.Soap/index.md | 17 +++----- 7 files changed, 73 insertions(+), 38 deletions(-) rename Icoel.Soap/Compac/{CompacClient.cs => ComClient.cs} (81%) create mode 100644 Icoel.Soap/api/index.md create mode 100644 Icoel.Soap/articles/intro.md create mode 100644 Icoel.Soap/articles/toc.md diff --git a/Icoel.Soap/Compac/CompacClient.cs b/Icoel.Soap/Compac/ComClient.cs similarity index 81% rename from Icoel.Soap/Compac/CompacClient.cs rename to Icoel.Soap/Compac/ComClient.cs index 97e4f85f..20b4ad29 100644 --- a/Icoel.Soap/Compac/CompacClient.cs +++ b/Icoel.Soap/Compac/ComClient.cs @@ -5,20 +5,21 @@ using System.ServiceModel; namespace Icoel.Soap.Compac { - public class CompacClient + public class ComClient { #region Public Constructors /// - /// Oggetto client comunicazione con sizer ICOEL per invio/recupero informazioni di produzione (batch) + /// Oggetto client comunicazione con sizer ICOEL per invio/recupero informazioni di + /// produzione (batch) /// /// Indirizzo IP del server SIZER /// Porta di connessione del sizer (def: 8001) - public CompacClient(string sizerIp, string port) + public ComClient(string sizerIp, string port) { var url = "http://" + sizerIp + ":" + port + "/SizerService/"; var epa = new EndpointAddress(new Uri(url)); - Client = new SizerServiceClient("WSHttpBinding_ISizerService", epa); + SSClient = new SizerServiceClient("WSHttpBinding_ISizerService", epa); } #endregion Public Constructors @@ -33,9 +34,9 @@ namespace Icoel.Soap.Compac get { bool answ = false; - if (Client != null) + if (SSClient != null) { - answ = Client.State == CommunicationState.Opened; + answ = SSClient.State == CommunicationState.Opened; } return answ; } @@ -43,19 +44,23 @@ namespace Icoel.Soap.Compac #endregion Public Properties - #region Internal Methods + #region Public Methods /// /// Effettua chiusura del proxy di comunicazione /// - internal void Close() + public void Close() { - if (Client.State != CommunicationState.Closed) + if (SSClient.State != CommunicationState.Closed) { - Client.Close(); + SSClient.Close(); } } + #endregion Public Methods + + #region Internal Methods + /// /// Elenco dei layout attivi della varietà /// @@ -63,7 +68,7 @@ namespace Icoel.Soap.Compac /// internal Layout GetActiveLayout(Guid VarietyId) { - return Client.GetActiveLayout(VarietyId); + return SSClient.GetActiveLayout(VarietyId); } /// @@ -72,7 +77,7 @@ namespace Icoel.Soap.Compac /// internal Variety[] GetActiveVarieties() { - return Client.GetActiveVarieties(); + return SSClient.GetActiveVarieties(); } /// @@ -81,7 +86,7 @@ namespace Icoel.Soap.Compac /// internal Batch GetCurrentBatch() { - return Client.GetCurrentBatch(); + return SSClient.GetCurrentBatch(); } /// @@ -91,7 +96,7 @@ namespace Icoel.Soap.Compac /// internal Batch GetCurrentBatchByLane(int lineNum) { - return Client.GetCurrentBatchByLane(lineNum); + return SSClient.GetCurrentBatchByLane(lineNum); } /// @@ -101,7 +106,7 @@ namespace Icoel.Soap.Compac /// internal Layout[] GetLayouts(Guid VarietyId) { - return Client.GetLayouts(VarietyId); + return SSClient.GetLayouts(VarietyId); } /// @@ -110,7 +115,7 @@ namespace Icoel.Soap.Compac /// Oggetto Batch completamente popolato da accodare in richiesta internal void MettiLottoInCoda(Batch batch) { - Client.AddBatch(batch); + SSClient.AddBatch(batch); } /// @@ -120,13 +125,13 @@ namespace Icoel.Soap.Compac /// Denominazione del produttore internal void VerificaEsistenzaGrower(string growerCode, string growerName) { - var grower = Client.GetGrower(growerCode); + var grower = SSClient.GetGrower(growerCode); if (grower == null) { var nuovo = new Grower() { Code = growerCode, Name = growerName }; - Client.AddGrower(nuovo); + SSClient.AddGrower(nuovo); } } @@ -137,7 +142,7 @@ namespace Icoel.Soap.Compac /// /// Client che inoltra le richieste al Sizer /// - private SizerServiceClient Client { get; set; } + private SizerServiceClient SSClient { get; set; } #endregion Private Properties } diff --git a/Icoel.Soap/Connector.cs b/Icoel.Soap/Connector.cs index 408ffed8..23279c61 100644 --- a/Icoel.Soap/Connector.cs +++ b/Icoel.Soap/Connector.cs @@ -14,7 +14,7 @@ namespace Icoel.Soap { if (Client == null || !Client.connected) { - Client = new CompacClient(Settaggi.IndirizzoIpSizer, Settaggi.SizerTcpPort); + Client = new ComClient(Settaggi.IndirizzoIpSizer, Settaggi.SizerTcpPort); } foreach (var item in varietiesList) { @@ -72,7 +72,7 @@ namespace Icoel.Soap public static void MettiLottoInCoda() { - Client = new CompacClient(Settaggi.IndirizzoIpSizer, Settaggi.SizerTcpPort); + Client = new ComClient(Settaggi.IndirizzoIpSizer, Settaggi.SizerTcpPort); Client.VerificaEsistenzaGrower(Details.GrowerCode, Details.GrowerName); @@ -111,7 +111,7 @@ namespace Icoel.Soap } if (Client == null || !Client.connected) { - Client = new CompacClient(Settaggi.IndirizzoIpSizer, Settaggi.SizerTcpPort); + Client = new ComClient(Settaggi.IndirizzoIpSizer, Settaggi.SizerTcpPort); } // recupero layout della varietà var layoutList = Client.GetLayouts(varGuid); // recupero layout x varietà @@ -145,7 +145,7 @@ namespace Icoel.Soap public static void MettiLottoInCodaDefault() { - Client = new CompacClient(Settaggi.IndirizzoIpSizer, Settaggi.SizerTcpPort); + Client = new ComClient(Settaggi.IndirizzoIpSizer, Settaggi.SizerTcpPort); Client.VerificaEsistenzaGrower(Details.GrowerCode, Details.GrowerName); @@ -159,7 +159,7 @@ namespace Icoel.Soap //Client = new CompacClient(Settaggi.IndirizzoIpSizer, Settaggi.SizerTcpPort); if (Client == null || !Client.connected) { - Client = new CompacClient(Settaggi.IndirizzoIpSizer, Settaggi.SizerTcpPort); + Client = new ComClient(Settaggi.IndirizzoIpSizer, Settaggi.SizerTcpPort); } Variety[] varietiesList; varietiesList = Client.GetActiveVarieties(); @@ -211,7 +211,7 @@ namespace Icoel.Soap public static void VerificaLottoCorrente() { - Client = new CompacClient(Settaggi.IndirizzoIpSizer, Settaggi.SizerTcpPort); + Client = new ComClient(Settaggi.IndirizzoIpSizer, Settaggi.SizerTcpPort); //Client.GetCurrentBatch(); var batch = Client.GetCurrentBatchByLane(1); @@ -227,8 +227,17 @@ namespace Icoel.Soap #region Internal Properties - internal static CompacClient Client { get; set; } + /// + /// Oggetto di connessione client + /// + internal static ComClient Client { get; set; } + /// + /// Dettaglio dei batch + /// internal static BatchDetails Details { get; set; } + /// + /// Parametri di setup + /// internal static Settaggi Settaggi { get; set; } #endregion Internal Properties diff --git a/Icoel.Soap/Icoel.Soap.csproj b/Icoel.Soap/Icoel.Soap.csproj index 32c69571..1dce2096 100644 --- a/Icoel.Soap/Icoel.Soap.csproj +++ b/Icoel.Soap/Icoel.Soap.csproj @@ -51,7 +51,7 @@ - + True True diff --git a/Icoel.Soap/api/index.md b/Icoel.Soap/api/index.md new file mode 100644 index 00000000..3fcdcb87 --- /dev/null +++ b/Icoel.Soap/api/index.md @@ -0,0 +1,3 @@ + +# PLACEHOLDER +TODO: Add .NET projects to *src* folder and run `docfx` to generate a **REAL** *API Documentation*! diff --git a/Icoel.Soap/articles/intro.md b/Icoel.Soap/articles/intro.md new file mode 100644 index 00000000..8d3f4fca --- /dev/null +++ b/Icoel.Soap/articles/intro.md @@ -0,0 +1,22 @@ + +# Logica di funzionamento impianto ICOEL: + +L'impianto Icoel prevede di comunicare in 3 modalità: +1. OPC-UA per dati RealTime di processo/automazione +2. SOAP API per informazioni scambiate riguardo al setup dei batch da produrre (messa in coda) ed in produzione +3. DB per dati produttivita "nrear-realtime" e tracciatura + +La presente libreria si occupa della modalità SOAP. + + +## Modalità impiego libreria + +La libreria va chiamata inizializzando un oggetto Connector, e poi invocando i suoi metodi messi a disposizione che si occupano di + - aprire canale di comunicazione + - effettuare chiamate + - chiudere canale + + +## Demo funzionamento + +Per un esempio di funzionamento si rimanda all'applicativo console Icoel.Test diff --git a/Icoel.Soap/articles/toc.md b/Icoel.Soap/articles/toc.md new file mode 100644 index 00000000..89dec33f --- /dev/null +++ b/Icoel.Soap/articles/toc.md @@ -0,0 +1 @@ +#[Introduction](intro.md) diff --git a/Icoel.Soap/index.md b/Icoel.Soap/index.md index 4c3c687f..89c92921 100644 --- a/Icoel.Soap/index.md +++ b/Icoel.Soap/index.md @@ -3,18 +3,13 @@ Documentazione relativa alla libreria di interfaccia con il Sizer di ICOEL per le operazioni di R/W dei dati di batch di produzione -## Logica di funzionamento impianto ICOEL: +Vedere la sezione Articles per maggiori informazioni sulle definizioni, l'impiego ed esempi. -L'impianto Icoel prevede di comunicare in 3 modalita'': -1. OPC-UA per dati RealTime di processo/automazione -2. SOAP API per informazioni scambiate riguardo al setup dei batch da produrre (messa in coda) ed in produzione -3. DB per dati produttivita "nrear-realtime" e tracciatura +## Articles -La presente libreria si occupa della modalità SOAP. +Per maggiori dettagli, definizioni e demo funzionamento si rimanda alla sezione Articles +@intro -## Modalita'' impiego libreria +## Api -La libreria va chiamata inizializzando un oggetto Connector, e poi invocando i suoi metodi messia disposizione che si occupano di - - aprire canale di comunicazione - - effettuare chaimate - - chiudere canale \ No newline at end of file +Per ogni dettaglio e riferimento alla libreria si rimanda alla sezione @api @Icoel.Soap \ No newline at end of file From 93e6b5ff87cd089765dc1487ebe9a616998ee6c4 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Tue, 17 May 2022 14:58:43 +0200 Subject: [PATCH 5/7] Fix gestione docFx: tolto nuget e riaggiunti doc x lancio script da CI/CD --- Icoel.Soap/Icoel.Soap.csproj | 7 ------- Icoel.Soap/api/index.md | 5 +++-- Icoel.Soap/index.md | 4 ++-- Icoel.Soap/log.txt | 0 Icoel.Soap/packages.config | 4 ---- 5 files changed, 5 insertions(+), 15 deletions(-) delete mode 100644 Icoel.Soap/log.txt delete mode 100644 Icoel.Soap/packages.config diff --git a/Icoel.Soap/Icoel.Soap.csproj b/Icoel.Soap/Icoel.Soap.csproj index 1dce2096..2ceeff4d 100644 --- a/Icoel.Soap/Icoel.Soap.csproj +++ b/Icoel.Soap/Icoel.Soap.csproj @@ -163,11 +163,4 @@ - - - - This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - - \ No newline at end of file diff --git a/Icoel.Soap/api/index.md b/Icoel.Soap/api/index.md index 3fcdcb87..5d4cc63d 100644 --- a/Icoel.Soap/api/index.md +++ b/Icoel.Soap/api/index.md @@ -1,3 +1,4 @@ -# PLACEHOLDER -TODO: Add .NET projects to *src* folder and run `docfx` to generate a **REAL** *API Documentation*! +# Icoel.Soap + +Impiegare il menù laterale per navigare nel codice del progetto. \ No newline at end of file diff --git a/Icoel.Soap/index.md b/Icoel.Soap/index.md index 89c92921..806364fb 100644 --- a/Icoel.Soap/index.md +++ b/Icoel.Soap/index.md @@ -1,7 +1,7 @@ # Icoel.Soap Library -Documentazione relativa alla libreria di interfaccia con il Sizer di ICOEL per le operazioni di R/W dei dati di batch di produzione +Documentazione relativa alla libreria di interfaccia con il Sizer di ICOEL per le operazioni di R/W dei dati di batch di produzione. Vedere la sezione Articles per maggiori informazioni sulle definizioni, l'impiego ed esempi. @@ -12,4 +12,4 @@ Per maggiori dettagli, definizioni e demo funzionamento si rimanda alla sezione ## Api -Per ogni dettaglio e riferimento alla libreria si rimanda alla sezione @api @Icoel.Soap \ No newline at end of file +Per ogni dettaglio e riferimento alla libreria si rimanda alla sezione Api Documentation \ No newline at end of file diff --git a/Icoel.Soap/log.txt b/Icoel.Soap/log.txt deleted file mode 100644 index e69de29b..00000000 diff --git a/Icoel.Soap/packages.config b/Icoel.Soap/packages.config deleted file mode 100644 index 6b239d6f..00000000 --- a/Icoel.Soap/packages.config +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file From 290cd2a30641619cbb1b7d02231ce26613a99d6a Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Tue, 17 May 2022 14:59:02 +0200 Subject: [PATCH 6/7] pulizia gitignore --- .gitignore | 3 --- 1 file changed, 3 deletions(-) diff --git a/.gitignore b/.gitignore index cd69b45d..afc2b628 100644 --- a/.gitignore +++ b/.gitignore @@ -2,9 +2,6 @@ ## Ignore Visual Studio temporary files, build results, and ## files generated by popular Visual Studio add-ons. -#ignoro (per ora) DoxFx site autogenerato da MSBuild in VStudio -Icoel.Soap/_site/* - # User-specific files *.suo *.user From 2e4505039488d16d1e778b3f1bc9716c2837e716 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Tue, 17 May 2022 16:02:12 +0200 Subject: [PATCH 7/7] bozza generazione pagine doc (da testare) --- .gitlab-ci.yml | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ff2cb6ce..27e71ab9 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -20,7 +20,7 @@ variables: C:\Tools\nuget.exe sources Update -Name "`"Steamware Nexus`"" -Source https://nexus.steamware.net/repository/nuget-group -username "`"nugetUser`"" -password "`"$NEXUS_PASSWD`"" } echo $hasSource - + # helper x fix version number .version-fix: &version-fix - | @@ -100,15 +100,15 @@ variables: $FileName = Split-Path $File -leaf mCurl -v -u GitLab:$NEXUS_PASSWD --upload-file $File https://nexus.steamware.net/repository/utility/MAPO/$env:APP_NAME/$version/$FileName } - # mCurl -v -u GitLab:$NEXUS_PASSWD --upload-file "Resources\manifest.xml" https://nexus.steamware.net/repository/SWS/$env:NEXUS_PATH/$version/LAST/manifest.xml # mCurl -v -u GitLab:$NEXUS_PASSWD --upload-file "Resources\ChangeLog.html" https://nexus.steamware.net/repository/SWS/$env:NEXUS_PATH/$version/LAST/ChangeLog.html - # mCurl -v -u $env:NEXUS_USER:$env:NEXUS_PASSWD --upload-file bin/release/$env:APP_NAME.zip $env:NEXUS_SERVER/utility/$env:NEXUS_PATH/$version/$env:APP_NAME-$version.zip + stages: - build - deploy + - pages IOB-MAN:build: stage: build @@ -206,3 +206,14 @@ IOB-WIN-NEXT:deploy: - *nexusUpload needs: ["IOB-WIN-NEXT:build"] +pages: + script: + - docfx Icoel.Soap/docfx.json + - mv Icoel.Soap/_site public + artifacts: + paths: + - public + only: + - master + - develop + needs: ["IOB-WIN-NEXT:build"] \ No newline at end of file