now working
This commit is contained in:
		@@ -1,8 +1,6 @@
 | 
			
		||||
# Cert
 | 
			
		||||
Easily obain SSL certificates from LetsEncrypt. Supports DNS-01 challenge. TypeScript ready.
 | 
			
		||||
 | 
			
		||||
> Note: this package is in pre-alpha stage and will be ready soon.
 | 
			
		||||
 | 
			
		||||
## Usage 
 | 
			
		||||
 | 
			
		||||
```typescript
 | 
			
		||||
 
 | 
			
		||||
@@ -0,0 +1,51 @@
 | 
			
		||||
-----BEGIN RSA PRIVATE KEY-----
 | 
			
		||||
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
 | 
			
		||||
-----END RSA PRIVATE KEY-----
 | 
			
		||||
@@ -0,0 +1,12 @@
 | 
			
		||||
{
 | 
			
		||||
  "id": 2299055,
 | 
			
		||||
  "key": {
 | 
			
		||||
    "kty": "RSA",
 | 
			
		||||
    "n": "0TfTunO8-B7kMI6lriNap3c-ACAk7qQXeRYXUbRoyZbU9hKI_BACk-4htPc-5pOICVT7gbaErhsOzIQRKrp1flC7JQSol1PNWe57cMD9IecdhtcxJq1HMFqyF5JQ9MZxSnyp03QdAUVVev23T7qA24Z0HK8jltt5K4TvAqid0M0nQ6sAM0LF7l6frQDckIoYcZ_3pxW5U7JewUBAyFSQpzKOSmf2GeyLZn0SZr0w82H5yO81NNx6FmR653zLXqj4CGjvC4uHvf-5lwSmnqlhCv2dlgtuLVm5j5YV8wmiWvElkrQrnCNaCEVYe1qhIHBASQtkmDGBztykIUatC4p7lVn0aUvUi9Qdzh_HcqbBuCBxZb57TWmWxiYXS9vTEM06fAYBlAuP-GN38v_IkJWRmJxDDTssfWCVVgotJQjQB2tzs301TG1RLu1moN-Qz27FaV-bGR8sV3l2eLY5K5Xp_QCt1j9Xm-4dDFfmS-eBf8l4XK7-Kx87UTLGDgQp-mMktmF0S9oYsZeHOwNsIhDlzz4QnTyEy-ihn26ctS67RcJmmyTPYEhBPh2Ajg7Hu8KsyKnJyzmcA8NeC9bEbeNdOwq6C8kMKiYks21oHkC2VeYkhTnRkan_RaG6L0xkHyiLwd-QbFDtE8vC763_V20y09syvj6nka2L3XpwT0nafJE",
 | 
			
		||||
    "e": "AQAB"
 | 
			
		||||
  },
 | 
			
		||||
  "contact": [],
 | 
			
		||||
  "agreement": "https://letsencrypt.org/documents/LE-SA-v1.0.1-July-27-2015.pdf",
 | 
			
		||||
  "initialIp": "87.178.79.88",
 | 
			
		||||
  "createdAt": "2016-06-22T11:05:47.509440404Z"
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										27
									
								
								dist/assets/certs/sub2.bleu.de/cert-1466593547.csr
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								dist/assets/certs/sub2.bleu.de/cert-1466593547.csr
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,27 @@
 | 
			
		||||
-----BEGIN CERTIFICATE REQUEST-----
 | 
			
		||||
MIIEhjCCAm4CAQAwFzEVMBMGA1UEAwwMc3ViMi5ibGV1LmRlMIICIjANBgkqhkiG
 | 
			
		||||
9w0BAQEFAAOCAg8AMIICCgKCAgEAzNcXBGWjnR/m07vwYgjV5cm3foKZNM3MjYQP
 | 
			
		||||
0a7vmXN4Yd+1TrVyso18HNkjkia+pzYoTEuLYYZmqIXF/wKRc8E2joRYYr9m636d
 | 
			
		||||
8lbWjFZXC2GIOZfhgPghDWl8/okaExpqTcG7BRwffIbAqmgFIWSXMNlUbQuGCVPr
 | 
			
		||||
EkSMPODLuEukj14XpEIxiqMFQxTnXODKj/rJNZJDSJ1QHr5cCskgOO4NKmgmybyK
 | 
			
		||||
2K0CzNmaIjw4iTOSJL4vhmhKolFvsZoXpE41S1QZAc9dmafvs1yKYsKIjGfmDUlu
 | 
			
		||||
nOKL2o5eJuUaHiI54B7QRa1hBwaelXLUgiIRQpzv5m8/vpkMdq2jxeq68OlG8hyy
 | 
			
		||||
8Bm2+HkzgtHju8u+/nNKLEcF7fx4Irs6xKJdFJDwoVTckNOY10kGImVoy0HKo/8B
 | 
			
		||||
k34A/f16H7pS9hFDe5jUUiEIHY7ufoBZkOgEZn1WwdBw5Sb5gTJQq9qxfB9ai7+1
 | 
			
		||||
Th76dLq0okBoXR4d0ttn3oNyWEF2/nubd0lEw71PE4WJMXGYtpyV+hklipzHXS5w
 | 
			
		||||
dxQtkhZLgGr/RuIz/N4wiHsVZfxkIPzKfq4Nc9RoRllsSqG/7wl96gaLVwn/P9N6
 | 
			
		||||
GIXJ0TX+S0uuujBx/8KeZKnBNXN/FzTjBg4D9QQfKzL/50OqFkGvjax6EDACYh4/
 | 
			
		||||
WBybMocCAwEAAaAqMCgGCSqGSIb3DQEJDjEbMBkwFwYDVR0RBBAwDoIMc3ViMi5i
 | 
			
		||||
bGV1LmRlMA0GCSqGSIb3DQEBCwUAA4ICAQBWl8iKxLq+9YcL8q5adVUGQyLEJh5q
 | 
			
		||||
hTxNMQipIR3NzltQAjhp3QFLOMILWCb/4loOEC5CfeFjo6SqzkjnCSi4cljf3r5q
 | 
			
		||||
aYoJUujq62mrnm0L/kTSIWpo3jJXbSdnfZhVFDbTeykrB+SHwhRgRHTp2q7bsFRy
 | 
			
		||||
EovDb1m1pImwtULFNZ3xFaDCGRzs8tJTGlTD+dMxWeo47h2odnMYBH9eL1pPIVR9
 | 
			
		||||
ntFUwJ+XYgiMVvx2g6HrhhfLiOf3tp/HFuBtyWs+i7MONsLYoc/oKNvZyx7yL3/7
 | 
			
		||||
0w5daTAHdqrYUFXM/vKANqvmB3RKsOIJTtxAorEgVuo2ErtzCT8fPXYowpgT4wxi
 | 
			
		||||
aR1kQSJyn8kDkVkMz026BL12VpodDEJRSHb3wB0yg3Fkz1v4ECWA5C4c3Q/54avY
 | 
			
		||||
g+9ykjMZpSQWQs3XOYQ+YHxboUq8KY4El+M6FV/SGaED+wY7pxitXqP4AHaHMLxV
 | 
			
		||||
54VwUxYTFtQ/3m+QETdA6wXwmqd42of+CdQIipMHUea0aTS0k0ozGFMzmZJSlx1A
 | 
			
		||||
zJ0VTy2FqReucLe5nUFLO+8rdQI06aknfOdumuUL8guWLV9/bCDnIIxurkjGXs04
 | 
			
		||||
WiyUsQ9xA9tn51Gg8tRw8I0tBrXe4xCtrvHkV/Je/33NYqUVrAGXDILpG9WRlSPi
 | 
			
		||||
iy6iA5oEiT4CVg==
 | 
			
		||||
-----END CERTIFICATE REQUEST-----
 | 
			
		||||
							
								
								
									
										34
									
								
								dist/assets/certs/sub2.bleu.de/cert-1466593547.pem
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								dist/assets/certs/sub2.bleu.de/cert-1466593547.pem
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,34 @@
 | 
			
		||||
-----BEGIN CERTIFICATE-----
 | 
			
		||||
MIIF/DCCBOSgAwIBAgISA7oA26pZemK7hGOH71u39RkMMA0GCSqGSIb3DQEBCwUA
 | 
			
		||||
MEoxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MSMwIQYDVQQD
 | 
			
		||||
ExpMZXQncyBFbmNyeXB0IEF1dGhvcml0eSBYMzAeFw0xNjA2MjIxMDA2MDBaFw0x
 | 
			
		||||
NjA5MjAxMDA2MDBaMBcxFTATBgNVBAMTDHN1YjIuYmxldS5kZTCCAiIwDQYJKoZI
 | 
			
		||||
hvcNAQEBBQADggIPADCCAgoCggIBAMzXFwRlo50f5tO78GII1eXJt36CmTTNzI2E
 | 
			
		||||
D9Gu75lzeGHftU61crKNfBzZI5Imvqc2KExLi2GGZqiFxf8CkXPBNo6EWGK/Zut+
 | 
			
		||||
nfJW1oxWVwthiDmX4YD4IQ1pfP6JGhMaak3BuwUcH3yGwKpoBSFklzDZVG0LhglT
 | 
			
		||||
6xJEjDzgy7hLpI9eF6RCMYqjBUMU51zgyo/6yTWSQ0idUB6+XArJIDjuDSpoJsm8
 | 
			
		||||
ititAszZmiI8OIkzkiS+L4ZoSqJRb7GaF6RONUtUGQHPXZmn77NcimLCiIxn5g1J
 | 
			
		||||
bpzii9qOXiblGh4iOeAe0EWtYQcGnpVy1IIiEUKc7+ZvP76ZDHato8XquvDpRvIc
 | 
			
		||||
svAZtvh5M4LR47vLvv5zSixHBe38eCK7OsSiXRSQ8KFU3JDTmNdJBiJlaMtByqP/
 | 
			
		||||
AZN+AP39eh+6UvYRQ3uY1FIhCB2O7n6AWZDoBGZ9VsHQcOUm+YEyUKvasXwfWou/
 | 
			
		||||
tU4e+nS6tKJAaF0eHdLbZ96DclhBdv57m3dJRMO9TxOFiTFxmLaclfoZJYqcx10u
 | 
			
		||||
cHcULZIWS4Bq/0biM/zeMIh7FWX8ZCD8yn6uDXPUaEZZbEqhv+8JfeoGi1cJ/z/T
 | 
			
		||||
ehiFydE1/ktLrrowcf/CnmSpwTVzfxc04wYOA/UEHysy/+dDqhZBr42sehAwAmIe
 | 
			
		||||
P1gcmzKHAgMBAAGjggINMIICCTAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYI
 | 
			
		||||
KwYBBQUHAwEGCCsGAQUFBwMCMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFPW5umA7
 | 
			
		||||
cYewAhF8NtPtXBzpxsYMMB8GA1UdIwQYMBaAFKhKamMEfd265tE5t6ZFZe/zqOyh
 | 
			
		||||
MHAGCCsGAQUFBwEBBGQwYjAvBggrBgEFBQcwAYYjaHR0cDovL29jc3AuaW50LXgz
 | 
			
		||||
LmxldHNlbmNyeXB0Lm9yZy8wLwYIKwYBBQUHMAKGI2h0dHA6Ly9jZXJ0LmludC14
 | 
			
		||||
My5sZXRzZW5jcnlwdC5vcmcvMBcGA1UdEQQQMA6CDHN1YjIuYmxldS5kZTCB/gYD
 | 
			
		||||
VR0gBIH2MIHzMAgGBmeBDAECATCB5gYLKwYBBAGC3xMBAQEwgdYwJgYIKwYBBQUH
 | 
			
		||||
AgEWGmh0dHA6Ly9jcHMubGV0c2VuY3J5cHQub3JnMIGrBggrBgEFBQcCAjCBngyB
 | 
			
		||||
m1RoaXMgQ2VydGlmaWNhdGUgbWF5IG9ubHkgYmUgcmVsaWVkIHVwb24gYnkgUmVs
 | 
			
		||||
eWluZyBQYXJ0aWVzIGFuZCBvbmx5IGluIGFjY29yZGFuY2Ugd2l0aCB0aGUgQ2Vy
 | 
			
		||||
dGlmaWNhdGUgUG9saWN5IGZvdW5kIGF0IGh0dHBzOi8vbGV0c2VuY3J5cHQub3Jn
 | 
			
		||||
L3JlcG9zaXRvcnkvMA0GCSqGSIb3DQEBCwUAA4IBAQBWqCXn4owhpx5uQqC0Cfu4
 | 
			
		||||
XsNzJGETrevfV51nMsw5YE3+dHW5B3Kx9Bea0gsc1eue7z0sPsIjGxJD1ZxIOJHj
 | 
			
		||||
b0I29ZxdCGUyG4mjYEQv/+l6iq8HSUYnhl1HTLOCV2zPrXd8YO8vmyqVNq04QgN/
 | 
			
		||||
SBedabrHK1nTf5Hi3vjIAx78/WgOYA6XayyX1Ef1wRtmSbNtsDP9EHh8zmMu67Yr
 | 
			
		||||
0D0OHCKMShVAkXtavi5ALAN28ZZTbhQ5iGlJZKP2o3Cp1tDc7491oqSQ0rATgSJi
 | 
			
		||||
vBRC8QGTE8igdo2oUT9Vo4orfWYw4U9/8kTQ3E1VOaMJNPa7esUUSuMrLFJ+xWeu
 | 
			
		||||
-----END CERTIFICATE-----
 | 
			
		||||
							
								
								
									
										1
									
								
								dist/assets/certs/sub2.bleu.de/cert.csr
									
									
									
									
										vendored
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								dist/assets/certs/sub2.bleu.de/cert.csr
									
									
									
									
										vendored
									
									
										Symbolic link
									
								
							@@ -0,0 +1 @@
 | 
			
		||||
cert-1466593547.csr
 | 
			
		||||
							
								
								
									
										1
									
								
								dist/assets/certs/sub2.bleu.de/cert.pem
									
									
									
									
										vendored
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								dist/assets/certs/sub2.bleu.de/cert.pem
									
									
									
									
										vendored
									
									
										Symbolic link
									
								
							@@ -0,0 +1 @@
 | 
			
		||||
cert-1466593547.pem
 | 
			
		||||
							
								
								
									
										27
									
								
								dist/assets/certs/sub2.bleu.de/chain-1466593547.pem
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								dist/assets/certs/sub2.bleu.de/chain-1466593547.pem
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,27 @@
 | 
			
		||||
-----BEGIN CERTIFICATE-----
 | 
			
		||||
MIIEkjCCA3qgAwIBAgIQCgFBQgAAAVOFc2oLheynCDANBgkqhkiG9w0BAQsFADA/
 | 
			
		||||
MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT
 | 
			
		||||
DkRTVCBSb290IENBIFgzMB4XDTE2MDMxNzE2NDA0NloXDTIxMDMxNzE2NDA0Nlow
 | 
			
		||||
SjELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUxldCdzIEVuY3J5cHQxIzAhBgNVBAMT
 | 
			
		||||
GkxldCdzIEVuY3J5cHQgQXV0aG9yaXR5IFgzMIIBIjANBgkqhkiG9w0BAQEFAAOC
 | 
			
		||||
AQ8AMIIBCgKCAQEAnNMM8FrlLke3cl03g7NoYzDq1zUmGSXhvb418XCSL7e4S0EF
 | 
			
		||||
q6meNQhY7LEqxGiHC6PjdeTm86dicbp5gWAf15Gan/PQeGdxyGkOlZHP/uaZ6WA8
 | 
			
		||||
SMx+yk13EiSdRxta67nsHjcAHJyse6cF6s5K671B5TaYucv9bTyWaN8jKkKQDIZ0
 | 
			
		||||
Z8h/pZq4UmEUEz9l6YKHy9v6Dlb2honzhT+Xhq+w3Brvaw2VFn3EK6BlspkENnWA
 | 
			
		||||
a6xK8xuQSXgvopZPKiAlKQTGdMDQMc2PMTiVFrqoM7hD8bEfwzB/onkxEz0tNvjj
 | 
			
		||||
/PIzark5McWvxI0NHWQWM6r6hCm21AvA2H3DkwIDAQABo4IBfTCCAXkwEgYDVR0T
 | 
			
		||||
AQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8EBAMCAYYwfwYIKwYBBQUHAQEEczBxMDIG
 | 
			
		||||
CCsGAQUFBzABhiZodHRwOi8vaXNyZy50cnVzdGlkLm9jc3AuaWRlbnRydXN0LmNv
 | 
			
		||||
bTA7BggrBgEFBQcwAoYvaHR0cDovL2FwcHMuaWRlbnRydXN0LmNvbS9yb290cy9k
 | 
			
		||||
c3Ryb290Y2F4My5wN2MwHwYDVR0jBBgwFoAUxKexpHsscfrb4UuQdf/EFWCFiRAw
 | 
			
		||||
VAYDVR0gBE0wSzAIBgZngQwBAgEwPwYLKwYBBAGC3xMBAQEwMDAuBggrBgEFBQcC
 | 
			
		||||
ARYiaHR0cDovL2Nwcy5yb290LXgxLmxldHNlbmNyeXB0Lm9yZzA8BgNVHR8ENTAz
 | 
			
		||||
MDGgL6AthitodHRwOi8vY3JsLmlkZW50cnVzdC5jb20vRFNUUk9PVENBWDNDUkwu
 | 
			
		||||
Y3JsMB0GA1UdDgQWBBSoSmpjBH3duubRObemRWXv86jsoTANBgkqhkiG9w0BAQsF
 | 
			
		||||
AAOCAQEA3TPXEfNjWDjdGBX7CVW+dla5cEilaUcne8IkCJLxWh9KEik3JHRRHGJo
 | 
			
		||||
uM2VcGfl96S8TihRzZvoroed6ti6WqEBmtzw3Wodatg+VyOeph4EYpr/1wXKtx8/
 | 
			
		||||
wApIvJSwtmVi4MFU5aMqrSDE6ea73Mj2tcMyo5jMd6jmeWUHK8so/joWUoHOUgwu
 | 
			
		||||
X4Po1QYz+3dszkDqMp4fklxBwXRsW10KXzPMTZ+sOPAveyxindmjkW8lGy+QsRlG
 | 
			
		||||
PfZ+G6Z6h7mjem0Y+iWlkYcV4PIWL1iwBi8saCbGS5jN2p8M+X+Q7UNKEkROb3N6
 | 
			
		||||
KOqkqm57TH2H3eDJAkSnh6/DNFu0Qg==
 | 
			
		||||
-----END CERTIFICATE-----
 | 
			
		||||
							
								
								
									
										1
									
								
								dist/assets/certs/sub2.bleu.de/chain.pem
									
									
									
									
										vendored
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								dist/assets/certs/sub2.bleu.de/chain.pem
									
									
									
									
										vendored
									
									
										Symbolic link
									
								
							@@ -0,0 +1 @@
 | 
			
		||||
chain-1466593547.pem
 | 
			
		||||
							
								
								
									
										61
									
								
								dist/assets/certs/sub2.bleu.de/fullchain-1466593547.pem
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										61
									
								
								dist/assets/certs/sub2.bleu.de/fullchain-1466593547.pem
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,61 @@
 | 
			
		||||
-----BEGIN CERTIFICATE-----
 | 
			
		||||
MIIF/DCCBOSgAwIBAgISA7oA26pZemK7hGOH71u39RkMMA0GCSqGSIb3DQEBCwUA
 | 
			
		||||
MEoxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MSMwIQYDVQQD
 | 
			
		||||
ExpMZXQncyBFbmNyeXB0IEF1dGhvcml0eSBYMzAeFw0xNjA2MjIxMDA2MDBaFw0x
 | 
			
		||||
NjA5MjAxMDA2MDBaMBcxFTATBgNVBAMTDHN1YjIuYmxldS5kZTCCAiIwDQYJKoZI
 | 
			
		||||
hvcNAQEBBQADggIPADCCAgoCggIBAMzXFwRlo50f5tO78GII1eXJt36CmTTNzI2E
 | 
			
		||||
D9Gu75lzeGHftU61crKNfBzZI5Imvqc2KExLi2GGZqiFxf8CkXPBNo6EWGK/Zut+
 | 
			
		||||
nfJW1oxWVwthiDmX4YD4IQ1pfP6JGhMaak3BuwUcH3yGwKpoBSFklzDZVG0LhglT
 | 
			
		||||
6xJEjDzgy7hLpI9eF6RCMYqjBUMU51zgyo/6yTWSQ0idUB6+XArJIDjuDSpoJsm8
 | 
			
		||||
ititAszZmiI8OIkzkiS+L4ZoSqJRb7GaF6RONUtUGQHPXZmn77NcimLCiIxn5g1J
 | 
			
		||||
bpzii9qOXiblGh4iOeAe0EWtYQcGnpVy1IIiEUKc7+ZvP76ZDHato8XquvDpRvIc
 | 
			
		||||
svAZtvh5M4LR47vLvv5zSixHBe38eCK7OsSiXRSQ8KFU3JDTmNdJBiJlaMtByqP/
 | 
			
		||||
AZN+AP39eh+6UvYRQ3uY1FIhCB2O7n6AWZDoBGZ9VsHQcOUm+YEyUKvasXwfWou/
 | 
			
		||||
tU4e+nS6tKJAaF0eHdLbZ96DclhBdv57m3dJRMO9TxOFiTFxmLaclfoZJYqcx10u
 | 
			
		||||
cHcULZIWS4Bq/0biM/zeMIh7FWX8ZCD8yn6uDXPUaEZZbEqhv+8JfeoGi1cJ/z/T
 | 
			
		||||
ehiFydE1/ktLrrowcf/CnmSpwTVzfxc04wYOA/UEHysy/+dDqhZBr42sehAwAmIe
 | 
			
		||||
P1gcmzKHAgMBAAGjggINMIICCTAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYI
 | 
			
		||||
KwYBBQUHAwEGCCsGAQUFBwMCMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFPW5umA7
 | 
			
		||||
cYewAhF8NtPtXBzpxsYMMB8GA1UdIwQYMBaAFKhKamMEfd265tE5t6ZFZe/zqOyh
 | 
			
		||||
MHAGCCsGAQUFBwEBBGQwYjAvBggrBgEFBQcwAYYjaHR0cDovL29jc3AuaW50LXgz
 | 
			
		||||
LmxldHNlbmNyeXB0Lm9yZy8wLwYIKwYBBQUHMAKGI2h0dHA6Ly9jZXJ0LmludC14
 | 
			
		||||
My5sZXRzZW5jcnlwdC5vcmcvMBcGA1UdEQQQMA6CDHN1YjIuYmxldS5kZTCB/gYD
 | 
			
		||||
VR0gBIH2MIHzMAgGBmeBDAECATCB5gYLKwYBBAGC3xMBAQEwgdYwJgYIKwYBBQUH
 | 
			
		||||
AgEWGmh0dHA6Ly9jcHMubGV0c2VuY3J5cHQub3JnMIGrBggrBgEFBQcCAjCBngyB
 | 
			
		||||
m1RoaXMgQ2VydGlmaWNhdGUgbWF5IG9ubHkgYmUgcmVsaWVkIHVwb24gYnkgUmVs
 | 
			
		||||
eWluZyBQYXJ0aWVzIGFuZCBvbmx5IGluIGFjY29yZGFuY2Ugd2l0aCB0aGUgQ2Vy
 | 
			
		||||
dGlmaWNhdGUgUG9saWN5IGZvdW5kIGF0IGh0dHBzOi8vbGV0c2VuY3J5cHQub3Jn
 | 
			
		||||
L3JlcG9zaXRvcnkvMA0GCSqGSIb3DQEBCwUAA4IBAQBWqCXn4owhpx5uQqC0Cfu4
 | 
			
		||||
XsNzJGETrevfV51nMsw5YE3+dHW5B3Kx9Bea0gsc1eue7z0sPsIjGxJD1ZxIOJHj
 | 
			
		||||
b0I29ZxdCGUyG4mjYEQv/+l6iq8HSUYnhl1HTLOCV2zPrXd8YO8vmyqVNq04QgN/
 | 
			
		||||
SBedabrHK1nTf5Hi3vjIAx78/WgOYA6XayyX1Ef1wRtmSbNtsDP9EHh8zmMu67Yr
 | 
			
		||||
0D0OHCKMShVAkXtavi5ALAN28ZZTbhQ5iGlJZKP2o3Cp1tDc7491oqSQ0rATgSJi
 | 
			
		||||
vBRC8QGTE8igdo2oUT9Vo4orfWYw4U9/8kTQ3E1VOaMJNPa7esUUSuMrLFJ+xWeu
 | 
			
		||||
-----END CERTIFICATE-----
 | 
			
		||||
-----BEGIN CERTIFICATE-----
 | 
			
		||||
MIIEkjCCA3qgAwIBAgIQCgFBQgAAAVOFc2oLheynCDANBgkqhkiG9w0BAQsFADA/
 | 
			
		||||
MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT
 | 
			
		||||
DkRTVCBSb290IENBIFgzMB4XDTE2MDMxNzE2NDA0NloXDTIxMDMxNzE2NDA0Nlow
 | 
			
		||||
SjELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUxldCdzIEVuY3J5cHQxIzAhBgNVBAMT
 | 
			
		||||
GkxldCdzIEVuY3J5cHQgQXV0aG9yaXR5IFgzMIIBIjANBgkqhkiG9w0BAQEFAAOC
 | 
			
		||||
AQ8AMIIBCgKCAQEAnNMM8FrlLke3cl03g7NoYzDq1zUmGSXhvb418XCSL7e4S0EF
 | 
			
		||||
q6meNQhY7LEqxGiHC6PjdeTm86dicbp5gWAf15Gan/PQeGdxyGkOlZHP/uaZ6WA8
 | 
			
		||||
SMx+yk13EiSdRxta67nsHjcAHJyse6cF6s5K671B5TaYucv9bTyWaN8jKkKQDIZ0
 | 
			
		||||
Z8h/pZq4UmEUEz9l6YKHy9v6Dlb2honzhT+Xhq+w3Brvaw2VFn3EK6BlspkENnWA
 | 
			
		||||
a6xK8xuQSXgvopZPKiAlKQTGdMDQMc2PMTiVFrqoM7hD8bEfwzB/onkxEz0tNvjj
 | 
			
		||||
/PIzark5McWvxI0NHWQWM6r6hCm21AvA2H3DkwIDAQABo4IBfTCCAXkwEgYDVR0T
 | 
			
		||||
AQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8EBAMCAYYwfwYIKwYBBQUHAQEEczBxMDIG
 | 
			
		||||
CCsGAQUFBzABhiZodHRwOi8vaXNyZy50cnVzdGlkLm9jc3AuaWRlbnRydXN0LmNv
 | 
			
		||||
bTA7BggrBgEFBQcwAoYvaHR0cDovL2FwcHMuaWRlbnRydXN0LmNvbS9yb290cy9k
 | 
			
		||||
c3Ryb290Y2F4My5wN2MwHwYDVR0jBBgwFoAUxKexpHsscfrb4UuQdf/EFWCFiRAw
 | 
			
		||||
VAYDVR0gBE0wSzAIBgZngQwBAgEwPwYLKwYBBAGC3xMBAQEwMDAuBggrBgEFBQcC
 | 
			
		||||
ARYiaHR0cDovL2Nwcy5yb290LXgxLmxldHNlbmNyeXB0Lm9yZzA8BgNVHR8ENTAz
 | 
			
		||||
MDGgL6AthitodHRwOi8vY3JsLmlkZW50cnVzdC5jb20vRFNUUk9PVENBWDNDUkwu
 | 
			
		||||
Y3JsMB0GA1UdDgQWBBSoSmpjBH3duubRObemRWXv86jsoTANBgkqhkiG9w0BAQsF
 | 
			
		||||
AAOCAQEA3TPXEfNjWDjdGBX7CVW+dla5cEilaUcne8IkCJLxWh9KEik3JHRRHGJo
 | 
			
		||||
uM2VcGfl96S8TihRzZvoroed6ti6WqEBmtzw3Wodatg+VyOeph4EYpr/1wXKtx8/
 | 
			
		||||
wApIvJSwtmVi4MFU5aMqrSDE6ea73Mj2tcMyo5jMd6jmeWUHK8so/joWUoHOUgwu
 | 
			
		||||
X4Po1QYz+3dszkDqMp4fklxBwXRsW10KXzPMTZ+sOPAveyxindmjkW8lGy+QsRlG
 | 
			
		||||
PfZ+G6Z6h7mjem0Y+iWlkYcV4PIWL1iwBi8saCbGS5jN2p8M+X+Q7UNKEkROb3N6
 | 
			
		||||
KOqkqm57TH2H3eDJAkSnh6/DNFu0Qg==
 | 
			
		||||
-----END CERTIFICATE-----
 | 
			
		||||
							
								
								
									
										1
									
								
								dist/assets/certs/sub2.bleu.de/fullchain.pem
									
									
									
									
										vendored
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								dist/assets/certs/sub2.bleu.de/fullchain.pem
									
									
									
									
										vendored
									
									
										Symbolic link
									
								
							@@ -0,0 +1 @@
 | 
			
		||||
fullchain-1466593547.pem
 | 
			
		||||
							
								
								
									
										51
									
								
								dist/assets/certs/sub2.bleu.de/privkey-1466593547.pem
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										51
									
								
								dist/assets/certs/sub2.bleu.de/privkey-1466593547.pem
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,51 @@
 | 
			
		||||
-----BEGIN RSA PRIVATE KEY-----
 | 
			
		||||
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
 | 
			
		||||
-----END RSA PRIVATE KEY-----
 | 
			
		||||
							
								
								
									
										1
									
								
								dist/assets/certs/sub2.bleu.de/privkey.pem
									
									
									
									
										vendored
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								dist/assets/certs/sub2.bleu.de/privkey.pem
									
									
									
									
										vendored
									
									
										Symbolic link
									
								
							@@ -0,0 +1 @@
 | 
			
		||||
privkey-1466593547.pem
 | 
			
		||||
							
								
								
									
										1
									
								
								dist/assets/config.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								dist/assets/config.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1 @@
 | 
			
		||||
{"cfEmail":"sandbox@lossless.digital","cfKey":"5108a833dced8e8bd7186ae5833855b0dc138"}
 | 
			
		||||
							
								
								
									
										1054
									
								
								dist/assets/letsencrypt.sh
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										1054
									
								
								dist/assets/letsencrypt.sh
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										1
									
								
								dist/cert.hook.d.ts
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								dist/cert.hook.d.ts
									
									
									
									
										vendored
									
									
								
							@@ -0,0 +1 @@
 | 
			
		||||
import "typings-global";
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										50
									
								
								dist/cert.hook.js
									
									
									
									
										vendored
									
									
										
										
										Normal file → Executable file
									
								
							
							
						
						
									
										50
									
								
								dist/cert.hook.js
									
									
									
									
										vendored
									
									
										
										
										Normal file → Executable file
									
								
							@@ -1,3 +1,51 @@
 | 
			
		||||
#!/usr/bin/env node
 | 
			
		||||
"use strict";
 | 
			
		||||
require("typings-global");
 | 
			
		||||
var plugins = require("./cert.plugins");
 | 
			
		||||
var paths = require("./cert.paths");
 | 
			
		||||
var smartcli = new plugins.smartcli.Smartcli();
 | 
			
		||||
var config = plugins.smartfile.local.toObjectSync(paths.config);
 | 
			
		||||
var cflare = new plugins.cflare.CflareAccount();
 | 
			
		||||
cflare.auth({
 | 
			
		||||
    email: config.cfEmail,
 | 
			
		||||
    key: config.cfKey
 | 
			
		||||
});
 | 
			
		||||
var setChallenge = function (domainNameArg, challengeArg) {
 | 
			
		||||
    var done = plugins.q.defer();
 | 
			
		||||
    cflare.createRecord(prefixName(domainNameArg), "TXT", challengeArg).then(function () {
 | 
			
		||||
        cooldown().then(function () {
 | 
			
		||||
            done.resolve();
 | 
			
		||||
        });
 | 
			
		||||
    });
 | 
			
		||||
    return done.promise;
 | 
			
		||||
};
 | 
			
		||||
var cleanChallenge = function (domainNameArg) {
 | 
			
		||||
    var done = plugins.q.defer();
 | 
			
		||||
    cflare.removeRecord(prefixName(domainNameArg), "TXT");
 | 
			
		||||
    return done.promise;
 | 
			
		||||
};
 | 
			
		||||
var cooldown = function () {
 | 
			
		||||
    var done = plugins.q.defer();
 | 
			
		||||
    console.log("Cooling down!");
 | 
			
		||||
    setTimeout(function () {
 | 
			
		||||
        done.resolve();
 | 
			
		||||
    }, 20000);
 | 
			
		||||
    return done.promise;
 | 
			
		||||
};
 | 
			
		||||
var prefixName = function (domainNameArg) {
 | 
			
		||||
    return "_acme-challenge." + domainNameArg;
 | 
			
		||||
};
 | 
			
		||||
smartcli.addCommand({
 | 
			
		||||
    commandName: "deploy_challenge"
 | 
			
		||||
}).then(function (argv) {
 | 
			
		||||
    console.log(argv);
 | 
			
		||||
    setChallenge(argv._[1], argv._[3]);
 | 
			
		||||
});
 | 
			
		||||
smartcli.addCommand({
 | 
			
		||||
    commandName: "clean_challenge"
 | 
			
		||||
}).then(function (argv) {
 | 
			
		||||
    cleanChallenge(argv._[1]);
 | 
			
		||||
});
 | 
			
		||||
smartcli.startParse();
 | 
			
		||||
 | 
			
		||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJjZXJ0Lmhvb2suanMiLCJzb3VyY2VzQ29udGVudCI6W119
 | 
			
		||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,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cmNlc0NvbnRlbnQiOlsiIyEvdXNyL2Jpbi9lbnYgbm9kZVxuLy8gdGhlIHNoZWJhbmcgbGluZSBhYm92ZSBtYWtlcyBzdXJlIHRoaXMgc2NyaXB0IHdpbGwgZ2V0IGludGVycHJldGVkIGJ5IG5vZGVcblxuaW1wb3J0IFwidHlwaW5ncy1nbG9iYWxcIjtcbmltcG9ydCAqIGFzIHBsdWdpbnMgZnJvbSBcIi4vY2VydC5wbHVnaW5zXCI7XG5pbXBvcnQgKiBhcyBwYXRocyBmcm9tIFwiLi9jZXJ0LnBhdGhzXCI7XG5cbmxldCBzbWFydGNsaSA9IG5ldyBwbHVnaW5zLnNtYXJ0Y2xpLlNtYXJ0Y2xpKCk7XG5cbmxldCBjb25maWcgPSBwbHVnaW5zLnNtYXJ0ZmlsZS5sb2NhbC50b09iamVjdFN5bmMocGF0aHMuY29uZmlnKTtcbmxldCBjZmxhcmUgPSBuZXcgcGx1Z2lucy5jZmxhcmUuQ2ZsYXJlQWNjb3VudCgpO1xuY2ZsYXJlLmF1dGgoe1xuICAgIGVtYWlsOiBjb25maWcuY2ZFbWFpbCxcbiAgICBrZXk6IGNvbmZpZy5jZktleVxufSk7XG5cbmxldCBzZXRDaGFsbGVuZ2UgPSAoZG9tYWluTmFtZUFyZzogc3RyaW5nLCBjaGFsbGVuZ2VBcmc6IHN0cmluZykgPT4ge1xuICAgIGxldCBkb25lID0gcGx1Z2lucy5xLmRlZmVyKCk7XG4gICAgY2ZsYXJlLmNyZWF0ZVJlY29yZChwcmVmaXhOYW1lKGRvbWFpbk5hbWVBcmcpLCBcIlRYVFwiLCBjaGFsbGVuZ2VBcmcpLnRoZW4oKCkgPT4ge1xuICAgICAgICBjb29sZG93bigpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgZG9uZS5yZXNvbHZlKCk7XG4gICAgICAgIH0pO1xuICAgIH0pO1xuICAgIHJldHVybiBkb25lLnByb21pc2U7XG59XG5cbmxldCBjbGVhbkNoYWxsZW5nZSA9IChkb21haW5OYW1lQXJnKSA9PiB7XG4gICAgbGV0IGRvbmUgPSBwbHVnaW5zLnEuZGVmZXIoKTtcbiAgICBjZmxhcmUucmVtb3ZlUmVjb3JkKHByZWZpeE5hbWUoZG9tYWluTmFtZUFyZyksIFwiVFhUXCIpO1xuICAgIHJldHVybiBkb25lLnByb21pc2U7XG59XG5cbmxldCBjb29sZG93biA9ICgpID0+IHtcbiAgICBsZXQgZG9uZSA9IHBsdWdpbnMucS5kZWZlcigpO1xuICAgIGNvbnNvbGUubG9nKFwiQ29vbGluZyBkb3duIVwiKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgZG9uZS5yZXNvbHZlKCk7XG4gICAgfSwgMjAwMDApXG4gICAgcmV0dXJuIGRvbmUucHJvbWlzZTtcbn1cblxubGV0IHByZWZpeE5hbWUgPSAoZG9tYWluTmFtZUFyZzogc3RyaW5nKTogc3RyaW5nID0+IHtcbiAgICByZXR1cm4gXCJfYWNtZS1jaGFsbGVuZ2UuXCIgKyBkb21haW5OYW1lQXJnO1xufVxuXG5zbWFydGNsaS5hZGRDb21tYW5kKHtcbiAgICBjb21tYW5kTmFtZTogXCJkZXBsb3lfY2hhbGxlbmdlXCJcbn0pLnRoZW4oKGFyZ3YpID0+IHtcbiAgICBjb25zb2xlLmxvZyhhcmd2KVxuICAgIHNldENoYWxsZW5nZShhcmd2Ll9bMV0sIGFyZ3YuX1szXSk7XG59KTtcblxuc21hcnRjbGkuYWRkQ29tbWFuZCh7XG4gICAgY29tbWFuZE5hbWU6IFwiY2xlYW5fY2hhbGxlbmdlXCJcbn0pLnRoZW4oKGFyZ3YpID0+IHtcbiAgICBjbGVhbkNoYWxsZW5nZShhcmd2Ll9bMV0pO1xufSk7XG5cbnNtYXJ0Y2xpLnN0YXJ0UGFyc2UoKTtcbiJdfQ==
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										5
									
								
								dist/cert.paths.d.ts
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								dist/cert.paths.d.ts
									
									
									
									
										vendored
									
									
								
							@@ -1,2 +1,5 @@
 | 
			
		||||
import "typings-global";
 | 
			
		||||
export import path = require("path");
 | 
			
		||||
export declare let certHook: string;
 | 
			
		||||
export declare let config: string;
 | 
			
		||||
export declare let letsencryptSh: string;
 | 
			
		||||
export declare let sslDir: string;
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										8
									
								
								dist/cert.paths.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										8
									
								
								dist/cert.paths.js
									
									
									
									
										vendored
									
									
								
							@@ -1,5 +1,9 @@
 | 
			
		||||
"use strict";
 | 
			
		||||
require("typings-global");
 | 
			
		||||
exports.path = require("path");
 | 
			
		||||
var plugins = require("./cert.plugins");
 | 
			
		||||
exports.certHook = plugins.path.join(__dirname, "cert.hook.js");
 | 
			
		||||
exports.config = plugins.path.join(__dirname, "assets/config.json");
 | 
			
		||||
exports.letsencryptSh = plugins.path.join(__dirname, "assets/letsencrypt.sh");
 | 
			
		||||
exports.sslDir = plugins.path.join(__dirname, "/assets/certs");
 | 
			
		||||
 | 
			
		||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNlcnQucGF0aHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFFBQU8sZ0JBQWdCLENBQUMsQ0FBQTtBQUNWLFlBQUksV0FBVyxNQUFNLENBQUMsQ0FBQyIsImZpbGUiOiJjZXJ0LnBhdGhzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFwidHlwaW5ncy1nbG9iYWxcIjtcbmV4cG9ydCBpbXBvcnQgcGF0aCA9IHJlcXVpcmUoXCJwYXRoXCIpO1xuXG4iXX0=
 | 
			
		||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNlcnQucGF0aHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFFBQU8sZ0JBQWdCLENBQUMsQ0FBQTtBQUN4QixJQUFZLE9BQU8sV0FBTSxnQkFBZ0IsQ0FBQyxDQUFBO0FBRS9CLGdCQUFRLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQ3ZELGNBQU0sR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUMsb0JBQW9CLENBQUMsQ0FBQztBQUMzRCxxQkFBYSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBQyx1QkFBdUIsQ0FBQyxDQUFDO0FBQ3JFLGNBQU0sR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUMsZUFBZSxDQUFDLENBQUMiLCJmaWxlIjoiY2VydC5wYXRocy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBcInR5cGluZ3MtZ2xvYmFsXCI7XG5pbXBvcnQgKiBhcyBwbHVnaW5zIGZyb20gXCIuL2NlcnQucGx1Z2luc1wiO1xuXG5leHBvcnQgbGV0IGNlcnRIb29rID0gcGx1Z2lucy5wYXRoLmpvaW4oX19kaXJuYW1lLFwiY2VydC5ob29rLmpzXCIpO1xuZXhwb3J0IGxldCBjb25maWcgPSBwbHVnaW5zLnBhdGguam9pbihfX2Rpcm5hbWUsXCJhc3NldHMvY29uZmlnLmpzb25cIik7XG5leHBvcnQgbGV0IGxldHNlbmNyeXB0U2ggPSBwbHVnaW5zLnBhdGguam9pbihfX2Rpcm5hbWUsXCJhc3NldHMvbGV0c2VuY3J5cHQuc2hcIik7XG5leHBvcnQgbGV0IHNzbERpciA9IHBsdWdpbnMucGF0aC5qb2luKF9fZGlybmFtZSxcIi9hc3NldHMvY2VydHNcIik7Il19
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										10
									
								
								dist/cert.plugins.d.ts
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								dist/cert.plugins.d.ts
									
									
									
									
										vendored
									
									
								
							@@ -0,0 +1,10 @@
 | 
			
		||||
import "typings-global";
 | 
			
		||||
export import beautylog = require("beautylog");
 | 
			
		||||
export import cflare = require("cflare");
 | 
			
		||||
export declare let fs: any;
 | 
			
		||||
export import path = require("path");
 | 
			
		||||
export declare let q: any;
 | 
			
		||||
export declare let shelljs: any;
 | 
			
		||||
export import smartcli = require("smartcli");
 | 
			
		||||
export import smartfile = require("smartfile");
 | 
			
		||||
export import smartstring = require("smartstring");
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										14
									
								
								dist/cert.plugins.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										14
									
								
								dist/cert.plugins.js
									
									
									
									
										vendored
									
									
								
							@@ -1,3 +1,13 @@
 | 
			
		||||
"use strict";
 | 
			
		||||
require("typings-global");
 | 
			
		||||
exports.beautylog = require("beautylog");
 | 
			
		||||
exports.cflare = require("cflare");
 | 
			
		||||
exports.fs = require("fs-extra");
 | 
			
		||||
exports.path = require("path");
 | 
			
		||||
exports.q = require("q");
 | 
			
		||||
exports.shelljs = require("shelljs");
 | 
			
		||||
exports.smartcli = require("smartcli");
 | 
			
		||||
exports.smartfile = require("smartfile");
 | 
			
		||||
exports.smartstring = require("smartstring");
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJjZXJ0LnBsdWdpbnMuanMiLCJzb3VyY2VzQ29udGVudCI6W119
 | 
			
		||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNlcnQucGx1Z2lucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsUUFBTyxnQkFBZ0IsQ0FBQyxDQUFBO0FBQ1YsaUJBQVMsV0FBVyxXQUFXLENBQUMsQ0FBQztBQUNqQyxjQUFNLFdBQVcsUUFBUSxDQUFDLENBQUM7QUFDOUIsVUFBRSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUN0QixZQUFJLFdBQVcsTUFBTSxDQUFDLENBQUM7QUFDMUIsU0FBQyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNqQixlQUFPLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQzFCLGdCQUFRLFdBQVcsVUFBVSxDQUFDLENBQUM7QUFDL0IsaUJBQVMsV0FBVyxXQUFXLENBQUMsQ0FBQztBQUNqQyxtQkFBVyxXQUFXLGFBQWEsQ0FBQyxDQUFDIiwiZmlsZSI6ImNlcnQucGx1Z2lucy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBcInR5cGluZ3MtZ2xvYmFsXCI7XG5leHBvcnQgaW1wb3J0IGJlYXV0eWxvZyA9IHJlcXVpcmUoXCJiZWF1dHlsb2dcIik7XG5leHBvcnQgaW1wb3J0IGNmbGFyZSA9IHJlcXVpcmUoXCJjZmxhcmVcIik7XG5leHBvcnQgbGV0IGZzID0gcmVxdWlyZShcImZzLWV4dHJhXCIpO1xuZXhwb3J0IGltcG9ydCBwYXRoID0gcmVxdWlyZShcInBhdGhcIik7XG5leHBvcnQgbGV0IHEgPSByZXF1aXJlKFwicVwiKTtcbmV4cG9ydCBsZXQgc2hlbGxqcyA9IHJlcXVpcmUoXCJzaGVsbGpzXCIpO1xuZXhwb3J0IGltcG9ydCBzbWFydGNsaSA9IHJlcXVpcmUoXCJzbWFydGNsaVwiKTtcbmV4cG9ydCBpbXBvcnQgc21hcnRmaWxlID0gcmVxdWlyZShcInNtYXJ0ZmlsZVwiKTtcbmV4cG9ydCBpbXBvcnQgc21hcnRzdHJpbmcgPSByZXF1aXJlKFwic21hcnRzdHJpbmdcIik7XG5cbiJdfQ==
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2
									
								
								dist/index.d.ts
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								dist/index.d.ts
									
									
									
									
										vendored
									
									
								
							@@ -11,7 +11,7 @@ export declare class Cert {
 | 
			
		||||
        sslDir: string;
 | 
			
		||||
        gitOriginRepo?: string;
 | 
			
		||||
    });
 | 
			
		||||
    getDomainCert(): void;
 | 
			
		||||
    getDomainCert(domainNameArg: string): any;
 | 
			
		||||
}
 | 
			
		||||
export declare class Certificate {
 | 
			
		||||
    domainName: string;
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										17
									
								
								dist/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										17
									
								
								dist/index.js
									
									
									
									
										vendored
									
									
								
							@@ -1,13 +1,26 @@
 | 
			
		||||
"use strict";
 | 
			
		||||
var plugins = require("./cert.plugins");
 | 
			
		||||
var paths = require("./cert.paths");
 | 
			
		||||
var Cert = (function () {
 | 
			
		||||
    function Cert(optionsArg) {
 | 
			
		||||
        this.cfEmail = optionsArg.cfEmail;
 | 
			
		||||
        this.cfKey = optionsArg.cfKey;
 | 
			
		||||
        this.sslDir = optionsArg.sslDir;
 | 
			
		||||
        this.gitOriginRepo = optionsArg.gitOriginRepo;
 | 
			
		||||
        var config = {
 | 
			
		||||
            cfEmail: this.cfEmail,
 | 
			
		||||
            cfKey: this.cfKey
 | 
			
		||||
        };
 | 
			
		||||
        plugins.smartfile.memory.toFsSync(JSON.stringify(config), { fileName: "config.json", filePath: plugins.path.join(__dirname, "assets/") });
 | 
			
		||||
    }
 | 
			
		||||
    ;
 | 
			
		||||
    Cert.prototype.getDomainCert = function () { };
 | 
			
		||||
    Cert.prototype.getDomainCert = function (domainNameArg) {
 | 
			
		||||
        var done = plugins.q.defer();
 | 
			
		||||
        plugins.shelljs.exec("chmod 700 " + paths.letsencryptSh);
 | 
			
		||||
        plugins.shelljs.exec("chmod 700 " + paths.certHook);
 | 
			
		||||
        plugins.shelljs.exec("bash -c \"" + paths.letsencryptSh + " -c -d " + domainNameArg + " -t dns-01 -k " + paths.certHook + " -o " + paths.sslDir + "\"");
 | 
			
		||||
        return done.promise;
 | 
			
		||||
    };
 | 
			
		||||
    ;
 | 
			
		||||
    return Cert;
 | 
			
		||||
}());
 | 
			
		||||
@@ -20,4 +33,4 @@ var Certificate = (function () {
 | 
			
		||||
}());
 | 
			
		||||
exports.Certificate = Certificate;
 | 
			
		||||
 | 
			
		||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFFQTtJQU9JLGNBQVksVUFLWDtRQUNHLElBQUksQ0FBQyxPQUFPLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQztRQUNsQyxJQUFJLENBQUMsS0FBSyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUM7UUFDOUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxhQUFhLEdBQUcsVUFBVSxDQUFDLGFBQWEsQ0FBQztJQUNsRCxDQUFDOztJQUNELDRCQUFhLEdBQWIsY0FBZ0IsQ0FBQzs7SUFDckIsV0FBQztBQUFELENBbkJBLEFBbUJDLElBQUE7QUFuQlksWUFBSSxPQW1CaEIsQ0FBQTtBQUVEO0lBSUk7SUFFQSxDQUFDOztJQUNMLGtCQUFDO0FBQUQsQ0FQQSxBQU9DLElBQUE7QUFQWSxtQkFBVyxjQU92QixDQUFBIiwiZmlsZSI6ImluZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcGF0aHMgZnJvbSBcIi4vY2VydC5wYXRoc1wiO1xuXG5leHBvcnQgY2xhc3MgQ2VydCB7XG4gICAgY2ZFbWFpbDpzdHJpbmc7XG4gICAgY2ZLZXk6c3RyaW5nO1xuICAgIHNzbERpcjpzdHJpbmc7XG4gICAgY2VydGlmaWNhdGVzUHJlc2VudDtcbiAgICBjZXJ0aWZpY2F0ZXNWYWxpZDtcbiAgICBnaXRPcmlnaW5SZXBvO1xuICAgIGNvbnN0cnVjdG9yKG9wdGlvbnNBcmc6e1xuICAgICAgICBjZkVtYWlsOnN0cmluZyxcbiAgICAgICAgY2ZLZXk6c3RyaW5nLFxuICAgICAgICBzc2xEaXI6c3RyaW5nLFxuICAgICAgICBnaXRPcmlnaW5SZXBvPzpzdHJpbmdcbiAgICB9KXtcbiAgICAgICAgdGhpcy5jZkVtYWlsID0gb3B0aW9uc0FyZy5jZkVtYWlsO1xuICAgICAgICB0aGlzLmNmS2V5ID0gb3B0aW9uc0FyZy5jZktleTtcbiAgICAgICAgdGhpcy5zc2xEaXIgPSBvcHRpb25zQXJnLnNzbERpcjtcbiAgICAgICAgdGhpcy5naXRPcmlnaW5SZXBvID0gb3B0aW9uc0FyZy5naXRPcmlnaW5SZXBvO1xuICAgIH07XG4gICAgZ2V0RG9tYWluQ2VydCgpe307XG59XG5cbmV4cG9ydCBjbGFzcyBDZXJ0aWZpY2F0ZSB7XG4gICAgZG9tYWluTmFtZTpzdHJpbmc7XG4gICAgY3JlYXRpb25EYXRlOkRhdGU7XG4gICAgZXhwaXJ5RGF0ZTpEYXRlO1xuICAgIGNvbnN0cnVjdG9yKCl7XG5cbiAgICB9O1xufSJdfQ==
 | 
			
		||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxJQUFZLE9BQU8sV0FBTSxnQkFBZ0IsQ0FBQyxDQUFBO0FBQzFDLElBQVksS0FBSyxXQUFNLGNBQWMsQ0FBQyxDQUFBO0FBRXRDO0lBT0ksY0FBWSxVQUtYO1FBQ0csSUFBSSxDQUFDLE9BQU8sR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxLQUFLLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQztRQUM5QixJQUFJLENBQUMsTUFBTSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUM7UUFDaEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxVQUFVLENBQUMsYUFBYSxDQUFDO1FBQzlDLElBQUksTUFBTSxHQUFHO1lBQ1QsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3JCLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztTQUNwQixDQUFBO1FBQ0QsT0FBTyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUMsRUFBQyxRQUFRLEVBQUMsYUFBYSxFQUFDLFFBQVEsRUFBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUMsU0FBUyxDQUFDLEVBQUMsQ0FBQyxDQUFDO0lBQ3ZJLENBQUM7O0lBQ0QsNEJBQWEsR0FBYixVQUFjLGFBQW9CO1FBQzlCLElBQUksSUFBSSxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDN0IsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN6RCxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3BELE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUMsYUFBYSxHQUFHLFNBQVMsR0FBRyxhQUFhLEdBQUcsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLFFBQVEsR0FBRyxNQUFNLEdBQUUsS0FBSyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsQ0FBQztRQUN2SixNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN4QixDQUFDOztJQUNMLFdBQUM7QUFBRCxDQTlCQSxBQThCQyxJQUFBO0FBOUJZLFlBQUksT0E4QmhCLENBQUE7QUFFRDtJQUlJO0lBRUEsQ0FBQzs7SUFDTCxrQkFBQztBQUFELENBUEEsQUFPQyxJQUFBO0FBUFksbUJBQVcsY0FPdkIsQ0FBQSIsImZpbGUiOiJpbmRleC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHBsdWdpbnMgZnJvbSBcIi4vY2VydC5wbHVnaW5zXCI7XG5pbXBvcnQgKiBhcyBwYXRocyBmcm9tIFwiLi9jZXJ0LnBhdGhzXCI7XG5cbmV4cG9ydCBjbGFzcyBDZXJ0IHtcbiAgICBjZkVtYWlsOnN0cmluZztcbiAgICBjZktleTpzdHJpbmc7XG4gICAgc3NsRGlyOnN0cmluZztcbiAgICBjZXJ0aWZpY2F0ZXNQcmVzZW50O1xuICAgIGNlcnRpZmljYXRlc1ZhbGlkO1xuICAgIGdpdE9yaWdpblJlcG87XG4gICAgY29uc3RydWN0b3Iob3B0aW9uc0FyZzp7XG4gICAgICAgIGNmRW1haWw6c3RyaW5nLFxuICAgICAgICBjZktleTpzdHJpbmcsXG4gICAgICAgIHNzbERpcjpzdHJpbmcsXG4gICAgICAgIGdpdE9yaWdpblJlcG8/OnN0cmluZ1xuICAgIH0pe1xuICAgICAgICB0aGlzLmNmRW1haWwgPSBvcHRpb25zQXJnLmNmRW1haWw7XG4gICAgICAgIHRoaXMuY2ZLZXkgPSBvcHRpb25zQXJnLmNmS2V5O1xuICAgICAgICB0aGlzLnNzbERpciA9IG9wdGlvbnNBcmcuc3NsRGlyO1xuICAgICAgICB0aGlzLmdpdE9yaWdpblJlcG8gPSBvcHRpb25zQXJnLmdpdE9yaWdpblJlcG87XG4gICAgICAgIGxldCBjb25maWcgPSB7XG4gICAgICAgICAgICBjZkVtYWlsOiB0aGlzLmNmRW1haWwsXG4gICAgICAgICAgICBjZktleTogdGhpcy5jZktleVxuICAgICAgICB9XG4gICAgICAgIHBsdWdpbnMuc21hcnRmaWxlLm1lbW9yeS50b0ZzU3luYyhKU09OLnN0cmluZ2lmeShjb25maWcpLHtmaWxlTmFtZTpcImNvbmZpZy5qc29uXCIsZmlsZVBhdGg6cGx1Z2lucy5wYXRoLmpvaW4oX19kaXJuYW1lLFwiYXNzZXRzL1wiKX0pO1xuICAgIH07XG4gICAgZ2V0RG9tYWluQ2VydChkb21haW5OYW1lQXJnOnN0cmluZyl7XG4gICAgICAgIGxldCBkb25lID0gcGx1Z2lucy5xLmRlZmVyKCk7XG4gICAgICAgIHBsdWdpbnMuc2hlbGxqcy5leGVjKFwiY2htb2QgNzAwIFwiICsgcGF0aHMubGV0c2VuY3J5cHRTaCk7XG4gICAgICAgIHBsdWdpbnMuc2hlbGxqcy5leGVjKFwiY2htb2QgNzAwIFwiICsgcGF0aHMuY2VydEhvb2spO1xuICAgICAgICBwbHVnaW5zLnNoZWxsanMuZXhlYyhcImJhc2ggLWMgXFxcIlwiICsgcGF0aHMubGV0c2VuY3J5cHRTaCArIFwiIC1jIC1kIFwiICsgZG9tYWluTmFtZUFyZyArIFwiIC10IGRucy0wMSAtayBcIiArIHBhdGhzLmNlcnRIb29rICsgXCIgLW8gXCIrIHBhdGhzLnNzbERpciArIFwiXFxcIlwiKTtcbiAgICAgICAgcmV0dXJuIGRvbmUucHJvbWlzZTtcbiAgICB9O1xufVxuXG5leHBvcnQgY2xhc3MgQ2VydGlmaWNhdGUge1xuICAgIGRvbWFpbk5hbWU6c3RyaW5nO1xuICAgIGNyZWF0aW9uRGF0ZTpEYXRlO1xuICAgIGV4cGlyeURhdGU6RGF0ZTtcbiAgICBjb25zdHJ1Y3Rvcigpe1xuXG4gICAgfTtcbn0iXX0=
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										1
									
								
								dist/install.d.ts
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								dist/install.d.ts
									
									
									
									
										vendored
									
									
								
							@@ -0,0 +1 @@
 | 
			
		||||
export declare let startInstall: () => any;
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										28
									
								
								dist/install.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										28
									
								
								dist/install.js
									
									
									
									
										vendored
									
									
								
							@@ -1,12 +1,20 @@
 | 
			
		||||
"use strict";
 | 
			
		||||
var beautylog = require("beautylog");
 | 
			
		||||
var path = require("path");
 | 
			
		||||
var smartfile = require("smartfile");
 | 
			
		||||
var fs = require("fs-extra");
 | 
			
		||||
beautylog.info("installing letsencrypt.sh locally...");
 | 
			
		||||
fs.ensureDir(path.join(__dirname, "assets/"));
 | 
			
		||||
smartfile.remote.toFs("https://raw.githubusercontent.com/lukas2511/letsencrypt.sh/master/letsencrypt.sh", path.join(__dirname, "assets/", "le.sh")).then(function () {
 | 
			
		||||
    beautylog.success("Done!");
 | 
			
		||||
});
 | 
			
		||||
var plugins = require("./cert.plugins");
 | 
			
		||||
var paths = require("./cert.paths");
 | 
			
		||||
exports.startInstall = function () {
 | 
			
		||||
    var done = plugins.q.defer();
 | 
			
		||||
    plugins.beautylog.info("installing letsencrypt.sh locally...");
 | 
			
		||||
    plugins.fs.ensureDir(plugins.path.join(__dirname, "assets/"));
 | 
			
		||||
    plugins.smartfile.remote.toFs("https://raw.githubusercontent.com/lukas2511/letsencrypt.sh/master/letsencrypt.sh", paths.letsencryptSh).then(function () {
 | 
			
		||||
        plugins.beautylog.success("Done!");
 | 
			
		||||
        done.resolve();
 | 
			
		||||
    });
 | 
			
		||||
    return done.promise;
 | 
			
		||||
};
 | 
			
		||||
var smartcli = new plugins.smartcli.Smartcli();
 | 
			
		||||
smartcli.addCommand({
 | 
			
		||||
    commandName: "install"
 | 
			
		||||
}).then(exports.startInstall);
 | 
			
		||||
smartcli.startParse();
 | 
			
		||||
 | 
			
		||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluc3RhbGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLElBQVksU0FBUyxXQUFNLFdBQVcsQ0FBQyxDQUFBO0FBQ3ZDLElBQVksSUFBSSxXQUFNLE1BQU0sQ0FBQyxDQUFBO0FBQzdCLElBQVksU0FBUyxXQUFNLFdBQVcsQ0FBQyxDQUFBO0FBQ3ZDLElBQUksRUFBRSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUM3QixTQUFTLENBQUMsSUFBSSxDQUFDLHNDQUFzQyxDQUFDLENBQUM7QUFFdkQsRUFBRSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO0FBQzdDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNqQixrRkFBa0YsRUFDbEYsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUMsU0FBUyxFQUFDLE9BQU8sQ0FBQyxDQUN6QyxDQUFDLElBQUksQ0FBQztJQUNILFNBQVMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDL0IsQ0FBQyxDQUFDLENBQUMiLCJmaWxlIjoiaW5zdGFsbC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGJlYXV0eWxvZyBmcm9tIFwiYmVhdXR5bG9nXCI7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgKiBhcyBzbWFydGZpbGUgZnJvbSBcInNtYXJ0ZmlsZVwiO1xubGV0IGZzID0gcmVxdWlyZShcImZzLWV4dHJhXCIpO1xuYmVhdXR5bG9nLmluZm8oXCJpbnN0YWxsaW5nIGxldHNlbmNyeXB0LnNoIGxvY2FsbHkuLi5cIik7XG5cbmZzLmVuc3VyZURpcihwYXRoLmpvaW4oX19kaXJuYW1lLFwiYXNzZXRzL1wiKSk7XG5zbWFydGZpbGUucmVtb3RlLnRvRnMoXG4gICAgXCJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vbHVrYXMyNTExL2xldHNlbmNyeXB0LnNoL21hc3Rlci9sZXRzZW5jcnlwdC5zaFwiLFxuICAgIHBhdGguam9pbihfX2Rpcm5hbWUsXCJhc3NldHMvXCIsXCJsZS5zaFwiKVxuKS50aGVuKCgpID0+IHtcbiAgICBiZWF1dHlsb2cuc3VjY2VzcyhcIkRvbmUhXCIpO1xufSk7Il19
 | 
			
		||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluc3RhbGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLElBQVksT0FBTyxXQUFNLGdCQUFnQixDQUFDLENBQUE7QUFDMUMsSUFBWSxLQUFLLFdBQU0sY0FBYyxDQUFDLENBQUE7QUFFM0Isb0JBQVksR0FBRztJQUN0QixJQUFJLElBQUksR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzdCLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLHNDQUFzQyxDQUFDLENBQUM7SUFFL0QsT0FBTyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDOUQsT0FBTyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUN6QixrRkFBa0YsRUFDbEYsS0FBSyxDQUFDLGFBQWEsQ0FDdEIsQ0FBQyxJQUFJLENBQUM7UUFDSCxPQUFPLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDbkIsQ0FBQyxDQUFDLENBQUM7SUFDSCxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztBQUN4QixDQUFDLENBQUM7QUFFRixJQUFJLFFBQVEsR0FBRyxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7QUFDL0MsUUFBUSxDQUFDLFVBQVUsQ0FBQztJQUNoQixXQUFXLEVBQUMsU0FBUztDQUN4QixDQUFDLENBQUMsSUFBSSxDQUFDLG9CQUFZLENBQUMsQ0FBQztBQUN0QixRQUFRLENBQUMsVUFBVSxFQUFFLENBQUMiLCJmaWxlIjoiaW5zdGFsbC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHBsdWdpbnMgZnJvbSBcIi4vY2VydC5wbHVnaW5zXCI7XG5pbXBvcnQgKiBhcyBwYXRocyBmcm9tIFwiLi9jZXJ0LnBhdGhzXCI7XG5cbmV4cG9ydCBsZXQgc3RhcnRJbnN0YWxsID0gKCkgPT4ge1xuICAgIGxldCBkb25lID0gcGx1Z2lucy5xLmRlZmVyKCk7XG4gICAgcGx1Z2lucy5iZWF1dHlsb2cuaW5mbyhcImluc3RhbGxpbmcgbGV0c2VuY3J5cHQuc2ggbG9jYWxseS4uLlwiKTtcblxuICAgIHBsdWdpbnMuZnMuZW5zdXJlRGlyKHBsdWdpbnMucGF0aC5qb2luKF9fZGlybmFtZSwgXCJhc3NldHMvXCIpKTtcbiAgICBwbHVnaW5zLnNtYXJ0ZmlsZS5yZW1vdGUudG9GcyhcbiAgICAgICAgXCJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vbHVrYXMyNTExL2xldHNlbmNyeXB0LnNoL21hc3Rlci9sZXRzZW5jcnlwdC5zaFwiLFxuICAgICAgICBwYXRocy5sZXRzZW5jcnlwdFNoXG4gICAgKS50aGVuKCgpID0+IHtcbiAgICAgICAgcGx1Z2lucy5iZWF1dHlsb2cuc3VjY2VzcyhcIkRvbmUhXCIpO1xuICAgICAgICBkb25lLnJlc29sdmUoKTtcbiAgICB9KTtcbiAgICByZXR1cm4gZG9uZS5wcm9taXNlO1xufTtcblxubGV0IHNtYXJ0Y2xpID0gbmV3IHBsdWdpbnMuc21hcnRjbGkuU21hcnRjbGkoKTtcbnNtYXJ0Y2xpLmFkZENvbW1hbmQoe1xuICAgIGNvbW1hbmROYW1lOlwiaW5zdGFsbFwiXG59KS50aGVuKHN0YXJ0SW5zdGFsbCk7XG5zbWFydGNsaS5zdGFydFBhcnNlKCk7Il19
 | 
			
		||||
 
 | 
			
		||||
@@ -5,7 +5,7 @@
 | 
			
		||||
  "main": "dist/index.js",
 | 
			
		||||
  "scripts": {
 | 
			
		||||
    "test": "(npmts)",
 | 
			
		||||
    "install": "node dist/install.js"
 | 
			
		||||
    "install": "node dist/install.js install"
 | 
			
		||||
  },
 | 
			
		||||
  "repository": {
 | 
			
		||||
    "type": "git",
 | 
			
		||||
@@ -25,14 +25,15 @@
 | 
			
		||||
  "homepage": "https://gitlab.com/pushrocks/cert#readme",
 | 
			
		||||
  "dependencies": {
 | 
			
		||||
    "beautylog": "^5.0.12",
 | 
			
		||||
    "cflare": "0.0.6",
 | 
			
		||||
    "cflare": "0.0.7",
 | 
			
		||||
    "fs-extra": "^0.30.0",
 | 
			
		||||
    "letsencrypt": "^1.4.4",
 | 
			
		||||
    "q": "^1.4.1",
 | 
			
		||||
    "smartcli": "^1.0.2",
 | 
			
		||||
    "shelljs": "^0.7.0",
 | 
			
		||||
    "smartcli": "^1.0.4",
 | 
			
		||||
    "smartfile": "^3.0.10",
 | 
			
		||||
    "smartgit": "0.0.10",
 | 
			
		||||
    "smartstring": "^2.0.9",
 | 
			
		||||
    "smartstring": "^2.0.10",
 | 
			
		||||
    "typings-global": "^1.0.3"
 | 
			
		||||
  },
 | 
			
		||||
  "devDependencies": {
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										31
									
								
								test/test.js
									
									
									
									
									
								
							
							
						
						
									
										31
									
								
								test/test.js
									
									
									
									
									
								
							@@ -2,6 +2,35 @@
 | 
			
		||||
require("typings-test");
 | 
			
		||||
require("should");
 | 
			
		||||
var qenv_1 = require("qenv");
 | 
			
		||||
var install_1 = require("../dist/install");
 | 
			
		||||
var cert = require("../dist/index");
 | 
			
		||||
var testQenv = new qenv_1.Qenv(process.cwd(), process.cwd() + "/.nogit");
 | 
			
		||||
var testCert;
 | 
			
		||||
describe("cert", function () {
 | 
			
		||||
    describe("install", function () {
 | 
			
		||||
        it("should download letsencrypt.sh", function (done) {
 | 
			
		||||
            this.timeout(5000);
 | 
			
		||||
            install_1.startInstall().then(function () {
 | 
			
		||||
                done();
 | 
			
		||||
            });
 | 
			
		||||
        });
 | 
			
		||||
    });
 | 
			
		||||
    describe("Cert", function () {
 | 
			
		||||
        it("should create a new cert", function () {
 | 
			
		||||
            testCert = new cert.Cert({
 | 
			
		||||
                cfEmail: process.env.CF_EMAIL,
 | 
			
		||||
                cfKey: process.env.CF_KEY,
 | 
			
		||||
                sslDir: ""
 | 
			
		||||
            });
 | 
			
		||||
            testCert.should.be.instanceof(cert.Cert);
 | 
			
		||||
        });
 | 
			
		||||
        it("should get a valid certificate", function (done) {
 | 
			
		||||
            this.timeout(120000);
 | 
			
		||||
            testCert.getDomainCert("sub2.bleu.de").then(function () {
 | 
			
		||||
                done();
 | 
			
		||||
            });
 | 
			
		||||
        });
 | 
			
		||||
    });
 | 
			
		||||
});
 | 
			
		||||
 | 
			
		||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFFBQU8sY0FBYyxDQUFDLENBQUE7QUFDdEIsUUFBTyxRQUFRLENBQUMsQ0FBQTtBQUVoQixxQkFBbUIsTUFBTSxDQUFDLENBQUE7QUFFMUIsSUFBSSxRQUFRLEdBQUcsSUFBSSxXQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLE9BQU8sQ0FBQyxHQUFHLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0FBQyIsImZpbGUiOiJ0ZXN0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFwidHlwaW5ncy10ZXN0XCI7XG5pbXBvcnQgXCJzaG91bGRcIjtcbmltcG9ydCAqIGFzIGNlcnQgZnJvbSBcIi4uL2Rpc3QvaW5kZXhcIjtcbmltcG9ydCB7UWVudn0gZnJvbSBcInFlbnZcIjtcblxubGV0IHRlc3RRZW52ID0gbmV3IFFlbnYocHJvY2Vzcy5jd2QoKSwgcHJvY2Vzcy5jd2QoKSArIFwiLy5ub2dpdFwiKTsiXX0=
 | 
			
		||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFFBQU8sY0FBYyxDQUFDLENBQUE7QUFDdEIsUUFBTyxRQUFRLENBQUMsQ0FBQTtBQUNoQixxQkFBbUIsTUFBTSxDQUFDLENBQUE7QUFFMUIsd0JBQTJCLGlCQUFpQixDQUFDLENBQUE7QUFDN0MsSUFBWSxJQUFJLFdBQU0sZUFBZSxDQUFDLENBQUE7QUFHdEMsSUFBSSxRQUFRLEdBQUcsSUFBSSxXQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLE9BQU8sQ0FBQyxHQUFHLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0FBQztBQUVsRSxJQUFJLFFBQWtCLENBQUM7QUFFdkIsUUFBUSxDQUFDLE1BQU0sRUFBQztJQUNaLFFBQVEsQ0FBQyxTQUFTLEVBQUM7UUFDZixFQUFFLENBQUMsZ0NBQWdDLEVBQUMsVUFBUyxJQUFJO1lBQzdDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbkIsc0JBQVksRUFBRSxDQUFDLElBQUksQ0FBQztnQkFDaEIsSUFBSSxFQUFFLENBQUM7WUFDWCxDQUFDLENBQUMsQ0FBQTtRQUNOLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQyxDQUFDLENBQUE7SUFDRixRQUFRLENBQUMsTUFBTSxFQUFDO1FBQ1osRUFBRSxDQUFDLDBCQUEwQixFQUFDO1lBQzFCLFFBQVEsR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUM7Z0JBQ3JCLE9BQU8sRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVE7Z0JBQzdCLEtBQUssRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU07Z0JBQ3pCLE1BQU0sRUFBRSxFQUFFO2FBQ2IsQ0FBQyxDQUFDO1lBQ0gsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3QyxDQUFDLENBQUMsQ0FBQTtRQUNGLEVBQUUsQ0FBQyxnQ0FBZ0MsRUFBQyxVQUFTLElBQUk7WUFDN0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNyQixRQUFRLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxDQUFDLElBQUksQ0FBQztnQkFDeEMsSUFBSSxFQUFFLENBQUM7WUFDWCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQyxDQUFDLENBQUE7QUFDTixDQUFDLENBQUMsQ0FBQyIsImZpbGUiOiJ0ZXN0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFwidHlwaW5ncy10ZXN0XCI7XG5pbXBvcnQgXCJzaG91bGRcIjtcbmltcG9ydCB7UWVudn0gZnJvbSBcInFlbnZcIjtcblxuaW1wb3J0IHtzdGFydEluc3RhbGx9IGZyb20gXCIuLi9kaXN0L2luc3RhbGxcIjtcbmltcG9ydCAqIGFzIGNlcnQgZnJvbSBcIi4uL2Rpc3QvaW5kZXhcIjtcblxuXG5sZXQgdGVzdFFlbnYgPSBuZXcgUWVudihwcm9jZXNzLmN3ZCgpLCBwcm9jZXNzLmN3ZCgpICsgXCIvLm5vZ2l0XCIpO1xuXG5sZXQgdGVzdENlcnQ6Y2VydC5DZXJ0O1xuXG5kZXNjcmliZShcImNlcnRcIixmdW5jdGlvbigpe1xuICAgIGRlc2NyaWJlKFwiaW5zdGFsbFwiLGZ1bmN0aW9uKCl7XG4gICAgICAgIGl0KFwic2hvdWxkIGRvd25sb2FkIGxldHNlbmNyeXB0LnNoXCIsZnVuY3Rpb24oZG9uZSl7XG4gICAgICAgICAgICB0aGlzLnRpbWVvdXQoNTAwMCk7XG4gICAgICAgICAgICBzdGFydEluc3RhbGwoKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICBkb25lKCk7XG4gICAgICAgICAgICB9KVxuICAgICAgICB9KVxuICAgIH0pXG4gICAgZGVzY3JpYmUoXCJDZXJ0XCIsZnVuY3Rpb24oKXtcbiAgICAgICAgaXQoXCJzaG91bGQgY3JlYXRlIGEgbmV3IGNlcnRcIixmdW5jdGlvbigpe1xuICAgICAgICAgICAgdGVzdENlcnQgPSBuZXcgY2VydC5DZXJ0KHtcbiAgICAgICAgICAgICAgICBjZkVtYWlsOiBwcm9jZXNzLmVudi5DRl9FTUFJTCxcbiAgICAgICAgICAgICAgICBjZktleTogcHJvY2Vzcy5lbnYuQ0ZfS0VZLFxuICAgICAgICAgICAgICAgIHNzbERpcjogXCJcIlxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0ZXN0Q2VydC5zaG91bGQuYmUuaW5zdGFuY2VvZihjZXJ0LkNlcnQpO1xuICAgICAgICB9KVxuICAgICAgICBpdChcInNob3VsZCBnZXQgYSB2YWxpZCBjZXJ0aWZpY2F0ZVwiLGZ1bmN0aW9uKGRvbmUpe1xuICAgICAgICAgICAgdGhpcy50aW1lb3V0KDEyMDAwMCk7XG4gICAgICAgICAgICB0ZXN0Q2VydC5nZXREb21haW5DZXJ0KFwic3ViMi5ibGV1LmRlXCIpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgIGRvbmUoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KVxuICAgIH0pXG59KTsiXX0=
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										33
									
								
								test/test.ts
									
									
									
									
									
								
							
							
						
						
									
										33
									
								
								test/test.ts
									
									
									
									
									
								
							@@ -1,7 +1,38 @@
 | 
			
		||||
import "typings-test";
 | 
			
		||||
import "should";
 | 
			
		||||
import * as cert from "../dist/index";
 | 
			
		||||
import {Qenv} from "qenv";
 | 
			
		||||
 | 
			
		||||
import {startInstall} from "../dist/install";
 | 
			
		||||
import * as cert from "../dist/index";
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
let testQenv = new Qenv(process.cwd(), process.cwd() + "/.nogit");
 | 
			
		||||
 | 
			
		||||
let testCert:cert.Cert;
 | 
			
		||||
 | 
			
		||||
describe("cert",function(){
 | 
			
		||||
    describe("install",function(){
 | 
			
		||||
        it("should download letsencrypt.sh",function(done){
 | 
			
		||||
            this.timeout(5000);
 | 
			
		||||
            startInstall().then(() => {
 | 
			
		||||
                done();
 | 
			
		||||
            })
 | 
			
		||||
        })
 | 
			
		||||
    })
 | 
			
		||||
    describe("Cert",function(){
 | 
			
		||||
        it("should create a new cert",function(){
 | 
			
		||||
            testCert = new cert.Cert({
 | 
			
		||||
                cfEmail: process.env.CF_EMAIL,
 | 
			
		||||
                cfKey: process.env.CF_KEY,
 | 
			
		||||
                sslDir: ""
 | 
			
		||||
            });
 | 
			
		||||
            testCert.should.be.instanceof(cert.Cert);
 | 
			
		||||
        })
 | 
			
		||||
        it("should get a valid certificate",function(done){
 | 
			
		||||
            this.timeout(120000);
 | 
			
		||||
            testCert.getDomainCert("sub2.bleu.de").then(() => {
 | 
			
		||||
                done();
 | 
			
		||||
            });
 | 
			
		||||
        })
 | 
			
		||||
    })
 | 
			
		||||
});
 | 
			
		||||
@@ -1,3 +1,58 @@
 | 
			
		||||
import * as smartcli from "smartcli";
 | 
			
		||||
import * as cflare from "cflare";
 | 
			
		||||
#!/usr/bin/env node
 | 
			
		||||
// the shebang line above makes sure this script will get interpreted by node
 | 
			
		||||
 | 
			
		||||
import "typings-global";
 | 
			
		||||
import * as plugins from "./cert.plugins";
 | 
			
		||||
import * as paths from "./cert.paths";
 | 
			
		||||
 | 
			
		||||
let smartcli = new plugins.smartcli.Smartcli();
 | 
			
		||||
 | 
			
		||||
let config = plugins.smartfile.local.toObjectSync(paths.config);
 | 
			
		||||
let cflare = new plugins.cflare.CflareAccount();
 | 
			
		||||
cflare.auth({
 | 
			
		||||
    email: config.cfEmail,
 | 
			
		||||
    key: config.cfKey
 | 
			
		||||
});
 | 
			
		||||
 | 
			
		||||
let setChallenge = (domainNameArg: string, challengeArg: string) => {
 | 
			
		||||
    let done = plugins.q.defer();
 | 
			
		||||
    cflare.createRecord(prefixName(domainNameArg), "TXT", challengeArg).then(() => {
 | 
			
		||||
        cooldown().then(() => {
 | 
			
		||||
            done.resolve();
 | 
			
		||||
        });
 | 
			
		||||
    });
 | 
			
		||||
    return done.promise;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
let cleanChallenge = (domainNameArg) => {
 | 
			
		||||
    let done = plugins.q.defer();
 | 
			
		||||
    cflare.removeRecord(prefixName(domainNameArg), "TXT");
 | 
			
		||||
    return done.promise;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
let cooldown = () => {
 | 
			
		||||
    let done = plugins.q.defer();
 | 
			
		||||
    console.log("Cooling down!");
 | 
			
		||||
    setTimeout(() => {
 | 
			
		||||
        done.resolve();
 | 
			
		||||
    }, 20000)
 | 
			
		||||
    return done.promise;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
let prefixName = (domainNameArg: string): string => {
 | 
			
		||||
    return "_acme-challenge." + domainNameArg;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
smartcli.addCommand({
 | 
			
		||||
    commandName: "deploy_challenge"
 | 
			
		||||
}).then((argv) => {
 | 
			
		||||
    setChallenge(argv._[1], argv._[3]);
 | 
			
		||||
});
 | 
			
		||||
 | 
			
		||||
smartcli.addCommand({
 | 
			
		||||
    commandName: "clean_challenge"
 | 
			
		||||
}).then((argv) => {
 | 
			
		||||
    cleanChallenge(argv._[1]);
 | 
			
		||||
});
 | 
			
		||||
 | 
			
		||||
smartcli.startParse();
 | 
			
		||||
 
 | 
			
		||||
@@ -1,3 +1,7 @@
 | 
			
		||||
import "typings-global";
 | 
			
		||||
export import path = require("path");
 | 
			
		||||
import * as plugins from "./cert.plugins";
 | 
			
		||||
 | 
			
		||||
export let certHook = plugins.path.join(__dirname,"cert.hook.js");
 | 
			
		||||
export let config = plugins.path.join(__dirname,"assets/config.json");
 | 
			
		||||
export let letsencryptSh = plugins.path.join(__dirname,"assets/letsencrypt.sh");
 | 
			
		||||
export let sslDir = plugins.path.join(__dirname,"/assets/certs");
 | 
			
		||||
@@ -1,6 +1,11 @@
 | 
			
		||||
import "typings-global";
 | 
			
		||||
export import beautylog = require("beautylog");
 | 
			
		||||
export import cflare = require("cflare");
 | 
			
		||||
export let fs = require("fs-extra");
 | 
			
		||||
export import path = require("path");
 | 
			
		||||
export let q = require("q");
 | 
			
		||||
export let shelljs = require("shelljs");
 | 
			
		||||
export import smartcli = require("smartcli");
 | 
			
		||||
export import smartfile = require("smartfile");
 | 
			
		||||
export import smartstring = require("smartstring");
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										15
									
								
								ts/index.ts
									
									
									
									
									
								
							
							
						
						
									
										15
									
								
								ts/index.ts
									
									
									
									
									
								
							@@ -1,3 +1,4 @@
 | 
			
		||||
import * as plugins from "./cert.plugins";
 | 
			
		||||
import * as paths from "./cert.paths";
 | 
			
		||||
 | 
			
		||||
export class Cert {
 | 
			
		||||
@@ -17,8 +18,20 @@ export class Cert {
 | 
			
		||||
        this.cfKey = optionsArg.cfKey;
 | 
			
		||||
        this.sslDir = optionsArg.sslDir;
 | 
			
		||||
        this.gitOriginRepo = optionsArg.gitOriginRepo;
 | 
			
		||||
        let config = {
 | 
			
		||||
            cfEmail: this.cfEmail,
 | 
			
		||||
            cfKey: this.cfKey
 | 
			
		||||
        }
 | 
			
		||||
        plugins.smartfile.memory.toFsSync(JSON.stringify(config),{fileName:"config.json",filePath:plugins.path.join(__dirname,"assets/")});
 | 
			
		||||
    };
 | 
			
		||||
    getDomainCert(domainNameArg:string){
 | 
			
		||||
        let done = plugins.q.defer();
 | 
			
		||||
        plugins.shelljs.exec("chmod 700 " + paths.letsencryptSh);
 | 
			
		||||
        plugins.shelljs.exec("chmod 700 " + paths.certHook);
 | 
			
		||||
        plugins.shelljs.exec("bash -c \"" + paths.letsencryptSh + " -c -d " + domainNameArg + " -t dns-01 -k " + paths.certHook + " -o "+ paths.sslDir + "\"");
 | 
			
		||||
        done.resolve();
 | 
			
		||||
        return done.promise;
 | 
			
		||||
    };
 | 
			
		||||
    getDomainCert(){};
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export class Certificate {
 | 
			
		||||
 
 | 
			
		||||
@@ -1,13 +1,23 @@
 | 
			
		||||
import * as beautylog from "beautylog";
 | 
			
		||||
import * as path from "path";
 | 
			
		||||
import * as smartfile from "smartfile";
 | 
			
		||||
let fs = require("fs-extra");
 | 
			
		||||
beautylog.info("installing letsencrypt.sh locally...");
 | 
			
		||||
import * as plugins from "./cert.plugins";
 | 
			
		||||
import * as paths from "./cert.paths";
 | 
			
		||||
 | 
			
		||||
fs.ensureDir(path.join(__dirname,"assets/"));
 | 
			
		||||
smartfile.remote.toFs(
 | 
			
		||||
    "https://raw.githubusercontent.com/lukas2511/letsencrypt.sh/master/letsencrypt.sh",
 | 
			
		||||
    path.join(__dirname,"assets/","le.sh")
 | 
			
		||||
).then(() => {
 | 
			
		||||
    beautylog.success("Done!");
 | 
			
		||||
});
 | 
			
		||||
export let startInstall = () => {
 | 
			
		||||
    let done = plugins.q.defer();
 | 
			
		||||
    plugins.beautylog.info("installing letsencrypt.sh locally...");
 | 
			
		||||
 | 
			
		||||
    plugins.fs.ensureDir(plugins.path.join(__dirname, "assets/"));
 | 
			
		||||
    plugins.smartfile.remote.toFs(
 | 
			
		||||
        "https://raw.githubusercontent.com/lukas2511/letsencrypt.sh/master/letsencrypt.sh",
 | 
			
		||||
        paths.letsencryptSh
 | 
			
		||||
    ).then(() => {
 | 
			
		||||
        plugins.beautylog.success("Done!");
 | 
			
		||||
        done.resolve();
 | 
			
		||||
    });
 | 
			
		||||
    return done.promise;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
let smartcli = new plugins.smartcli.Smartcli();
 | 
			
		||||
smartcli.addCommand({
 | 
			
		||||
    commandName:"install"
 | 
			
		||||
}).then(startInstall);
 | 
			
		||||
smartcli.startParse();
 | 
			
		||||
		Reference in New Issue
	
	Block a user