Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
990680f
docs: add commit signing summary
KsAKarpeeva73 Feb 4, 2026
99e184b
finish 1 task
KsAKarpeeva73 Feb 4, 2026
c9679b3
chore: add PR template
KsAKarpeeva73 Feb 4, 2026
4a33850
finish 2 task
KsAKarpeeva73 Feb 4, 2026
ad54f82
Merge pull request #1 from KsAKarpeeva73/feature/lab1
KsAKarpeeva73 Feb 4, 2026
1373a59
Add test file
KsAKarpeeva73 Feb 12, 2026
e57a2d9
finish 1 task
KsAKarpeeva73 Feb 12, 2026
fef7d67
finish 2 task
KsAKarpeeva73 Feb 12, 2026
855b5d5
finish 3 task
KsAKarpeeva73 Feb 12, 2026
bd20ea6
finish 4 task
KsAKarpeeva73 Feb 12, 2026
f2a27d5
chore: add demo file for restore
KsAKarpeeva73 Feb 12, 2026
8b2b2d4
chore: update demo file
KsAKarpeeva73 Feb 12, 2026
8d6896b
finish 5 task
KsAKarpeeva73 Feb 12, 2026
730a766
fix 5 tasks
KsAKarpeeva73 Feb 12, 2026
3223a4b
docs: add lab2 submission
KsAKarpeeva73 Feb 12, 2026
299e463
Merge pull request #2 from KsAKarpeeva73/feature/lab2
KsAKarpeeva73 Feb 12, 2026
c5a7d57
Merge branch 'inno-devops-labs:main' into main
KsAKarpeeva73 Feb 19, 2026
b2071cf
ci: add lab3 workflow (task1)
KsAKarpeeva73 Feb 19, 2026
2f63fe4
ci: move workflow to .github/workflows
KsAKarpeeva73 Feb 19, 2026
de3cb42
finish 1 task
KsAKarpeeva73 Feb 19, 2026
f0619cf
ci: add workflow_dispatch and system info (task2)
KsAKarpeeva73 Feb 19, 2026
724eaae
ci: add lab3 workflow to main for manual runs
KsAKarpeeva73 Feb 19, 2026
a800d1c
finish lab
KsAKarpeeva73 Feb 19, 2026
29d6fe0
Merge pull request #3 from KsAKarpeeva73/feature/lab3
KsAKarpeeva73 Feb 19, 2026
6425551
docs: add lab4 submission
KsAKarpeeva73 Feb 26, 2026
ee7d724
Merge pull request #4 from KsAKarpeeva73/feature/lab4
KsAKarpeeva73 Feb 26, 2026
45bbd52
finish 1 task
KsAKarpeeva73 Mar 5, 2026
160af75
finish lab5
KsAKarpeeva73 Mar 5, 2026
6b0641a
Merge pull request #5 from KsAKarpeeva73/feature/lab5
KsAKarpeeva73 Mar 5, 2026
f99a185
docs: add lab6 submission
KsAKarpeeva73 Mar 12, 2026
5d45224
Merge pull request #6 from KsAKarpeeva73/featurelab6
KsAKarpeeva73 Mar 12, 2026
793c3e2
finish 7 lab
KsAKarpeeva73 Mar 19, 2026
eac9928
Merge pull request #7 from KsAKarpeeva73/feature/lab7
KsAKarpeeva73 Mar 19, 2026
5e6ff21
fnish lab10
KsAKarpeeva73 Apr 9, 2026
199ddfa
Merge pull request #8 from KsAKarpeeva73/feature/lab10
KsAKarpeeva73 Apr 9, 2026
67b01e0
docs: add lab8 submission
KsAKarpeeva73 May 15, 2026
f28536c
Merge pull request #9 from KsAKarpeeva73/feature/lab8
KsAKarpeeva73 May 15, 2026
527a55e
docs: add lab9 submission
KsAKarpeeva73 May 15, 2026
1a2f7d6
Merge pull request #10 from KsAKarpeeva73/feature/lab9
KsAKarpeeva73 May 15, 2026
0664da6
docs: add lab11 submission
KsAKarpeeva73 May 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
## Goal
Finish Lab 1 by setting up SSH commit signing and a pull request template.

## Changes
- Enabled SSH-based commit signing
- Added lab report and screenshots
- Introduced a standard PR template

## Testing
- [ ] Project builds and runs successfully
- [ ] Commits are signed and verified
- [ ] Documentation is complete and updated
49 changes: 49 additions & 0 deletions .github/workflows/lab3.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: Lab 3 CI

on:
push:
branches:
- feature/lab3
workflow_dispatch:

jobs:
basic-info:
runs-on: ubuntu-latest
steps:
- name: Print basic info
run: |
echo "Hello from GitHub Actions!"
date
echo "Actor: $GITHUB_ACTOR"
echo "Ref: $GITHUB_REF"
echo "SHA: $GITHUB_SHA"
uname -a

- name: System information
run: |
echo "=== SYSTEM INFO ==="
echo "--- OS / Kernel ---"
uname -a
cat /etc/os-release || true

echo "--- CPU ---"
nproc
lscpu || true
cat /proc/cpuinfo | head -n 30 || true

echo "--- Memory ---"
free -h || true
cat /proc/meminfo | head -n 20 || true

echo "--- Disk ---"
df -h
lsblk || true

echo "--- GitHub runner env ---"
echo "RUNNER_OS=$RUNNER_OS"
echo "RUNNER_ARCH=$RUNNER_ARCH"
echo "RUNNER_NAME=$RUNNER_NAME"
echo "RUNNER_TEMP=$RUNNER_TEMP"
echo "GITHUB_WORKFLOW=$GITHUB_WORKFLOW"
echo "GITHUB_RUN_ID=$GITHUB_RUN_ID"
echo "GITHUB_RUN_NUMBER=$GITHUB_RUN_NUMBER"
164 changes: 164 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,164 @@
### Python template
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class

# C extensions
*.so

# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt

# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/
.pytest_cache/
cover/

# Translations
*.mo
*.pot

# Django stuff:
*.log
local_settings.py
db.sqlite3
db.sqlite3-journal

# Flask stuff:
instance/
.webassets-cache

# Scrapy stuff:
.scrapy

# Sphinx documentation
docs/_build/

# PyBuilder
.pybuilder/
target/

# Jupyter Notebook
.ipynb_checkpoints

# IPython
profile_default/
ipython_config.py

# pyenv
# For a library or package, you might want to ignore these files since the code is
# intended to run in multiple environments; otherwise, check them in:
# .python-version

# pipenv
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
# However, in case of collaboration, if having platform-specific dependencies or dependencies
# having no cross-platform support, pipenv may install dependencies that don't work, or not
# install all needed dependencies.
#Pipfile.lock

# poetry
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
# This is especially recommended for binary packages to ensure reproducibility, and is more
# commonly ignored for libraries.
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
#poetry.lock

# pdm
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
#pdm.lock
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
# in version control.
# https://pdm.fming.dev/latest/usage/project/#working-with-version-control
.pdm.toml
.pdm-python
.pdm-build/

# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
__pypackages__/

# Celery stuff
celerybeat-schedule
celerybeat.pid

# SageMath parsed files
*.sage.py

# Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/

# Spyder project settings
.spyderproject
.spyproject

# Rope project settings
.ropeproject

# mkdocs documentation
/site

# mypy
.mypy_cache/
.dmypy.json
dmypy.json

# Pyre type checker
.pyre/

# pytype static type analyzer
.pytype/

# Cython debug symbols
cython_debug/

# PyCharm
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
# and can be added to the global gitignore or merged into this file. For a more nuclear
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
.idea/

1 change: 1 addition & 0 deletions demo.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
base
5 changes: 5 additions & 0 deletions labs/lab11/app/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
FROM golang:1.22
WORKDIR /app
COPY go.mod main.go ./
RUN go build -o app .
CMD ["/app/app"]
9 changes: 9 additions & 0 deletions labs/lab11/app/Dockerfile.traditional
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
FROM golang:1.22 AS builder
WORKDIR /src
COPY go.mod main.go ./
ENV CGO_ENABLED=0
RUN go build -o /out/app .

FROM scratch
COPY --from=builder /out/app /app
ENTRYPOINT ["/app"]
9 changes: 9 additions & 0 deletions labs/lab11/app/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
let
pkgs = import (fetchTarball "https://github.com/NixOS/nixpkgs/archive/nixos-25.05.tar.gz") {};
in
pkgs.buildGoModule {
pname = "app";
version = "1.0.0";
src = pkgs.lib.cleanSource ./.;
vendorHash = null;
}
17 changes: 17 additions & 0 deletions labs/lab11/app/docker.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
let
pkgs = import (fetchTarball "https://github.com/NixOS/nixpkgs/archive/nixos-25.05.tar.gz") {};
app = pkgs.buildGoModule {
pname = "app";
version = "1.0.0";
src = pkgs.lib.cleanSource ./.;
vendorHash = null;
};
in
pkgs.dockerTools.buildLayeredImage {
name = "nix-app";
tag = "latest";
contents = [ app ];
config = {
Cmd = [ "${app}/bin/app" ];
};
}
27 changes: 27 additions & 0 deletions labs/lab11/app/flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

36 changes: 36 additions & 0 deletions labs/lab11/app/flake.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
{
description = "Lab 11 reproducible Go app";

inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05";
};

outputs = { self, nixpkgs }:
let
system = "x86_64-linux";
pkgs = import nixpkgs { inherit system; };
app = pkgs.buildGoModule {
pname = "app";
version = "1.0.0";
src = pkgs.lib.cleanSource ./.;
vendorHash = null;
};
image = pkgs.dockerTools.buildLayeredImage {
name = "nix-app-flake";
tag = "latest";
contents = [ app ];
config = {
Cmd = [ "${app}/bin/app" ];
};
};
in {
packages.${system}.default = app;
dockerImages.${system}.default = image;
devShells.${system}.default = pkgs.mkShell {
buildInputs = [
pkgs.go
pkgs.gopls
];
};
};
}
3 changes: 3 additions & 0 deletions labs/lab11/app/go.mod
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
module app

go 1.22
Loading