ruby_aem 4.0.2 → 4.1.0
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 +4 -4
- data/conf/gem.yaml +1 -1
- data/conf/spec.yaml +105 -81
- data/lib/ruby_aem/client.rb +1 -1
- data/lib/ruby_aem/error.rb +6 -1
- data/lib/ruby_aem/handlers/file.rb +1 -1
- data/lib/ruby_aem/handlers/html.rb +2 -1
- data/lib/ruby_aem/handlers/json.rb +3 -3
- data/lib/ruby_aem/handlers/simple.rb +1 -1
- data/lib/ruby_aem/handlers/xml.rb +1 -1
- data/lib/ruby_aem/resources/aem.rb +1 -1
- data/lib/ruby_aem/resources/aem_configmgr.rb +2 -2
- data/lib/ruby_aem/resources/authorizable_keystore.rb +2 -3
- data/lib/ruby_aem/resources/bundle.rb +1 -1
- data/lib/ruby_aem/resources/certificate.rb +4 -0
- data/lib/ruby_aem/resources/certificate_chain.rb +1 -1
- data/lib/ruby_aem/resources/config_property.rb +1 -1
- data/lib/ruby_aem/resources/flush_agent.rb +1 -1
- data/lib/ruby_aem/resources/group.rb +1 -1
- data/lib/ruby_aem/resources/node.rb +1 -1
- data/lib/ruby_aem/resources/outbox_replication_agent.rb +1 -1
- data/lib/ruby_aem/resources/package.rb +1 -1
- data/lib/ruby_aem/resources/path.rb +1 -1
- data/lib/ruby_aem/resources/replication_agent.rb +1 -1
- data/lib/ruby_aem/resources/repository.rb +1 -1
- data/lib/ruby_aem/resources/reverse_replication_agent.rb +1 -1
- data/lib/ruby_aem/resources/saml.rb +1 -1
- data/lib/ruby_aem/resources/truststore.rb +3 -1
- data/lib/ruby_aem/resources/user.rb +1 -1
- data/lib/ruby_aem/response.rb +1 -1
- data/lib/ruby_aem/result.rb +1 -1
- data/lib/ruby_aem/swagger.rb +1 -1
- data/lib/ruby_aem.rb +11 -7
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 364f15252d0e15d5109deb5162c2e68a064436f754fda9839ad0bee7d69a4dbd
|
|
4
|
+
data.tar.gz: bb40460d828167a6b44b3bb921a3cc79621ca063f498a180a9a5b269cc243031
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: dfab4aa798fbed53e5fe4b705324db3ba770b1d7b673b6e9508c59d7481fe59d2493ea22c49b6dfd17959062491d6c7693722de6f333f382ac38f833f0847d0c
|
|
7
|
+
data.tar.gz: 394b101dad00b640afb6d207ef0d5e6666b72fc9f1c891b30a2fccdd2a39603b41e3011640eaf3cc872ed61becd07c4dc9eb5f2e9b7f80a1a31e3dcdbf5fbc1e
|
data/conf/gem.yaml
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
---
|
|
2
|
-
version: 4.0
|
|
2
|
+
version: 4.1.0
|
data/conf/spec.yaml
CHANGED
|
@@ -1,3 +1,13 @@
|
|
|
1
|
+
---
|
|
2
|
+
# Message, path and URI templates are kept on one line, wrapping them risks
|
|
3
|
+
# changing their parsed values.
|
|
4
|
+
# yamllint disable rule:line-length
|
|
5
|
+
|
|
6
|
+
# Optional param names must match the opts keys of the swagger_aem / swagger_aem_osgi
|
|
7
|
+
# generated *_api.rb methods exactly, unknown keys are silently ignored by the client.
|
|
8
|
+
# e.g. swagger_aem 4.0.0 renamed jcrcontent_* to jcr_content_*, reppassword to rep_password,
|
|
9
|
+
# and operation to _operation (plain :operation is overwritten by the generated client).
|
|
10
|
+
# test/unit/spec_yaml_spec.rb checks these names against the installed gems.
|
|
1
11
|
aem:
|
|
2
12
|
actions:
|
|
3
13
|
get_login_page:
|
|
@@ -16,7 +26,7 @@ aem:
|
|
|
16
26
|
required:
|
|
17
27
|
optional:
|
|
18
28
|
tags: '%{tags}'
|
|
19
|
-
|
|
29
|
+
combine_tags_or: '%{combine_tags_or}'
|
|
20
30
|
responses:
|
|
21
31
|
200:
|
|
22
32
|
handler: json_aem_health_check
|
|
@@ -102,7 +112,7 @@ authorizablekeystore:
|
|
|
102
112
|
optional:
|
|
103
113
|
new_password: '%{password}'
|
|
104
114
|
re_password: '%{password}'
|
|
105
|
-
|
|
115
|
+
_operation: createStore
|
|
106
116
|
responses:
|
|
107
117
|
200:
|
|
108
118
|
handler: simple
|
|
@@ -164,7 +174,7 @@ authorizablekeystore:
|
|
|
164
174
|
path: '%{intermediate_path}/%{authorizable_id}/keystore'
|
|
165
175
|
name: store.p12
|
|
166
176
|
optional:
|
|
167
|
-
|
|
177
|
+
_operation: delete
|
|
168
178
|
responses:
|
|
169
179
|
200:
|
|
170
180
|
handler: simple
|
|
@@ -348,29 +358,29 @@ flushagent:
|
|
|
348
358
|
runmode: '%{run_mode}'
|
|
349
359
|
name: '%{name}'
|
|
350
360
|
optional:
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
+
jcr_primary_type: cq:Page
|
|
362
|
+
jcr_content_cq_name: '%{name}'
|
|
363
|
+
jcr_content_jcr_title: '%{title}'
|
|
364
|
+
jcr_content_jcr_description: '%{description}'
|
|
365
|
+
jcr_content_sling_resource_type: cq/replication/components/agent
|
|
366
|
+
jcr_content_transport_uri: '%{dest_base_url}/dispatcher/invalidate.cache'
|
|
367
|
+
jcr_content_alias_update: '%{alias_update}'
|
|
368
|
+
jcr_content_log_level: '%{log_level}'
|
|
369
|
+
jcr_content_no_versioning: true
|
|
370
|
+
jcr_content_protocol_http_headers:
|
|
361
371
|
- 'CQ-Action:{action}'
|
|
362
372
|
- 'CQ-Handle:{path}'
|
|
363
373
|
- 'CQ-Path:{path}'
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
+
jcr_content_protocol_http_headers_type_hint: String[]
|
|
375
|
+
jcr_content_protocol_http_method: GET
|
|
376
|
+
jcr_content_retry_delay: '%{retry_delay}'
|
|
377
|
+
jcr_content_serialization_type: flush
|
|
378
|
+
jcr_content_jcr_mixin_types: cq:ReplicationStatus
|
|
379
|
+
jcr_content_trigger_receive: true
|
|
380
|
+
jcr_content_trigger_specific: true
|
|
381
|
+
jcr_content_cq_template: /libs/cq/replication/templates/agent
|
|
382
|
+
jcr_content_enabled: true
|
|
383
|
+
jcr_content_ssl: '%{ssl}'
|
|
374
384
|
responses:
|
|
375
385
|
200:
|
|
376
386
|
handler: simple
|
|
@@ -386,7 +396,7 @@ flushagent:
|
|
|
386
396
|
runmode: '%{run_mode}'
|
|
387
397
|
name: '%{name}'
|
|
388
398
|
optional:
|
|
389
|
-
|
|
399
|
+
_operation: delete
|
|
390
400
|
responses:
|
|
391
401
|
200:
|
|
392
402
|
handler: simple
|
|
@@ -522,7 +532,7 @@ node:
|
|
|
522
532
|
params:
|
|
523
533
|
required:
|
|
524
534
|
path: '%{path}'
|
|
525
|
-
|
|
535
|
+
jcr_primary_type: '%{type}'
|
|
526
536
|
name: '%{name}'
|
|
527
537
|
responses:
|
|
528
538
|
201:
|
|
@@ -536,7 +546,7 @@ node:
|
|
|
536
546
|
path: '%{path}'
|
|
537
547
|
name: '%{name}'
|
|
538
548
|
optional:
|
|
539
|
-
|
|
549
|
+
_operation: delete
|
|
540
550
|
responses:
|
|
541
551
|
200:
|
|
542
552
|
handler: simple
|
|
@@ -574,7 +584,7 @@ package:
|
|
|
574
584
|
group_name: '%{group_name}'
|
|
575
585
|
package_name: '%{package_name}'
|
|
576
586
|
package_version: '%{package_version}'
|
|
577
|
-
|
|
587
|
+
_charset_: utf-8
|
|
578
588
|
responses:
|
|
579
589
|
200:
|
|
580
590
|
handler: json_package_service
|
|
@@ -591,7 +601,7 @@ package:
|
|
|
591
601
|
path: '/etc/packages/%{group_name}/%{package_name}-%{package_version}.zip'
|
|
592
602
|
optional:
|
|
593
603
|
filter: '%{filter}'
|
|
594
|
-
|
|
604
|
+
_charset_: utf-8
|
|
595
605
|
responses:
|
|
596
606
|
200:
|
|
597
607
|
handler: json_package_service
|
|
@@ -720,7 +730,7 @@ path:
|
|
|
720
730
|
path: '%{path}'
|
|
721
731
|
name: '%{name}'
|
|
722
732
|
optional:
|
|
723
|
-
|
|
733
|
+
_operation: delete
|
|
724
734
|
responses:
|
|
725
735
|
200:
|
|
726
736
|
handler: simple
|
|
@@ -748,6 +758,8 @@ configproperty:
|
|
|
748
758
|
201:
|
|
749
759
|
handler: simple
|
|
750
760
|
message: 'Set %{config_node_name} config %{type} property %{name}=%{value}'
|
|
761
|
+
# TODO: remove the create<config> actions below, unused since a170df6 (2020, #31) when
|
|
762
|
+
# ConfigProperty#create switched to the generic create action (postConfigProperty)
|
|
751
763
|
createapachefelixjettybasedhttpservice:
|
|
752
764
|
api: sling
|
|
753
765
|
operation: postConfigApacheFelixJettyBasedHttpService
|
|
@@ -765,7 +777,10 @@ configproperty:
|
|
|
765
777
|
- org_apache_felix_https_keystore_key_password
|
|
766
778
|
- org_apache_felix_https_keystore_key_password_type_hint
|
|
767
779
|
- org_apache_felix_https_truststore
|
|
768
|
-
|
|
780
|
+
# org.apache.felix.https.truststore@TypeHint, read as org_apache_felix_https_truststore_type_hint:
|
|
781
|
+
# https://github.com/shinesolutions/swagger-aem/blob/4.0.0/specification/swagger-aem.yml#L257
|
|
782
|
+
# https://github.com/shinesolutions/swagger-aem/blob/4.0.0/clients/ruby/generated/lib/swagger_aem/api/sling_api.rb#L1457
|
|
783
|
+
- org_apache_felix_https_truststore_type_hint
|
|
769
784
|
- org_apache_felix_https_truststore_password
|
|
770
785
|
- org_apache_felix_https_truststore_password_type_hint
|
|
771
786
|
- org_apache_felix_https_clientcertificate
|
|
@@ -774,8 +789,11 @@ configproperty:
|
|
|
774
789
|
- org_apache_felix_https_enable_type_hint
|
|
775
790
|
- org_osgi_service_http_port_secure
|
|
776
791
|
- org_osgi_service_http_port_secure_type_hint
|
|
777
|
-
|
|
778
|
-
|
|
792
|
+
# json_maximumresults and json_maximumresults_type_hint were removed from this action:
|
|
793
|
+
# postConfigApacheFelixJettyBasedHttpService has no json.maximumresults parameter in any
|
|
794
|
+
# swagger_aem release (1.0.0 to 4.0.0), so they were never sent. They were copied from the
|
|
795
|
+
# Sling GET servlet action in ruby_aem a626c5d (2017) and stay on createapacheslinggetservlet.
|
|
796
|
+
# https://github.com/shinesolutions/swagger-aem/blob/4.0.0/specification/swagger-aem.yml#L198-L306
|
|
779
797
|
responses:
|
|
780
798
|
200:
|
|
781
799
|
handler: simple
|
|
@@ -789,6 +807,9 @@ configproperty:
|
|
|
789
807
|
params:
|
|
790
808
|
required:
|
|
791
809
|
optional:
|
|
810
|
+
# json.maximumresults and json.maximumresults@TypeHint:
|
|
811
|
+
# https://github.com/shinesolutions/swagger-aem/blob/4.0.0/specification/swagger-aem.yml#L311-L320
|
|
812
|
+
# https://github.com/shinesolutions/swagger-aem/blob/4.0.0/clients/ruby/generated/lib/swagger_aem/api/sling_api.rb#L1683-L1684
|
|
792
813
|
- json_maximumresults
|
|
793
814
|
- json_maximumresults_type_hint
|
|
794
815
|
- enable_html
|
|
@@ -920,7 +941,10 @@ configproperty:
|
|
|
920
941
|
- name_id_format
|
|
921
942
|
- name_id_format_type_hint
|
|
922
943
|
- digest_method
|
|
923
|
-
|
|
944
|
+
# digestMethod@TypeHint, read as digest_method_type_hint:
|
|
945
|
+
# https://github.com/shinesolutions/swagger-aem/blob/4.0.0/specification/swagger-aem.yml#L1517
|
|
946
|
+
# https://github.com/shinesolutions/swagger-aem/blob/4.0.0/clients/ruby/generated/lib/swagger_aem/api/sling_api.rb#L1350
|
|
947
|
+
- digest_method_type_hint
|
|
924
948
|
- signature_method
|
|
925
949
|
- signature_method_type_hint
|
|
926
950
|
- user_intermediate_path
|
|
@@ -971,20 +995,20 @@ replicationagent:
|
|
|
971
995
|
runmode: '%{run_mode}'
|
|
972
996
|
name: '%{name}'
|
|
973
997
|
optional:
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
998
|
+
jcr_primary_type: cq:Page
|
|
999
|
+
jcr_content_cq_name: '%{name}'
|
|
1000
|
+
jcr_content_jcr_title: '%{title}'
|
|
1001
|
+
jcr_content_jcr_description: '%{description}'
|
|
1002
|
+
jcr_content_sling_resource_type: cq/replication/components/agent
|
|
1003
|
+
jcr_content_serialization_type: durbo
|
|
1004
|
+
jcr_content_transport_uri: '%{dest_base_url}/bin/receive?sling:authRequestLogin=1'
|
|
1005
|
+
jcr_content_transport_user: '%{transport_user}'
|
|
1006
|
+
jcr_content_transport_password: '%{transport_password}'
|
|
1007
|
+
jcr_content_log_level: '%{log_level}'
|
|
1008
|
+
jcr_content_retry_delay: '%{retry_delay}'
|
|
1009
|
+
jcr_content_cq_template: /libs/cq/replication/templates/agent
|
|
1010
|
+
jcr_content_enabled: true
|
|
1011
|
+
jcr_content_ssl: '%{ssl}'
|
|
988
1012
|
responses:
|
|
989
1013
|
200:
|
|
990
1014
|
handler: simple
|
|
@@ -1000,7 +1024,7 @@ replicationagent:
|
|
|
1000
1024
|
runmode: '%{run_mode}'
|
|
1001
1025
|
name: '%{name}'
|
|
1002
1026
|
optional:
|
|
1003
|
-
|
|
1027
|
+
_operation: delete
|
|
1004
1028
|
responses:
|
|
1005
1029
|
200:
|
|
1006
1030
|
handler: simple
|
|
@@ -1042,20 +1066,20 @@ outboxreplicationagent:
|
|
|
1042
1066
|
runmode: '%{run_mode}'
|
|
1043
1067
|
name: '%{name}'
|
|
1044
1068
|
optional:
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1069
|
+
jcr_primary_type: cq:Page
|
|
1070
|
+
jcr_content_cq_name: '%{name}'
|
|
1071
|
+
jcr_content_jcr_title: '%{title}'
|
|
1072
|
+
jcr_content_jcr_description: '%{description}'
|
|
1073
|
+
jcr_content_sling_resource_type: cq/replication/components/agent
|
|
1074
|
+
jcr_content_transport_uri: repo://var/replication/outbox
|
|
1075
|
+
jcr_content_no_versioning: true
|
|
1076
|
+
jcr_content_log_level: '%{log_level}'
|
|
1077
|
+
jcr_content_cq_template: /libs/cq/replication/templates/agent
|
|
1078
|
+
jcr_content_enabled: true
|
|
1079
|
+
jcr_content_trigger_distribute: true
|
|
1080
|
+
jcr_content_trigger_modified: false
|
|
1081
|
+
jcr_content_trigger_specific: true
|
|
1082
|
+
jcr_content_user_id: '%{user_id}'
|
|
1059
1083
|
responses:
|
|
1060
1084
|
200:
|
|
1061
1085
|
handler: simple
|
|
@@ -1071,7 +1095,7 @@ outboxreplicationagent:
|
|
|
1071
1095
|
runmode: '%{run_mode}'
|
|
1072
1096
|
name: '%{name}'
|
|
1073
1097
|
optional:
|
|
1074
|
-
|
|
1098
|
+
_operation: delete
|
|
1075
1099
|
responses:
|
|
1076
1100
|
200:
|
|
1077
1101
|
handler: simple
|
|
@@ -1113,20 +1137,20 @@ reversereplicationagent:
|
|
|
1113
1137
|
runmode: '%{run_mode}'
|
|
1114
1138
|
name: '%{name}'
|
|
1115
1139
|
optional:
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1140
|
+
jcr_primary_type: cq:Page
|
|
1141
|
+
jcr_content_cq_name: '%{name}'
|
|
1142
|
+
jcr_content_jcr_title: '%{title}'
|
|
1143
|
+
jcr_content_jcr_description: '%{description}'
|
|
1144
|
+
jcr_content_sling_resource_type: cq/replication/components/agent
|
|
1145
|
+
jcr_content_serialization_type: durbo
|
|
1146
|
+
jcr_content_transport_uri: '%{dest_base_url}/bin/receive?sling:authRequestLogin=1'
|
|
1147
|
+
jcr_content_transport_user: '%{transport_user}'
|
|
1148
|
+
jcr_content_transport_password: '%{transport_password}'
|
|
1149
|
+
jcr_content_log_level: '%{log_level}'
|
|
1150
|
+
jcr_content_retry_delay: '%{retry_delay}'
|
|
1151
|
+
jcr_content_cq_template: /libs/cq/replication/templates/agent
|
|
1152
|
+
jcr_content_enabled: true
|
|
1153
|
+
jcr_content_reverse_replication: true
|
|
1130
1154
|
responses:
|
|
1131
1155
|
200:
|
|
1132
1156
|
handler: simple
|
|
@@ -1142,7 +1166,7 @@ reversereplicationagent:
|
|
|
1142
1166
|
runmode: '%{run_mode}'
|
|
1143
1167
|
name: '%{name}'
|
|
1144
1168
|
optional:
|
|
1145
|
-
|
|
1169
|
+
_operation: delete
|
|
1146
1170
|
responses:
|
|
1147
1171
|
200:
|
|
1148
1172
|
handler: simple
|
|
@@ -1270,7 +1294,7 @@ truststore:
|
|
|
1270
1294
|
optional:
|
|
1271
1295
|
new_password: '%{password}'
|
|
1272
1296
|
re_password: '%{password}'
|
|
1273
|
-
|
|
1297
|
+
_operation: createStore
|
|
1274
1298
|
responses:
|
|
1275
1299
|
200:
|
|
1276
1300
|
handler: simple
|
|
@@ -1308,7 +1332,7 @@ truststore:
|
|
|
1308
1332
|
path: etc/truststore
|
|
1309
1333
|
name: truststore.p12
|
|
1310
1334
|
optional:
|
|
1311
|
-
|
|
1335
|
+
_operation: delete
|
|
1312
1336
|
responses:
|
|
1313
1337
|
200:
|
|
1314
1338
|
handler: simple
|
|
@@ -1355,7 +1379,7 @@ user:
|
|
|
1355
1379
|
intermediate_path: '%{path}'
|
|
1356
1380
|
optional:
|
|
1357
1381
|
create_user: 'true'
|
|
1358
|
-
|
|
1382
|
+
rep_password: '%{password}'
|
|
1359
1383
|
responses:
|
|
1360
1384
|
201:
|
|
1361
1385
|
handler: html_authorizable_id
|
data/lib/ruby_aem/client.rb
CHANGED
data/lib/ruby_aem/error.rb
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright 2016-
|
|
1
|
+
# Copyright 2016-2026 Shine Solutions Group
|
|
2
2
|
#
|
|
3
3
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
4
|
# you may not use this file except in compliance with the License.
|
|
@@ -18,6 +18,11 @@ module RubyAem
|
|
|
18
18
|
class Error < StandardError
|
|
19
19
|
attr_accessor :result
|
|
20
20
|
|
|
21
|
+
# Initialise an error.
|
|
22
|
+
#
|
|
23
|
+
# @param message error message
|
|
24
|
+
# @param result RubyAem::Result
|
|
25
|
+
# @return new RubyAem::Error instance
|
|
21
26
|
def initialize(message, result)
|
|
22
27
|
super(message)
|
|
23
28
|
self.result = result
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright 2016-
|
|
1
|
+
# Copyright 2016-2026 Shine Solutions Group
|
|
2
2
|
#
|
|
3
3
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
4
|
# you may not use this file except in compliance with the License.
|
|
@@ -109,6 +109,7 @@ module RubyAem
|
|
|
109
109
|
# @param html HTML response body string
|
|
110
110
|
# @param regex Ruby regular expression, all regex matches will be replaced
|
|
111
111
|
# @param replacement all existence of the regex will be replaced with this string
|
|
112
|
+
# @return sanitised HTML string
|
|
112
113
|
def self._sanitise_html(html, regex, replacement)
|
|
113
114
|
if regex.match?(html)
|
|
114
115
|
html.gsub!(regex, replacement)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright 2016-
|
|
1
|
+
# Copyright 2016-2026 Shine Solutions Group
|
|
2
2
|
#
|
|
3
3
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
4
|
# you may not use this file except in compliance with the License.
|
|
@@ -144,8 +144,8 @@ module RubyAem
|
|
|
144
144
|
result
|
|
145
145
|
end
|
|
146
146
|
|
|
147
|
-
# Authorizable keystore payload handler, checks for the existence of certificate within
|
|
148
|
-
# AEM
|
|
147
|
+
# Authorizable keystore payload handler, checks for the existence of certificate chain within
|
|
148
|
+
# AEM Authorizable Keystore, identified by private_key_alias call parameter.
|
|
149
149
|
#
|
|
150
150
|
# @param response HTTP response containing status_code, body, and headers
|
|
151
151
|
# @param response_spec response specification as configured in conf/spec.yaml
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright 2016-
|
|
1
|
+
# Copyright 2016-2026 Shine Solutions Group
|
|
2
2
|
#
|
|
3
3
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
4
|
# you may not use this file except in compliance with the License.
|
|
@@ -23,7 +23,7 @@ module RubyAem
|
|
|
23
23
|
# Initialise an AEM instance.
|
|
24
24
|
#
|
|
25
25
|
# @param client RubyAem::Client
|
|
26
|
-
# @return new RubyAem::Resources::
|
|
26
|
+
# @return new RubyAem::Resources::AemConfigMgr instance
|
|
27
27
|
def initialize(client)
|
|
28
28
|
@client = client
|
|
29
29
|
@call_params = {}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright 2016-
|
|
1
|
+
# Copyright 2016-2026 Shine Solutions Group
|
|
2
2
|
#
|
|
3
3
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
4
|
# you may not use this file except in compliance with the License.
|
|
@@ -26,7 +26,7 @@ module RubyAem
|
|
|
26
26
|
# @param client RubyAem::Client
|
|
27
27
|
# @param intermediate_path AEM User home path
|
|
28
28
|
# @param authorizable_id AEM User id
|
|
29
|
-
# @return new RubyAem::Resources::
|
|
29
|
+
# @return new RubyAem::Resources::AuthorizableKeystore instance
|
|
30
30
|
def initialize(client, intermediate_path, authorizable_id)
|
|
31
31
|
@client = client
|
|
32
32
|
@call_params = {
|
|
@@ -50,7 +50,6 @@ module RubyAem
|
|
|
50
50
|
#
|
|
51
51
|
# @param old_password Current password for the authorizable keystore
|
|
52
52
|
# @param new_password New password for the authorizable keystore
|
|
53
|
-
|
|
54
53
|
# @return RubyAem::Result
|
|
55
54
|
def change_password(old_password, new_password)
|
|
56
55
|
@call_params[:old_password] = old_password
|
|
@@ -105,6 +105,10 @@ module RubyAem
|
|
|
105
105
|
@client.call(self.class, __callee__.to_s, @call_params)
|
|
106
106
|
end
|
|
107
107
|
|
|
108
|
+
# Retrieve the alias of the certificate from AEM Truststore info,
|
|
109
|
+
# the certificate is identified by its serial number.
|
|
110
|
+
#
|
|
111
|
+
# @return the certificate's alias, nil if the certificate does not exist in AEM Truststore
|
|
108
112
|
def _get_alias
|
|
109
113
|
truststore_info = @truststore.info.data
|
|
110
114
|
cert_alias = nil
|
|
@@ -28,7 +28,7 @@ module RubyAem
|
|
|
28
28
|
# @param private_key_alias Alias of the private key associated to this certificate chain
|
|
29
29
|
# @param keystore_intermediate_path AEM User home path
|
|
30
30
|
# @param keystore_authorizable_id AEM User id
|
|
31
|
-
# @return new RubyAem::Resources::
|
|
31
|
+
# @return new RubyAem::Resources::CertificateChain instance
|
|
32
32
|
def initialize(client, private_key_alias, keystore_intermediate_path, keystore_authorizable_id)
|
|
33
33
|
@client = client
|
|
34
34
|
@truststore = RubyAem::Resources::Truststore.new(client)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright 2016-
|
|
1
|
+
# Copyright 2016-2026 Shine Solutions Group
|
|
2
2
|
#
|
|
3
3
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
4
|
# you may not use this file except in compliance with the License.
|
|
@@ -43,6 +43,8 @@ module RubyAem
|
|
|
43
43
|
# and convert it to PKCS12 Truststore object.
|
|
44
44
|
#
|
|
45
45
|
# @param file_path path to Truststore file
|
|
46
|
+
# @param password Password for AEM Truststore
|
|
47
|
+
# @return OpenSSL::PKCS12 Truststore object
|
|
46
48
|
def read(file_path, password)
|
|
47
49
|
truststore_raw = File.read file_path
|
|
48
50
|
OpenSSL::PKCS12.new(truststore_raw, password)
|
data/lib/ruby_aem/response.rb
CHANGED
data/lib/ruby_aem/result.rb
CHANGED
data/lib/ruby_aem/swagger.rb
CHANGED
data/lib/ruby_aem.rb
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright 2016-
|
|
1
|
+
# Copyright 2016-2026 Shine Solutions Group
|
|
2
2
|
#
|
|
3
3
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
4
|
# you may not use this file except in compliance with the License.
|
|
@@ -98,6 +98,8 @@ module RubyAem
|
|
|
98
98
|
end
|
|
99
99
|
|
|
100
100
|
# Set default configuration values and handle numeric/boolean String values
|
|
101
|
+
#
|
|
102
|
+
# @param conf configuration hash, the hash will be modified with the sanitised values
|
|
101
103
|
def sanitise_conf(conf)
|
|
102
104
|
conf[:username] ||= 'admin'
|
|
103
105
|
conf[:password] ||= 'admin'
|
|
@@ -122,7 +124,7 @@ module RubyAem
|
|
|
122
124
|
|
|
123
125
|
# Create an AEM ConfigMgr instance.
|
|
124
126
|
#
|
|
125
|
-
# @return new RubyAem::Resources::
|
|
127
|
+
# @return new RubyAem::Resources::AemConfigMgr instance
|
|
126
128
|
def aem_configmgr
|
|
127
129
|
RubyAem::Resources::AemConfigMgr.new(@client)
|
|
128
130
|
end
|
|
@@ -143,12 +145,12 @@ module RubyAem
|
|
|
143
145
|
RubyAem::Resources::Certificate.new(@client, serial_number)
|
|
144
146
|
end
|
|
145
147
|
|
|
146
|
-
#
|
|
147
|
-
#
|
|
148
|
+
# Create a certificate chain instance.
|
|
149
|
+
#
|
|
148
150
|
# @param private_key_alias Alias of the private key associated to this certificate chain
|
|
149
151
|
# @param keystore_intermediate_path AEM User home path
|
|
150
152
|
# @param keystore_authorizable_id AEM User id
|
|
151
|
-
#
|
|
153
|
+
# @return new RubyAem::Resources::CertificateChain instance
|
|
152
154
|
def certificate_chain(private_key_alias, keystore_intermediate_path, keystore_authorizable_id)
|
|
153
155
|
RubyAem::Resources::CertificateChain.new(@client, private_key_alias, keystore_intermediate_path, keystore_authorizable_id)
|
|
154
156
|
end
|
|
@@ -183,7 +185,9 @@ module RubyAem
|
|
|
183
185
|
|
|
184
186
|
# Create a Keystore instance for given authorizable id.
|
|
185
187
|
#
|
|
186
|
-
# @
|
|
188
|
+
# @param intermediate_path AEM User home path
|
|
189
|
+
# @param authorizable_id AEM User id
|
|
190
|
+
# @return new RubyAem::Resources::AuthorizableKeystore instance
|
|
187
191
|
def authorizable_keystore(intermediate_path, authorizable_id)
|
|
188
192
|
RubyAem::Resources::AuthorizableKeystore.new(@client, intermediate_path, authorizable_id)
|
|
189
193
|
end
|
|
@@ -258,7 +262,7 @@ module RubyAem
|
|
|
258
262
|
|
|
259
263
|
# Create a SSL instance.
|
|
260
264
|
#
|
|
261
|
-
# @return new RubyAem::Resources::
|
|
265
|
+
# @return new RubyAem::Resources::Ssl instance
|
|
262
266
|
def ssl
|
|
263
267
|
RubyAem::Resources::Ssl.new(@client)
|
|
264
268
|
end
|