7 Commits

Author SHA1 Message Date
7c3d490685 Release v1.0.26
All checks were successful
Release Build / create-docker-image (push) Successful in 3m33s
Release Build / create-release (push) Successful in 7m43s
2025-07-28 10:47:23 +06:00
aff61e32fc Release v1.0.0 2025-07-28 10:46:51 +06:00
1a0207017a Release v1.0.25
Some checks failed
Release Build / create-docker-image (push) Successful in 3m30s
Release Build / create-release (push) Failing after 0s
2025-07-28 10:16:51 +06:00
638dc104f8 Release v1.0.0 2025-07-28 10:13:37 +06:00
8b420c500f Remove bin/hello-api-1.0.0 from repository (already in .gitignore) 2025-07-28 10:06:36 +06:00
078c32b929 merged 2025-07-28 10:04:02 +06:00
e4a2fccef4 init local 2025-07-28 09:56:39 +06:00
6 changed files with 26 additions and 9 deletions

View File

@@ -53,7 +53,7 @@ jobs:
runs-on: ubuntu-latest
container:
# image: golang:1.21
image: ${DOCKERHUB_USERNAME}/my-build-golang-runner:latest
image: ${{ secrets.DOCKERHUB_USERNAME }}/my-build-golang-runner:latest
needs: create-docker-image
steps:
- name: Checkout repository

View File

@@ -142,13 +142,27 @@ curl -X POST http://localhost:8080/api/v1/echo \
## 🚀 CI/CD
При создании тега (например, `v1.1.0`) автоматически:
При создании тега (например, `v1.1.20`) автоматически:
1. Собираются бинарники для всех платформ
2. Создается Docker образ для Linux AMD64/ARM64
3. Образ публикуется в Docker Hub
4. Создается релиз в Gitea с бинарниками
Дополнительно `.gitea/workflows/build_build.yaml` предназначен для автоматизации процесса сборки и публикации Docker-образов билдера - то есть образа который будет использоваться в основном процессе сборки и релиза. Этот workflow запускается (триггерится) автоматически при пуше тега, начинающегося с `builder-` (например, `builder-v1.2.3`), в репозиторий на сервере Gitea.
Когда такой тег появляется, workflow выполняет следующие задачи:
- Клонирует репозиторий и переключается на соответствующую версию кода.
- Настраивает окружение для сборки Docker-образов с поддержкой мультиплатформенности (amd64 и arm64).
- Выполняет аутентификацию в Docker Hub.
- Собирает и публикует Docker-образы для разных архитектур (tag DOCKERHUB_USERNAME/my-build-golang-runnerr:builder-v1.2.3 и tag DOCKERHUB_USERNAME/my-build-golang-runner:latest.
- Для сборки используется специальный Dockerfile (`Dockerfile.builder`) для создания образа билдера.
Таким образом, данный файл обеспечивает автоматическую сборку и публикацию артефактов проекта при выпуске новых версий, что упрощает процесс релиза и гарантирует наличие актуальных образов и бинарников для пользователей.
## 📄 Лицензия
MIT License

Binary file not shown.

View File

@@ -7,7 +7,7 @@ import (
"github.com/gin-gonic/gin"
)
const version = "1.0.0"
const version = "1.0.26"
func main() {
// Set Gin mode

View File

@@ -17,9 +17,12 @@ test:
# Задача для создания релиза
# Использование: make release VERSION=1.0.25
release:
# @if [ -z "$(VERSION)" ]; then \
# echo "Ошибка: Необходимо указать версию"; \
# echo "Использование: make release VERSION=1.0.25"; \
# exit 1; \
# fi
@if [ -z "$(VERSION)" ]; then \
echo "Ошибка: Необходимо указать версию в формате v1.0.25"; \
echo "Использование: make release VERSION=1.0.25"; \
exit 1; \
fi
@./scripts/release-interactive.sh $(VERSION)
release-interactive:
@./scripts/release-interactive.sh