github.com/obeyler/nomad@v0.11.8/demo/tls/GNUmakefile (about)

     1  SHELL = bash
     2  
     3  .PHONY: all
     4  all: \
     5  	ca.pem ca-key.pem ca.csr \
     6         	client.pem client-key.pem client.csr \
     7  	dev.pem dev-key.pem dev.csr \
     8  	server.pem server-key.pem server.csr \
     9         	user.pem user-key.pem user.csr user.pfx
    10  
    11  .PHONY: bootstrap
    12  bootstrap: ## Install dependencies
    13  	@echo "==> Updating cfssl..."
    14  	go get -u github.com/cloudflare/cfssl/cmd/...
    15  
    16  clean: ## Remove generated files
    17  	@echo "==> Removing generated files..."
    18  	rm -f \
    19  		ca.pem ca-key.pem ca.csr \
    20  		client.pem client-key.pem client.csr \
    21  		dev.pem dev-key.pem dev.csr \
    22  		server.pem server-key.pem server.csr \
    23  		user.pem user-key.pem user.csr user.pfx
    24  
    25  # Generate Nomad certificate authority
    26  ca.pem ca-key.pem ca.csr:
    27  	@echo "==> Generating Nomad certificate authority..."
    28  	cfssl gencert -initca ca-csr.json | cfssljson -bare ca
    29  
    30  # Generate Nomad server certificate
    31  server.pem server-key.pem server.csr:
    32  	@echo "==> Generating Nomad server certificate..."
    33  	cfssl gencert -ca=ca.pem -ca-key=ca-key.pem -config=cfssl.json \
    34  		-hostname="server.global.nomad,localhost,127.0.0.1" csr.json  \
    35  		| cfssljson -bare server
    36  
    37  # Generate Nomad client node certificate
    38  client.pem client-key.pem client.csr:
    39  	@echo "==> Generating Nomad client node certificate..."
    40  	cfssl gencert -ca=ca.pem -ca-key=ca-key.pem -config=cfssl.json \
    41  		-hostname="client.global.nomad,localhost,127.0.0.1" csr.json  \
    42  		| cfssljson -bare client
    43  
    44  # Generate Nomad combined server and client node certificate
    45  dev.pem dev-key.pem dev.csr:
    46  	@echo "==> Generating Nomad server and client node certificate..."
    47  	cfssl gencert -ca=ca.pem -ca-key=ca-key.pem -config=cfssl.json \
    48  		-hostname="server.global.nomad,client.global.nomad,localhost,127.0.0.1" csr.json  \
    49  		| cfssljson -bare dev
    50  
    51  # Generate certificates for users (CLI and browsers)
    52  user.pem user-key.pem user.csr user.pfx:
    53  	@echo "==> Generating Nomad user certificates..."
    54  	cfssl gencert -ca=ca.pem -ca-key=ca-key.pem -config=cfssl-user.json \
    55  		csr.json  | cfssljson -bare user
    56  	openssl pkcs12 -export -inkey user-key.pem -in user.pem -out user.pfx -password pass: