puppetfile-resolver 0.6.1 → 0.6.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cda8bcaca5b127580d43f08c2a2952238cc9ffee2944676b7391ff185a0841c6
4
- data.tar.gz: 472cb9b9cb4d0ada8fc04fb510f66a830f70a5c5153a9ce527f211c2b87b1ed3
3
+ metadata.gz: d7673218a6f7c10c7e28ae17d8bc7ebbe7da5d820ae31c4aa10781710aa26c12
4
+ data.tar.gz: a5bdc145cd5bc3233f031617e281d9a0f6927a80057a1a1ea32300cef8ea1004
5
5
  SHA512:
6
- metadata.gz: 0dbfe8585196e016d6d45d48768bb6b5a838c32367d69df1cd0a8849a9a94a8d96e06a9965789b4d1c154acfa501e4bfb7fd122493f450b0bc6d9f46924b7871
7
- data.tar.gz: 1d89877b4c34563262ee8d1da85a7221c6d049bf8d4e99c8d7f87f9b18b4d03a6f7ddd857e93e5cff3eb988bdbb3a845d17ab2020ee8f829d95a9b02f91db502
6
+ metadata.gz: 8aaeacdba844e37b2090585eaa922352520384271703f06007ce6f658e06e2cb44132ad730d1663060f28376f5018086fcff4b9a6a93363b8e3486c03929ed48
7
+ data.tar.gz: 7c7a6804f9bb7fa4404a50d087f5b931db6cbf31b021cc4bf3c2124489b9b738e65f61887352f0fb531267dfd81a3f54514e67f8e35f39f8457d6676014f984b
data/README.md CHANGED
@@ -1,5 +1,5 @@
1
- [![CI for Puppetfile Resolver](https://github.com/glennsarti/puppetfile-resolver/workflows/CI%20for%20Puppetfile%20Resolver/badge.svg)](https://github.com/glennsarti/puppetfile-resolver/actions?query=workflow%3A%22CI+for+Puppetfile+Resolver%22)
2
- [![Gem Version](https://img.shields.io/gem/v/puppetfile-resolver)](https://rubygems.org/gems/puppetfile-resolver)
1
+ [![ci](https://github.com/puppetlabs/puppetfile-resolver/actions/workflows/ci.yml/badge.svg)](https://github.com/puppetlabs/puppetfile-resolver/actions/workflows/ci.yml)
2
+ [![Gem Version](https://badge.fury.io/rb/puppetfile-resolver.svg)](https://badge.fury.io/rb/puppetfile-resolver)
3
3
 
4
4
  # Puppetfile Resolver
5
5
 
@@ -43,7 +43,7 @@ module PuppetfileResolver
43
43
  private
44
44
 
45
45
  def to_cache_name(name)
46
- ::Digest::SHA256.hexdigest(name) + '.txt'
46
+ "#{::Digest::SHA256.hexdigest(name)}.txt"
47
47
  end
48
48
  end
49
49
  end
@@ -1,7 +1,7 @@
1
1
  ##
2
2
  ## Bundle of CA Root Certificates
3
3
  ##
4
- ## Certificate data from Mozilla as of: Tue Apr 26 03:12:05 2022 GMT
4
+ ## Certificate data from Mozilla as of: Tue Jul 19 03:12:06 2022 GMT
5
5
  ##
6
6
  ## This is a bundle of X.509 certificates of public Certificate Authorities
7
7
  ## (CA). These were automatically extracted from Mozilla's root certificates
@@ -14,7 +14,7 @@
14
14
  ## Just configure this file as the SSLCACertificateFile.
15
15
  ##
16
16
  ## Conversion done with mk-ca-bundle.pl version 1.29.
17
- ## SHA256: 34a54d5191775c1bd37be6cfd3f09e831e072555dc3a2e51f4a2c4b0f8ada5cc
17
+ ## SHA256: 9bf3799611fb58197f61d45e71ce3dc19f30e7dd73731915872ce5108a7bb066
18
18
  ##
19
19
 
20
20
 
@@ -993,30 +993,6 @@ tnRGEmyR7jTV7JqR50S+kDFy1UkC9gLl9B/rfNmWVan/7Ir5mUf/NVoCqgTLiluHcSmRvaS0eg29
993
993
  mvVXIwAHIRc/SjnRBUkLp7Y3gaVdjKozXoEofKd9J+sAro03
994
994
  -----END CERTIFICATE-----
995
995
 
996
- Hellenic Academic and Research Institutions RootCA 2011
997
- =======================================================
998
- -----BEGIN CERTIFICATE-----
999
- MIIEMTCCAxmgAwIBAgIBADANBgkqhkiG9w0BAQUFADCBlTELMAkGA1UEBhMCR1IxRDBCBgNVBAoT
1000
- O0hlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1dGlvbnMgQ2VydC4gQXV0aG9y
1001
- aXR5MUAwPgYDVQQDEzdIZWxsZW5pYyBBY2FkZW1pYyBhbmQgUmVzZWFyY2ggSW5zdGl0dXRpb25z
1002
- IFJvb3RDQSAyMDExMB4XDTExMTIwNjEzNDk1MloXDTMxMTIwMTEzNDk1MlowgZUxCzAJBgNVBAYT
1003
- AkdSMUQwQgYDVQQKEztIZWxsZW5pYyBBY2FkZW1pYyBhbmQgUmVzZWFyY2ggSW5zdGl0dXRpb25z
1004
- IENlcnQuIEF1dGhvcml0eTFAMD4GA1UEAxM3SGVsbGVuaWMgQWNhZGVtaWMgYW5kIFJlc2VhcmNo
1005
- IEluc3RpdHV0aW9ucyBSb290Q0EgMjAxMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
1006
- AKlTAOMupvaO+mDYLZU++CwqVE7NuYRhlFhPjz2L5EPzdYmNUeTDN9KKiE15HrcS3UN4SoqS5tdI
1007
- 1Q+kOilENbgH9mgdVc04UfCMJDGFr4PJfel3r+0ae50X+bOdOFAPplp5kYCvN66m0zH7tSYJnTxa
1008
- 71HFK9+WXesyHgLacEnsbgzImjeN9/E2YEsmLIKe0HjzDQ9jpFEw4fkrJxIH2Oq9GGKYsFk3fb7u
1009
- 8yBRQlqD75O6aRXxYp2fmTmCobd0LovUxQt7L/DICto9eQqakxylKHJzkUOap9FNhYS5qXSPFEDH
1010
- 3N6sQWRstBmbAmNtJGSPRLIl6s5ddAxjMlyNh+UCAwEAAaOBiTCBhjAPBgNVHRMBAf8EBTADAQH/
1011
- MAsGA1UdDwQEAwIBBjAdBgNVHQ4EFgQUppFC/RNhSiOeCKQp5dgTBCPuQSUwRwYDVR0eBEAwPqA8
1012
- MAWCAy5ncjAFggMuZXUwBoIELmVkdTAGggQub3JnMAWBAy5ncjAFgQMuZXUwBoEELmVkdTAGgQQu
1013
- b3JnMA0GCSqGSIb3DQEBBQUAA4IBAQAf73lB4XtuP7KMhjdCSk4cNx6NZrokgclPEg8hwAOXhiVt
1014
- XdMiKahsog2p6z0GW5k6x8zDmjR/qw7IThzh+uTczQ2+vyT+bOdrwg3IBp5OjWEopmr95fZi6hg8
1015
- TqBTnbI6nOulnJEWtk2C4AwFSKls9cz4y51JtPACpf1wA+2KIaWuE4ZJwzNzvoc7dIsXRSZMFpGD
1016
- /md9zU1jZ/rzAxKWeAaNsWftjj++n08C9bMJL/NMh98qy5V8AcysNnq/onN694/BtZqhFLKPM58N
1017
- 7yLcZnuEvUUXBj08yrl3NI/K6s8/MT7jiOOASSXIl7WdmplNsDz4SgCbZN2fOUvRJ9e4
1018
- -----END CERTIFICATE-----
1019
-
1020
996
  Actalis Authentication Root CA
1021
997
  ==============================
1022
998
  -----BEGIN CERTIFICATE-----
@@ -3345,3 +3321,140 @@ PUQtVHJ1c3QlMjBHbWJILEM9REU/Y2VydGlmaWNhdGVyZXZvY2F0aW9ubGlzdDAKBggqhkjOPQQD
3345
3321
  AwNpADBmAjEAyjzGKnXCXnViOTYAYFqLwZOZzNnbQTs7h5kXO9XMT8oi96CAy/m0sRtW9XLS/BnR
3346
3322
  AjEAkfcwkz8QRitxpNA7RJvAKQIFskF3UfN5Wp6OFKBOQtJbgfM0agPnIjhQW+0ZT0MW
3347
3323
  -----END CERTIFICATE-----
3324
+
3325
+ DigiCert TLS ECC P384 Root G5
3326
+ =============================
3327
+ -----BEGIN CERTIFICATE-----
3328
+ MIICGTCCAZ+gAwIBAgIQCeCTZaz32ci5PhwLBCou8zAKBggqhkjOPQQDAzBOMQswCQYDVQQGEwJV
3329
+ UzEXMBUGA1UEChMORGlnaUNlcnQsIEluYy4xJjAkBgNVBAMTHURpZ2lDZXJ0IFRMUyBFQ0MgUDM4
3330
+ NCBSb290IEc1MB4XDTIxMDExNTAwMDAwMFoXDTQ2MDExNDIzNTk1OVowTjELMAkGA1UEBhMCVVMx
3331
+ FzAVBgNVBAoTDkRpZ2lDZXJ0LCBJbmMuMSYwJAYDVQQDEx1EaWdpQ2VydCBUTFMgRUNDIFAzODQg
3332
+ Um9vdCBHNTB2MBAGByqGSM49AgEGBSuBBAAiA2IABMFEoc8Rl1Ca3iOCNQfN0MsYndLxf3c1Tzvd
3333
+ lHJS7cI7+Oz6e2tYIOyZrsn8aLN1udsJ7MgT9U7GCh1mMEy7H0cKPGEQQil8pQgO4CLp0zVozptj
3334
+ n4S1mU1YoI71VOeVyaNCMEAwHQYDVR0OBBYEFMFRRVBZqz7nLFr6ICISB4CIfBFqMA4GA1UdDwEB
3335
+ /wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MAoGCCqGSM49BAMDA2gAMGUCMQCJao1H5+z8blUD2Wds
3336
+ Jk6Dxv3J+ysTvLd6jLRl0mlpYxNjOyZQLgGheQaRnUi/wr4CMEfDFXuxoJGZSZOoPHzoRgaLLPIx
3337
+ AJSdYsiJvRmEFOml+wG4DXZDjC5Ty3zfDBeWUA==
3338
+ -----END CERTIFICATE-----
3339
+
3340
+ DigiCert TLS RSA4096 Root G5
3341
+ ============================
3342
+ -----BEGIN CERTIFICATE-----
3343
+ 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
3367
+ bEtoL8pU9ozaMv7Da4M/OMZ+
3368
+ -----END CERTIFICATE-----
3369
+
3370
+ Certainly Root R1
3371
+ =================
3372
+ -----BEGIN CERTIFICATE-----
3373
+ MIIFRzCCAy+gAwIBAgIRAI4P+UuQcWhlM1T01EQ5t+AwDQYJKoZIhvcNAQELBQAwPTELMAkGA1UE
3374
+ BhMCVVMxEjAQBgNVBAoTCUNlcnRhaW5seTEaMBgGA1UEAxMRQ2VydGFpbmx5IFJvb3QgUjEwHhcN
3375
+ MjEwNDAxMDAwMDAwWhcNNDYwNDAxMDAwMDAwWjA9MQswCQYDVQQGEwJVUzESMBAGA1UEChMJQ2Vy
3376
+ dGFpbmx5MRowGAYDVQQDExFDZXJ0YWlubHkgUm9vdCBSMTCCAiIwDQYJKoZIhvcNAQEBBQADggIP
3377
+ ADCCAgoCggIBANA21B/q3avk0bbm+yLA3RMNansiExyXPGhjZjKcA7WNpIGD2ngwEc/csiu+kr+O
3378
+ 5MQTvqRoTNoCaBZ0vrLdBORrKt03H2As2/X3oXyVtwxwhi7xOu9S98zTm/mLvg7fMbedaFySpvXl
3379
+ 8wo0tf97ouSHocavFwDvA5HtqRxOcT3Si2yJ9HiG5mpJoM610rCrm/b01C7jcvk2xusVtyWMOvwl
3380
+ DbMicyF0yEqWYZL1LwsYpfSt4u5BvQF5+paMjRcCMLT5r3gajLQ2EBAHBXDQ9DGQilHFhiZ5shGI
3381
+ XsXwClTNSaa/ApzSRKft43jvRl5tcdF5cBxGX1HpyTfcX35pe0HfNEXgO4T0oYoKNp43zGJS4YkN
3382
+ KPl6I7ENPT2a/Z2B7yyQwHtETrtJ4A5KVpK8y7XdeReJkd5hiXSSqOMyhb5OhaRLWcsrxXiOcVTQ
3383
+ AjeZjOVJ6uBUcqQRBi8LjMFbvrWhsFNunLhgkR9Za/kt9JQKl7XsxXYDVBtlUrpMklZRNaBA2Cnb
3384
+ rlJ2Oy0wQJuK0EJWtLeIAaSHO1OWzaMWj/Nmqhexx2DgwUMFDO6bW2BvBlyHWyf5QBGenDPBt+U1
3385
+ VwV/J84XIIwc/PH72jEpSe31C4SnT8H2TsIonPru4K8H+zMReiFPCyEQtkA6qyI6BJyLm4SGcprS
3386
+ p6XEtHWRqSsjAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MB0GA1Ud
3387
+ DgQWBBTgqj8ljZ9EXME66C6ud0yEPmcM9DANBgkqhkiG9w0BAQsFAAOCAgEAuVevuBLaV4OPaAsz
3388
+ HQNTVfSVcOQrPbA56/qJYv331hgELyE03fFo8NWWWt7CgKPBjcZq91l3rhVkz1t5BXdm6ozTaw3d
3389
+ 8VkswTOlMIAVRQdFGjEitpIAq5lNOo93r6kiyi9jyhXWx8bwPWz8HA2YEGGeEaIi1wrykXprOQ4v
3390
+ MMM2SZ/g6Q8CRFA3lFV96p/2O7qUpUzpvD5RtOjKkjZUbVwlKNrdrRT90+7iIgXr0PK3aBLXWopB
3391
+ GsaSpVo7Y0VPv+E6dyIvXL9G+VoDhRNCX8reU9ditaY1BMJH/5n9hN9czulegChB8n3nHpDYT3Y+
3392
+ gjwN/KUD+nsa2UUeYNrEjvn8K8l7lcUq/6qJ34IxD3L/DCfXCh5WAFAeDJDBlrXYFIW7pw0WwfgH
3393
+ JBu6haEaBQmAupVjyTrsJZ9/nbqkRxWbRHDxakvWOF5D8xh+UG7pWijmZeZ3Gzr9Hb4DJqPb1OG7
3394
+ fpYnKx3upPvaJVQTA945xsMfTZDsjxtK0hzthZU4UHlG1sGQUDGpXJpuHfUzVounmdLyyCwzk5Iw
3395
+ x06MZTMQZBf9JBeW0Y3COmor6xOLRPIh80oat3df1+2IpHLlOR+Vnb5nwXARPbv0+Em34yaXOp/S
3396
+ X3z7wJl8OSngex2/DaeP0ik0biQVy96QXr8axGbqwua6OV+KmalBWQewLK8=
3397
+ -----END CERTIFICATE-----
3398
+
3399
+ Certainly Root E1
3400
+ =================
3401
+ -----BEGIN CERTIFICATE-----
3402
+ MIIB9zCCAX2gAwIBAgIQBiUzsUcDMydc+Y2aub/M+DAKBggqhkjOPQQDAzA9MQswCQYDVQQGEwJV
3403
+ UzESMBAGA1UEChMJQ2VydGFpbmx5MRowGAYDVQQDExFDZXJ0YWlubHkgUm9vdCBFMTAeFw0yMTA0
3404
+ MDEwMDAwMDBaFw00NjA0MDEwMDAwMDBaMD0xCzAJBgNVBAYTAlVTMRIwEAYDVQQKEwlDZXJ0YWlu
3405
+ bHkxGjAYBgNVBAMTEUNlcnRhaW5seSBSb290IEUxMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE3m/4
3406
+ fxzf7flHh4axpMCK+IKXgOqPyEpeKn2IaKcBYhSRJHpcnqMXfYqGITQYUBsQ3tA3SybHGWCA6TS9
3407
+ YBk2QNYphwk8kXr2vBMj3VlOBF7PyAIcGFPBMdjaIOlEjeR2o0IwQDAOBgNVHQ8BAf8EBAMCAQYw
3408
+ DwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU8ygYy2R17ikq6+2uI1g4hevIIgcwCgYIKoZIzj0E
3409
+ AwMDaAAwZQIxALGOWiDDshliTd6wT99u0nCK8Z9+aozmut6Dacpps6kFtZaSF4fC0urQe87YQVt8
3410
+ rgIwRt7qy12a7DLCZRawTDBcMPPaTnOGBtjOiQRINzf43TNRnXCve1XYAS59BWQOhriR
3411
+ -----END CERTIFICATE-----
3412
+
3413
+ E-Tugra Global Root CA RSA v3
3414
+ =============================
3415
+ -----BEGIN CERTIFICATE-----
3416
+ MIIF8zCCA9ugAwIBAgIUDU3FzRYilZYIfrgLfxUGNPt5EDQwDQYJKoZIhvcNAQELBQAwgYAxCzAJ
3417
+ BgNVBAYTAlRSMQ8wDQYDVQQHEwZBbmthcmExGTAXBgNVBAoTEEUtVHVncmEgRUJHIEEuUy4xHTAb
3418
+ BgNVBAsTFEUtVHVncmEgVHJ1c3QgQ2VudGVyMSYwJAYDVQQDEx1FLVR1Z3JhIEdsb2JhbCBSb290
3419
+ IENBIFJTQSB2MzAeFw0yMDAzMTgwOTA3MTdaFw00NTAzMTIwOTA3MTdaMIGAMQswCQYDVQQGEwJU
3420
+ UjEPMA0GA1UEBxMGQW5rYXJhMRkwFwYDVQQKExBFLVR1Z3JhIEVCRyBBLlMuMR0wGwYDVQQLExRF
3421
+ LVR1Z3JhIFRydXN0IENlbnRlcjEmMCQGA1UEAxMdRS1UdWdyYSBHbG9iYWwgUm9vdCBDQSBSU0Eg
3422
+ djMwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCiZvCJt3J77gnJY9LTQ91ew6aEOErx
3423
+ jYG7FL1H6EAX8z3DeEVypi6Q3po61CBxyryfHUuXCscxuj7X/iWpKo429NEvx7epXTPcMHD4QGxL
3424
+ sqYxYdE0PD0xesevxKenhOGXpOhL9hd87jwH7eKKV9y2+/hDJVDqJ4GohryPUkqWOmAalrv9c/SF
3425
+ /YP9f4RtNGx/ardLAQO/rWm31zLZ9Vdq6YaCPqVmMbMWPcLzJmAy01IesGykNz709a/r4d+ABs8q
3426
+ QedmCeFLl+d3vSFtKbZnwy1+7dZ5ZdHPOrbRsV5WYVB6Ws5OUDGAA5hH5+QYfERaxqSzO8bGwzrw
3427
+ bMOLyKSRBfP12baqBqG3q+Sx6iEUXIOk/P+2UNOMEiaZdnDpwA+mdPy70Bt4znKS4iicvObpCdg6
3428
+ 04nmvi533wEKb5b25Y08TVJ2Glbhc34XrD2tbKNSEhhw5oBOM/J+JjKsBY04pOZ2PJ8QaQ5tndLB
3429
+ eSBrW88zjdGUdjXnXVXHt6woq0bM5zshtQoK5EpZ3IE1S0SVEgpnpaH/WwAH0sDM+T/8nzPyAPiM
3430
+ bIedBi3x7+PmBvrFZhNb/FAHnnGGstpvdDDPk1Po3CLW3iAfYY2jLqN4MpBs3KwytQXk9TwzDdbg
3431
+ h3cXTJ2w2AmoDVf3RIXwyAS+XF1a4xeOVGNpf0l0ZAWMowIDAQABo2MwYTAPBgNVHRMBAf8EBTAD
3432
+ AQH/MB8GA1UdIwQYMBaAFLK0ruYt9ybVqnUtdkvAG1Mh0EjvMB0GA1UdDgQWBBSytK7mLfcm1ap1
3433
+ LXZLwBtTIdBI7zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggIBAImocn+M684uGMQQ
3434
+ gC0QDP/7FM0E4BQ8Tpr7nym/Ip5XuYJzEmMmtcyQ6dIqKe6cLcwsmb5FJ+Sxce3kOJUxQfJ9emN4
3435
+ 38o2Fi+CiJ+8EUdPdk3ILY7r3y18Tjvarvbj2l0Upq7ohUSdBm6O++96SmotKygY/r+QLHUWnw/q
3436
+ ln0F7psTpURs+APQ3SPh/QMSEgj0GDSz4DcLdxEBSL9htLX4GdnLTeqjjO/98Aa1bZL0SmFQhO3s
3437
+ SdPkvmjmLuMxC1QLGpLWgti2omU8ZgT5Vdps+9u1FGZNlIM7zR6mK7L+d0CGq+ffCsn99t2HVhjY
3438
+ sCxVYJb6CH5SkPVLpi6HfMsg2wY+oF0Dd32iPBMbKaITVaA9FCKvb7jQmhty3QUBjYZgv6Rn7rWl
3439
+ DdF/5horYmbDB7rnoEgcOMPpRfunf/ztAmgayncSd6YAVSgU7NbHEqIbZULpkejLPoeJVF3Zr52X
3440
+ nGnnCv8PWniLYypMfUeUP95L6VPQMPHF9p5J3zugkaOj/s1YzOrfr28oO6Bpm4/srK4rVJ2bBLFH
3441
+ IK+WEj5jlB0E5y67hscMmoi/dkfv97ALl2bSRM9gUgfh1SxKOidhd8rXj+eHDjD/DLsE4mHDosiX
3442
+ YY60MGo8bcIHX0pzLz/5FooBZu+6kcpSV3uu1OYP3Qt6f4ueJiDPO++BcYNZ
3443
+ -----END CERTIFICATE-----
3444
+
3445
+ E-Tugra Global Root CA ECC v3
3446
+ =============================
3447
+ -----BEGIN CERTIFICATE-----
3448
+ MIICpTCCAiqgAwIBAgIUJkYZdzHhT28oNt45UYbm1JeIIsEwCgYIKoZIzj0EAwMwgYAxCzAJBgNV
3449
+ BAYTAlRSMQ8wDQYDVQQHEwZBbmthcmExGTAXBgNVBAoTEEUtVHVncmEgRUJHIEEuUy4xHTAbBgNV
3450
+ BAsTFEUtVHVncmEgVHJ1c3QgQ2VudGVyMSYwJAYDVQQDEx1FLVR1Z3JhIEdsb2JhbCBSb290IENB
3451
+ IEVDQyB2MzAeFw0yMDAzMTgwOTQ2NThaFw00NTAzMTIwOTQ2NThaMIGAMQswCQYDVQQGEwJUUjEP
3452
+ MA0GA1UEBxMGQW5rYXJhMRkwFwYDVQQKExBFLVR1Z3JhIEVCRyBBLlMuMR0wGwYDVQQLExRFLVR1
3453
+ Z3JhIFRydXN0IENlbnRlcjEmMCQGA1UEAxMdRS1UdWdyYSBHbG9iYWwgUm9vdCBDQSBFQ0MgdjMw
3454
+ djAQBgcqhkjOPQIBBgUrgQQAIgNiAASOmCm/xxAeJ9urA8woLNheSBkQKczLWYHMjLiSF4mDKpL2
3455
+ w6QdTGLVn9agRtwcvHbB40fQWxPa56WzZkjnIZpKT4YKfWzqTTKACrJ6CZtpS5iB4i7sAnCWH/31
3456
+ Rs7K3IKjYzBhMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAU/4Ixcj75xGZsrTie0bBRiKWQ
3457
+ zPUwHQYDVR0OBBYEFP+CMXI++cRmbK04ntGwUYilkMz1MA4GA1UdDwEB/wQEAwIBBjAKBggqhkjO
3458
+ PQQDAwNpADBmAjEA5gVYaWHlLcoNy/EZCL3W/VGSGn5jVASQkZo1kTmZ+gepZpO6yGjUij/67W4W
3459
+ Aie3AjEA3VoXK3YdZUKWpqxdinlW2Iob35reX8dQj7FbcQwm32pAAOwzkSFxvmjkI6TZraE3
3460
+ -----END CERTIFICATE-----
@@ -3,9 +3,7 @@
3
3
  module PuppetfileResolver
4
4
  module Models
5
5
  class ModuleDependency
6
- attr_accessor :name
7
- attr_accessor :owner
8
- attr_accessor :version_requirement
6
+ attr_accessor :name, :owner, :version_requirement
9
7
 
10
8
  def initialize(options = {})
11
9
  # Munge the name
@@ -7,11 +7,7 @@ require 'puppetfile-resolver/puppetfile'
7
7
  module PuppetfileResolver
8
8
  module Models
9
9
  class ModuleSpecification
10
- attr_accessor :name
11
- attr_accessor :owner
12
- attr_accessor :version
13
- attr_accessor :origin # Same as R10K module :type
14
- attr_accessor :resolver_flags
10
+ attr_accessor :name, :owner, :version, :origin, :resolver_flags # origin attr same as R10K module :type
15
11
 
16
12
  def initialize(options = {})
17
13
  require 'semantic_puppet'
@@ -5,16 +5,12 @@ require 'puppetfile-resolver/puppetfile/invalid_module'
5
5
  module PuppetfileResolver
6
6
  module Puppetfile
7
7
  class DocumentLocation
8
- attr_accessor :start_line # Base 0
9
- attr_accessor :start_char # Base 0
10
- attr_accessor :end_line # Base 0
11
- attr_accessor :end_char # Base 0
8
+ attr_accessor :start_line, :start_char, :end_line, :end_char # Base 0 # Base 0 # Base 0 # Base 0
12
9
  end
13
10
 
14
11
  class Document
15
- attr_accessor :forge_uri
12
+ attr_accessor :forge_uri, :content
16
13
  attr_reader :modules
17
- attr_accessor :content
18
14
 
19
15
  def initialize(puppetfile_content)
20
16
  @content = puppetfile_content
@@ -5,10 +5,7 @@ require 'puppetfile-resolver/puppetfile/base_module'
5
5
  module PuppetfileResolver
6
6
  module Puppetfile
7
7
  class GitModule < BaseModule
8
- attr_accessor :remote
9
- attr_accessor :ref
10
- attr_accessor :commit
11
- attr_accessor :tag
8
+ attr_accessor :remote, :ref, :commit, :tag
12
9
 
13
10
  def initialize(title)
14
11
  super
@@ -41,7 +41,7 @@ module PuppetfileResolver
41
41
 
42
42
  def find_load_line_number
43
43
  loc = Kernel.caller_locations
44
- .find { |call_loc| call_loc.absolute_path == ::PuppetfileResolver::Puppetfile::Parser::R10KEval::PUPPETFILE_MONIKER }
44
+ .find { |call_loc| call_loc.path == ::PuppetfileResolver::Puppetfile::Parser::R10KEval::PUPPETFILE_MONIKER }
45
45
  loc.nil? ? 0 : loc.lineno - 1 # Line numbers from ruby are base 1
46
46
  end
47
47
  end
@@ -15,8 +15,7 @@ module PuppetfileResolver
15
15
  end
16
16
 
17
17
  def self.to_document_module(title, _args)
18
- mod = ::PuppetfileResolver::Puppetfile::LocalModule.new(title)
19
- mod
18
+ ::PuppetfileResolver::Puppetfile::LocalModule.new(title)
20
19
  end
21
20
  end
22
21
  end
@@ -21,7 +21,7 @@ module PuppetfileResolver
21
21
  rescue StandardError, LoadError => e
22
22
  # Find the originating error from within the puppetfile
23
23
  loc = e.backtrace_locations
24
- .select { |item| item.absolute_path == PUPPETFILE_MONIKER }
24
+ .select { |item| item.path == PUPPETFILE_MONIKER }
25
25
  .first
26
26
  start_line_number = loc.nil? ? 0 : loc.lineno - 1 # Line numbers from ruby are base 1
27
27
  end_line_number = loc.nil? ? puppetfile_contents.lines.count - 1 : loc.lineno - 1 # Line numbers from ruby are base 1
@@ -65,19 +65,19 @@ module PuppetfileResolver
65
65
  def self.post_process_flags!(document)
66
66
  flag_ranges = {}
67
67
  document.content.lines.each_with_index do |line, index|
68
- if (matches = line.match(%r{^\s*# resolver:disable ([A-Za-z\/,]+)(?:\s|$)}))
68
+ if (matches = line.match(%r{^\s*# resolver:disable ([A-Za-z/,]+)(?:\s|$)}))
69
69
  flags_from_line(matches[1]).each do |flag|
70
70
  # Start a flag range if there isn't already one going
71
71
  next unless flag_ranges[flag].nil?
72
72
  flag_ranges[flag] = index
73
73
  end
74
- elsif (matches = line.match(%r{# resolver:disable ([A-Za-z\/,]+)(?:\s|$)}))
74
+ elsif (matches = line.match(%r{# resolver:disable ([A-Za-z/,]+)(?:\s|$)}))
75
75
  flags_from_line(matches[1]).each do |flag|
76
76
  # Assert the flag if we're not already within a range
77
77
  next unless flag_ranges[flag].nil?
78
78
  assert_resolver_flag(document, flag, index, index)
79
79
  end
80
- elsif (matches = line.match(%r{^\s*# resolver:enable ([A-Za-z\/,]+)(?:\s|$)}))
80
+ elsif (matches = line.match(%r{^\s*# resolver:enable ([A-Za-z/,]+)(?:\s|$)}))
81
81
  flags_from_line(matches[1]).each do |flag|
82
82
  # End a flag range if there isn't already one going
83
83
  next if flag_ranges[flag].nil?
@@ -122,8 +122,8 @@ module PuppetfileResolver
122
122
  next if mod.location.start_line.nil? || mod.location.end_line.nil?
123
123
 
124
124
  # If the module doesn't span the range we're looking for (from_line --> to_line) ignore it
125
- next unless mod.location.start_line >= from_line && mod.location.start_line <= to_line ||
126
- mod.location.end_line >= from_line && mod.location.end_line <= to_line
125
+ next unless (mod.location.start_line >= from_line && mod.location.start_line <= to_line) ||
126
+ (mod.location.end_line >= from_line && mod.location.end_line <= to_line)
127
127
  mod.resolver_flags << flag unless mod.resolver_flags.include?(flag)
128
128
  end
129
129
  nil
@@ -3,8 +3,7 @@
3
3
  module PuppetfileResolver
4
4
  module Puppetfile
5
5
  class DocumentValidationErrorBase
6
- attr_accessor :message
7
- attr_accessor :puppet_module
6
+ attr_accessor :message, :puppet_module
8
7
 
9
8
  def initialize(message, puppet_module)
10
9
  @message = message
@@ -79,8 +78,7 @@ module PuppetfileResolver
79
78
  # Resolution Validation Error classes for validating
80
79
  # a valid Puppetfile against a dependency resolution
81
80
  class DocumentResolutionErrorBase < DocumentValidationErrorBase
82
- attr_accessor :puppet_module
83
- attr_accessor :module_specification
81
+ attr_accessor :puppet_module, :module_specification
84
82
 
85
83
  def initialize(message, puppet_module, module_specification)
86
84
  super(message, puppet_module)
@@ -7,8 +7,7 @@ require 'puppetfile-resolver/models'
7
7
 
8
8
  module PuppetfileResolver
9
9
  class Resolver
10
- attr_reader :puppetfile
11
- attr_reader :dependencies_to_resolve
10
+ attr_reader :puppetfile, :dependencies_to_resolve
12
11
 
13
12
  def initialize(puppetfile_document, puppet_version = nil)
14
13
  @puppetfile = puppetfile_document
@@ -7,9 +7,7 @@ require 'puppetfile-resolver/spec_searchers/local_configuration'
7
7
  module PuppetfileResolver
8
8
  module SpecSearchers
9
9
  class Configuration
10
- attr_reader :local
11
- attr_reader :forge
12
- attr_reader :git
10
+ attr_reader :local, :forge, :git
13
11
 
14
12
  def initialize
15
13
  @local = LocalConfiguration.new
@@ -5,13 +5,14 @@ require 'English'
5
5
  require 'puppetfile-resolver/util'
6
6
  require 'puppetfile-resolver/spec_searchers/common'
7
7
  require 'puppetfile-resolver/spec_searchers/git_configuration'
8
- require 'puppetfile-resolver/util'
9
8
  require 'uri'
10
9
 
11
10
  module PuppetfileResolver
12
11
  module SpecSearchers
13
12
  module Git
14
13
  module GClone
14
+ METADATA_FILE = 'metadata.json'
15
+
15
16
  # @summary clones the remote url and reads the metadata file
16
17
  # @returns [String] the content of the metadata file
17
18
  def self.metadata(puppetfile_module, resolver_ui, config)
@@ -25,8 +26,6 @@ module PuppetfileResolver
25
26
  return nil if repo_url.nil?
26
27
  return nil unless valid_http_url?(repo_url)
27
28
 
28
- metadata_file = 'metadata.json'
29
-
30
29
  ref = puppetfile_module.ref ||
31
30
  puppetfile_module.tag ||
32
31
  puppetfile_module.commit ||
@@ -35,7 +34,7 @@ module PuppetfileResolver
35
34
 
36
35
  resolver_ui.debug { "Querying git repository #{repo_url}" }
37
36
 
38
- clone_and_read_file(repo_url, ref, metadata_file, config)
37
+ clone_and_read_file(repo_url, ref, config)
39
38
  end
40
39
 
41
40
  # @summary clones the git url and reads the file at the given ref
@@ -44,24 +43,37 @@ module PuppetfileResolver
44
43
  # @param ref [String] the git ref, branch, commit, tag
45
44
  # @param file [String] the file you wish to read
46
45
  # @returns [String] the content of the file
47
- def self.clone_and_read_file(url, ref, file, config)
48
- clone_cmd = ['git', 'clone', '--bare', '--depth=1', '--single-branch']
49
- err_msg = ''
50
- if config.proxy
51
- err_msg += " with proxy #{config.proxy}: "
52
- proxy = "--config \"http.proxy=#{config.proxy}\" --config \"https.proxy=#{config.proxy}\""
53
- clone_cmd.push(proxy)
54
- end
55
-
46
+ def self.clone_and_read_file(url, ref, config)
56
47
  Dir.mktmpdir(nil, config.clone_dir) do |dir|
57
- clone_cmd.push("--branch=#{ref}") if ref != 'HEAD'
58
- clone_cmd.push(url, dir)
59
- out, err_out, process = ::PuppetfileResolver::Util.run_command(clone_cmd)
60
- err_msg += out
61
- raise err_msg unless process.success?
48
+ clone = ['git', 'clone', url, dir]
49
+ clone += ['--config', "http.proxy=#{config.proxy}", '--config', "https.proxy=#{config.proxy}"] if config.proxy
50
+
51
+ bare_clone = clone + ['--bare', '--depth=1']
52
+ bare_clone.push("--branch=#{ref}") unless ref == 'HEAD'
53
+
54
+ # Try to clone a bare repository. If that fails, fall back to a full clone.
55
+ # Cloning might fail because the repo does not exist or is otherwise
56
+ # inaccessible, but it can also fail because cloning a bare repository from
57
+ # a commit/SHA1 fails. Falling back to a full clone ensures that we support
58
+ # commits/SHA1s like Puppetfile does.
59
+ _stdout, _stderr, process = ::PuppetfileResolver::Util.run_command(bare_clone)
60
+
61
+ unless process.success?
62
+ _stdout, stderr, process = ::PuppetfileResolver::Util.run_command(clone)
63
+
64
+ unless process.success?
65
+ msg = if config.proxy
66
+ "Cloning #{url} with proxy #{config.proxy} failed: #{stderr}"
67
+ else
68
+ "Cloning #{url} failed: #{stderr}"
69
+ end
70
+ raise msg
71
+ end
72
+ end
73
+
62
74
  Dir.chdir(dir) do
63
- content, err_out, process = ::PuppetfileResolver::Util.run_command(['git', 'show', "#{ref}:#{file}"])
64
- raise 'InvalidContent' unless process.success? && content.length > 2
75
+ content, stderr, process = ::PuppetfileResolver::Util.run_command(['git', 'show', "#{ref}:#{METADATA_FILE}"])
76
+ raise "Could not find #{METADATA_FILE} for ref #{ref} at #{url}: #{stderr}" unless process.success?
65
77
  return content
66
78
  end
67
79
  end
@@ -19,11 +19,11 @@ module PuppetfileResolver
19
19
  end
20
20
  return nil if repo_url.nil?
21
21
 
22
- metadata_url = 'https://raw.githubusercontent.com/' + repo_url + '/'
22
+ metadata_url = "https://raw.githubusercontent.com/#{repo_url}/"
23
23
  if puppetfile_module.ref
24
- metadata_url += puppetfile_module.ref + '/'
24
+ metadata_url += "#{puppetfile_module.ref}/"
25
25
  elsif puppetfile_module.tag
26
- metadata_url += puppetfile_module.tag + '/'
26
+ metadata_url += "#{puppetfile_module.tag}/"
27
27
  else
28
28
  # Default to master. Should it raise?
29
29
  metadata_url += 'master/'
@@ -21,11 +21,11 @@ module PuppetfileResolver
21
21
 
22
22
  # Example URL
23
23
  # https://gitlab.com/simp/pupmod-simp-crypto_policy/-/raw/0.1.4/metadata.json
24
- metadata_url = 'https://gitlab.com/' + repo_url + '/-/raw/'
24
+ metadata_url = "https://gitlab.com/#{repo_url}/-/raw/"
25
25
  if puppetfile_module.ref
26
- metadata_url += puppetfile_module.ref + '/'
26
+ metadata_url += "#{puppetfile_module.ref}/"
27
27
  elsif puppetfile_module.tag
28
- metadata_url += puppetfile_module.tag + '/'
28
+ metadata_url += "#{puppetfile_module.tag}/"
29
29
  else
30
30
  # Default to master. Should it raise?
31
31
  metadata_url += 'master/'
@@ -29,7 +29,7 @@ module PuppetfileResolver
29
29
  def self.net_http_get(uri, proxy = nil)
30
30
  uri = URI.parse(uri) unless uri.is_a?(URI)
31
31
 
32
- http_options = { :use_ssl => uri.class == URI::HTTPS }
32
+ http_options = { :use_ssl => uri.instance_of?(URI::HTTPS) }
33
33
  # Because on Windows Ruby doesn't use the Windows certificate store which has up-to date
34
34
  # CA certs, we can't depend on someone setting the environment variable correctly. So use our
35
35
  # static CA PEM file if SSL_CERT_FILE is not set.
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PuppetfileResolver
4
- VERSION ||= '0.6.1'
4
+ VERSION ||= '0.6.3'
5
5
  end
data/puppetfile-cli.rb CHANGED
@@ -72,9 +72,9 @@ else
72
72
  end
73
73
 
74
74
  # Parse the Puppetfile into an object model
75
- content = File.open(options[:path], 'rb') { |f| f.read }
75
+ content = File.binread(options[:path])
76
76
  require 'puppetfile-resolver/puppetfile/parser/r10k_eval'
77
- puppetfile = ::PuppetfileResolver::Puppetfile::Parser::R10KEval.parse(content)
77
+ puppetfile = PuppetfileResolver::Puppetfile::Parser::R10KEval.parse(content)
78
78
 
79
79
  # Make sure the Puppetfile is valid
80
80
  unless puppetfile.valid?
data/spec/spec_helper.rb CHANGED
@@ -1,5 +1,31 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ if ENV['COVERAGE'] == 'yes'
4
+ begin
5
+ require 'simplecov'
6
+ require 'simplecov-console'
7
+
8
+ SimpleCov.formatters = [
9
+ SimpleCov::Formatter::HTMLFormatter,
10
+ SimpleCov::Formatter::Console,
11
+ ]
12
+
13
+ SimpleCov.start do
14
+ track_files 'lib/**/*.rb'
15
+ add_filter '/spec'
16
+ add_filter 'lib/puppetfile-resolver/version.rb'
17
+
18
+ add_filter '/docs'
19
+
20
+ # do not track vendored files
21
+ add_filter '/vendor'
22
+ add_filter '/.vendor'
23
+ end
24
+ rescue LoadError
25
+ raise 'Add the simplecov & simplecov-console gems to Gemfile to enable this task'
26
+ end
27
+ end
28
+
3
29
  root = File.join(__dir__,'..',)
4
30
  # Add the language server into the load path
5
31
  $LOAD_PATH.unshift(File.join(root,'lib'))
@@ -23,8 +23,7 @@ describe PuppetfileResolver::SpecSearchers::Git::GClone do
23
23
  expect(JSON.parse(content)['name']).to eq('puppetlabs-powershell')
24
24
  end
25
25
 
26
- context 'with ref' do
27
-
26
+ context 'with tag' do
28
27
  let(:puppetfile_module) do
29
28
  PuppetfileModule.new(remote: url, ref: '2.1.2')
30
29
  end
@@ -34,6 +33,29 @@ describe PuppetfileResolver::SpecSearchers::Git::GClone do
34
33
  expect(JSON.parse(content)['name']).to eq('puppetlabs-powershell')
35
34
  end
36
35
  end
36
+
37
+ context 'with commit' do
38
+ let(:puppetfile_module) do
39
+ PuppetfileModule.new(remote: url, ref: '9276de695798097e8471b877a18df27f764eecda')
40
+ end
41
+
42
+ it 'reads metadata' do
43
+ content = subject.metadata(puppetfile_module, Logger.new(STDERR), config)
44
+ expect(JSON.parse(content)['name']).to eq('puppetlabs-powershell')
45
+ end
46
+ end
47
+
48
+ context 'with invalid ref' do
49
+ let(:puppetfile_module) do
50
+ PuppetfileModule.new(remote: url, ref: '8f7d5ea3ef49dadc5e166d5d802d091abc4b02bc')
51
+ end
52
+
53
+ it 'errors gracefully' do
54
+ expect { subject.metadata(puppetfile_module, Logger.new(STDERR), config) }.to raise_error(
55
+ /Could not find metadata\.json for ref .* at .*/
56
+ )
57
+ end
58
+ end
37
59
  end
38
60
 
39
61
  context 'invalid url' do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: puppetfile-resolver
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.1
4
+ version: 0.6.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Glenn Sarti
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-06-23 00:00:00.000000000 Z
11
+ date: 2024-02-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: molinillo
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '1.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: webrick
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '1.8'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '1.8'
41
55
  description: Resolves the Puppet Modules in a Puppetfile with a full dependency graph,
42
56
  including Puppet version checks.
43
57
  email:
@@ -126,7 +140,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
126
140
  - !ruby/object:Gem::Version
127
141
  version: '0'
128
142
  requirements: []
129
- rubygems_version: 3.0.3
143
+ rubygems_version: 3.1.6
130
144
  signing_key:
131
145
  specification_version: 4
132
146
  summary: Dependency resolver for Puppetfiles
@@ -134,11 +148,11 @@ test_files:
134
148
  - spec/fixtures/proxy.rb
135
149
  - spec/fixtures/modulepath/test_module/README.md
136
150
  - spec/fixtures/modulepath/test_module/metadata.json
137
- - spec/unit/puppetfile-resolver/puppetfile/parser/r10k_eval_spec.rb
138
- - spec/unit/puppetfile-resolver/puppetfile/document_spec.rb
139
- - spec/unit/puppetfile-resolver/resolver_spec.rb
140
- - spec/unit/puppetfile-resolver/spec_searchers/git/gclone_spec.rb
141
151
  - spec/spec_helper.rb
142
- - spec/integration/proxy_spec.rb
143
- - spec/integration/kitchensink_spec.rb
144
152
  - spec/integration/deprecation_spec.rb
153
+ - spec/integration/kitchensink_spec.rb
154
+ - spec/integration/proxy_spec.rb
155
+ - spec/unit/puppetfile-resolver/puppetfile/document_spec.rb
156
+ - spec/unit/puppetfile-resolver/puppetfile/parser/r10k_eval_spec.rb
157
+ - spec/unit/puppetfile-resolver/spec_searchers/git/gclone_spec.rb
158
+ - spec/unit/puppetfile-resolver/resolver_spec.rb