From 0968f7bf7d4d7679909de3ef2245289b5eaa050e Mon Sep 17 00:00:00 2001 From: sovva6-14 Date: Fri, 5 Jun 2026 22:39:49 +0300 Subject: [PATCH 01/25] docs: add PR template --- .github/pull_request_template.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 .github/pull_request_template.md diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 000000000..1a68db5e5 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,13 @@ +## Goal + + +## Changes +- + +## Testing + + +## Checklist +- [ ] Title is a clear sentence (≤ 70 chars) +- [ ] Commits are signed (`git log --show-signature`) +- [ ] `submissions/labN.md` updated From a75ef4ed4a1af148346ff8ef5b1a6298de272415 Mon Sep 17 00:00:00 2001 From: sovva6-14 Date: Sat, 6 Jun 2026 10:06:21 +0300 Subject: [PATCH 02/25] docs: add PR template Signed-off-by: sovva6-14 --- .github/pull_request_template.md | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 1a68db5e5..c4b60e2b8 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -1,13 +1,19 @@ ## Goal +Complete lab 1 DevOps ## Changes -- +* Add SSH key (github profile + locally) +* New branch feature/lab1 +* Start submission lab1 +* Finish submission lab1 ## Testing +* Signature ``` git log --show-signature -1 ``` is Good and verified +* Testing methods curl ## Checklist -- [ ] Title is a clear sentence (≤ 70 chars) -- [ ] Commits are signed (`git log --show-signature`) -- [ ] `submissions/labN.md` updated +- ☑️ Title is a clear sentence (≤ 70 chars) +- ☑️ Commits are signed (`git log --show-signature`) +- ☑️ `submissions/lab1.md` updated From 8450a05e796003c090229293b2c3a18baaa399b7 Mon Sep 17 00:00:00 2001 From: sovva6-14 Date: Sat, 6 Jun 2026 14:32:18 +0300 Subject: [PATCH 03/25] docs: upstream moved while you worked Signed-off-by: sovva6-14 From be8c121180d4e5fa547d0a73b7b5cb75f8caed48 Mon Sep 17 00:00:00 2001 From: Sovva6-14 Date: Mon, 8 Jun 2026 00:53:43 +0300 Subject: [PATCH 04/25] docs: add PR template Signed-off-by: Sovva6-14 --- .github/pull_request_template.md | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index c4b60e2b8..37bfc69f5 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -1,3 +1,4 @@ + ## Goal Complete lab 1 DevOps From 9a2873eaf96384cdb940b1dd9af9020723eab76d Mon Sep 17 00:00:00 2001 From: Sovva6-14 Date: Tue, 9 Jun 2026 15:24:36 +0300 Subject: [PATCH 05/25] wip(lab2): Work progress Signed-off-by: Sovva6-14 --- submissions/lab2.md | 79 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 submissions/lab2.md diff --git a/submissions/lab2.md b/submissions/lab2.md new file mode 100644 index 000000000..f995e9fab --- /dev/null +++ b/submissions/lab2.md @@ -0,0 +1,79 @@ +#important work +```git rev-parse HEAD``` + +66bbd4db9228bc9a4cab7439746b993749c026ab + +```git cat-file -t HEAD``` + +commit + +```git cat-file -p HEAD``` + +tree 20bda2b2625085720751a3e794f82e5625a409b3 +parent 170000c9d1b5e90a37b6f1a9b826552d53051773 +author Dmitrii Creed 1780392934 +0400 +committer Dmitrii Creed 1780394046 +0400 + +```git cat-file -p 20bda2b2625085720751a3e794f82e5625a409b3``` + +100644 blob 1c0a1e94b7bbdd951f456cda51af6b8484cc3cee .gitignore +100644 blob d10c04c6e7e0014f4fe883599c11747c15012d4e README.md +040000 tree 7d0898a908e274ea809722844cdbd836f3b1c05a app +040000 tree 6db686e340ecdd318fa43375e26254293371942a labs +040000 tree 3f11973a71be5915539cb53313149aa319d69cb5 lectures + +```git cat-file -p 7d0898a908e274ea809722844cdbd836f3b1c05a``` + +100644 blob 8ba1a5234925005265281bf7809153487097373c .golangci.yml +100644 blob 24ab0258318f4aac6ec7d3a924a1d6f05209b446 Makefile +100644 blob 1aed7f8904100182d3fb4e1b90dbf3bd5a126beb README.md +100644 blob b76e91cf916dcebc1d6898e22012c737c117003a go.mod +100644 blob c534979c5a3aa0e032fb61e1562d4bd343ecaf4c handlers.go +100644 blob 9dff2e3e5b734f9afa4bc26c30d784bee8aa327c handlers_test.go +100644 blob e258ffcfe44ebc6923eb78d51c63fc2317aa1dfd main.go +100644 blob ecf4fd2edd38dcbc82459122660aa424342f9148 seed.json +100644 blob 4a9ca2b3a371cc43f8762095a6944cd96ea7d7d0 store.go +100644 blob 3b8ff9d45ae9e6781ffe333ccc7eff40da35a1bf store_test.go + +```ls -la .git/``` + +total 25 +drwxr-xr-x 1 UserName 197121 0 Jun 9 15:17 ./ +drwxr-xr-x 1 UserName 197121 0 Jun 9 15:18 ../ +-rw-r--r-- 1 UserName 197121 80 Jun 8 00:20 COMMIT_EDITMSG +-rw-r--r-- 1 UserName 197121 189 Jun 8 00:34 config +-rw-r--r-- 1 UserName 197121 73 Jun 4 00:25 description +-rw-r--r-- 1 UserName 197121 0 Jun 9 15:22 FETCH_HEAD +-rw-r--r-- 1 UserName 197121 29 Jun 9 15:17 HEAD +drwxr-xr-x 1 UserName 197121 0 Jun 4 00:25 hooks/ +-rw-r--r-- 1 UserName 197121 3055 Jun 9 15:16 index +drwxr-xr-x 1 UserName 197121 0 Jun 4 00:25 info/ +drwxr-xr-x 1 UserName 197121 0 Jun 4 00:25 logs/ +drwxr-xr-x 1 UserName 197121 0 Jun 9 15:22 objects/ +-rw-r--r-- 1 UserName 197121 46 Jun 4 00:32 packed-refs +drwxr-xr-x 1 UserName 197121 0 Jun 4 00:25 refs/ + +```cat .git/HEAD``` + +ref: refs/heads/feature/lab2 + +```ls .git/refs/heads/``` + +feature/ main + +```ls .git/objects/ | head``` + +0a/ +0c/ +0e/ +0f/ +13/ +1a/ +27/ +38/ +3a/ +40/ + +```find .git/objects -type f | wc -l``` + +29 \ No newline at end of file From cf5cb873c6d63606257a3ac877d1530b12f3976d Mon Sep 17 00:00:00 2001 From: Sovva6-14 Date: Tue, 9 Jun 2026 15:31:21 +0300 Subject: [PATCH 06/25] Task1 Done --- DevOps-Intro | 1 + submissions/lab2.md | 56 ++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 56 insertions(+), 1 deletion(-) create mode 160000 DevOps-Intro diff --git a/DevOps-Intro b/DevOps-Intro new file mode 160000 index 000000000..be8c12118 --- /dev/null +++ b/DevOps-Intro @@ -0,0 +1 @@ +Subproject commit be8c121180d4e5fa547d0a73b7b5cb75f8caed48 diff --git a/submissions/lab2.md b/submissions/lab2.md index f995e9fab..d1480a483 100644 --- a/submissions/lab2.md +++ b/submissions/lab2.md @@ -1,4 +1,6 @@ #important work + +AND NOW I'M DID IN STUPID :) ```git rev-parse HEAD``` 66bbd4db9228bc9a4cab7439746b993749c026ab @@ -76,4 +78,56 @@ feature/ main ```find .git/objects -type f | wc -l``` -29 \ No newline at end of file +29 + + +```git log --oneline``` + +66bbd4d (HEAD -> feature/lab2, main) docs(lab1): align Task 3 GitHub Community engagement with other courses +170000c Merge pull request #907 from inno-devops-labs/s26-refactor +d50436c fix(lab12,gitignore): Spin SDK (WAGI removed in Spin 3.x); minimal student-safe gitignore +4705a3d fix(.gitignore): stop ignoring submissions/ +4082340 docs(grading,lab11,lab12): bonus labs to 4+4+2; grading rebalanced to 70-14-5-20-30 = 139% +7b16dc5 docs(lab10): switch deploy targets to card-free platforms — HF Spaces + Cloudflare Tunnel +4a05efa docs(labs): scaffold the skill — labs 5-12 stop handing students copy-paste answers +8387fb9 docs(lab3): scaffold the skill — students write their own CI yaml; GitLab as parallel path +983fba0 docs(course): rewrite README + add .gitignore for project-threaded structure +7914e37 docs(labs): refactor 12 labs to 6+4+2 (lab1) / 6+4+bonus (lab2-10) / 10pts (lab11-12) +aa5aa1c docs(lectures): rewrite lec1-10 + add reading11/12 for project-threaded course +b8fc480 feat(app): introduce QuickNotes Go service for project-threaded course +6f044dd Replace IPFS with Nix +0a87e1c refactor: reduce prescriptiveness in GitLab CI instructions +eaea715 feat: add GitLab CI alternative instructions to lab3 +d6b6a03 Update lab2 +87810a0 feat: remove old Exam Exemption Policy +1e1c32b feat: update structure +6c27ee7 feat: publish lecs 9 & 10 +1826c36 feat: update lab7 +3049f08 feat: publish lec8 +da8f635 feat: introduce all labs and revised structure +04b174e feat: publish lab and lec #5 +67f12f1 feat: publish labs 4&5, revise others +82d1989 feat: publish lab3 and lec3 +3f80c83 feat: publish lec2 +499f2ba feat: publish lab2 +af0da89 feat: update lab1 +74a8c27 Publish lab1 +f0485c0 Publish lec1 +31dd11b Publish README.md + +```git reflog``` + +66bbd4d (HEAD -> feature/lab2, main) HEAD@{0}: reset: moving to HEAD~2 +03cdb25 HEAD@{1}: commit: lab1 +9a2873e HEAD@{2}: commit: wip(lab2): Work progress +66bbd4d (HEAD -> feature/lab2, main) HEAD@{3}: checkout: moving from main to feature/lab2 +66bbd4d (HEAD -> feature/lab2, main) HEAD@{4}: checkout: moving from feature/lab1 to main +dce058f (feature/lab1) HEAD@{5}: checkout: moving from main to feature/lab1 +66bbd4d (HEAD -> feature/lab2, main) HEAD@{6}: checkout: moving from feature/lab1 to main +dce058f (feature/lab1) HEAD@{7}: commit: docs(lab1): start submission +66bbd4d (HEAD -> feature/lab2, main) HEAD@{8}: checkout: moving from main to feature/lab1 +66bbd4d (HEAD -> feature/lab2, main) HEAD@{9}: clone: from https://github.com/sovva6-14/DevOps-Intro.git + +```git reset --hard 9a2873e``` + +HEAD is now at 9a2873e wip(lab2): Work progress \ No newline at end of file From ab8e9adce20683c646e4576e11609ae44a35d015 Mon Sep 17 00:00:00 2001 From: Sovva6-14 Date: Tue, 9 Jun 2026 15:33:50 +0300 Subject: [PATCH 07/25] Task1 Done --- .github/pull_request_template.md | 20 ++++++++++++++++++++ DevOps-Intro | 1 - 2 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 .github/pull_request_template.md delete mode 160000 DevOps-Intro diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 000000000..37bfc69f5 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,20 @@ + +## Goal + +Complete lab 1 DevOps + +## Changes +* Add SSH key (github profile + locally) +* New branch feature/lab1 +* Start submission lab1 +* Finish submission lab1 + +## Testing + +* Signature ``` git log --show-signature -1 ``` is Good and verified +* Testing methods curl + +## Checklist +- ☑️ Title is a clear sentence (≤ 70 chars) +- ☑️ Commits are signed (`git log --show-signature`) +- ☑️ `submissions/lab1.md` updated diff --git a/DevOps-Intro b/DevOps-Intro deleted file mode 160000 index be8c12118..000000000 --- a/DevOps-Intro +++ /dev/null @@ -1 +0,0 @@ -Subproject commit be8c121180d4e5fa547d0a73b7b5cb75f8caed48 From 04b5e8652afe446d7a8219a1ced1b15a936613aa Mon Sep 17 00:00:00 2001 From: Sovva6-14 Date: Tue, 9 Jun 2026 15:44:28 +0300 Subject: [PATCH 08/25] docs: upstream moved while you worked Signed-off-by: Sovva6-14 From 19847ffff7d50dd92c80cc472f97d19f8fb7be96 Mon Sep 17 00:00:00 2001 From: Sovva6-14 Date: Tue, 9 Jun 2026 15:45:36 +0300 Subject: [PATCH 09/25] Lab2 Done --- submissions/lab2.md | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/submissions/lab2.md b/submissions/lab2.md index d1480a483..772b90149 100644 --- a/submissions/lab2.md +++ b/submissions/lab2.md @@ -130,4 +130,31 @@ dce058f (feature/lab1) HEAD@{7}: commit: docs(lab1): start submission ```git reset --hard 9a2873e``` -HEAD is now at 9a2873e wip(lab2): Work progress \ No newline at end of file +HEAD is now at 9a2873e wip(lab2): Work progress + +```git push origin "v0.1.0-lab2-Sovva"``` + + +Enumerating objects: 1, done. +Counting objects: 100% (1/1), done. +Writing objects: 100% (1/1), 420 bytes | 420.00 KiB/s, done. +Total 1 (delta 0), reused 0 (delta 0), pack-reused 0 (from 0) +To https://github.com/sovva6-14/DevOps-Intro.git + * [new tag] v0.1.0-lab2-Sovva -> v0.1.0-lab2-Sovva + + ```git commit -S -s --allow-empty -m "docs: upstream moved while you worked"``` + +[feature/lab2 04b5e86] docs: upstream moved while you worked + + +```git push --force-with-lease origin feature/lab2``` + +Enumerating objects: 14, done. +Counting objects: 100% (14/14), done. +Delta compression using up to 20 threads +Compressing objects: 100% (10/10), done. +Writing objects: 100% (13/13), 3.95 KiB | 3.96 MiB/s, done. +Total 13 (delta 7), reused 6 (delta 1), pack-reused 0 (from 0) +remote: Resolving deltas: 100% (7/7), completed with 1 local object. +To https://github.com/sovva6-14/DevOps-Intro.git + + be131f7...04b5e86 feature/lab2 -> feature/lab2 (forced update) \ No newline at end of file From 55731b8b634d42b24fb8ec03efb2d7b96e9413b3 Mon Sep 17 00:00:00 2001 From: Sovva6-14 Date: Tue, 9 Jun 2026 15:55:33 +0300 Subject: [PATCH 10/25] delete stupid --- submissions/lab2.md | 1 - 1 file changed, 1 deletion(-) diff --git a/submissions/lab2.md b/submissions/lab2.md index 772b90149..bf3de723c 100644 --- a/submissions/lab2.md +++ b/submissions/lab2.md @@ -1,6 +1,5 @@ #important work -AND NOW I'M DID IN STUPID :) ```git rev-parse HEAD``` 66bbd4db9228bc9a4cab7439746b993749c026ab From 657b8534bf49f252fbb8aff45cf09c91fa1d3366 Mon Sep 17 00:00:00 2001 From: Sovva6-14 Date: Tue, 9 Jun 2026 16:04:36 +0300 Subject: [PATCH 11/25] test Verified --- submissions/lab2.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/submissions/lab2.md b/submissions/lab2.md index bf3de723c..88a96dca6 100644 --- a/submissions/lab2.md +++ b/submissions/lab2.md @@ -1,5 +1,7 @@ #important work +#test commit Verified + ```git rev-parse HEAD``` 66bbd4db9228bc9a4cab7439746b993749c026ab From 51038bb16e3215c0a459f8336961467f26eebb2a Mon Sep 17 00:00:00 2001 From: Sovva6-14 Date: Tue, 9 Jun 2026 16:06:01 +0300 Subject: [PATCH 12/25] test again :) --- submissions/lab2.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submissions/lab2.md b/submissions/lab2.md index 88a96dca6..709a1e46d 100644 --- a/submissions/lab2.md +++ b/submissions/lab2.md @@ -1,6 +1,6 @@ #important work -#test commit Verified +#test again commit Verified ```git rev-parse HEAD``` From a56c59b897d6116c66912e9c0c4c0150bd94dc45 Mon Sep 17 00:00:00 2001 From: Sovva6-14 Date: Tue, 9 Jun 2026 16:07:33 +0300 Subject: [PATCH 13/25] verified signature finaly --- submissions/lab2.md | 1 - 1 file changed, 1 deletion(-) diff --git a/submissions/lab2.md b/submissions/lab2.md index 709a1e46d..7b95b50d1 100644 --- a/submissions/lab2.md +++ b/submissions/lab2.md @@ -1,6 +1,5 @@ #important work -#test again commit Verified ```git rev-parse HEAD``` From 0d27cbe57ca041249cd8c39f01e558dffc842344 Mon Sep 17 00:00:00 2001 From: Sovva6-14 Date: Wed, 17 Jun 2026 18:02:04 +0300 Subject: [PATCH 14/25] create feature/lab3, ci, update pr --- .github/pull_request_template.md | 4 +- .github/workflows/ci.yml | 83 ++++++++++++++++++++++++++++++++ submissions/lab3.md | 2 + 3 files changed, 87 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/ci.yml create mode 100644 submissions/lab3.md diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 37bfc69f5..1b48e4991 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -1,13 +1,13 @@ ## Goal -Complete lab 1 DevOps +Complete lab 3 DevOps ## Changes * Add SSH key (github profile + locally) * New branch feature/lab1 * Start submission lab1 -* Finish submission lab1 +* Added submissions/lab3.md ## Testing diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 000000000..427764494 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,83 @@ +name: PR Gate CI + +on: + push: + branches: [ main ] + paths: + - 'app/**' + - '.github/workflows/ci.yml' + pull_request: + branches: [ main ] + paths: + - 'app/**' + - '.github/workflows/ci.yml' + +permissions: + contents: read # only read + +jobs: + # ---------- vet ---------- + vet: + name: go vet + runs-on: ubuntu-24.04 # runner version + strategy: + matrix: + go-version: [ '1.23', '1.24' ] + fail-fast: false + defaults: + run: + working-directory: app + steps: + - name: Checkout code + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - name: Setup Go + uses: actions/setup-go@f111f3307d8850f501ac008e886eec1e1932a34a # v5.3.0 + with: + go-version: ${{ matrix.go-version }} + cache: true + - name: Run go vet + run: go vet ./... + + # ---------- test ---------- + test: + name: go test -race + runs-on: ubuntu-24.04 + strategy: + matrix: + go-version: [ '1.23', '1.24' ] + fail-fast: false + defaults: + run: + working-directory: app + steps: + - name: Checkout code + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - name: Setup Go + uses: actions/setup-go@f111f3307d8850f501ac008e886eec1e1932a34a # v5.3.0 + with: + go-version: ${{ matrix.go-version }} + cache: true + - name: Run tests with race detector + run: go test -race -count=1 ./... + + # ---------- lint ---------- + lint: + name: golangci-lint + runs-on: ubuntu-24.04 + defaults: + run: + working-directory: app + steps: + - name: Checkout code + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - name: Setup Go + uses: actions/setup-go@f111f3307d8850f501ac008e886eec1e1932a34a # v5.3.0 + with: + go-version: '1.24' + cache: true + - name: Run golangci-lint + uses: golangci/golangci-lint-action@55c2c1448f86e01eaae002a5a3a9624417608d84 # v6.5.0 + with: + version: v2.5.0 + working-directory: app + args: --timeout=5m \ No newline at end of file diff --git a/submissions/lab3.md b/submissions/lab3.md new file mode 100644 index 000000000..850cdf726 --- /dev/null +++ b/submissions/lab3.md @@ -0,0 +1,2 @@ +#GitHub Actions + From 16c2493387d563a45b353c4576de721830798165 Mon Sep 17 00:00:00 2001 From: Sovva6-14 Date: Wed, 17 Jun 2026 18:03:09 +0300 Subject: [PATCH 15/25] pr update --- .github/pull_request_template.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 1b48e4991..8e62e82d3 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -4,9 +4,6 @@ Complete lab 3 DevOps ## Changes -* Add SSH key (github profile + locally) -* New branch feature/lab1 -* Start submission lab1 * Added submissions/lab3.md ## Testing From 239140acd855772bc4820f82007a5a912d561b49 Mon Sep 17 00:00:00 2001 From: sovva <46525496+sovva6-14@users.noreply.github.com> Date: Wed, 17 Jun 2026 18:17:14 +0300 Subject: [PATCH 16/25] Create go.yml test go configure default --- .github/workflows/go.yml | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 .github/workflows/go.yml diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml new file mode 100644 index 000000000..0b443f376 --- /dev/null +++ b/.github/workflows/go.yml @@ -0,0 +1,28 @@ +# This workflow will build a golang project +# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-go + +name: Go + +on: + push: + branches: [ "main" ] + pull_request: + branches: [ "main" ] + +jobs: + + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Set up Go + uses: actions/setup-go@v4 + with: + go-version: '1.20' + + - name: Build + run: go build -v ./... + + - name: Test + run: go test -v ./... From 82e7fcf11fcf2e35b5b0ab5562f64bc29c89623e Mon Sep 17 00:00:00 2001 From: sovva <46525496+sovva6-14@users.noreply.github.com> Date: Wed, 17 Jun 2026 18:21:33 +0300 Subject: [PATCH 17/25] Create ci.yml Create ci.yml --- .github/workflows/makefile.yml | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 .github/workflows/makefile.yml diff --git a/.github/workflows/makefile.yml b/.github/workflows/makefile.yml new file mode 100644 index 000000000..8789c17bf --- /dev/null +++ b/.github/workflows/makefile.yml @@ -0,0 +1,27 @@ +name: Makefile CI + +on: + push: + branches: [ "main" ] + pull_request: + branches: [ "main" ] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + + - name: configure + run: ./configure + + - name: Install dependencies + run: make + + - name: Run check + run: make check + + - name: Run distcheck + run: make distcheck From 58c3b242b64bc67b4642205d16c504e09d4c0d84 Mon Sep 17 00:00:00 2001 From: sovva <46525496+sovva6-14@users.noreply.github.com> Date: Wed, 17 Jun 2026 18:26:26 +0300 Subject: [PATCH 18/25] Create pr_gate.yml --- .github/workflows/pr_gate.yml | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 .github/workflows/pr_gate.yml diff --git a/.github/workflows/pr_gate.yml b/.github/workflows/pr_gate.yml new file mode 100644 index 000000000..207161536 --- /dev/null +++ b/.github/workflows/pr_gate.yml @@ -0,0 +1,33 @@ +name: PR Gate CI + +on: + push: + branches: [ "main" ] + paths: + - 'app/**' + - '.github/workflows/ci.yml' + pull_request: + branches: [ main ] + paths: + - 'app/**' + - '.github/workflows/ci.yml' + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 + + - name: configure + run: ./configure + + - name: Install dependencies + run: make + + - name: Run check + run: make check + + - name: Run distcheck + run: make distcheck From eaf23fb096445a6e35a45ae9ddfdcd96553add51 Mon Sep 17 00:00:00 2001 From: sovva <46525496+sovva6-14@users.noreply.github.com> Date: Wed, 17 Jun 2026 18:35:20 +0300 Subject: [PATCH 19/25] Create prgate.yml pls...... --- .github/workflows/prgate.yml | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 .github/workflows/prgate.yml diff --git a/.github/workflows/prgate.yml b/.github/workflows/prgate.yml new file mode 100644 index 000000000..89754ba8b --- /dev/null +++ b/.github/workflows/prgate.yml @@ -0,0 +1,27 @@ +name: Makefile CI + +on: + push: + branches: [ "main" ] + pull_request: + branches: [ "main" ] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 + + - name: configure + run: ./configure + + - name: Install dependencies + run: make + + - name: Run check + run: make check + + - name: Run distcheck + run: make distcheck From 428accdb8c6611faa7bc7983a2bafa3d6d89e90a Mon Sep 17 00:00:00 2001 From: sovva <46525496+sovva6-14@users.noreply.github.com> Date: Wed, 17 Jun 2026 18:40:50 +0300 Subject: [PATCH 20/25] Update prgate.yml --- .github/workflows/prgate.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/prgate.yml b/.github/workflows/prgate.yml index 89754ba8b..8789c17bf 100644 --- a/.github/workflows/prgate.yml +++ b/.github/workflows/prgate.yml @@ -12,7 +12,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 + - uses: actions/checkout@v4 - name: configure run: ./configure From 9c4b404ae09091af79dabb1e12c601df4011da71 Mon Sep 17 00:00:00 2001 From: Sovva6-14 Date: Wed, 17 Jun 2026 18:44:17 +0300 Subject: [PATCH 21/25] delete .yml files --- .github/workflows/go.yml | 28 ---------------------------- .github/workflows/makefile.yml | 27 --------------------------- .github/workflows/pr_gate.yml | 33 --------------------------------- .github/workflows/prgate.yml | 27 --------------------------- 4 files changed, 115 deletions(-) delete mode 100644 .github/workflows/go.yml delete mode 100644 .github/workflows/makefile.yml delete mode 100644 .github/workflows/pr_gate.yml delete mode 100644 .github/workflows/prgate.yml diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml deleted file mode 100644 index 0b443f376..000000000 --- a/.github/workflows/go.yml +++ /dev/null @@ -1,28 +0,0 @@ -# This workflow will build a golang project -# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-go - -name: Go - -on: - push: - branches: [ "main" ] - pull_request: - branches: [ "main" ] - -jobs: - - build: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - - name: Set up Go - uses: actions/setup-go@v4 - with: - go-version: '1.20' - - - name: Build - run: go build -v ./... - - - name: Test - run: go test -v ./... diff --git a/.github/workflows/makefile.yml b/.github/workflows/makefile.yml deleted file mode 100644 index 8789c17bf..000000000 --- a/.github/workflows/makefile.yml +++ /dev/null @@ -1,27 +0,0 @@ -name: Makefile CI - -on: - push: - branches: [ "main" ] - pull_request: - branches: [ "main" ] - -jobs: - build: - - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v4 - - - name: configure - run: ./configure - - - name: Install dependencies - run: make - - - name: Run check - run: make check - - - name: Run distcheck - run: make distcheck diff --git a/.github/workflows/pr_gate.yml b/.github/workflows/pr_gate.yml deleted file mode 100644 index 207161536..000000000 --- a/.github/workflows/pr_gate.yml +++ /dev/null @@ -1,33 +0,0 @@ -name: PR Gate CI - -on: - push: - branches: [ "main" ] - paths: - - 'app/**' - - '.github/workflows/ci.yml' - pull_request: - branches: [ main ] - paths: - - 'app/**' - - '.github/workflows/ci.yml' - -jobs: - build: - - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - - - name: configure - run: ./configure - - - name: Install dependencies - run: make - - - name: Run check - run: make check - - - name: Run distcheck - run: make distcheck diff --git a/.github/workflows/prgate.yml b/.github/workflows/prgate.yml deleted file mode 100644 index 8789c17bf..000000000 --- a/.github/workflows/prgate.yml +++ /dev/null @@ -1,27 +0,0 @@ -name: Makefile CI - -on: - push: - branches: [ "main" ] - pull_request: - branches: [ "main" ] - -jobs: - build: - - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v4 - - - name: configure - run: ./configure - - - name: Install dependencies - run: make - - - name: Run check - run: make check - - - name: Run distcheck - run: make distcheck From 0ed06c8ffad835f2cebf1f92b70557d42f7fd852 Mon Sep 17 00:00:00 2001 From: Sovva6-14 Date: Wed, 17 Jun 2026 18:44:45 +0300 Subject: [PATCH 22/25] new ci.yml --- .github/workflows/ci.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 427764494..ab8ec81d8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,4 +1,4 @@ -name: PR Gate CI +name: PR Gate on: push: @@ -13,17 +13,17 @@ on: - '.github/workflows/ci.yml' permissions: - contents: read # only read + contents: read # минимальные права – только чтение содержимого jobs: # ---------- vet ---------- vet: name: go vet - runs-on: ubuntu-24.04 # runner version + runs-on: ubuntu-24.04 # фиксированная версия раннера strategy: matrix: go-version: [ '1.23', '1.24' ] - fail-fast: false + fail-fast: false # не останавливать остальные при ошибке defaults: run: working-directory: app @@ -34,7 +34,7 @@ jobs: uses: actions/setup-go@f111f3307d8850f501ac008e886eec1e1932a34a # v5.3.0 with: go-version: ${{ matrix.go-version }} - cache: true + cache: true # кеширование модулей и сборок - name: Run go vet run: go vet ./... @@ -73,11 +73,11 @@ jobs: - name: Setup Go uses: actions/setup-go@f111f3307d8850f501ac008e886eec1e1932a34a # v5.3.0 with: - go-version: '1.24' + go-version: '1.24' # линтер запускаем на одной версии (можно и на двух) cache: true - name: Run golangci-lint uses: golangci/golangci-lint-action@55c2c1448f86e01eaae002a5a3a9624417608d84 # v6.5.0 with: - version: v2.5.0 + version: v2.5.0 # жёстко закреплённая версия линтера working-directory: app args: --timeout=5m \ No newline at end of file From 2db302681e98e18153304d25712a7c4eb8002b49 Mon Sep 17 00:00:00 2001 From: Sovva6-14 Date: Wed, 17 Jun 2026 18:47:33 +0300 Subject: [PATCH 23/25] update ci sha --- .github/workflows/ci.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ab8ec81d8..ec9897f42 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -29,9 +29,9 @@ jobs: working-directory: app steps: - name: Checkout code - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Setup Go - uses: actions/setup-go@f111f3307d8850f501ac008e886eec1e1932a34a # v5.3.0 + uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.3.0 with: go-version: ${{ matrix.go-version }} cache: true # кеширование модулей и сборок @@ -51,9 +51,9 @@ jobs: working-directory: app steps: - name: Checkout code - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Setup Go - uses: actions/setup-go@f111f3307d8850f501ac008e886eec1e1932a34a # v5.3.0 + uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.3.0 with: go-version: ${{ matrix.go-version }} cache: true @@ -69,14 +69,14 @@ jobs: working-directory: app steps: - name: Checkout code - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Setup Go - uses: actions/setup-go@f111f3307d8850f501ac008e886eec1e1932a34a # v5.3.0 + uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.3.0 with: go-version: '1.24' # линтер запускаем на одной версии (можно и на двух) cache: true - name: Run golangci-lint - uses: golangci/golangci-lint-action@55c2c1448f86e01eaae002a5a3a9624417608d84 # v6.5.0 + uses: golangci/golangci-lint-action@55c2c1448f86e01eaae002a5a3a9624417608d84 # v6.5.0 with: version: v2.5.0 # жёстко закреплённая версия линтера working-directory: app From 5b93eedef9c53a6b613e0f86c07c83e929640899 Mon Sep 17 00:00:00 2001 From: Sovva6-14 Date: Wed, 17 Jun 2026 18:49:59 +0300 Subject: [PATCH 24/25] fix golangci --- .github/workflows/ci.yml | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ec9897f42..38dbdc45d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,28 +13,28 @@ on: - '.github/workflows/ci.yml' permissions: - contents: read # минимальные права – только чтение содержимого + contents: read # минимальные права jobs: # ---------- vet ---------- vet: name: go vet - runs-on: ubuntu-24.04 # фиксированная версия раннера + runs-on: ubuntu-24.04 strategy: matrix: go-version: [ '1.23', '1.24' ] - fail-fast: false # не останавливать остальные при ошибке + fail-fast: false defaults: run: working-directory: app steps: - name: Checkout code - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Setup Go - uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.3.0 + uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.3.0 with: go-version: ${{ matrix.go-version }} - cache: true # кеширование модулей и сборок + cache: true - name: Run go vet run: go vet ./... @@ -51,9 +51,9 @@ jobs: working-directory: app steps: - name: Checkout code - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Setup Go - uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.3.0 + uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.3.0 with: go-version: ${{ matrix.go-version }} cache: true @@ -69,15 +69,15 @@ jobs: working-directory: app steps: - name: Checkout code - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Setup Go - uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.3.0 + uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.3.0 with: - go-version: '1.24' # линтер запускаем на одной версии (можно и на двух) + go-version: '1.24' # достаточно одной версии для линтера cache: true + - name: Install golangci-lint v2.5.0 + run: | + curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | \ + sh -s -- -b $(go env GOPATH)/bin v2.5.0 - name: Run golangci-lint - uses: golangci/golangci-lint-action@55c2c1448f86e01eaae002a5a3a9624417608d84 # v6.5.0 - with: - version: v2.5.0 # жёстко закреплённая версия линтера - working-directory: app - args: --timeout=5m \ No newline at end of file + run: golangci-lint run ./... \ No newline at end of file From ed38523ffc432a15ad34e0e8592185d044414486 Mon Sep 17 00:00:00 2001 From: Sovva6-14 Date: Wed, 17 Jun 2026 18:56:49 +0300 Subject: [PATCH 25/25] update lab3 and pr_template --- .github/pull_request_template.md | 22 +++++++--------------- submissions/lab3.md | 1 + 2 files changed, 8 insertions(+), 15 deletions(-) diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index ef069a092..4dbd6de08 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -1,27 +1,19 @@ - ## Goal -<<<<<<< HEAD + Complete lab 3 DevOps ## Changes * Added submissions/lab3.md -======= -Complete lab 1 DevOps - -## Changes -* Add SSH key (github profile + locally) -* New branch feature/lab1 -* Start submission lab1 -* Finish submission lab1 ->>>>>>> 1a0b11d0dbe46d83e95f6b39cc97a3bff4517e59 +* Create GitHub Action CI Workflows +* Added Go environment ubuntu 24.04 ## Testing -* Signature ``` git log --show-signature -1 ``` is Good and verified -* Testing methods curl +* Start CI action on GitHub and green CI run +* Verfied CI run pipeline ## Checklist - ☑️ Title is a clear sentence (≤ 70 chars) -- ☑️ Commits are signed (`git log --show-signature`) -- ☑️ `submissions/lab1.md` updated +- ☑️ Vet, Test, and Lint checks pass +- ☑️ `submissions/lab3.md` updated diff --git a/submissions/lab3.md b/submissions/lab3.md index 850cdf726..cbe6040f1 100644 --- a/submissions/lab3.md +++ b/submissions/lab3.md @@ -1,2 +1,3 @@ #GitHub Actions +Action: https://github.com/sovva6-14/DevOps-Intro/actions/runs/27701703406 \ No newline at end of file