From e8b8fd0cf4ce80d952a933aefb3ef377ef37f99f Mon Sep 17 00:00:00 2001 From: Vladimir Denisov Date: Tue, 27 Jan 2026 14:54:25 +0300 Subject: [PATCH 1/7] feat(step-4): rename project folder 'docs/' to 'src/' --- {docs => src}/index.html | 0 {docs => src}/script.js | 0 {docs => src}/styles.css | 0 3 files changed, 0 insertions(+), 0 deletions(-) rename {docs => src}/index.html (100%) rename {docs => src}/script.js (100%) rename {docs => src}/styles.css (100%) diff --git a/docs/index.html b/src/index.html similarity index 100% rename from docs/index.html rename to src/index.html diff --git a/docs/script.js b/src/script.js similarity index 100% rename from docs/script.js rename to src/script.js diff --git a/docs/styles.css b/src/styles.css similarity index 100% rename from docs/styles.css rename to src/styles.css From afd52bf0a29912e7082bb786d2a1897c4c4e23d1 Mon Sep 17 00:00:00 2001 From: Vladimir Denisov Date: Tue, 27 Jan 2026 14:56:51 +0300 Subject: [PATCH 2/7] ci(step-4): add github pages deploy workflow --- .github/workflows/deploy-pages.yml | 38 ++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 .github/workflows/deploy-pages.yml diff --git a/.github/workflows/deploy-pages.yml b/.github/workflows/deploy-pages.yml new file mode 100644 index 0000000..9ea58be --- /dev/null +++ b/.github/workflows/deploy-pages.yml @@ -0,0 +1,38 @@ +name: Deploy GitHub Pages (step-4) + +on: + push: + branches: + - step-4-setup-github-actions + +permissions: + contents: read + pages: write + id-token: write + +concurrency: + group: 'pages' + cancel-in-progress: true + +jobs: + deploy: + runs-on: ubuntu-latest + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup Pages + uses: actions/configure-pages@v5 + + - name: Upload artifact (src) + uses: actions/upload-pages-artifact@v3 + with: + path: 'src' + + - name: Deploy + id: deployment + uses: actions/deploy-pages@v4 From 4576349a8b61ce849a463b39c4936c8131e9ac81 Mon Sep 17 00:00:00 2001 From: Vladimir Denisov Date: Tue, 27 Jan 2026 16:18:15 +0300 Subject: [PATCH 3/7] ci(step-4): update deploy config --- .github/workflows/deploy-pages.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/deploy-pages.yml b/.github/workflows/deploy-pages.yml index 9ea58be..4a63455 100644 --- a/.github/workflows/deploy-pages.yml +++ b/.github/workflows/deploy-pages.yml @@ -17,9 +17,6 @@ concurrency: jobs: deploy: runs-on: ubuntu-latest - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} steps: - name: Checkout From 69faed8ee1e43e50648f6280c8e33f4cd7c10c22 Mon Sep 17 00:00:00 2001 From: Vladimir Denisov Date: Tue, 27 Jan 2026 16:36:50 +0300 Subject: [PATCH 4/7] feat(step-4): update readme manual --- README.md | 62 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/README.md b/README.md index 8e0d3ba..19fd00a 100644 --- a/README.md +++ b/README.md @@ -61,3 +61,65 @@ 3.5) Если deployment прошел а на странице ghpages (на стенде) новых изменений нет, то проблема может быть в кеше браузера (тогда помогает hard realod или режим incognito) + +### Шаг 4 - Настроить папку src/ + +#### Ветка "step-4-setup-github-actions" + +> Зачем менять на `src/` ? -> Чтобы научиться... +> - папка `src/` это стандарт на frontend проектах (всегда есть) +> - папка `docs/` используется не для хранения кода проекта, а для документации +> - шаг с папкой `docs/` это последний "простой шаг", где можно было сделать все легко через настройки + +> Теперь настало время переходить к github actions... +> - т.к. именно этот инструмент сейчас поможет в автоматизации деплоя + +4.1) Нужно переименовать папку `docs/` в `src/` +(или вернее сказать "переместить содержимое папки `docs/` в папку `src/`") + +4.2) Нужно создать файл `.github/workflows/deploy-pages.yml` + +```yml +name: Deploy GitHub Pages (step-4) + +on: + push: + branches: + - step-4-setup-github-actions + +permissions: + contents: read + pages: write + id-token: write + +concurrency: + group: 'pages' + cancel-in-progress: true + +jobs: + deploy: + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup Pages + uses: actions/configure-pages@v5 + + - name: Upload artifact (src) + uses: actions/upload-pages-artifact@v3 + with: + path: 'src' + + - name: Deploy + id: deployment + uses: actions/deploy-pages@v4 +``` + +4.3) Закоммитить и запушить все изменения в соответствующую ветку + +4.4) Настроить работу с github actions (переключиться на них) +- перейти в раздел `Settings > Pages` +- в поле `Source` выбрать `GitHub Actions` +- в этом же разделе (`Code and automation`) перейти в раздел `Actions` From e78d84588977d006e1bd4c5b2e919afcfbe26703 Mon Sep 17 00:00:00 2001 From: Vladimir Denisov Date: Wed, 28 Jan 2026 18:30:04 +0300 Subject: [PATCH 5/7] feat(step-4): add new content to html page --- src/index.html | 1 + 1 file changed, 1 insertion(+) diff --git a/src/index.html b/src/index.html index 2999c3e..8882826 100644 --- a/src/index.html +++ b/src/index.html @@ -11,6 +11,7 @@ From 1c0280a560a30312df24d6302b5dddb47ac17a82 Mon Sep 17 00:00:00 2001 From: Vladimir Denisov Date: Sat, 31 Jan 2026 02:50:30 +0300 Subject: [PATCH 6/7] feat(step-4): update deploy config, readme, page content --- .github/workflows/deploy-pages.yml | 50 ++++++++++++++---------------- README.md | 4 --- src/index.html | 2 +- 3 files changed, 24 insertions(+), 32 deletions(-) diff --git a/.github/workflows/deploy-pages.yml b/.github/workflows/deploy-pages.yml index 4a63455..c18f883 100644 --- a/.github/workflows/deploy-pages.yml +++ b/.github/workflows/deploy-pages.yml @@ -1,35 +1,31 @@ -name: Deploy GitHub Pages (step-4) +name: Deploy GitHub Pages (step-4) # Имя workflow, отображается во вкладке Actions и помогает понять назначение сценария -on: - push: - branches: - - step-4-setup-github-actions +on: # Условия, при которых GitHub запускает этот workflow + push: # Workflow запускается при каждом push в репозиторий + branches: # Ограничиваем запуск только указанными ветками + - step-4-setup-github-actions # Деплой выполняется только из этой учебной ветки -permissions: - contents: read - pages: write - id-token: write +permissions: # Явно задаём права для GITHUB_TOKEN, с которым работает workflow + contents: read # Разрешаем читать содержимое репозитория (нужно для checkout кода) + pages: write # Разрешаем создавать и обновлять деплой GitHub Pages + id-token: write # Разрешаем получать OIDC-токен для безопасной аутентификации деплоя -concurrency: - group: 'pages' - cancel-in-progress: true +jobs: # Описываем набор задач, которые будет выполнять workflow + deploy: # Задача, отвечающая за публикацию сайта + runs-on: ubuntu-latest # Выполняем задачу на виртуальной машине с Ubuntu -jobs: - deploy: - runs-on: ubuntu-latest + steps: # Последовательные шаги, которые выполняются внутри задачи + - name: Checkout # Шаг с понятным именем для логов + uses: actions/checkout@v4 # Загружает код репозитория в рабочее окружение runner'а - steps: - - name: Checkout - uses: actions/checkout@v4 + - name: Setup Pages # Подготавливает окружение для работы с GitHub Pages + uses: actions/configure-pages@v5 # Настраивает Pages и проверяет доступность деплоя - - name: Setup Pages - uses: actions/configure-pages@v5 - - - name: Upload artifact (src) - uses: actions/upload-pages-artifact@v3 + - name: Upload artifact (src) # Определяем, какие файлы считаются сайтом + uses: actions/upload-pages-artifact@v3 # Упаковывает указанные файлы в артефакт для Pages with: - path: 'src' + path: 'src' # Папка src считается итоговым содержимым сайта - - name: Deploy - id: deployment - uses: actions/deploy-pages@v4 + - name: Deploy # Финальный шаг публикации сайта + id: deployment # Идентификатор шага для получения информации о деплое + uses: actions/deploy-pages@v4 # Публикует артефакт и обновляет GitHub Pages diff --git a/README.md b/README.md index 19fd00a..8d67c3f 100644 --- a/README.md +++ b/README.md @@ -92,10 +92,6 @@ permissions: pages: write id-token: write -concurrency: - group: 'pages' - cancel-in-progress: true - jobs: deploy: runs-on: ubuntu-latest diff --git a/src/index.html b/src/index.html index 8882826..1e1f504 100644 --- a/src/index.html +++ b/src/index.html @@ -11,7 +11,7 @@ From ac855bfb1a2a32ee896cd4e7c46df616dc972f5c Mon Sep 17 00:00:00 2001 From: Vladimir Denisov Date: Tue, 3 Feb 2026 15:55:45 +0300 Subject: [PATCH 7/7] feat(step-4): update landing content --- src/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/index.html b/src/index.html index 1e1f504..e3783ac 100644 --- a/src/index.html +++ b/src/index.html @@ -11,7 +11,7 @@