mirror of
				https://github.com/imfing/hextra.git
				synced 2025-10-31 09:14:50 -04:00 
			
		
		
		
	
		
			
				
	
	
		
			83 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			83 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| # Build and deploy Hextra docs site to GitHub Pages
 | |
| name: Deploy Hextra docs site to Pages
 | |
| 
 | |
| on:
 | |
|   # Runs on pushes targeting the default branch
 | |
|   push:
 | |
|     branches: ["main"]
 | |
| 
 | |
|   # Allows you to run this workflow manually from the Actions tab
 | |
|   workflow_dispatch:
 | |
| 
 | |
| # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
 | |
| permissions:
 | |
|   contents: read
 | |
|   pages: write
 | |
|   id-token: write
 | |
| 
 | |
| # Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
 | |
| # However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
 | |
| concurrency:
 | |
|   group: "pages"
 | |
|   cancel-in-progress: false
 | |
| 
 | |
| # Default to bash
 | |
| defaults:
 | |
|   run:
 | |
|     shell: bash
 | |
| 
 | |
| jobs:
 | |
|   # Build job
 | |
|   build:
 | |
|     runs-on: ubuntu-latest
 | |
|     env:
 | |
|       HUGO_VERSION: 0.147.7
 | |
|     steps:
 | |
|       - name: Checkout
 | |
|         uses: actions/checkout@v4
 | |
|         with:
 | |
|           fetch-depth: 0 # fetch all history for .GitInfo and .Lastmod
 | |
|           fetch-tags: true
 | |
|           submodules: recursive
 | |
| 
 | |
|       - name: Setup Go
 | |
|         uses: actions/setup-go@v5
 | |
|         with:
 | |
|           go-version: "1.24"
 | |
| 
 | |
|       - name: Setup Pages
 | |
|         id: pages
 | |
|         uses: actions/configure-pages@v5
 | |
| 
 | |
|       - name: Setup Hugo
 | |
|         run: |
 | |
|           wget -O ${{ runner.temp }}/hugo.deb https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb \
 | |
|           && sudo dpkg -i ${{ runner.temp }}/hugo.deb
 | |
| 
 | |
|       - name: Make build script executable
 | |
|         run: chmod +x ./build.sh
 | |
| 
 | |
|       - name: Build all site versions
 | |
|         env:
 | |
|           HUGO_ENVIRONMENT: production
 | |
|           HUGO_ENV: production
 | |
|         run: |
 | |
|           ./build.sh "${{ steps.pages.outputs.base_url }}"
 | |
| 
 | |
|       - name: Upload artifact
 | |
|         uses: actions/upload-pages-artifact@v3
 | |
|         with:
 | |
|           path: ./public
 | |
| 
 | |
|   # 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@v4
 | 
