Init repo2
Build and Deploy / deploy (push) Failing after 1m1s

This commit is contained in:
Dmitry
2026-05-18 13:48:20 +03:00
parent 33880f5eae
commit b163e36b51
17 changed files with 358 additions and 0 deletions
+3
View File
@@ -0,0 +1,3 @@
.git
public
.hugo_build.lock
+33
View File
@@ -0,0 +1,33 @@
name: Build and Deploy
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
submodules: true
- name: Login to registry
run: |
echo "${{ secrets.GIT_PASS }}" | \
docker login git.ada-dev.ru -u ${{ secrets.GIT_USER }} --password-stdin
- name: Build and push
run: |
docker build -t git.ada-dev.ru/${{ gitea.repository }}:latest .
docker push git.ada-dev.ru/${{ gitea.repository }}:latest
- name: Deploy container
run: |
docker stop ada-dev-ru 2>/dev/null || true
docker rm ada-dev-ru 2>/dev/null || true
docker run -d \
--name ada-dev-ru \
--restart unless-stopped \
-p 8081:80 \
git.ada-dev.ru/${{ gitea.repository }}:latest
+2
View File
@@ -0,0 +1,2 @@
public/
.hugo_build.lock
+8
View File
@@ -0,0 +1,8 @@
FROM hugomods/hugo:exts AS builder
WORKDIR /site
COPY . .
RUN hugo --minify
FROM nginx:alpine
COPY --from=builder /site/public /usr/share/nginx/html
COPY nginx.conf /etc/nginx/conf.d/default.conf
+5
View File
@@ -0,0 +1,5 @@
+++
date = '{{ .Date }}'
draft = true
title = '{{ replace .File.ContentBaseName "-" " " | title }}'
+++
+7
View File
@@ -0,0 +1,7 @@
+++
+++
<div class="home-nav">
<a href="/projects/"><span data-feather="code"></span> Projects</a>
<a href="/posts/"><span data-feather="file-text"></span> Notes</a>
</div>
+3
View File
@@ -0,0 +1,3 @@
+++
title = "Notes"
+++
+3
View File
@@ -0,0 +1,3 @@
+++
title = "Projects"
+++
+7
View File
@@ -0,0 +1,7 @@
+++
title = "Hopfield & Hemming Platground"
description = "Визуализация работы сетей Хопфилда и Хэмминга"
tags = ["ruby", "math", "ml"]
externalUrl = "https://projects.ada-dev.ru/neural"
weight = 1
+++
+114
View File
@@ -0,0 +1,114 @@
baseURL = 'https://ada-dev.ru/'
locale = 'ru-ru'
title = 'Dmitry Antipenko'
theme = "gokarna"
enableRobotsTXT = true
[params]
avatarURL = "/images/avatar.webp"
avatarAltText = "Dmitry"
showBackToTopButton = true
customHeadHTML = """
<style>
.home-nav {
display: flex;
gap: 2rem;
justify-content: center;
margin-top: 0.5rem;
}
.home-nav a {
font-size: 1.1rem;
text-decoration: none;
opacity: 0.75;
transition: opacity 0.2s;
}
.home-nav a:hover { opacity: 1; }
.home-nav a svg { vertical-align: middle; margin-bottom: 2px; }
.projects-list {
display: flex;
flex-direction: column;
gap: 1rem;
margin-top: 2rem;
}
.project-card {
display: block;
padding: 1.25rem 1.5rem;
border: 1px solid currentColor;
border-radius: 6px;
text-decoration: none;
opacity: 0.85;
transition: opacity 0.2s;
}
.project-card:hover { opacity: 1; }
.project-card-header {
display: flex;
justify-content: space-between;
align-items: center;
}
.project-title { font-size: 1.1rem; font-weight: 600; }
.project-arrow svg { width: 18px; height: 18px; }
.project-description {
margin: 0.5rem 0 0.75rem;
opacity: 0.7;
font-size: 0.95rem;
}
.project-tags { display: flex; gap: 0.5rem; flex-wrap: wrap; }
.project-tag {
font-size: 0.75rem;
padding: 2px 8px;
border: 1px solid currentColor;
border-radius: 99px;
opacity: 0.6;
}
</style>
"""
customFooterHTML = """
<script>
(function () {
function syncAvatars() {
var imgs = document.querySelectorAll('.theme-aware-avatar');
var darkCss = document.getElementById('dark-theme');
var isDark = darkCss && !darkCss.disabled;
imgs.forEach(function(img) { img.style.filter = isDark ? '' : 'invert(1)'; });
}
document.addEventListener('DOMContentLoaded', function () {
syncAvatars();
var darkCss = document.getElementById('dark-theme');
if (darkCss) {
new MutationObserver(syncAvatars).observe(darkCss, {
attributes: true, attributeFilter: ['disabled']
});
}
});
})();
</script>
"""
socialIcons = [
{name = "github", url = "https://github.com/ada-dmitry"},
{name = "telegram", url = "https://t.me/moonlosk"},
{name = "email", url = "mailto:ada.dmitry@gmail.com"}
]
[menu]
[[menu.main]]
identifier = "github"
pre = "<span data-feather='github'></span>"
url = "https://github.com/ada-dmitry"
weight = 3
[menu.main.params]
NewPage = true
[markup]
[markup.goldmark.renderer]
unsafe = true
[markup.tableOfContents]
startLevel = 1
endLevel = 4
ordered = false
[minify]
minifyOutput = true
+59
View File
@@ -0,0 +1,59 @@
{{ define "main" }}
<section class="home-about">
<div class="avatar">
{{ if isset .Site.Params "avatarurl" }}
<img class="{{ .Site.Params.AvatarSize | default "size-m" }} theme-aware-avatar"
src='{{ .Scratch.Get "avatarImgSrc" }}'
alt="{{ .Site.Params.AvatarAltText | default "avatar" }}">
{{ end }}
</div>
<h1>{{ .Site.Title }}</h1>
{{ if isset .Site.Params "description" }}
<h2>{{ .Site.Params.Description }}</h2>
{{ end }}
</section>
<div class="flex-break"></div>
{{ if isset .Site.Params "socialicons" }}
<div class="gk-social-icons">
<ul class="gk-social-icons-list">
{{ range .Site.Params.SocialIcons }}
<li class="gk-social-icon">
<a href="{{ .url }}" target="_blank" rel="{{ if .rel }}{{ .rel }} {{ end }}noopener noreferrer" aria-label="Learn more on {{ .name }}">
<img class="svg-inject" src="{{ relURL "svg/icons/" }}{{ .name | lower }}.svg" alt="">
</a>
</li>
{{ end }}
</ul>
</div>
{{ end }}
{{ if (or
(and (fileExists "content/_index.md") .Content)
(fileExists "content/index-about.md")) }}
<section class="home-content">
{{ or .Content (readFile "index-about.md" | markdownify) }}
</section>
{{ end }}
{{ if isset .Site.Params "showpostsonhomepage" }}
<div class="home-posts list-posts">
<h2>{{ i18n (.Site.Params.ShowPostsOnHomePage | humanize) }}</h2>
{{ $posts := where .Site.Pages "Params.type" "post" }}
{{ if eq .Site.Params.ShowPostsOnHomePage "popular" }}
{{ range $posts.ByWeight | first (or .Site.Params.NumberPostsOnHomePage 4) }}
{{- partial "list-posts.html" . -}}
{{ end }}
{{ else if eq .Site.Params.ShowPostsOnHomePage "recent" }}
{{ range $posts.ByDate.Reverse | first (or .Site.Params.NumberPostsOnHomePage 4) }}
{{- partial "list-posts.html" . -}}
{{ end }}
{{ end }}
</div>
{{ end }}
{{ end }}
+59
View File
@@ -0,0 +1,59 @@
<header class="header">
<nav class="header-nav">
{{ if isset .Site.Params "avatarurl" }}
<div class="avatar">
<a href="{{ .Site.BaseURL }}">
<img src='{{ .Scratch.Get "avatarImgSrc" }}' alt="{{ .Site.Params.AvatarAltText|default "avatar" }}" class="theme-aware-avatar">
</a>
</div>
{{ end }}
<div class="nav-title">
<a class="nav-brand" href="{{ .Site.BaseURL }}">{{ .Site.Title }}</a>
</div>
<div class="nav-links">
{{ range .Site.Menus.main }}
<div class="nav-link">
<a href="{{ .URL | absURL }}" aria-label="{{ .Identifier }}" {{ if .Params.NewPage -}}target="_blank" {{- end -}}>
{{- .Pre | safeHTML }} {{ .Name }} {{ .Post | safeHTML -}}
</a>
</div>
{{ end }}
<span class="nav-icons-divider"></span>
<div class="nav-link dark-theme-toggle">
<span class="sr-only dark-theme-toggle-screen-reader-target">theme</span>
<a aria-hidden="true" role="switch">
<span class="theme-toggle-icon" data-feather="moon"></span>
</a>
</div>
<div class="nav-link" id="hamburger-menu-toggle">
<span class="sr-only hamburger-menu-toggle-screen-reader-target">menu</span>
<a aria-checked="false" aria-labelledby="hamburger-menu-toggle" id="hamburger-menu-toggle-target" role="switch">
<span data-feather="menu"></span>
</a>
</div>
<!-- For mobile -->
<ul class="nav-hamburger-list visibility-hidden">
{{ range .Site.Menus.main }}
<li class="nav-item">
<a href="{{ .URL | absURL }}" {{ if .Params.NewPage -}} target="_blank"{{- end -}}>
{{- .Pre | safeHTML }} {{ .Name }} {{ .Post | safeHTML -}}
</a>
</li>
{{ end }}
<li class="nav-item dark-theme-toggle">
<span class="sr-only dark-theme-toggle-screen-reader-target">theme</span>
<a role="switch">
<span class="theme-toggle-icon" data-feather="moon"></span>
</a>
</li>
</ul>
</div>
</nav>
</header>
+29
View File
@@ -0,0 +1,29 @@
{{ define "main" }}
<div class="container">
<h1 class="list-title">{{ .Title }}</h1>
<div class="projects-list">
{{ range .Pages.ByWeight }}
{{ $url := .Permalink }}
{{ if .Params.externalUrl }}{{ $url = .Params.externalUrl }}{{ end }}
<a class="project-card"
href="{{ $url }}"
{{ if .Params.externalUrl }}target="_blank" rel="noopener noreferrer"{{ end }}>
<div class="project-card-header">
<span class="project-title">{{ .Title }}</span>
<span data-feather="arrow-up-right" class="project-arrow"></span>
</div>
{{ if .Params.description }}
<p class="project-description">{{ .Params.description }}</p>
{{ end }}
{{ if .Params.tags }}
<div class="project-tags">
{{ range .Params.tags }}
<span class="project-tag">{{ . }}</span>
{{ end }}
</div>
{{ end }}
</a>
{{ end }}
</div>
</div>
{{ end }}
+11
View File
@@ -0,0 +1,11 @@
server {
listen 80;
root /usr/share/nginx/html;
index index.html;
location / {
try_files $uri $uri/ =404;
}
error_page 404 /404.html;
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

+12
View File
@@ -0,0 +1,12 @@
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="utf-8">
<meta http-equiv="refresh" content="0; url=https://projects.ada-dev.ru/neural">
<link rel="canonical" href="https://projects.ada-dev.ru/neural">
<title>Редирект...</title>
</head>
<body>
<a href="https://projects.ada-dev.ru/neural">Переходим...</a>
</body>
</html>
+3
View File
@@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
<path d="M11.944 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0a12 12 0 0 0-.056 0zm4.962 7.224c.1-.002.321.023.465.14a.506.506 0 0 1 .171.325c.016.093.036.306.02.472-.18 1.898-.962 6.502-1.36 8.627-.168.9-.499 1.201-.82 1.23-.696.065-1.225-.46-1.9-.902-1.056-.693-1.653-1.124-2.678-1.8-1.185-.78-.417-1.21.258-1.91.177-.184 3.247-2.977 3.307-3.23.007-.032.014-.15-.056-.212s-.174-.041-.249-.024c-.106.024-1.793 1.14-5.061 3.345-.48.33-.913.49-1.302.48-.428-.008-1.252-.241-1.865-.44-.752-.245-1.349-.374-1.297-.789.027-.216.325-.437.893-.663 3.498-1.524 5.83-2.529 6.998-3.014 3.332-1.386 4.025-1.627 4.476-1.635z"/>
</svg>

After

Width:  |  Height:  |  Size: 733 B