41 lines
		
	
	
		
			1018 B
		
	
	
	
		
			Docker
		
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			1018 B
		
	
	
	
		
			Docker
		
	
	
FROM rust:1.47-slim-buster as build
 | 
						|
 | 
						|
WORKDIR /usr/src
 | 
						|
 | 
						|
RUN apt-get update \
 | 
						|
&& apt-get install -y git pkg-config libssl-dev
 | 
						|
 | 
						|
# Make sure the dependencies are all cached so we won't hammer crates.io
 | 
						|
 | 
						|
ADD old-git.tar.gz .
 | 
						|
RUN git checkout 151f236a0b8de510b1896deeaa9c571f845040af \
 | 
						|
&& git reset --hard \
 | 
						|
&& cargo check
 | 
						|
 | 
						|
RUN cargo test --release \
 | 
						|
&& cargo build --release --bin ptth_relay
 | 
						|
 | 
						|
COPY .git .git
 | 
						|
 | 
						|
ARG gitcommithash=HEAD
 | 
						|
 | 
						|
RUN git checkout "$gitcommithash" \
 | 
						|
&& git reset --hard \
 | 
						|
&& echo "pub const GIT_VERSION: Option <&str> = Some (\"$(git rev-parse HEAD)\");" > src/git_version.rs \
 | 
						|
&& cargo test --release \
 | 
						|
&& cargo build --release --bin ptth_relay
 | 
						|
 | 
						|
FROM debian:buster-slim as deploy
 | 
						|
 | 
						|
RUN apt-get update \
 | 
						|
&& apt-get install -y libssl1.1 ca-certificates \
 | 
						|
&& apt-get upgrade -y
 | 
						|
 | 
						|
COPY --from=build /usr/src/target/release/ptth_relay /root
 | 
						|
COPY --from=build /usr/src/src/git_version.rs /root/git_version.rs
 | 
						|
COPY --from=build /usr/src/ptth_handlebars /root/ptth_handlebars
 | 
						|
 | 
						|
WORKDIR /root
 | 
						|
 | 
						|
CMD ["./ptth_relay"]
 |