You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			34 lines
		
	
	
		
			842 B
		
	
	
	
		
			Docker
		
	
			
		
		
	
	
			34 lines
		
	
	
		
			842 B
		
	
	
	
		
			Docker
		
	
| # syntax=docker/dockerfile:1.4
 | |
| 
 | |
| FROM alpine:3.14 AS gen
 | |
| RUN apk add --no-cache git
 | |
| WORKDIR /src
 | |
| RUN --mount=type=bind,target=. <<EOT
 | |
| #!/usr/bin/env bash
 | |
| set -e
 | |
| mkdir /out
 | |
| # see also ".mailmap" for how email addresses and names are deduplicated
 | |
| {
 | |
|   echo "# This file lists all individuals having contributed content to the repository."
 | |
|   echo "# For how it is generated, see hack/dockerfiles/authors.Dockerfile."
 | |
|   echo
 | |
|   git log --format='%aN <%aE>' | LC_ALL=C.UTF-8 sort -uf
 | |
| } > /out/AUTHORS
 | |
| cat /out/AUTHORS
 | |
| EOT
 | |
| 
 | |
| FROM scratch AS update
 | |
| COPY --from=gen /out /
 | |
| 
 | |
| FROM gen AS validate
 | |
| RUN --mount=type=bind,target=.,rw <<EOT
 | |
| set -e
 | |
| git add -A
 | |
| cp -rf /out/* .
 | |
| if [ -n "$(git status --porcelain -- AUTHORS)" ]; then
 | |
|   echo >&2 'ERROR: Authors result differs. Please update with "make authors"'
 | |
|   git status --porcelain -- AUTHORS
 | |
|   exit 1
 | |
| fi
 | |
| EOT
 |