mirror of https://github.com/fafhrd91/actix-web
				
				
				
			
		
			
				
	
	
		
			92 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
			
		
		
	
	
			92 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
| name: CI (post-merge)
 | |
| 
 | |
| on:
 | |
|   push:
 | |
|     branches: [master]
 | |
| 
 | |
| permissions:
 | |
|   contents: read
 | |
| 
 | |
| concurrency:
 | |
|   group: ${{ github.workflow }}-${{ github.ref }}
 | |
|   cancel-in-progress: true
 | |
| 
 | |
| jobs:
 | |
|   build_and_test_nightly:
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         # prettier-ignore
 | |
|         target:
 | |
|           - { name: Linux, os: ubuntu-latest, triple: x86_64-unknown-linux-gnu }
 | |
|           - { name: macOS, os: macos-latest, triple: x86_64-apple-darwin }
 | |
|           - { name: Windows, os: windows-latest, triple: x86_64-pc-windows-msvc }
 | |
|         version:
 | |
|           - { name: nightly, version: nightly }
 | |
| 
 | |
|     name: ${{ matrix.target.name }} / ${{ matrix.version.name }}
 | |
|     runs-on: ${{ matrix.target.os }}
 | |
| 
 | |
|     steps:
 | |
|       - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
 | |
| 
 | |
|       - name: Install nasm
 | |
|         if: matrix.target.os == 'windows-latest'
 | |
|         uses: ilammy/setup-nasm@72793074d3c8cdda771dba85f6deafe00623038b # v1.5.2
 | |
| 
 | |
|       - name: Install OpenSSL
 | |
|         if: matrix.target.os == 'windows-latest'
 | |
|         shell: bash
 | |
|         run: |
 | |
|           set -e
 | |
|           choco install openssl --version=1.1.1.2100 -y --no-progress
 | |
|           echo 'OPENSSL_DIR=C:\Program Files\OpenSSL' >> $GITHUB_ENV
 | |
|           echo "RUSTFLAGS=-C target-feature=+crt-static" >> $GITHUB_ENV          
 | |
| 
 | |
|       - name: Install Rust (${{ matrix.version.name }})
 | |
|         uses: actions-rust-lang/setup-rust-toolchain@1780873c7b576612439a134613cc4cc74ce5538c # v1.15.2
 | |
|         with:
 | |
|           toolchain: ${{ matrix.version.version }}
 | |
| 
 | |
|       - name: Install just, cargo-hack, cargo-nextest, cargo-ci-cache-clean
 | |
|         uses: taiki-e/install-action@e43a5023a747770bfcb71ae048541a681714b951 # v2.62.33
 | |
|         with:
 | |
|           tool: just,cargo-hack,cargo-nextest,cargo-ci-cache-clean
 | |
| 
 | |
|       - name: check minimal
 | |
|         run: just check-min
 | |
| 
 | |
|       - name: check default
 | |
|         run: just check-default
 | |
| 
 | |
|       - name: tests
 | |
|         timeout-minutes: 60
 | |
|         run: just test
 | |
| 
 | |
|       - name: CI cache clean
 | |
|         run: cargo-ci-cache-clean
 | |
| 
 | |
|   ci_feature_powerset_check:
 | |
|     name: Verify Feature Combinations
 | |
|     runs-on: ubuntu-latest
 | |
| 
 | |
|     steps:
 | |
|       - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
 | |
| 
 | |
|       - name: Free Disk Space
 | |
|         run: ./scripts/free-disk-space.sh
 | |
| 
 | |
|       - name: Setup mold linker
 | |
|         uses: rui314/setup-mold@725a8794d15fc7563f59595bd9556495c0564878 # v1
 | |
| 
 | |
|       - name: Install Rust
 | |
|         uses: actions-rust-lang/setup-rust-toolchain@1780873c7b576612439a134613cc4cc74ce5538c # v1.15.2
 | |
| 
 | |
|       - name: Install just, cargo-hack
 | |
|         uses: taiki-e/install-action@e43a5023a747770bfcb71ae048541a681714b951 # v2.62.33
 | |
|         with:
 | |
|           tool: just,cargo-hack
 | |
| 
 | |
|       - name: Check feature combinations
 | |
|         run: just check-feature-combinations
 |