add the code
Gitea Actions Demo / Explore-Gitea-Actions (8.0.x) (push) Failing after 1m20s

This commit is contained in:
Pierre Geeraert
2025-11-06 14:31:51 +00:00
parent b2b7b32dfc
commit 6b9ca34110
8 changed files with 22106 additions and 4 deletions
+18
View File
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<appSettings>
<add key="_keycloak" value="keycloak"/>
<add key="_posftgresql" value="postgresql"/>
<add key="_apigateway" value="api-gateway"/>
<add key="_turnaroundservice" value="TurnaroundService.api"/>
<add key="_frontend" value="frontend"/>
<add key="_reportsworker" value="ReportsWorker.Api"/>
<add key="_dashboardsworker" value="DashboardsWorker.Api"/>
<add key="_primaveraconnector" value="PrimaveraWorker.Api"/>
<add key="_sapworker" value="SapWorker.Api"/>
<add key="_nginx" value="nginx"/>
</appSettings>
</configuration>
+181
View File
@@ -0,0 +1,181 @@
namespace PrometheusServiceManager;
partial class Form1
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1));
buttonRestart = new System.Windows.Forms.Button();
buttonStop = new System.Windows.Forms.Button();
buttonStart = new System.Windows.Forms.Button();
KeycloakCheckBox = new System.Windows.Forms.CheckBox();
TextDisplay = new System.Windows.Forms.Label();
PostgresqlCheckbox = new System.Windows.Forms.CheckBox();
VersionLabel = new System.Windows.Forms.Label();
label1 = new System.Windows.Forms.Label();
label2 = new System.Windows.Forms.Label();
SuspendLayout();
//
// buttonRestart
//
buttonRestart.Location = new System.Drawing.Point(220, 184);
buttonRestart.Name = "buttonRestart";
buttonRestart.Size = new System.Drawing.Size(144, 55);
buttonRestart.TabIndex = 0;
buttonRestart.Text = "Restart services";
buttonRestart.UseVisualStyleBackColor = true;
buttonRestart.Click += buttonRestart_Click;
//
// buttonStop
//
buttonStop.Location = new System.Drawing.Point(440, 184);
buttonStop.Name = "buttonStop";
buttonStop.Size = new System.Drawing.Size(118, 55);
buttonStop.TabIndex = 1;
buttonStop.Text = "Stop services";
buttonStop.UseVisualStyleBackColor = true;
buttonStop.Click += buttonStop_Click;
//
// buttonStart
//
buttonStart.Location = new System.Drawing.Point(644, 184);
buttonStart.Name = "buttonStart";
buttonStart.Size = new System.Drawing.Size(144, 55);
buttonStart.TabIndex = 2;
buttonStart.Text = "Start services";
buttonStart.UseVisualStyleBackColor = true;
buttonStart.Click += buttonStart_Click;
//
// KeycloakCheckBox
//
KeycloakCheckBox.BackColor = System.Drawing.Color.Transparent;
KeycloakCheckBox.ForeColor = System.Drawing.SystemColors.ControlLightLight;
KeycloakCheckBox.Location = new System.Drawing.Point(52, 254);
KeycloakCheckBox.Name = "KeycloakCheckBox";
KeycloakCheckBox.Size = new System.Drawing.Size(182, 25);
KeycloakCheckBox.TabIndex = 3;
KeycloakCheckBox.Text = "keycloak restart";
KeycloakCheckBox.UseVisualStyleBackColor = false;
KeycloakCheckBox.CheckedChanged += KeycloakCheckBoxCheckedChanged;
//
// TextDisplay
//
TextDisplay.BackColor = System.Drawing.Color.Transparent;
TextDisplay.Font = new System.Drawing.Font("Segoe UI", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)0));
TextDisplay.ForeColor = System.Drawing.SystemColors.ControlLightLight;
TextDisplay.Location = new System.Drawing.Point(396, 391);
TextDisplay.Name = "TextDisplay";
TextDisplay.Size = new System.Drawing.Size(439, 93);
TextDisplay.TabIndex = 5;
//
// PostgresqlCheckbox
//
PostgresqlCheckbox.BackColor = System.Drawing.Color.Transparent;
PostgresqlCheckbox.ForeColor = System.Drawing.SystemColors.ControlLightLight;
PostgresqlCheckbox.Location = new System.Drawing.Point(52, 314);
PostgresqlCheckbox.Name = "PostgresqlCheckbox";
PostgresqlCheckbox.Size = new System.Drawing.Size(182, 25);
PostgresqlCheckbox.TabIndex = 6;
PostgresqlCheckbox.Text = "PostgreSQL restart";
PostgresqlCheckbox.UseVisualStyleBackColor = false;
PostgresqlCheckbox.CheckedChanged += PostgresqlCheckboxCheckedChanged;
//
// VersionLabel
//
VersionLabel.BackColor = System.Drawing.Color.Transparent;
VersionLabel.Font = new System.Drawing.Font("Segoe UI", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)0));
VersionLabel.ForeColor = System.Drawing.SystemColors.ControlLightLight;
VersionLabel.Location = new System.Drawing.Point(924, 581);
VersionLabel.Name = "VersionLabel";
VersionLabel.Size = new System.Drawing.Size(65, 35);
VersionLabel.TabIndex = 7;
VersionLabel.Text= Program.version;
VersionLabel.Update();
//
// label1
//
label1.BackColor = System.Drawing.Color.Transparent;
label1.Font = new System.Drawing.Font("Segoe UI", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)0));
label1.ForeColor = System.Drawing.SystemColors.ControlLightLight;
label1.Location = new System.Drawing.Point(287, 272);
label1.Name = "label1";
label1.Size = new System.Drawing.Size(439, 93);
label1.TabIndex = 8;
//
// label2
//
label2.BackColor = System.Drawing.Color.Transparent;
label2.Font = new System.Drawing.Font("Segoe UI", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)0));
label2.ForeColor = System.Drawing.SystemColors.ControlLightLight;
label2.Location = new System.Drawing.Point(295, 280);
label2.Name = "label2";
label2.Size = new System.Drawing.Size(439, 93);
label2.TabIndex = 9;
//
// Form1
//
AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);
AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
BackgroundImage = ((System.Drawing.Image)resources.GetObject("$this.BackgroundImage"));
BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
ClientSize = new System.Drawing.Size(1013, 636);
Controls.Add(label2);
Controls.Add(label1);
Controls.Add(VersionLabel);
Controls.Add(PostgresqlCheckbox);
Controls.Add(TextDisplay);
Controls.Add(KeycloakCheckBox);
Controls.Add(buttonStart);
Controls.Add(buttonStop);
Controls.Add(buttonRestart);
FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
Icon = ((System.Drawing.Icon)resources.GetObject("$this.Icon"));
MinimizeBox = false;
Text = "Services manager";
ResumeLayout(false);
}
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label2;
public static System.Windows.Forms.Label VersionLabel;
private System.Windows.Forms.CheckBox PostgresqlCheckbox;
public static System.Windows.Forms.Label TextDisplay;
private System.Windows.Forms.Button buttonRestart;
public static System.Windows.Forms.CheckBox KeycloakCheckBox;
private System.Windows.Forms.Button buttonStart;
private System.Windows.Forms.Button buttonStop;
#endregion
}
+42
View File
@@ -0,0 +1,42 @@
namespace PrometheusServiceManager;
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
throw new System.NotImplementedException();
}
private void button2_Click(object sender, EventArgs e)
{
throw new System.NotImplementedException();
}
private void buttonStart_Click(object sender, EventArgs e)
{
Program.StartServices();
//Console.WriteLine("Button start pressed");
}
private void buttonRestart_Click(object sender, EventArgs e)
{
Program.RestartServices(true);
//Console.WriteLine("Button restart pressed");
}
private void buttonStop_Click(object sender, EventArgs e)
{
Program.ShutdownServices(true);
//Console.WriteLine("Button stop pressed");
}
private void KeycloakCheckBoxCheckedChanged(object sender, EventArgs e)
{
}
private void PostgresqlCheckboxCheckedChanged(object sender, EventArgs e)
{
}
}
+21667
View File
File diff suppressed because it is too large Load Diff
+181 -4
View File
@@ -1,11 +1,188 @@
namespace dotnet_build; using System.Configuration;
using System.Configuration.Internal;
//using Microsoft.Extensions.Configuration;
namespace PrometheusServiceManager;
using System.ServiceProcess;
class Program
// versions
// V1 main release to customers system
// V1.1 adding the Administrator option at the start
// cancelled as the program would crash , to be investigated
// V1.2 displaying starting complete 2025/10/15
static class Program
{ {
static void Main(string[] args) private static readonly Dictionary<string,string> ServicesList = ConfigurationManager.AppSettings.AllKeys.ToDictionary(key => key, key => ConfigurationManager.AppSettings[key]);
public static bool KeycloakHidden = true;
public static bool PostgreSqlHidden = true;
public static readonly string version = "V1.2";
[STAThread]
private static void StartService(string serviceName, int timeoutMilliseconds)
{ {
Console.WriteLine("hello world"); ServiceController service = new ServiceController(serviceName);
try
{
TimeSpan timeout = TimeSpan.FromMilliseconds(timeoutMilliseconds);
service.Start();
service.WaitForStatus(ServiceControllerStatus.Running, timeout);
}
catch
{
// ...
}
}
private static void StopService(string serviceName, int timeoutMilliseconds)
{
ServiceController service = new ServiceController(serviceName);
try
{
TimeSpan timeout = TimeSpan.FromMilliseconds(timeoutMilliseconds);
service.Stop();
service.WaitForStatus(ServiceControllerStatus.Stopped, timeout);
}
catch
{
// ...
}
}
public static void StartServices()
{
if(!Form1.KeycloakCheckBox.Checked)
{
Console.WriteLine("Keycloak unchecked");
ServicesList.Remove("_keycloak");
Form1.KeycloakCheckBox.Visible = false;
}
foreach (KeyValuePair<string,string> Service in ServicesList)
{
//Console.WriteLine("checked: "+Form1.KeycloakCheckBox.Checked);
//write the service name in the log
Console.WriteLine("Starting: "+Service.Key);
//start the service
StartService(Service.Key, 1000);
//update the text box
Form1.TextDisplay.Text = "Starting: "+Service.Key;
Form1.TextDisplay.Update();
//wait 1 second before
Thread.Sleep(TimeSpan.FromSeconds(1));
//displaying end of operation
Form1.TextDisplay.Text = "Starting complete ! ";
Form1.TextDisplay.Update();
} }
} }
public static void ShutdownServices(bool keycloakRestartRequired)
{
if(!Form1.KeycloakCheckBox.Checked)
{
Console.WriteLine("Keycloak unchecked");
ServicesList.Remove("_keycloak");
Form1.KeycloakCheckBox.Visible = false;
}
foreach (KeyValuePair<string,string> Service in ServicesList.Reverse())
{
//write the service name in the log
Console.WriteLine("Stopping: "+Service.Key);
//start the service
StopService(Service.Key, 1000);
//update the text box
Form1.TextDisplay.Text = "Stopping: "+Service.Key;
Form1.TextDisplay.Update();
//wait 1 second before
Thread.Sleep(TimeSpan.FromSeconds(1));
//displaying end of operation
Form1.TextDisplay.Text = "Stopping complete ! ";
Form1.TextDisplay.Update();
}
}
public static void RestartServices(bool keycloakRestartRequired)
{
if(!Form1.KeycloakCheckBox.Checked)
{
Console.WriteLine("Keycloak unchecked");
ServicesList.Remove("_keycloak");
Form1.KeycloakCheckBox.Visible = false;
}
//stop section
foreach (KeyValuePair<string,string> Service in ServicesList.Reverse())
{
//write the service name in the log
Console.WriteLine("Stopping: "+Service.Key);
//stop the service
StopService(Service.Key, 1000);
//update the text box
Form1.TextDisplay.Text = "Stopping: "+Service.Key;
Form1.TextDisplay.Update();
//wait 1 second before
Thread.Sleep(TimeSpan.FromSeconds(1));
//displaying end of operation
Form1.TextDisplay.Text = "Stopping complete ! ";
Form1.TextDisplay.Update();
}
Form1.TextDisplay.Text = "Stopping Complete, waiting... ";
Form1.TextDisplay.Update();
//wait 3 second before
Thread.Sleep(TimeSpan.FromSeconds(3));
//start section
foreach (KeyValuePair<string,string> Service in ServicesList)
{
//write the service name in the log
Console.WriteLine("Starting: "+Service.Key);
//start the service
StartService(Service.Key, 1000);
//update the text box
Form1.TextDisplay.Text = "Starting: "+Service.Key;
Form1.TextDisplay.Update();
//wait 1 second before
Thread.Sleep(TimeSpan.FromSeconds(1));
//displaying end of operation
Form1.TextDisplay.Text = "Starting complete ! ";
Form1.TextDisplay.Update();
}
}
static void Main()
{
// To customize application configuration such as set high DPI settings or default font,
// see https://aka.ms/applicationconfiguration.
if (ServicesList.ContainsKey("_keycloak"))
{
Program.KeycloakHidden = false;
Console.WriteLine("keycloak is there");
}
if (ServicesList.ContainsKey("_postgresql"))
{
Program.PostgreSqlHidden = false;
Console.WriteLine("postgresql is there");
}
ApplicationConfiguration.Initialize();
Application.Run(new Form1());
}
}
+17
View File
@@ -0,0 +1,17 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net8.0-windows</TargetFramework>
<Nullable>enable</Nullable>
<UseWindowsForms>true</UseWindowsForms>
<ImplicitUsings>enable</ImplicitUsings>
<ApplicationIcon>webclip_webclip-Photoroom.ico</ApplicationIcon>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Extensions.Configuration" Version="10.0.0-preview.7.25380.108" />
<PackageReference Include="System.ServiceProcess.ServiceController" Version="10.0.0-preview.5.25277.114" />
</ItemGroup>
</Project>
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 171 KiB

Binary file not shown.