fix: 운영 설정 배포와 탐색 UX 개선
This commit is contained in:
@@ -40,22 +40,8 @@ jobs:
|
||||
echo "Missing TAXBAIK_JWT_SECRET_KEY secret" >&2
|
||||
exit 1
|
||||
fi
|
||||
JWT_SECRET_KEY="$JWT_SECRET_KEY" python3 - <<'PY'
|
||||
import json
|
||||
import os
|
||||
from pathlib import Path
|
||||
|
||||
config = {
|
||||
"Jwt": {
|
||||
"SecretKey": os.environ["JWT_SECRET_KEY"]
|
||||
}
|
||||
}
|
||||
|
||||
Path("./publish/appsettings.Production.json").write_text(
|
||||
json.dumps(config, ensure_ascii=False, indent=2),
|
||||
encoding="utf-8",
|
||||
)
|
||||
PY
|
||||
JWT_SECRET_KEY="$JWT_SECRET_KEY" python3 -c 'import json, os, pathlib; pathlib.Path("./publish/appsettings.Production.json").write_text(json.dumps({"Jwt":{"SecretKey":os.environ["JWT_SECRET_KEY"]}}, ensure_ascii=False, indent=2), encoding="utf-8")'
|
||||
test -s ./publish/appsettings.Production.json
|
||||
|
||||
- name: Copy migrations to publish
|
||||
run: |
|
||||
|
||||
@@ -28,8 +28,8 @@
|
||||
<td>@GetPreview(inquiry.Message)</td>
|
||||
<td>@inquiry.CreatedAt.ToString("yyyy-MM-dd")</td>
|
||||
<td>
|
||||
<MudButton Size="Size.Small" Variant="Variant.Text"
|
||||
Href="@($"/taxbaik/admin/inquiries/{inquiry.Id}")">상세</MudButton>
|
||||
<MudButton Size="Size.Small" Variant="Variant.Outlined" Color="Color.Primary"
|
||||
Href="@($"/taxbaik/admin/inquiries/{inquiry.Id}")">문의 내용 확인</MudButton>
|
||||
</td>
|
||||
</tr>
|
||||
}
|
||||
|
||||
@@ -9,8 +9,11 @@
|
||||
|
||||
@if (inquiry != null)
|
||||
{
|
||||
<MudButton Variant="Variant.Text" @onclick="@(() => Navigation.NavigateTo("/taxbaik/admin/inquiries"))">
|
||||
← 돌아가기
|
||||
<MudButton Variant="Variant.Outlined"
|
||||
Color="Color.Primary"
|
||||
StartIcon="@Icons.Material.Filled.ArrowBack"
|
||||
@onclick="@(() => Navigation.NavigateTo("/taxbaik/admin/inquiries"))">
|
||||
문의 목록으로 돌아가기
|
||||
</MudButton>
|
||||
|
||||
<MudPaper Class="pa-4 mt-4" Elevation="1">
|
||||
@@ -18,9 +21,9 @@
|
||||
<MudText Typo="Typo.h5">문의 상세</MudText>
|
||||
<MudButton Variant="Variant.Filled"
|
||||
Color="Color.Primary"
|
||||
Href="/taxbaik/admin/inquiries"
|
||||
Target="_blank">
|
||||
문의 목록 열기
|
||||
StartIcon="@Icons.Material.Filled.List"
|
||||
Href="/taxbaik/admin/inquiries">
|
||||
다른 문의도 보기
|
||||
</MudButton>
|
||||
</MudStack>
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
<small class="badge bg-primary">@post.CategoryName</small>
|
||||
<h5 class="card-title mt-2">@post.Title</h5>
|
||||
<p class="card-text small">@post.CreatedAt.ToString("yyyy-MM-dd")</p>
|
||||
<a href="/taxbaik/blog/@post.Slug" class="btn btn-sm btn-primary">읽기</a>
|
||||
<a href="/taxbaik/blog/@post.Slug" class="btn btn-sm btn-primary">글 내용 보기</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -20,6 +20,10 @@
|
||||
</ol>
|
||||
</nav>
|
||||
|
||||
<div class="mb-4">
|
||||
<a href="/taxbaik/blog" class="btn btn-outline-primary btn-sm">← 블로그 목록으로 돌아가기</a>
|
||||
</div>
|
||||
|
||||
@if (!string.IsNullOrEmpty(Model.Post.ThumbnailUrl))
|
||||
{
|
||||
<img src="@Model.Post.ThumbnailUrl" alt="@Model.Post.Title"
|
||||
|
||||
@@ -201,7 +201,7 @@
|
||||
<small class="badge bg-primary-badge">@post.CategoryName</small>
|
||||
<h4 class="card-title mt-3">@post.Title</h4>
|
||||
<p class="text-muted small">@post.CreatedAt.ToString("yyyy년 MM월 dd일")</p>
|
||||
<a href="/taxbaik/blog/@post.Slug" class="btn btn-sm btn-primary">읽기</a>
|
||||
<a href="/taxbaik/blog/@post.Slug" class="btn btn-sm btn-primary">글 내용 보기</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -5,7 +5,7 @@ const baseUrl = (process.env.E2E_BASE_URL ?? 'http://178.104.200.7/taxbaik').rep
|
||||
test.describe('blog seo', () => {
|
||||
test('exposes title description and canonical on blog detail pages', async ({ page }) => {
|
||||
await page.goto(`${baseUrl}/blog`);
|
||||
const firstPost = page.locator('a[href^="/taxbaik/blog/"]').filter({ hasText: '읽기' }).first();
|
||||
const firstPost = page.locator('a[href^="/taxbaik/blog/"]').filter({ hasText: '글 내용 보기' }).first();
|
||||
await expect(firstPost).toBeVisible();
|
||||
const detailHref = await firstPost.getAttribute('href');
|
||||
expect(detailHref).toMatch(/^\/taxbaik\/blog\/[a-z0-9-]+$/);
|
||||
|
||||
@@ -41,6 +41,7 @@ test.describe('inquiry detail', () => {
|
||||
await expect(page.getByRole('button', { name: '신규' })).toBeVisible();
|
||||
await expect(page.getByRole('button', { name: '연락함' })).toBeVisible();
|
||||
await expect(page.getByRole('button', { name: '완료' })).toBeVisible();
|
||||
await expect(page.getByRole('button', { name: '문의 목록 열기' })).toBeVisible();
|
||||
await expect(page.getByRole('button', { name: '문의 목록으로 돌아가기' })).toBeVisible();
|
||||
await expect(page.getByRole('link', { name: '다른 문의도 보기' })).toBeVisible();
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user