Merge branch 'docker-github-build'
This commit is contained in:
		
						commit
						14ed0b7979
					
				
							
								
								
									
										46
									
								
								.github/workflows/build-docker.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								.github/workflows/build-docker.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,46 @@
 | 
				
			|||||||
 | 
					name: Build docker images
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					on:
 | 
				
			||||||
 | 
					  push:
 | 
				
			||||||
 | 
					    tags:
 | 
				
			||||||
 | 
					      - "*"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					jobs:
 | 
				
			||||||
 | 
					  publish_to_docker_hub:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    steps:
 | 
				
			||||||
 | 
					      - name: Checkout code
 | 
				
			||||||
 | 
					        uses: actions/checkout@v2
 | 
				
			||||||
 | 
					      
 | 
				
			||||||
 | 
					      - name: Prepare tags
 | 
				
			||||||
 | 
					        id: prep
 | 
				
			||||||
 | 
					        run: |
 | 
				
			||||||
 | 
					          DOCKER_IMAGE=milesmcc/shynet
 | 
				
			||||||
 | 
					          VERSION=${GITHUB_REF#refs/tags/}
 | 
				
			||||||
 | 
					          TAGS="${DOCKER_IMAGE}:${VERSION},${DOCKER_IMAGE}:latest"
 | 
				
			||||||
 | 
					          echo ::set-output name=tags::${TAGS}
 | 
				
			||||||
 | 
					          
 | 
				
			||||||
 | 
					      - name: Set up QEMU
 | 
				
			||||||
 | 
					        uses: docker/setup-qemu-action@v1
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
 | 
					      - name: Set up Docker Buildx
 | 
				
			||||||
 | 
					        id: buildx
 | 
				
			||||||
 | 
					        uses: docker/setup-buildx-action@v1
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
 | 
					      - name: Login to DockerHub
 | 
				
			||||||
 | 
					        uses: docker/login-action@v1
 | 
				
			||||||
 | 
					        with:
 | 
				
			||||||
 | 
					          username: ${{ secrets.DOCKER_HUB_USERNAME }}
 | 
				
			||||||
 | 
					          password: ${{ secrets.DOCKER_HUB_TOKEN }}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      - name: Build and push advanced image
 | 
				
			||||||
 | 
					        id: docker_build
 | 
				
			||||||
 | 
					        uses: docker/build-push-action@v2
 | 
				
			||||||
 | 
					        with:
 | 
				
			||||||
 | 
					          context: .
 | 
				
			||||||
 | 
					          file: ./Dockerfile
 | 
				
			||||||
 | 
					          platforms: linux/amd64,linux/arm64,linux/arm/v7
 | 
				
			||||||
 | 
					          push: true
 | 
				
			||||||
 | 
					          tags: ${{ steps.prep.outputs.tags }}
 | 
				
			||||||
@ -1,4 +1,4 @@
 | 
				
			|||||||
FROM python:3-alpine
 | 
					FROM python:alpine3.12
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Getting things ready
 | 
					# Getting things ready
 | 
				
			||||||
WORKDIR /usr/src/shynet
 | 
					WORKDIR /usr/src/shynet
 | 
				
			||||||
 | 
				
			|||||||
@ -54,7 +54,7 @@ class ValidateServiceOriginsMixin:
 | 
				
			|||||||
                origins = service.origins
 | 
					                origins = service.origins
 | 
				
			||||||
                cache.set(f"service_origins_{service_uuid}", origins, timeout=3600)
 | 
					                cache.set(f"service_origins_{service_uuid}", origins, timeout=3600)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            resp = super().dispatch(request, *args, **kwargs)
 | 
					            allow_origin = "*"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            if origins != "*":
 | 
					            if origins != "*":
 | 
				
			||||||
                remote_origin = request.META.get("HTTP_ORIGIN")
 | 
					                remote_origin = request.META.get("HTTP_ORIGIN")
 | 
				
			||||||
@ -66,12 +66,12 @@ class ValidateServiceOriginsMixin:
 | 
				
			|||||||
                    remote_origin = f"{parsed.scheme}://{parsed.netloc}".lower()
 | 
					                    remote_origin = f"{parsed.scheme}://{parsed.netloc}".lower()
 | 
				
			||||||
                origins = [origin.strip().lower() for origin in origins.split(",")]
 | 
					                origins = [origin.strip().lower() for origin in origins.split(",")]
 | 
				
			||||||
                if remote_origin in origins:
 | 
					                if remote_origin in origins:
 | 
				
			||||||
                    resp["Access-Control-Allow-Origin"] = remote_origin
 | 
					                    allow_origin = remote_origin
 | 
				
			||||||
                else:
 | 
					                else:
 | 
				
			||||||
                    return HttpResponseForbidden()
 | 
					                    return HttpResponseForbidden()
 | 
				
			||||||
            else:
 | 
					 | 
				
			||||||
                resp["Access-Control-Allow-Origin"] = "*"
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            resp = super().dispatch(request, *args, **kwargs)
 | 
				
			||||||
 | 
					            resp["Access-Control-Allow-Origin"] = allow_origin
 | 
				
			||||||
            resp["Access-Control-Allow-Methods"] = "GET,HEAD,OPTIONS,POST"
 | 
					            resp["Access-Control-Allow-Methods"] = "GET,HEAD,OPTIONS,POST"
 | 
				
			||||||
            resp[
 | 
					            resp[
 | 
				
			||||||
                "Access-Control-Allow-Headers"
 | 
					                "Access-Control-Allow-Headers"
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user