50 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			YAML
		
	
	
			
		
		
	
	
			50 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			YAML
		
	
	
name: conformance
 | 
						|
 | 
						|
on:
 | 
						|
  pull_request:
 | 
						|
  push:
 | 
						|
 | 
						|
jobs:
 | 
						|
  run-conformance-test:
 | 
						|
    runs-on: ubuntu-latest
 | 
						|
    steps:
 | 
						|
      -
 | 
						|
        name: Checkout
 | 
						|
        uses: actions/checkout@v2
 | 
						|
        with:
 | 
						|
          fetch-depth: 0
 | 
						|
      -
 | 
						|
        name: Build image
 | 
						|
        uses: docker/bake-action@v1
 | 
						|
        with:
 | 
						|
          targets: image-local
 | 
						|
      -
 | 
						|
        name: Start distribution server
 | 
						|
        run: |
 | 
						|
          IP=`hostname -I | awk '{print $1}'`
 | 
						|
          echo "IP=$IP" >> $GITHUB_ENV
 | 
						|
          echo "OCI_ROOT_URL=http://$IP:5000" >> $GITHUB_ENV
 | 
						|
          DISTRIBUTION_REF="registry:local"
 | 
						|
          docker run --rm -p 5000:5000 -e REGISTRY_STORAGE_DELETE_ENABLED=true -idt "registry:local"          
 | 
						|
      -
 | 
						|
        name: Run OCI Distribution Spec conformance tests
 | 
						|
        uses: opencontainers/distribution-spec@main
 | 
						|
        env:
 | 
						|
          OCI_ROOT_URL: ${{ env.OCI_ROOT_URL }}
 | 
						|
          OCI_NAMESPACE: oci-conformance/distribution-test
 | 
						|
          OCI_TEST_PULL: 1
 | 
						|
          OCI_TEST_PUSH: 1
 | 
						|
          OCI_TEST_CONTENT_DISCOVERY: 1
 | 
						|
          OCI_TEST_CONTENT_MANAGEMENT: 1
 | 
						|
          OCI_HIDE_SKIPPED_WORKFLOWS: 1
 | 
						|
      -
 | 
						|
        name: Move test results
 | 
						|
        run: mkdir -p .out/ && mv {report.html,junit.xml} .out/
 | 
						|
      -
 | 
						|
        name: Upload test results
 | 
						|
        uses: actions/upload-artifact@v2
 | 
						|
        with:
 | 
						|
          name: oci-test-results-${{ github.sha }}
 | 
						|
          path: .out/
 | 
						|
          if-no-files-found: error
 |