Dependency validation enforce
Signed-off-by: Olivier Gambier <olivier@docker.com>master
							parent
							
								
									53e3c1d7b2
								
							
						
					
					
						commit
						59401e277b
					
				
							
								
								
									
										38
									
								
								.drone.yml
								
								
								
								
							
							
						
						
									
										38
									
								
								.drone.yml
								
								
								
								
							| 
						 | 
					@ -1,38 +0,0 @@
 | 
				
			||||||
image: dmp42/go:stable
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
script:
 | 
					 | 
				
			||||||
  # To be spoofed back into the test image
 | 
					 | 
				
			||||||
  - go get github.com/modocache/gover
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  - go get -t ./...
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  # Go fmt
 | 
					 | 
				
			||||||
  - test -z "$(gofmt -s -l -w .     | tee /dev/stderr)"
 | 
					 | 
				
			||||||
  # Go lint
 | 
					 | 
				
			||||||
  - test -z "$(golint ./...          | tee /dev/stderr)"
 | 
					 | 
				
			||||||
  # Go vet
 | 
					 | 
				
			||||||
  - go vet ./...
 | 
					 | 
				
			||||||
  # Go test
 | 
					 | 
				
			||||||
  - go test -v -race -cover ./...
 | 
					 | 
				
			||||||
  # Helper to concatenate reports
 | 
					 | 
				
			||||||
  - gover
 | 
					 | 
				
			||||||
  # Send to coverall
 | 
					 | 
				
			||||||
  - goveralls -service drone.io -coverprofile=gover.coverprofile -repotoken {{COVERALLS_TOKEN}}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  # Do we want these as well?
 | 
					 | 
				
			||||||
  # - go get code.google.com/p/go.tools/cmd/goimports
 | 
					 | 
				
			||||||
  # - test -z "$(goimports -l -w ./... | tee /dev/stderr)"
 | 
					 | 
				
			||||||
  # http://labix.org/gocheck
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
notify:
 | 
					 | 
				
			||||||
    email:
 | 
					 | 
				
			||||||
        recipients:
 | 
					 | 
				
			||||||
            - distribution@docker.com
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    slack:
 | 
					 | 
				
			||||||
        team: docker
 | 
					 | 
				
			||||||
        channel: "#dt"
 | 
					 | 
				
			||||||
        username: mom
 | 
					 | 
				
			||||||
        token: {{SLACK_TOKEN}}
 | 
					 | 
				
			||||||
        on_success: true
 | 
					 | 
				
			||||||
        on_failure: true
 | 
					 | 
				
			||||||
							
								
								
									
										15
									
								
								Makefile
								
								
								
								
							
							
						
						
									
										15
									
								
								Makefile
								
								
								
								
							| 
						 | 
					@ -87,11 +87,22 @@ clean:
 | 
				
			||||||
	@rm -rf "${PREFIX}/bin/registry" "${PREFIX}/bin/digest" "${PREFIX}/bin/registry-api-descriptor-template"
 | 
						@rm -rf "${PREFIX}/bin/registry" "${PREFIX}/bin/digest" "${PREFIX}/bin/registry-api-descriptor-template"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
dep-save:
 | 
					dep-save:
 | 
				
			||||||
 | 
						@echo "+ $@"
 | 
				
			||||||
	$(if $(GODEP), , \
 | 
						$(if $(GODEP), , \
 | 
				
			||||||
		$(error Please install godep: go get github.com/tools/godep))
 | 
							$(error Please install godep: go get github.com/tools/godep))
 | 
				
			||||||
	$(GODEP) save $(PKGS)
 | 
						@$(GODEP) save $(PKGS)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
dep-restore:
 | 
					dep-restore:
 | 
				
			||||||
 | 
						@echo "+ $@"
 | 
				
			||||||
	$(if $(GODEP), , \
 | 
						$(if $(GODEP), , \
 | 
				
			||||||
		$(error Please install godep: go get github.com/tools/godep))
 | 
							$(error Please install godep: go get github.com/tools/godep))
 | 
				
			||||||
	$(GODEP) restore -v
 | 
						@$(GODEP) restore -v
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					dep-validate: dep-restore
 | 
				
			||||||
 | 
						@echo "+ $@"
 | 
				
			||||||
 | 
						@rm -Rf .vendor.bak
 | 
				
			||||||
 | 
						@mv vendor .vendor.bak
 | 
				
			||||||
 | 
						@rm -Rf Godeps
 | 
				
			||||||
 | 
						@$(GODEP) save ./...
 | 
				
			||||||
 | 
						@test -z "$$(diff -r vendor .vendor.bak 2>&1 | tee /dev/stderr)" || \
 | 
				
			||||||
 | 
							(echo >&2 "+ borked dependencies! what you have in Godeps/Godeps.json does not match with what you have in vendor" && false)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -49,6 +49,10 @@ test:
 | 
				
			||||||
    # - gvm use old && go version
 | 
					    # - gvm use old && go version
 | 
				
			||||||
    - gvm use stable && go version
 | 
					    - gvm use stable && go version
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Ensure validation of dependencies
 | 
				
			||||||
 | 
					    - gvm use stable && make dep-validate:
 | 
				
			||||||
 | 
					        pwd: $BASE_STABLE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # First thing: build everything. This will catch compile errors, and it's
 | 
					  # First thing: build everything. This will catch compile errors, and it's
 | 
				
			||||||
  # also necessary for go vet to work properly (see #807).
 | 
					  # also necessary for go vet to work properly (see #807).
 | 
				
			||||||
    - gvm use stable && godep go install $(go list ./... | grep -v "/vendor/"):
 | 
					    - gvm use stable && godep go install $(go list ./... | grep -v "/vendor/"):
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue