Re[5]: Смотрю, что-то шевелится
От: VladD2 Российская Империя www.nemerle.org
Дата: 04.06.20 20:41
Оценка:
Здравствуйте, STDray, Вы писали:


STD>Я думаю, что код можно или через форум или через гисты. Для формата быстрого общения телега была бы удобное. А если не полетит, то и ладно. Все равно это ничего не стоит.

STD>Мог бы ты создать такой чат, как владелец проекта? Мне кажется, что не очень хорошо, если такие ресурсы создают левые люди.

Создавай если хочешь. Только плиз, все кто хочет там херней пострадать или по спамить бань. А то тележная группа РСДН превратилась в унылийшее говно из-за засилия там борцунов с рэжимом. Одни политические наборосы.

Там есть средства бана?

Ну, а вообще, Слак он для общения программеров удобнее. Там код передавать удобно.

Мы по работе используем сейчас MS Teams. Там тоже с кодом удобно. В прочем и в Скайпе было не сильно хуже. Не знаю, что уж люди так скайп недолюбливают.
http://nemerle.org/Banners/?g=dark
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[5]: Смотрю, что-то шевелится
От: VladD2 Российская Империя www.nemerle.org
Дата: 04.06.20 20:44
Оценка:
Здравствуйте, STDray, Вы писали:

STD>Либо, если у сайта есть свое файловое хранилище, то можно рассмотреть возможность создание шага, который будет заливать туда файлы. Я не в курсе, как устроен сайт.


У нас полная винда в нашем распоряжении. РСДН то на Windows 12R2 крутится. Там и TeamCity есть. Вот только рук нет, которые могли бы все настроить. Все в мыле.

С копированием проблема в протоколе АВК против ФТП, а других средств особо и нет нормальных.

В принципе, если бы удалось все сделать через гитхаб — это было бы идеально. Чем меньше зависимостей, тем лучше.
http://nemerle.org/Banners/?g=dark
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Смотрю, что-то шевелится
От: STDray http://stdray.livejournal.com
Дата: 04.06.20 21:15
Оценка:
VD>С копированием проблема в протоколе АВК против ФТП, а других средств особо и нет нормальных.
>АВК
Я такой протокол не знаю и что-то найти не выходит. Можешь дать ссылочку на него и в идеале пример команды, с помощью которой раньше заливались релизы на сайт?
Отредактировано 04.06.2020 21:29 STDray . Предыдущая версия . Еще …
Отредактировано 04.06.2020 21:15 STDray . Предыдущая версия .
Re[5]: Смотрю, что-то шевелится
От: VladD2 Российская Империя www.nemerle.org
Дата: 04.06.20 21:29
Оценка:
Здравствуйте, STDray, Вы писали:

STD>Про сборку немерла мне более-менее все ясно. Еще надо описание того, как собирать нитру и буду заниматься написание сценариев сборки через технологии гитхаба. В принципе, я ими более-менее доволен.


Там опять же две ветки мастер и ретергет.

Плюс там две стадии:
1. Сборка бута.
2. Сборка основного солюшена. Ее можно делать в две стадии. Вторая проверяет, что ничего не сломано. Мы ее сами редко гоняем. Хотя это полезно. Если где-то можно будет увидеть проблемы при сборке, вообще здорово было бы.

В принципе, для обоих веток сборка бута описана в батнике BuildBoot.cmd
А для основной сборки нужно собрать 15м мсблилдом Nitra-Stagt1.sln или Nitra.sln. Последний собирается редко, так что могут быть проблемы. Но он предпочтительнее, так как там двухстадийная сборка.

Сборка бута в мастере очень проста. Вот цитата из батника:
MSBuild.exe %~dp0\Common\BootTasks.proj /t:BuildBoot /tv:4.0 /bl:%~dp0\Boot2\BootTasks.binlog;ProjectImports=Embed /p:BuildTarget=Rebuild


Важно что перед сборкой на машине должен появиться немерл. Его лучше тоже собирать с гитхаба.
По умолчанию немерл должен быть скопирован в стандартный каталог c:\Program Files\Nemerle\Net-4.0\
Причем там должен быть не только компилятор, но шлагин Шарпа и некоторые другие длл. В приципе стандартный батник DevBuildQuick-VS2017.cmd копирует его туда автоматом. Но на билд-сервере это может быть невозможно (права на запись в c:\Program Files могут отсутствовать).

Вместо копирования можно задать переменную NemerleBinPathRoot в каталог где находится подкаталог с немерлом (он должен называться Net-4.0 или должна быть задана еще одна переменная NemerleVersion). Почему это так можно понять глянув, например, проект Boot2\Nitra.Runtime\Nitra.Runtime.nproj.

Все эти извраты нужны, чтобы собрать первую версию прикопанным в Boot1 немерловым компилятором и совместимыми с ним бинарниками нитры.

После сборки бута в каталоге bin\Debug\Stage1 появятся бинарники нитры совместимые с текущей версией компилятора немерла.

Собрать не бутовую версию нитры бутовым компиляторам часто бывает нельзя (так как в старом немерле могут быть ошибки, которые не дадут собрать проект или может не хватать макросов).

Ну, а проекты нитры находящиеся не в бутовых кталогах ссылаются на бинарники нитры из bin\Debug\Stage1 и bin\Debug\Stage2 соответственно. Эти бинарники собраны текущей версией Немерла.

Сборка Нитры из ветки retarget-compiler отличается тем, что мсбилд нужно прогонять два раза. Один раз для восстановления пакетов, другой для сборки. Вот цитата из батника:
msbuild %~dp0Nitra-Stagt1.sln /p:NemerleBinPathRoot=%NemerleInstallDir% /t:Restore
msbuild %~dp0Nitra-Stagt1.sln /p:NemerleBinPathRoot=%NemerleInstallDir% /t:%Target%


NemerleInstallDir — это каталог где находится компилятор немерла которым будут собираться проекты.
http://nemerle.org/Banners/?g=dark
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re: Смотрю, что-то шевелится
От: VladD2 Российская Империя www.nemerle.org
Дата: 04.06.20 21:45
Оценка:
Здравствуйте, STDray, Вы писали:

STD>Я такой протокол не знаю и что-то найти не выходит. Можешь дать ссылочку на него и в идеале пример команды, с помощью которой раньше заливались релизы на сайт?


FTP не знаешь? Видимо по-русски он звучит не очень знакомо.
http://nemerle.org/Banners/?g=dark
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Смотрю, что-то шевелится
От: STDray http://stdray.livejournal.com
Дата: 04.06.20 22:19
Оценка:
VD>FTP не знаешь? Видимо по-русски он звучит не очень знакомо.

Если надо залить файлики по FTP и сайт их автоматом подхватит, то я так и сделаю. Это самый простой путь по идее. Только тебе надо будет задать переменные (логин, пас, путь) для сборки. Я когда оттестирую, скажу где и как их прописывать.
Отредактировано 04.06.2020 22:46 STDray . Предыдущая версия .
Re: Смотрю, что-то шевелится
От: VladD2 Российская Империя www.nemerle.org
Дата: 05.06.20 00:34
Оценка:
Здравствуйте, STDray, Вы писали:

STD> Если надо залить файлики по FTP и сайт их автоматом подхватит, то я так и сделаю. Это самый простой путь по идее. Только тебе надо будет задать переменные (логин, пас, путь) для сборки. Я когда оттестирую, скажу где и как их прописывать.


Я же тебе говорю, АВК, который сайт поддерживает в основном, против открывания FTP на серваке.
http://nemerle.org/Banners/?g=dark
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Смотрю, что-то шевелится
От: STDray http://stdray.livejournal.com
Дата: 05.06.20 02:29
Оценка: 53 (1) :)
VD>Я же тебе говорю, АВК, который сайт поддерживает в основном, против открывания FTP на серваке.

Я ж не в курсе местных традиций, решил сначала, что авк — это протокол)
Потому зробил загрузку на фтп на какой-то клаут с триалкой, которая даже работает

http://files.rsdn.org/95716/firefox_2020-06-05_05-19-57.png
Надо понять, какие варианты доступны:
— webdav
— sftp
— загрузка через api сайта (если нет, то можно сделать)
— ручная загрузка через rdp
— ???
Если вариков нет, то будем думать.
Хотя, конечно, хотелось бы залить и отдать определение последних артефактов на откуп сайту.


Ну а из полезного есть сборка с использованием последнего msbuild'а на машине.
Отредактировано 05.06.2020 2:36 STDray . Предыдущая версия . Еще …
Отредактировано 05.06.2020 2:35 STDray . Предыдущая версия .
Отредактировано 05.06.2020 2:34 STDray . Предыдущая версия .
Отредактировано 05.06.2020 2:33 STDray . Предыдущая версия .
Re: Смотрю, что-то шевелится
От: VladD2 Российская Империя www.nemerle.org
Дата: 05.06.20 11:56
Оценка:
Здравствуйте, STDray, Вы писали:

STD>Я ж не в курсе местных традиций, решил сначала, что авк — это протокол)


АВК — это человечеще!

Заранее извиняюсь. Из меня двопс никакой. Хардкейс что-то отмалчивается.

STD>- webdav


Это вроде есть.

STD>- sftp


ФТП было только обычное. Если sftp поддерживается стандартными средствами Win 2012R2, то наверно можно включить.

STD>- загрузка через api сайта (если нет, то можно сделать)


Ну, IIS в нашем распоряжении.

STD>- ручная загрузка через rdp


Это точно не то. Тупо никто не будет делать.

STD>Если вариков нет, то будем думать.


Еще вариант наладить сборку на нашем TeamSity. Хардкейс обещал сделать, но тянет резину уже неделю.

Постучись ко мне в Скайп vc@rsdn.ru обсудим приватно.
http://nemerle.org/Banners/?g=dark
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re: Смотрю, что-то шевелится
От: VladD2 Российская Империя www.nemerle.org
Дата: 05.06.20 12:07
Оценка:
Здравствуйте, STDray, Вы писали:

STD>Ну а из полезного есть сборка с использованием последнего msbuild'а на машине.


Там есть строчка:

Upload artifacts to github build

А это куда?

Нет на гитхабе возможности дать ссылку на последние собранные артефакты?
http://nemerle.org/Banners/?g=dark
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[5]: Смотрю, что-то шевелится
От: Дьяченко Александр Россия  
Дата: 05.06.20 13:30
Оценка:
Здравствуйте, STDray, Вы писали:

VD>>Есть какая-то возможность использовать MSBuild 15?

STD>Есть. Надо только вспомнить, как пользоваться vswhere. Почитаю и модифицирую сборку.

У микрософта есть свой Action для настройки MSBuild — https://github.com/marketplace/actions/setup-msbuild
Может подойдет.
... << RSDN@Home 1.3.110 alpha 5 rev. 62>>
Re[6]: Смотрю, что-то шевелится
От: STDray http://stdray.livejournal.com
Дата: 05.06.20 19:35
Оценка:
ДА>У микрософта есть свой Action для настройки MSBuild — https://github.com/marketplace/actions/setup-msbuild
ДА>Может подойдет.

У нас сейчас используется окружение со студией 2017. Этот action использует vswhere от нее для поиска msbuild'а, а там она старой версии, которая не поддерживает параметры из сборки. Потому я пока прошел обходным путем, вышло не сильно больше, если считать в строках.
Re[6]: Смотрю, что-то шевелится
От: Aquilaware  
Дата: 08.06.20 08:50
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>У нас в батниках есть алгоритм поиска через реестр. Если там можно батник прогнать, значит можно его использовать.


Начиная с VS2017 студия не оставляет в реестре достаточных данных. Единственный способ надежно знать где лежат ее экземпляры — спрашивать кодом через COM интерфейс. Или использовать vswhere.
Re[7]: Смотрю, что-то шевелится
От: VladD2 Российская Империя www.nemerle.org
Дата: 09.06.20 02:43
Оценка:
Здравствуйте, Aquilaware, Вы писали:

A>Начиная с VS2017 студия не оставляет в реестре достаточных данных. Единственный способ надежно знать где лежат ее экземпляры — спрашивать кодом через COM интерфейс. Или использовать vswhere.


COM-интерфейс он в реестре регистрируется .

А как найти vswhere?

На самом деле в реестре местоположение студии есть. В наших батниках именно от туда и берется путь к ней.
http://nemerle.org/Banners/?g=dark
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[8]: Смотрю, что-то шевелится
От: _NN_ www.nemerleweb.com
Дата: 11.06.20 05:53
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, Aquilaware, Вы писали:


A>>Начиная с VS2017 студия не оставляет в реестре достаточных данных. Единственный способ надежно знать где лежат ее экземпляры — спрашивать кодом через COM интерфейс. Или использовать vswhere.


VD>COM-интерфейс он в реестре регистрируется .


VD>А как найти vswhere?

Есть NuGet: https://www.nuget.org/packages/vswhere

Документацию тут
https://github.com/Microsoft/vswhere/wiki/Installing


VD>На самом деле в реестре местоположение студии есть. В наших батниках именно от туда и берется путь к ней.
http://rsdn.nemerleweb.com
http://nemerleweb.com
Re[9]: Смотрю, что-то шевелится
От: VladD2 Российская Империя www.nemerle.org
Дата: 11.06.20 11:31
Оценка:
Здравствуйте, _NN_, Вы писали:

_NN>Есть NuGet: https://www.nuget.org/packages/vswhere


Капец, дожили! Чтобы узнать где студия нужно пакет с пакетами поставить.

А как нюгеты загребать? Ведь чтобы рестор сделать нужно МСБилд вызвать. А для него путь к нему нужно знать. Бред полнейший.
http://nemerle.org/Banners/?g=dark
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[10]: Смотрю, что-то шевелится
От: varenikAA  
Дата: 11.06.20 12:47
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, _NN_, Вы писали:


_NN>>Есть NuGet: https://www.nuget.org/packages/vswhere


VD>Капец, дожили! Чтобы узнать где студия нужно пакет с пакетами поставить.


VD>А как нюгеты загребать? Ведь чтобы рестор сделать нужно МСБилд вызвать. А для него путь к нему нужно знать. Бред полнейший.


Nemerle не может без студии и dev tools работать?
Это плохо, реестр и прочее.
Нужен бандл как jdk — распаковал, указал переменную окружения и все компилируется.

Ну и без поддержки vs code тяжело.
В dotnet слишком много приселаний для сборки из сорцов, нужен темплэйт минимальный.
Re[11]: Смотрю, что-то шевелится
От: VladD2 Российская Империя www.nemerle.org
Дата: 11.06.20 18:35
Оценка:
Здравствуйте, varenikAA, Вы писали:

AA>Nemerle не может без студии и dev tools работать?

AA>Это плохо, реестр и прочее.
AA>Нужен бандл как jdk — распаковал, указал переменную окружения и все компилируется.

Никто не может. Чтобы указать что-то в переменную, нужно это что-то как-то унать.
Это проблема создана майкрософтом. Они должны были тупо в переменные окружения забить нужные пути.

AA>Ну и без поддержки vs code тяжело.


Нас загрузили очень плотно, а что-то уже физически не могу на отдыхе тоже программированием заниматься. Спадет аврал на работе, займусь. А пока было не плохо, чтобы кто-то из внешних контрибьютеров помог. Вот на подсказки и проектирование меня хватит.

AA>В dotnet слишком много приселаний для сборки из сорцов, нужен темплэйт минимальный.


Ну, что есть. Можно собирать дотнет Core-ом. Там все как ты говоришь. Вообще, проблема то решена. На гитхабе сборка идет вроде. Только когда я смотрел она шла мсбилдом из 4-го дотнета. А новую версию им не собрать. Там 15 мсбилд нужен.
http://nemerle.org/Banners/?g=dark
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[10]: Смотрю, что-то шевелится
От: _NN_ www.nemerleweb.com
Дата: 12.06.20 19:19
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, _NN_, Вы писали:


_NN>>Есть NuGet: https://www.nuget.org/packages/vswhere


VD>Капец, дожили! Чтобы узнать где студия нужно пакет с пакетами поставить.


VD>А как нюгеты загребать? Ведь чтобы рестор сделать нужно МСБилд вызвать. А для него путь к нему нужно знать. Бред полнейший.


Ну так на машине будет же Visual Studio или NuGet?
Или как ?
http://rsdn.nemerleweb.com
http://nemerleweb.com
Re[11]: Смотрю, что-то шевелится
От: VladD2 Российская Империя www.nemerle.org
Дата: 13.06.20 01:57
Оценка:
Здравствуйте, _NN_, Вы писали:

_NN>Ну так на машине будет же Visual Studio или NuGet?

_NN>Или как ?

К ней путь надо знать. Единственный известный путь сделать это — проч5сть в ре5стре.
http://nemerle.org/Banners/?g=dark
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.