Skip to content
Open

Main #24

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
a9cdaec
Update main.cpp
oshkines Feb 28, 2026
2d62d5f
Update main.cpp
oshkines Feb 28, 2026
de47e1b
FileIgnore
oshkines Mar 4, 2026
d90317c
Lesson2
oshkines Mar 5, 2026
5802d73
Update release.yml
oshkines Mar 5, 2026
54c7558
Update main.cpp
oshkines Mar 5, 2026
2ed0fe9
Update release.yml
oshkines Mar 5, 2026
0eeecc3
Trigger Actions
oshkines Mar 5, 2026
38392f5
Update releaseAddMain.yml
oshkines Mar 5, 2026
04384be
Update release.yml
oshkines Mar 5, 2026
317a1bf
Update release.yml
oshkines Mar 5, 2026
d52f3db
Update CMakeLists.txt
oshkines Mar 5, 2026
5a106fc
Lesson6: Actual version
oshkines Mar 28, 2026
130a928
Lesson6: Actual version v.2
oshkines Mar 28, 2026
42eaa5c
correct name project Lesson6 for Update release.yml
oshkines Mar 28, 2026
37aa355
Lesson7: SFINAE + Doxygen
oshkines Apr 11, 2026
3425b3c
Merge branch 'main' of https://github.com/oshkines/otus-cpp-prof
oshkines Apr 11, 2026
5386d0a
Update release.yml
oshkines Apr 11, 2026
18d8e84
Lesson7: SFINAE + Doxygen v2.0
oshkines Apr 11, 2026
83e4ce0
Merge branch 'main' of https://github.com/oshkines/otus-cpp-prof
oshkines Apr 11, 2026
1fc4db9
Update CMakeLists.txt
oshkines Apr 11, 2026
ddb5e3b
Lesson7: SFINAE + Doxygen v3.0
oshkines Apr 11, 2026
587c363
Merge branch 'main' of https://github.com/oshkines/otus-cpp-prof
oshkines Apr 11, 2026
bda5f6c
Add Docker build and CI/CD workflow
oshkines Apr 13, 2026
f778027
Add Pages deployment
oshkines Apr 13, 2026
a3f7738
Fix documentation path in workflow
oshkines Apr 13, 2026
2461782
Finish Homework Editor
oshkines Apr 14, 2026
5b98733
Fix diagrams visibility on GH Pages
oshkines Apr 14, 2026
64a29f9
Fix diagrams visibility on GH Pages 2
oshkines Apr 14, 2026
510d2da
Fix diagrams visibility on GH Pages 3
oshkines Apr 14, 2026
bb8889e
Fix diagrams visibility on GH Pages 4
oshkines Apr 14, 2026
cf34f76
Fix diagrams visibility on GH Pages 5
oshkines Apr 14, 2026
7e9fcf9
Fix diagrams visibility on GH Pages 6
oshkines Apr 14, 2026
3d2d966
Add Doxygen documentation for bulk___
oshkines May 11, 2026
f646d4c
Add Doxygen documentation
oshkines May 11, 2026
ec7e830
Finish Homework 18 final doxygen
oshkines May 11, 2026
edc69a4
Re-run docs generation
oshkines May 11, 2026
9e29374
Fix: add check for negative block size
oshkines May 13, 2026
9ec844e
Finish Homework 22
oshkines Jun 11, 2026
ee018c7
Lesson 26
oshkines Jun 23, 2026
ce57639
Finish Homework 10 Lesson30
oshkines Jul 5, 2026
db73c67
Finish Homework 32 sqlite3server
oshkines Jul 9, 2026
d8bfffd
Finish Homework 30 addressing comments
oshkines Jul 10, 2026
7545975
Finish Homework 32
oshkines Jul 10, 2026
94aa2a6
Finish Homework 32. Work on mistakes.
oshkines Jul 11, 2026
fcf2e33
Finish Homework 34
oshkines Jul 16, 2026
0ee2eaf
Finish Homework 37
oshkines Jul 26, 2026
ee14f7a
Finish Homework 37. Workflow
oshkines Jul 26, 2026
81dd23d
Update docs.yml
oshkines Jul 26, 2026
78919b1
Finish Homework 37. finish
oshkines Jul 26, 2026
1fd39fc
Project kafka Order Sender
oshkines Aug 5, 2026
d0de9a2
Add HTML documentation
oshkines Aug 5, 2026
54a7335
Architecture Design Report
oshkines Aug 6, 2026
fc17525
korrektirovki
oshkines Aug 10, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
68 changes: 39 additions & 29 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -1,40 +1,50 @@
name: 'C++ CI'
name: Build and Release

on:
push:
branches:
- master
- feature/github_actions
tags:
- 'v*'

jobs:
build:
release:
runs-on: ubuntu-latest
permissions:
contents: write
pages: write
id-token: write
steps:
- uses: actions/checkout@v2
with:
submodules: true
- run: sudo apt-get update && sudo apt-get install libboost-test-dev -y
- run: cmake . -DPATCH_VERSION=${{ github.run_number }} -DWITH_BOOST_TEST=ON
- run: cmake --build .
- run: cmake --build . --target test
- run: cmake --build . --target package
- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- uses: actions/checkout@v4

- name: Build in Docker
run: |
# 1. Собираем образ
docker build -t builder .

# 2. Создаем временный контейнер для копирования файлов
docker create --name extractor builder

# 3. Подготавливаем папки на сервере GitHub
mkdir -p dist

# 4. Копируем .deb пакет из папки /output контейнера
docker cp extractor:/output/. ./dist/

# 5. Копируем документацию.
# Путь /build/docs/html так как в Doxyfile OUTPUT_DIRECTORY = docs
docker cp extractor:/build/docs/html/. ./dist-docs

# 6. Удаляем контейнер
docker rm extractor

- name: Create GitHub Release
uses: softprops/action-gh-release@v1
with:
tag_name: ${{ github.run_number }}
release_name: Release ${{ github.run_number }}
draft: false
prerelease: false
- name: Upload Release Asset
id: upload-release-asset
uses: actions/upload-release-asset@v1
files: dist/*.deb
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Deploy to GitHub Pages
uses: JamesIves/github-pages-deploy-action@v4
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./helloworld-0.0.${{ github.run_number }}-Linux.deb
asset_name: helloworld-0.0.${{ github.run_number }}-Linux.deb
asset_content_type: application/vnd.debian.binary-package
folder: dist-docs
branch: gh-pages
12 changes: 12 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
**/.idea/
**/.settings/
**/.vscode/
**/build/
**/debug/
**/release/
html/
latex/
*.deb
dist/
output/
*.pdb
27 changes: 27 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "Отладка VS (Visual Studio)",
"type": "cppvsdbg",
"request": "launch",
"program": "${workspaceFolder}/build/Debug/kafka_order_sender.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}/build/Debug",
"environment": [],
"console": "externalTerminal"
},
{
"name": "Запуск без отладки",
"type": "cppvsdbg",
"request": "launch",
"program": "${workspaceFolder}/build/Release/kafka_order_sender.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}/build/Release",
"environment": [],
"console": "externalTerminal"
}
]
}
26 changes: 26 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
{
"cmake.sourceDirectory": "${workspaceFolder}",
"cmake.buildDirectory": "${workspaceFolder}/build",
"cmake.generator": "Visual Studio 18 2026",
"cmake.configureSettings": {
"CMAKE_TOOLCHAIN_FILE": "C:/vcpkg/scripts/buildsystems/vcpkg.cmake"
},
"cmake.buildConfig": "Debug",
"C_Cpp.default.cppStandard": "c++17",
"C_Cpp.default.includePath": [
"${workspaceFolder}/src",
"${workspaceFolder}/src/config",
"${workspaceFolder}/src/kafka",
"${workspaceFolder}/src/parser",
"${workspaceFolder}/src/cache",
"${workspaceFolder}/src/utils",
"C:/vcpkg/installed/x64-windows/include"
],
"files.associations": {
"*.hpp": "cpp",
"*.cpp": "cpp",
"*.json": "json"
},
"editor.formatOnSave": true,
"editor.rulers": [100]
}
90 changes: 90 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "CMake Configure",
"type": "shell",
"command": "cmake",
"args": [
"..",
"-DCMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake",
"-DCMAKE_BUILD_TYPE=Debug"
],
"options": {
"cwd": "${workspaceFolder}/build"
},
"group": {
"kind": "build",
"isDefault": false
},
"problemMatcher": []
},
{
"label": "CMake Build (Debug)",
"type": "shell",
"command": "cmake",
"args": [
"--build",
".",
"--config",
"Debug"
],
"options": {
"cwd": "${workspaceFolder}/build"
},
"group": {
"kind": "build",
"isDefault": true
},
"problemMatcher": [
"$msCompile"
],
"dependsOn": [
"CMake Configure"
]
},
{
"label": "CMake Build (Release)",
"type": "shell",
"command": "cmake",
"args": [
"--build",
".",
"--config",
"Release"
],
"options": {
"cwd": "${workspaceFolder}/build"
},
"group": {
"kind": "build",
"isDefault": false
},
"problemMatcher": [
"$msCompile"
],
"dependsOn": [
"CMake Configure"
]
},
{
"label": "Clean Build",
"type": "shell",
"command": "cmake",
"args": [
"--build",
".",
"--target",
"clean"
],
"options": {
"cwd": "${workspaceFolder}/build"
},
"group": {
"kind": "build",
"isDefault": false
},
"problemMatcher": []
}
]
}
Loading