From 58bb14c1fd6c8b039b2ae2b2c010673e61f8e20e Mon Sep 17 00:00:00 2001 From: Inga Date: Mon, 6 Nov 2023 02:10:03 +0100 Subject: [PATCH] changed README language to English --- README.md | 75 ++++++++++++++++++++++++++++++++----------------------- 1 file changed, 44 insertions(+), 31 deletions(-) diff --git a/README.md b/README.md index 8fefa96..798c3f8 100644 --- a/README.md +++ b/README.md @@ -1,45 +1,56 @@ micro-build-server ================== - -Разработка +Motivation ========== -Установить Node.js v6. +TeamCity forces us to separately configure every branch on TeamCity server, +which introduces an unreasonable friction for our short-lived feature dev branches, +and would also force us to purchase the most expensive subscription +because the cheaper ones come with a very limited number of branch configurations. -Запустить `npm install` из папки `BuildServer`. +Since all our services are built more or less in a similar way, +it is not very difficult to create our own build server, +which is done in this repository. -Создать `app.ts` на основе `app.ts.example`. +Development +=========== -Для проверки code style / типов использовать `npm test`. +Install Node.js v6. -Установка на сервере -==================== +Run `npm install` in `BuildServer` directory. -Установить Node.js v6. +Create `app.ts` based on `app.ts.example`. -Скопировать на сервер собранный проект (содержимое папки `bin\Release`) `DotNetBuilder`. +To check code style or types, use `npm test`. -Установить в GAC сборки `Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed` (можно взять из релиза 6.0.4 с NuGet), `Microsoft.VisualStudio.Setup.Configuration.Interop, PublicKeyToken=b03f5f7f11d50a3a`. +Setting up the server +===================== -Склонировать репозиторий (`git clone`). +Install Node.js v6. -Запустить `npm install` из папки `BuildServer`. +Copy to the server build artifacts (contents of the `bin\Release` folder) of `DotNetBuilder`. -Создать `app.ts` на основе `app.ts.example` (для использования в IIS надо указать `port: process.env["PORT"]`). -Пути `gitpath`, `releasepath`, `tmpcodepath` должны быть максимально короткими. +Add `Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed` (can be extracted out of 6.0.4 release on NuGet) and `Microsoft.VisualStudio.Setup.Configuration.Interop, PublicKeyToken=b03f5f7f11d50a3a` assemblies to GAC. -Проверить, что `app.ts` правильный с помощью `npm test`. +Clone the repo (`git clone`). -Собрать с помощью `npm build` или `npm run build`. +Run `npm install` in `BuildServer` directory. -Запускать с помощью `npm start` или `node app`. -Для использования в IIS - установить iisnode, создать в iis сайт, указывающий на корневую папку `BuildServer` (в которой лежит `Web.config`). +Create `app.ts` based on `app.ts.example` (in order to use it in IIS set the value `port: process.env["PORT"]`). +Values of `gitpath`, `releasepath`, `tmpcodepath` should be as short as possible. -Возможно, в зависимости от сценариев использования, также понадобится установить на сервер Microsoft .NET Targeting Pack и Windows SDK нужной версии. +Check that `app.ts` is correct by running `npm test`. -Обновление сервера -================== +Build by `npm build` or `npm run build`. + +Run by `npm start` or `node app`. +In order to use in IIS, install `iisnode`, and create a new website in IIS, pointing to the `BuildServer` directory (the one with `Web.config`). + +Depending on the system, you might also have to install Microsoft .NET Targeting Pack and appropriate version of Windows SDK to the server. + +Updating the server +=================== ``` git pull origin master @@ -47,12 +58,12 @@ npm test npm run build ``` -Использование -============= +Usage +===== -В настройках нужного репозитория (и его форков) указать адрес хука: `https://micro-build-server/github/postreceive`. +In the settings of a target repository (and all its forks), add a webhook pointing to `https://micro-build-server/github/postreceive`. -Добавить в корневую папку репозитория файл `mbs.pos` с содержимым следующего вида: +In target repository, create an `mbs.pos` file with contents of the following form: ``` { @@ -79,16 +90,18 @@ npm run build } ``` -Со списком возможных типов задач и их параметров можно ознакомиться в папке `BuildServer\lib\tasks`. +All supported task types and their parameters are declared in [`BuildServer\lib\tasks`](BuildServer/lib/tasks). + +In order to implement a new task type, create a new `yourtaskname.ts` in that directory. -Для добавления новой задачи достаточно добавить новый файл `yourtaskname.ts` в эту папку. +This will automatically add build status comments to your PRs, and automatically close PRs when needed. -Для получения информации о статусе сборки достаточно добавить в README.md нужного репозитория строчку +In order to display a badge with the build status for the relevant branch, add the following line to `README.md` of the target repository: ``` ![Status](https://micro.build.server/status.svg) ``` -Или вручную перейти на страницу с отчётом о сборке - для этого надо поменять в адресной строке адрес `https://github.enterprise/what/ever` на `https://micro.build.server/github.enterprise/what/ever`. +Or alternatively, manually go to the page with the build report, by changing the URL in the address bar from `https://github.enterprise/what/ever` to `https://micro.build.server/github.enterprise/what/ever`. -В обоих случаях будет отображена информация о сборке нужной ветки / нужного коммита. +In both cases, it will display the build status of the relevant branch or commit.