Работи само с blazor 0.5 + версия, тъй като GitLab използва linux и имаше някакъв проблем, свързан с копирането на файлове от папка wwwroot на машина с linux. („Проблем с Github“)

Ако четете тази публикация означава, че вече сте запознати с Blazor, ако не. Има доста страхотна статия, която дефинира blazor по ясен начин. Накратко според официалното хранилище
Blazor е експериментална .NET уеб рамка, използваща C#/Razor и HTML, която работи в браузъра с WebAssembly

За да научите повече за blazor и всички неща, свързани с него, посетете Blazor GitHub repo , awesome-blazor repo и официален сайт за документация.

Ако вече имате стартирано приложение blazor, добре е да продължите, ако не, посетете официалната документация, за да настроите и конфигурирате blazor на вашата машина.

Връзка към официална документация, за да започнете с Blazor
Започнете с Blazor

Когато хоствате вашето приложение blazor на вашия GitLab или GitHub, то ще го третира като приложение с много страници и по-голямата част от файла няма да бъде намерен и ще върне 404 файлът не е намерен, когато браузърът направи заявка за файлове, така че трябва да трябва да 404.html файлове в нашето основно ниво на производствения файл за компилация в папката dist и ние също трябва да модифицираме нашия index.html.

Стъпка 1: Добавете 404.html

Така че основно, когато стартирате dotnet cli за генериране на файл за компилация, той също ще копира всичко от папката wwwroot в dist, така че ще създадем файл 404.html в папката wwwroot на нашия проект със следното съдържание, така че да копира това в папката dist когато изпълнявате dotnet cli за публикуване.

Стъпка 2: Модифициране на нашия файл index.html

Както споменах преди, ние също трябва да променим нашия файл index.html. Добавете следния JavaScript в нашия файл index.html точно под

<app>Loading.. </app>

Сега всичко е конфигурирано, нашата файлова структура трябва да бъде както е показано на изображението по-долу.

след като модифицираме нашия файл index.html, index.html трябва да е така.

Хостингът на SPA в GitHub е проект на GitHub и ние използваме тази проектна техника, за да хостваме нашата страница в GitLab.

Досега просто конфигурирахме нашето приложение blazor, така че, ако стартираме dotnet cli за публикуване, то също да включва 404.html и модифициран index.html във файла за производствена компилация.

Посетете тук, за да научите повече за хостинг и публикуване на blazor приложение

Стъпка 3: Добавяне на gitlab-ci.yml на основно ниво на решение

сега се нуждаем от един файл, който ще каже на GitLab build runner да извърши изграждане, разгръщане, тестове и всичко останало. Името на файла трябва да бъде .gitlab-ci.ymlи поставете този файл на основното ниво на папката с решение и запазете файла със следното съдържание.

в горния .gitlab-ci.yml файл.

на ред 9:използваме dotnet cli, за да публикуваме компилационния файл в изходна папка

на ред 11: ние копираме нашите файлове в папката public и

(заменете Blazor.CICDс името на проекта)

на ред 14:ние казваме, че съдържанието на публичната папка трябва да бъде разгърнато.

ангажиране на промяната и GitLab ще задейства изграждането и след изграждането трябва да можем да видим приложението blazor на живо на ‹yourGitLabUserName›.gitab.io

ЗАБЕЛЕЖКА

Работи само за хранилището с име ‹yourGitLabUserName›.gitlab.io, трябва да работи и за друго хранилище, но за съжаление не е така. Той винаги търси файлове като site.css, на yourGitLabUserName›.gitlab.io всъщност трябва да търси yourGitLabUserName›.gitlab.io/‹repository_name›

Чувствайте се свободни да коментирате и предлагате промени.

Пълен изходен код на GitLab

Честито кодиране!