(ca_server, signing_policy, kwargs, get_signing_policy_only=False)
| 224 | |
| 225 | |
| 226 | def _query_remote(ca_server, signing_policy, kwargs, get_signing_policy_only=False): |
| 227 | result = __salt__["publish.publish"]( |
| 228 | ca_server, |
| 229 | "ssh_pki.sign_remote_certificate", |
| 230 | arg=[signing_policy, kwargs, get_signing_policy_only], |
| 231 | regular_minions=True, |
| 232 | ) |
| 233 | |
| 234 | if not result: |
| 235 | raise SaltInvocationError( |
| 236 | "ca_server did not respond." |
| 237 | " Salt master must permit peers to" |
| 238 | " call the sign_remote_certificate function." |
| 239 | ) |
| 240 | result = result[next(iter(result))] |
| 241 | if not isinstance(result, dict) or "data" not in result: |
| 242 | log.error(f"Received invalid return value from ca_server: {result}") |
| 243 | raise CommandExecutionError( |
| 244 | "Received invalid return value from ca_server. See minion log for details" |
| 245 | ) |
| 246 | if result.get("errors"): |
| 247 | raise CommandExecutionError( |
| 248 | "ca_server reported errors:\n" + "\n".join(result["errors"]) |
| 249 | ) |
| 250 | return result["data"] |
| 251 | |
| 252 | |
| 253 | def get_signing_policy(signing_policy, ca_server=None): |
no test coverage detected