ln.build/ln.build.server/Program.cs

55 lines
1.4 KiB
C#
Raw Normal View History

2020-11-27 22:12:01 +01:00
using System;
using System.Collections.Generic;
using ln.http;
using ln.http.router;
using ln.json;
using ln.logging;
using ln.type;
using ln.threading;
using ln.build;
2020-11-29 22:02:16 +01:00
using ln.build.repositories;
using Microsoft.VisualBasic;
using ln.application;
using System.IO;
using ln.build.repositories.gitea;
2020-11-27 22:12:01 +01:00
namespace ln.build.server
{
class Program
{
2020-11-28 01:08:49 +01:00
static CIService CIService;
2020-11-27 22:12:01 +01:00
2020-12-03 00:05:51 +01:00
[StaticArgument( LongOption = "build")]
public static string BuildPath { get; set; }
2020-12-03 22:58:35 +01:00
[StaticArgument( LongOption = "build-secret")]
public static string BuildSecret { get; set; }
2020-11-27 22:12:01 +01:00
static void Main(string[] args)
{
ArgumentContainer ac = new ArgumentContainer(typeof(Program));
2020-11-28 01:08:49 +01:00
CIService = new CIService();
ac.AddOptions(CIService);
ac.Parse(ref args);
2020-11-29 22:02:16 +01:00
CIService.Initialize();
2020-11-27 22:12:01 +01:00
2020-12-03 00:05:51 +01:00
if (BuildPath != null)
{
2020-12-03 22:58:35 +01:00
CIJob job = new CIJob(CIService,null, (BuildSecret != null) ? CIService.GetSecretStorage(BuildSecret) : null);
2020-12-03 00:05:51 +01:00
job.WorkingDirectory = BuildPath;
job.RunJob();
} else {
CIService.Initialize();
CIService.AddWebHookHandler("gitea", GiteaRepository.WebHookHandler);
2020-12-03 00:05:51 +01:00
CIService.Start();
}
2020-11-27 22:12:01 +01:00
}
}
}