From d720d2644e2f07c1ef9a5abf689e1e7231464e3e Mon Sep 17 00:00:00 2001 From: Vsevolod Date: Wed, 5 Nov 2025 12:07:18 +0300 Subject: [PATCH 1/8] add README.md --- Lukianenko/README.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 Lukianenko/README.md diff --git a/Lukianenko/README.md b/Lukianenko/README.md new file mode 100644 index 0000000..8235900 --- /dev/null +++ b/Lukianenko/README.md @@ -0,0 +1 @@ +# Hello, git From 53f1c2cbf99b84c3c560dface73326cbe372e2a4 Mon Sep 17 00:00:00 2001 From: Vsevolod Date: Tue, 6 Jan 2026 07:52:52 +0300 Subject: [PATCH 2/8] add README.md --- LukianenkoVs/README.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 LukianenkoVs/README.md diff --git a/LukianenkoVs/README.md b/LukianenkoVs/README.md new file mode 100644 index 0000000..2fb36d8 --- /dev/null +++ b/LukianenkoVs/README.md @@ -0,0 +1 @@ +# Hello, git! From ab5f50679cda5904ba9fd644b3b190133bd13bec Mon Sep 17 00:00:00 2001 From: Vsevolod Date: Tue, 6 Jan 2026 08:54:54 +0300 Subject: [PATCH 3/8] Add CI/CD pipeline with automated tests --- hello.py | 2 ++ practice/2_cicd/.github/workflows/ci.yml | 22 ++++++++++++++++++++++ practice/2_cicd/main.py | 2 ++ 3 files changed, 26 insertions(+) create mode 100644 hello.py create mode 100644 practice/2_cicd/.github/workflows/ci.yml create mode 100644 practice/2_cicd/main.py diff --git a/hello.py b/hello.py new file mode 100644 index 0000000..b811495 --- /dev/null +++ b/hello.py @@ -0,0 +1,2 @@ +def hello(): + return "Hello CI/CD" diff --git a/practice/2_cicd/.github/workflows/ci.yml b/practice/2_cicd/.github/workflows/ci.yml new file mode 100644 index 0000000..b64da48 --- /dev/null +++ b/practice/2_cicd/.github/workflows/ci.yml @@ -0,0 +1,22 @@ +name: CI Pipeline + +on: [push, pull_request] + +jobs: + test: + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v3 + + - name: Set up Python + uses: actions/setup-python@v4 + with: + python-version: '3.10' + + - name: Install dependencies + run: pip install -r practice/2_cicd/requirements.txt + + - name: Run tests + run: python -m pytest practice/2_cicd/test_main.py -v diff --git a/practice/2_cicd/main.py b/practice/2_cicd/main.py new file mode 100644 index 0000000..3bddbbe --- /dev/null +++ b/practice/2_cicd/main.py @@ -0,0 +1,2 @@ +def hello(): + return "Hello, CI/CD!" From 35528c784ea33b114f92a397aedc7efab4f57cc8 Mon Sep 17 00:00:00 2001 From: Vsevolod Date: Tue, 6 Jan 2026 09:07:39 +0300 Subject: [PATCH 4/8] Add CI/CD test files --- practice/2_cicd/main.py | 2 +- practice/2_cicd/test_main.py | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 practice/2_cicd/test_main.py diff --git a/practice/2_cicd/main.py b/practice/2_cicd/main.py index 3bddbbe..d5312f2 100644 --- a/practice/2_cicd/main.py +++ b/practice/2_cicd/main.py @@ -1,2 +1,2 @@ def hello(): - return "Hello, CI/CD!" + return 'Hello, CI/CD!' diff --git a/practice/2_cicd/test_main.py b/practice/2_cicd/test_main.py new file mode 100644 index 0000000..ea182c2 --- /dev/null +++ b/practice/2_cicd/test_main.py @@ -0,0 +1,4 @@ +from main import hello + +def test_hello(): + assert hello() == 'Hello, CI/CD!' From ea4cb346bce24ddde6ba4673037179e2b706cc9d Mon Sep 17 00:00:00 2001 From: Vsevolod Date: Tue, 6 Jan 2026 09:16:33 +0300 Subject: [PATCH 5/8] Fix CI workflow - add proper Python tests --- practice/2_cicd/.github/workflows/ci.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/practice/2_cicd/.github/workflows/ci.yml b/practice/2_cicd/.github/workflows/ci.yml index b64da48..ce77de1 100644 --- a/practice/2_cicd/.github/workflows/ci.yml +++ b/practice/2_cicd/.github/workflows/ci.yml @@ -16,7 +16,11 @@ jobs: python-version: '3.10' - name: Install dependencies - run: pip install -r practice/2_cicd/requirements.txt + run: | + cd practice/2_cicd + pip install -r requirements.txt - name: Run tests - run: python -m pytest practice/2_cicd/test_main.py -v + run: | + cd practice/2_cicd + python -m pytest test_main.py -v From ee3fa3ed51fc05c79143e664a5f9c37f9a33a6a7 Mon Sep 17 00:00:00 2001 From: Vsevolod Date: Tue, 6 Jan 2026 09:21:02 +0300 Subject: [PATCH 6/8] Fix and push CI workflow --- practice/2_cicd/__pycache__/main.cpython-312.pyc | Bin 0 -> 254 bytes .../test_main.cpython-312-pytest-9.0.2.pyc | Bin 0 -> 1208 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 practice/2_cicd/__pycache__/main.cpython-312.pyc create mode 100644 practice/2_cicd/__pycache__/test_main.cpython-312-pytest-9.0.2.pyc diff --git a/practice/2_cicd/__pycache__/main.cpython-312.pyc b/practice/2_cicd/__pycache__/main.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..98b62626e2eb6b9e5736371316241bb997083f4b GIT binary patch literal 254 zcmX@j%ge<81ece_WNHBE#~=<2FhUuhK}x1Gq%gEFL@`t{YBD9mRKRFvAmcL&SQSX# zuZq_rH76%uN5R=s-`PcRB|{Nd1xWcXU1zJ9(Bjmh;us?X1GD0olGNf7UBj4yqQvBq z%;eM-kajUZ2aU}j`w{LIA2C=FH%0KqabxBvhE literal 0 HcmV?d00001 diff --git a/practice/2_cicd/__pycache__/test_main.cpython-312-pytest-9.0.2.pyc b/practice/2_cicd/__pycache__/test_main.cpython-312-pytest-9.0.2.pyc new file mode 100644 index 0000000000000000000000000000000000000000..521db9a1b5df433584ea8b1ca9a7d644bf77172b GIT binary patch literal 1208 zcmah|y>HV%6u+~bkESgYkf7bd5Y&^Pq=7aF5da$g@J_ub>^>Np+JRnLSkTo2`O7A-aFe#B#?Nr-+RCJdGDS5VRp7efPTGgdG|p6 zK#-A^D#I!$uZTk&>XRl_QVVojqa-kzIf@?5&j*EO0d#$rG>cuzjGvgk&Zx|7y1pOU zX*DGZz;$?sZzz_IfhV+|$^kSR&_3zYhl_*^w7w?Z$C#mL%gD5`bRecp9UXJp+I|}0 z7%}!zv{lTsvCR5CB4S~pzFNvS3bl9y_tVqz$&8tid!+oG(V=jj@f82a>65Jbf8uBs z=j2}Ny*%tlck)i5uX|J>BR-xTWTMhsW*f`CkyXm%Gq~a%I>1*O&@N%c_1^3qyuP(=q&ZbnbEZvB@u`6QJ;_`%PTfT2{H{x~}L>71D47kmWZO@Orj*xly!Yp6N zc~fkL+rFbh%?EzCVfkjq3S2p53ajm61$peI>gt7^+nk47o-*4Z53Ja9cOu{FSTT55 zPEKQoLj=#axill>8Q4LwRImR6|Gvex++>Y*M;R)#4S7aY`0Z2 zZO?X;*$gbNvlMk@Ne!=l9zGA1aDyTM_LO{^o_kUMXjJw>V9)D&;lXs}tAWp9f)g;} z2S(-PN`gL*)h`&ESU+K{QTRxKh#@p2Y)TfhRdf7o<${@9&Qh`;SlAMGA9F8;MUPCf zklHx@P}0E3)ZMCi-Vwe4W_|{J#cM(6Z2RtYUIvJNm^caSw@xYjPRK4fB&UZ4rRP-6 EAMxH2nE(I) literal 0 HcmV?d00001 From b8cb94c057e98ed91cc3fe83870bea705e71c4ab Mon Sep 17 00:00:00 2001 From: Vsevolod Date: Thu, 8 Jan 2026 19:33:41 +0300 Subject: [PATCH 7/8] CI/CD --- .github/workflows/ci.yml | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..e53c513 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,27 @@ +name: CI +on: + push: + branches: [ main, feature/LukianenkoVs ] + pull_request: + branches: [ main ] + +jobs: + test: + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: '3.12' + + - name: Install dependencies + run: pip install pytest + + - name: Run tests + run: | + cd practice/2_cicd + pytest From df81e2c4051f94cdd4a6faa61e03fdbbc8650b9f Mon Sep 17 00:00:00 2001 From: Vsevolod Date: Thu, 8 Jan 2026 20:00:30 +0300 Subject: [PATCH 8/8] Rename 'Test pipeline' to 'Release' workflow --- .../{test-pipeline.yml => release-v2.yml} | 0 .github/workflows/release.yml | 22 +++++++++++++++++++ 2 files changed, 22 insertions(+) rename .github/workflows/{test-pipeline.yml => release-v2.yml} (100%) create mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/test-pipeline.yml b/.github/workflows/release-v2.yml similarity index 100% rename from .github/workflows/test-pipeline.yml rename to .github/workflows/release-v2.yml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..7de7ac5 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,22 @@ +name: Release + +on: + push: + tags: + - 'v*.*.*' + +jobs: + release: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Build project + run: echo "Собираем проект..." + + - name: Create GitHub Release + uses: softprops/action-gh-release@v2 + with: + name: Release ${ { github.ref_name } } + body: Автоматический релиз новой версии