사용자 지정 워크플로 정보
사용자 지정 워크플로를 사용하면 GitHub Actions을(를) 사용하여 GitHub Pages 사이트를 빌드할 수 있습니다. 워크플로 파일을 통해 사용하려는 분기를 계속 선택할 수 있지만, 사용자 지정 워크플로를 사용하면 훨씬 더 많은 작업을 수행할 수 있습니다. 사용자 지정 워크플로 사용을 시작하려면 먼저 현재 리포지토리에 대해 활성화해야 합니다. 자세한 내용은 AUTOTITLE을(를) 참조하세요.
작업 구성
GitHub Actions은(는) 웹 사이트에 대한 다른 메타데이터도 수집할 수 있는 작업을 통해 GitHub Pages을(를) 사용할 수 설정합니다. 자세한 내용은 관련 작업을 참조하세요.
작업을 사용하려면 이 코드를 원하는 워크플로 내의 적절한 부분에 배치하세요.
- name: Configure GitHub Pages
uses: actions/configure-pages@v5
이 작업은 고정적인 사이트 생성기에서 GitHub Pages(으)로의 배포를 지원하는 데 도움이 됩니다. 이 프로세스를 덜 반복적으로 만들려면 가장 널리 사용되는 일부 고정적인 사이트 생성기에 워크플로 템플릿을 사용할 수 있습니다. 자세한 내용은 AUTOTITLE을(를) 참조하세요.
작업 구성
이 작업을 통해 아티팩트를 패키징하고 업로드할 수 있습니다. GitHub Pages 아티팩트는 단일 파일을 포함하는 압축된 보관 파일이어야 합니다. 파일 크기는 10GB 미만이어야 하며 기호 또는 하드 링크는 포함하지 않아야 합니다. 자세한 내용은 관련 작업을 참조하세요.
현재 워크플로에서 작업을 사용하려면 이 조각을 아래에 배치하세요.
- name: Upload GitHub Pages artifact
uses: actions/upload-pages-artifact@v2
GitHub Pages 아티팩트 배포
이 작업은 아티팩트 배포에 필요한 설정을 처리합니다. 적절한 기능을 보장하려면 다음 요구 사항을 충족해야 합니다.
- 작업에는 최소한 및 권한이 있어야 합니다.
- 매개 변수는 빌드 단계의 특정 값으로 설정해야 합니다. 이 매개 변수를 설정하지 않으면 생성되지 않은 아티팩트를 지속적으로 검색하는 독립적인 배포로 이어질 수 있습니다.
- 은(는) 분기/배포 보호 규칙을 적용하려면 반드시 설정해야 합니다. 기본 환경은 입니다.
- 페이지의 URL을 출력으로 지정하려면 필드를 활용합니다.
자세한 내용은 관련 작업을 참조하세요.
# ...
jobs:
deploy:
permissions:
contents: read
pages: write
id-token: write
runs-on: ubuntu-latest
needs: jekyll-build
environment:
name: github-pages
url: ${{steps.deployment.outputs.page_url}}
steps:
- name: Deploy artifact
id: deployment
uses: actions/deploy-pages@v3
# ...
별도의 빌드 및 배포 작업 연결
단일 워크플로 파일에서 사용자 및 작업을 연결할 수 있으므로 동일한 결과를 얻기 위해 두 개의 파일을 별도로 만들지 않아도 됩니다. 워크플로 파일을 시작하려면 아래에서 을(를) 정의하고 귀하의 작업에 대한 작업을 실행할 수 있습니다.
# ...
jobs:
# Build job
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Setup Pages
id: pages
uses: actions/configure-pages@v5
- name: Build with Jekyll
uses: actions/jekyll-build-pages@v1
with:
source: ./
destination: ./_site
- name: Upload artifact
uses: actions/upload-pages-artifact@v2
# Deployment job
deploy:
environment:
name: github-pages
url: ${{steps.deployment.outputs.page_url}}
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v3
# ...
빌드 프로세스가 필요하지 않은 특정한 경우에는 모든 항목을 단일 작업으로 결합하도록 선택할 수 있습니다. 결과적으로, 배포 단계에만 집중하게 됩니다.
# ...
jobs:
# Single deploy job no building
deploy:
environment:
name: github-pages
url: ${{steps.deployment.outputs.page_url}}
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Setup Pages
uses: actions/configure-pages@v5
- name: Upload Artifact
uses: actions/upload-pages-artifact@v2
with:
# upload entire directory
path: '.'
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v3
# ...
다른 실행기에서 순차적으로 또는 병렬로 실행되도록 작업을 정의할 수 있습니다. 자세한 내용은 AUTOTITLE을(를) 참조하세요.